MACLO
|
下位16ビット積和演算
|
MACLO
|
Multiply-ACcumulate LOw-order word
|
【構文】
(2) | MACLO src, src2, Adest 【V2.01.00以降】 |
【オペレーション】
(1) | signed short tmp1, tmp2; |
signed long long tmp3;
tmp1 = (signed short) src;
tmp2 = (signed short) src2;
tmp3 = (signed long) tmp1 * (signed long) tmp2;
ACC = ACC + (tmp3 << 16);
(2) | signed short tmp1, tmp2; |
signed 72bit tmp3;
tmp1 = (signed short) src;
tmp2 = (signed short) src2;
tmp3 = (signed long) tmp1 * (signed long) tmp2;
Adest = Adest + (tmp3 << 16); 【V2.01.00以降】
【機能】
(1) | srcの下位16ビットとsrc2の下位16ビットの乗算を行い、乗算結果とアキュムレータ(ACC)の加算を行います。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせて加算します。加算結果はアキュムレータに格納されます。srcの下位16ビットとsrc2の下位16ビットは符号付き整数として扱われます。 |
(2) | srcの下位16ビットとsrc2の下位16ビットの乗算を行い、乗算結果とアキュムレータ(ACC0またはACC1)の加算を行います。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせて加算します。加算結果はアキュムレータに格納されます。srcの下位16ビットとsrc2の下位16ビットは符号付き整数として扱われます。アセンブルオプション-isaを用いてRXv2以降の命令セットを指定した場合にアセンブルできます。 【V2.01.00以降】 |
【命令フォーマット】
|
|
|
|
|
|
(1) MACLO src, src2
|
Rs
|
Rs2
|
−
|
|
(2) MACLO src, src2, Adest
【V2.01.00以降】
|
Rs
|
Rs2
|
A0, A1
|
|
注 | Adestには、ACC0の場合A0、ACC1の場合A1を指定してください。 |
【フラグ変化】
フラグ変化はありません。
【記述例】
MACLO R1, R2
MACLO R1, R2, A1
|