macu


符号なしワード・データの加算付き乗算を行います。(Multiply Word Unsigned and Add)

[指定形式]

-

macu reg1, reg2, reg3, reg4

[機能]

汎用レジスタreg2のワード・データに,汎用レジスタreg1のワード・データを乗算した結果(64ビット・データ)と,汎用レジスタreg3を下位32ビットとして,汎用レジスタreg3+1(たとえば,reg3がr6の場合,「reg3+1」はr7となります)を上位32ビットとして結合した64ビット・データを加算し,その結果(64ビット・データ)の上位32ビットを汎用レジスタreg4+1に,下位32ビットを汎用レジスタreg4に格納します。

汎用レジスタreg1,reg2の内容を32ビットの符号なし整数として扱います。

汎用レジスタreg1,reg2,reg3,reg3+1は影響を受けません。

[詳細説明]

アセンブラでは,機械語命令のmacu命令が1つ生成されます。

[フラグ]

CY

OV

S

Z

SAT

[注意事項]

-

reg3,またはreg4に指定できる汎用レジスタは,偶数番号の付いたレジスタ(r0,r2,r4,…,r30)だけです。奇数番号の付いたレジスタ(r1,r3,…,r31)を指定した場合は,次のメッセージが出力され,偶数番号の付いたレジスタ(r0,r2,r4,…,r30)を指定したとして,アセンブルが続行されます。

W0550026 : 奇数番号の付いたレジスタ(rXX)が指定されています。

偶数番号の付いたレジスタ(rYY)を指定したとして、アセンブルを続行します。