指令说明:
DDIVP是32位脉冲执行型除法运算指令,即指令激活一次,执行一次除法运算。是将源操作数[S1+1,S1]的内容作为被除数,源操作数[S2+1,S2]的内容作为除数,[S1+1,S1]除以[S2+1,S2]之后,商传送到[D+1,D]中,余数传送到[D+3,D+2]中。
各数据位的最高位为正(0)、负(1)的符号位,这些数据以代数方式进行除法运算。
例:3200÷310=10(商),100(余数)
运算结果(商、余数),会占用指定D开始合计4点的软元件,所以请注意不能与其它控制重复。
[S1+1,S1]和[S2+1,S2]中指定常数(K)时,会自动进行BIN(二进制数)转换。
操作数:
S1:KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@
S2:KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@
D:KnY, KnM, KnS, T,C,D,Z,V,LV,DT
指令格式:[DDIVP S1 S2 D]
注意:除数S2为0时,会发生运算出错,其结果为-1,但可以执行命令。运算结果超过2147483647(32位运算)时,出现运算出错。
编程示例:
当X0闭合时,DDIVP执行一次,将D1D0的32位数据除以D3D2的32位数据,得到的商传送到D5D4,余数传送到D7D6。
