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 = Adest + (tmp3 << 16); 【V2.01.00以降】
srcの上位16ビットとsrc2の上位16ビットの乗算を行い、乗算結果とアキュムレータ(ACC)の加算を行います。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせて加算します。加算結果はアキュムレータに格納されます。srcの上位16ビットとsrc2の上位16ビットは符号付き整数として扱われます。 |
srcの上位16ビットとsrc2の上位16ビットの乗算を行い、乗算結果とアキュムレータ(ACC0またはACC1)の加算を行います。ただし、乗算結果の最下位ビットはアキュムレータのb16にあわせて加算します。加算結果はアキュムレータに格納されます。srcの上位16ビットとsrc2の上位16ビットは符号付き整数として扱われます。アセンブルオプション-isaを用いてRXv2以降の命令セットを指定した場合にアセンブルできます。 【V2.01.00以降】 |