ユーザ用ツール

サイト用ツール


ja-jp_products:mpino_studio2:box_functions:arithmetic

文書の過去の版を表示しています。


MPINO STUDIO 2 Phase 4-4・算術ボックス関数

計算、増減、範囲変換、浮動小数点演算の結果を格納する命令を説明します。

計算、増減、範囲変換、浮動小数点演算の結果を格納する命令を説明します。

ADDで2つのWORD値を加算する実際のラダー画面です。

ADDで2つのWORD値を加算する実際のラダー画面です。

1. 共通ルール

最初の2つの値は計算元で、最後のアドレスに結果を格納します。INCDECは対象自体を1ずつ変更します。値のデータ形式と範囲はPhase 2のメモリ説明に従います。

2. ADD・SUB・MUL・DIV・MOD

ADD

加算 (Add)

2つの値を加算し、結果を対象に格納します。

入力形式: ADD D0 D1 D2

実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=12, D1=5 ADD D0 D1 D2 D2=17

SUB

減算 (Subtract)

1つ目の値から2つ目の値を減算し、結果を対象に格納します。

入力形式: SUB D0 D1 D2

実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=12, D1=5 SUB D0 D1 D2 D2=7

MUL

乗算 (Multiply)

2つの値を乗算し、結果を対象に格納します。

入力形式: MUL D0 D1 D2

実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=12, D1=5 MUL D0 D1 D2 D2=60

DIV

除算 (Divide)

1つ目の値を2つ目の値で除算し、商を対象に格納します。整数同士の計算では小数部を格納しません。

入力形式: DIV D0 D1 D2

実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=12, D1=5 DIV D0 D1 D2 D2=2

MOD

剰余 (Modulo)

1つ目の値を2つ目の値で除算し、余りを対象に格納します。

入力形式: MOD D0 D1 D2

実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=12, D1=5 MOD D0 D1 D2 D2=2

3. INC・DEC

INC

1 増加 (Increment)

対象の値を1増やし、同じアドレスに格納します。

入力形式: INC D0

引数

  • 1番目 = D: 増加対象アドレス(前の値に +1 後 同じアドレスに格納)
実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=7 INC D0 D0=8

DEC

1 減少 (Decrement)

対象の値を1減らし、同じアドレスに格納します。

入力形式: DEC D0

引数

  • 1番目 = D: 減少対象アドレス(前の値に −1 後 同じアドレスに格納)
実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=7 DEC D0 D0=6

4. SCALE

スケール (Scale, 線形補間)

入力範囲の整数値を出力範囲の整数値へ線形変換し、対象に格納します。入力範囲外の値は近い境界値に制限し、IN_MINとIN_MAXが同じ場合はOUT_MINを格納します。

入力形式: SCALE D0 0 1023 R0 0 100

引数

  • 第1引数 = 入力値:変換するアドレスまたは定数
  • 第2引数 = 入力最小値
  • 第3引数 = 入力最大値
  • 第4引数 = 対象:出力値を格納するアドレス
  • 第5引数 = 出力最小値
  • 第6引数 = 出力最大値
実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=1023 SCALE D0 0 1023 R0 0 100 R0=100.0

5. FLOOR・SQRT

FLOOR

切り捨て (Floor)

ソース値以下で最大の整数を対象に格納します。たとえば12.8は12、-1.2は-2になります。

入力形式: FLOOR R0 R1

引数

  • 第1引数 = ソース:切り下げるアドレスまたは定数
  • 第2引数 = 対象:結果を格納するアドレス
実行条件 実行前 入力した命令 予想結果
左側条件 ON R0=12.8 FLOOR R0 R1 R1=12.0

SQRT

平方根 (Square Root)

ソース値の平方根を対象に格納します。小数部を保持する場合はRメモリを対象に使用します。

入力形式: SQRT D0 R0

引数

  • 第1引数 = ソース:平方根を求める0以上のアドレスまたは定数
  • 第2引数 = 対象:結果を格納するアドレス
実行条件 実行前 入力した命令 予想結果
左側条件 ON D0=81 SQRT D0 R0 R0=9.0

6. トラブルシューティング

症状 確認項目
DIVまたはMODの結果が出ません。 2つ目のソース値が0になっていないか確認します。
SCALEの結果が一方の境界値に留まります。 入力値とIN_MIN・IN_MAXの順序および範囲を確認します。

関連文書

ja-jp_products/mpino_studio2/box_functions/arithmetic.1788944071.txt.gz · 最終更新: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki