 |

形名: すべて
 |
|
 |
指定応用命令(21種類)には、2バイト以上(バイト命令)、
4バイト以上(ワード命令)、8バイト以上(ダブルワード命令)のデータ演算を可能とする機能を倍長演算機能といいます。
|
|
 |
【解説】

 |
(1) |
倍長演算対象命令
倍長演算対象の応用命令は以下の通りです。
・F-10、F- 10w、F-10d−−−レジスタ間の加算
・Fc10、Fc10w、Fc10d−−−レジスタとBCD定数の加算
・F-11、F- 11w、F-11d−−−レジスタ間の減算
・Fc11、 Fc11w、Fc11d−−−レジスタとBCD定数の減算
・F-12、F- 12w、F-12d−−−レジスタ間の比較
・Fc12、Fc12w、Fc12d−−−レジスタと8進数の比較
・Fx12、Fx12w、Fx12d−−−レジスタと16進数の比較 |
(2) |
倍長演算時のプログラム
倍長演算は、下の桁の演算より発生した桁上げ、桁下げ信号を、次の桁の演算に自動的に反映させる機能です。倍長演算時のプログラムは、以下のように演算実行条件に続けて、下の桁からプログラムを作成します。
|
例1)

【参考】 |
次のようにプログラムすると倍長演算にはなりません。(同じ回路にある必要があります。) |

例2)3バイト以上の倍長演算も同様にして可能です。
(3) |
倍長演算時の内部処理
1. |
演算実行条件の以後、最初にプログラムしている倍長演算対象命令(21種類)は、それ以前のフラグ状態を含めずに演算します。
・ |
F-10、F-10w、F-10d、Fc10、 Fc10w、Fc10d・・・直前のキャリーフラグの状態を加算。
|
・ |
F-11、F-11w、F-11d、Fc11、 Fc11w、Fc11d・・・直前のキャリーフラグの状態を減算。 |
・ |
F-12、F-12w、F-12d、Fc12、 Fc12w、Fc12d、Fx12、Fx12w、Fx12d・・・直前のキャリーフラグの状態を減算。 |
|
2. |
共通の演算実行条件で、次に倍長演算対象命令のいずれかの命令があると、下記のように演算します。
1. |
直前のキャリーフラグの状態を含めて演算を実行します。 |
2. |
ゼロフラグは「直前のゼロフラグの状態」と「該当命令の演算によるゼロフラグの状態」をANDし、両方が1のときにセットされます。 |
|
|
(4) |
倍長演算に関する注意
1. |
倍長演算対応命令(21種類)は、共通の演算条件でプロゴラムすると、異種命令間でもフラグを含んだ命令を行います。
|
2. |
倍長演算対応命令の間に、フラグに影響を与えない命令があっても、倍長演算として実行します。
 |
3. |
倍長演算対象命令の間に、フラグに影響を与える命令があると、その命令によるフラグを含んだ演算を行います。
 |
4. |
F-10(w、d)、Fc10(w、d)、F-11(w、d)、Fc11(w、d)で、BCDコード以外を使用するとエラーフラグがONし、それ以後の倍長演算は実行しません。
|
|
|
【関連事項】

 |
なし |
|