第二部 トロン仕様チップ命令詳細第四章 算術演算命令
MUL
算術演算命令 <<L1R>>,<<L1>>,<<L2>>

【ニモニックとオペランド】

MUL src, dest

【機能】

Multiply
乗算

【オプション】

なし

【命令フォーマットと表記法】

【解説】

 srcdestを乗算し、結果をdestに入れます。
 演算は符号付きで行われます。
 この命令では、結果のサイズが被乗数のサイズと同じになります。
オーバフローが発生した場合、正しい結果の下位ビットがdestにセットされ、それに応じてM_flagZ_flagがセットされます。
 たとえば、R0 = H'10000で
MUL.W #H'10000, R0
 を実行したとき、積はH'100000000ですから、R0 = 0(結果の下位ビット)、V_flag = 1、Z_flag = 1となります。


【フラグ変化】

【発生EIT】

RIE  src [Gen/r], dest [Gen/m]のアドレッシングモード違反
RIE sx = 11, sy = 11
 
 

【使用例】



 汎用レジスタR3の値(H'ab)にR12の値(H'fc)を乗算します。演算結果(H'0154)の下位8ビット(H'54)をR3にストアします。

 オーバフローが発生しますので、V_flagがセットされます。