MULLH
|
下位16ビット・上位16ビット乗算 【V2.01.00以降】
|
MULLH
|
Multiply Low-order word and High-order word
|
【構文】
MULLH src, src2, Adest
【オペレーション】
signed short tmp1, tmp2;
signed 72bit tmp3;
tmp1 = (signed short) src;
tmp2 = (signed short) (src2 >> 16);
tmp3 = (signed long) tmp1 * (signed long) tmp2;
Adest = (tmp3 << 16);
【機能】
srcの下位16ビットとsrc2の上位16ビットの乗算を行い、その結果をアキュムレータに格納します。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせ、アキュムレータのb71〜b48に対応する部分は、符号拡張されます。また、アキュムレータのb15〜b0は、“0”になります。srcの下位16ビットとsrc2の上位16ビットは符号付き整数として扱われます。アセンブルオプション-isaを用いてRXv2以降の命令セットを指定した場合にアセンブルできます。
【命令フォーマット】
|
|
|
|
|
|
MULLH src, src2, Adest
|
Rs
|
Rs2
|
A0, A1
|
|
注 | Adestには、ACC0の場合A0、ACC1の場合A1を指定してください。 |
【フラグ変化】
フラグは変化しません。
【記述例】