DMULP

指令说明:

DMULP32位脉冲执行型乘法运算指令,即指令激活一次,执行一次乘法运算。是将源操作数[S1+1,S1]和源操作数[S2+1,S2]的内容进行二进制乘法运算后传送到目标操作数[D+3,D+2,D+1,D]64位(四字)中。

各数据位的最高位为正(0)、负(1)的符号位,这些数据以代数方式进行乘法运算。

例:5500×(-8540= -46970000

[S1+1,S1][S2+1,S2]中指定常数(K)时,会自动进行BIN(二进制数)转换。

[D+3,D+2,D+1,D]中指定位数为(K1~8)时,只能获得低32位的结果。

操作数:

       S1KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@

       S2KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@

       DKnY, KnM, KnS, T,C,D,Z,V,LV,DT

指令格式:[DMULP  S1  S2  D]

编程示例:

前面条件满足后,100×200= D7D6D5D4D7D6D5D4=20000

D1D0   ×   D3D2   =   D7D6D5D4

32         32         64

注意:一定要注意储存空间的结构,避免存储地址重叠,而得不到正确的数据。