■ 丸め (File: plc_public_codex_xxx | Module:Rounding)

⇒ TO Home Page
内容

PLCでの割算は整数演算(浮動小数点演算以外)で、小数点以下は切捨てられます。あまりも結果として出てきますので、それを利用し小数点第一位を丸めま す。

●PDFを表示  ●登録モニタをダウンロード
◆ 四捨五入

□1 . 符号付 (正負対象)
00005
・あまりの2倍を再度除数で割る事で繰り上がるかを計算し、答に加算しています。
・商 = (余 × 2) / 2 + 商

・[@EM0] / [@EM2] にカーソルを合わせ、【F2】キーで「デバイス値変更」を開き「設定値」の項目を変更してください。

◆ 切上位置可変

□1 . 符号付 (正負対象)
00013
・[@EM4]で丸める位置を設定します。
0:切り上げ
1:零捨1入
2:    2入
3:    3入
4:    4入
5:4捨5入   
6:    6入
7:    7入
8:    8入
9:    9入
10:切り捨て

・被除数を10倍(小数第一位が対象なので)して割ります。
・答の10の0乗桁に切上/切捨てのしきい値(0〜9)を加え、10で割っています。
・負数の場合、しきい値の範囲は0〜−9になるので、答の正負を判断して、次の方法で導きました。
・符号ビットを抽出します。
・抽出した数値を、その半分で割って符号反転し、1を加えます。
0または正の時:符号ビットは0なので⇒ 1
負の時:符号ビット抽出後の$8000÷$4000($8000の半分)は”2”なので符号反転し”−2”。1を加え⇒ -1
・上で算出した値にしきい値を掛けて、負数の場合の符号を反転しています。
・最後に10で割れば丸めた答になっています。

●PDFを表示