名称 | 指令格式 (语句表) | 功能 | 操作数寻址范围 |
加法指令 | +I IN1,OUT | 两个16位带符号整数相加,得到一个16位带符号整数。
执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)
| IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
|
+D IN1,IN2 | 两个32位带符号整数相加,得到一个32位带符号整数。
执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
|
+R IN1,OUT | 两个32位实数相加,得到一个32位实数。
执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以常数
|
减法指令 | -I IN1,OUT | 两个16位带符号整数相减,得到一个16位带符号整数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
| IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
|
-D IN1,OUT | 两个32位带符号整数相减,得到一个32位带符号整数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
|
-R IN1,OUT | 两个32位实数相加,得到一个32位实数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以常数
|
乘法指令 | *I IN1,OUT | 两个16位符号整数相乘,得到一个16整数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
| IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
|
MUL IN1,OUT | 两个16位带符号整数相乘,得到一个32位带符号整数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
| IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数
OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
|
*D IN1,OUT | 两个32位带符号整数相乘,得到一个32位带符号整数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
|
*R IN1,OUT | 两个32位实数相乘,得到一个32位实数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是常数
|
除法指令 | /I IN1,OUT | 两个16位带符号整数相除,得到一个16位带符号整数商,不保留余数。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
| IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
|
DIV IN1,OUT | 两个16位带符号整数相除,得到一个32位结果,其中低16位为商,高16位为结果。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
| IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数
OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
|
/D IN1,OUT | 两个32位带符号整数相除,得到一个32位整数商,不保留余数。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
|
/R IN1,OUT | 两个32位实数相除,得到一个32位实数商。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
| IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是常数
|
数学函数指令 | SQRT IN,OUT | 把一个32位实数(IN)开平方,得到32位实数结果(OUT) | IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN还可以是常数
|
LN IN,OUT | 对一个32位实数(IN)取自然对数,得到32位实数结果(OUT) |
EXP IN,OUT | 对一个32位实数(IN)取以e为底数的指数,得到32位实数结果(OUT) |
SIN IN,OUT | 分别对一个32位实数弧度值(IN)取正弦、余弦、正切,得到32位实数结果(OUT) |
COS IN,OUT |
TAN IN,OUT |
增减指令 | INCB OUT | 将字节无符号输入数加1
执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)
| IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD
IN还可以是常数
|
DECB OUT | 将字节无符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
|
INCW OUT | 将字(16位)有符号输入数加1
执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)
| IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD
IN还可以是AIW和常数
|
DECW OUT | 将字(16位)有符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
|
INCD OUT | 将双字(32位)有符号输入数加1
执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)
| IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN还可以是HC和常数
|
DECD OUT | 将字(32位)有符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
|