tmp1 = (signed short) (src >> 16);
tmp2 = (signed short) (src2 >> 16);
tmp3 = (signed long) tmp1 * (signed long) tmp2;
tmp1 = (signed short) (src >> 16);
tmp2 = (signed short) (src2 >> 16);
tmp3 = (signed long) tmp1 * (signed long) tmp2;
Adest = (tmp3 << 16); 【V2.01.00以降】
srcの上位16ビットとsrc2の上位16ビットの乗算を行い、その結果をアキュムレータ(ACC)に格納します。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせ、アキュムレータのb63〜b48に対応する部分は、符号拡張されます。また、アキュムレータのb15〜b0は、“0”になります。srcの上位16ビットとsrc2の上位16ビットは符号付き整数として扱われます。 |
srcの上位16ビットとsrc2の上位16ビットの乗算を行い、その結果をアキュムレータ(ACC0またはACC1)に格納します。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせ、アキュムレータのb71〜b48に対応する部分は、符号拡張されます。また、アキュムレータのb15〜b0は、“0”になります。srcの上位16ビットとsrc2の上位16ビットは符号付き整数として扱われます。アセンブルオプション-isaを用いてRXv2以降の命令セットを指定した場合にアセンブルできます。 【V2.01.00以降】 |