中为:IN1/IN2=OUT) LD,AC,*VD,*AC,*LD 两个32位带符号整数相除,得到一个IN1,IN2,OUT:VD,ID,QD,/D IN1,32位整数商,不保留余数。 MD,SD,SMD,LD,AC,*VD,*AC,OUT 执行结果:OUT/IN1=OUT(在LAD和FBD*LD 中为:IN1/IN2=OUT) IN1和IN2还可以是HC和常数 两个32位实数相除,得到一个32位实IN1,IN2,OUT:VD,ID,QD,/R IN1,数商。 MD,SD,SMD,LD,AC,*VD,*AC,OUT 执行结果:OUT/IN1=OUT(在LAD和FBD*LD 中为:IN1/IN2=OUT) IN1和IN2还可以是常数 SQRT 把一个32位实数(IN)开平方,得到IN,OUT:VD,ID,QD,MD,SD,IN,OUT 32位实数结果(OUT) SMD,LD,AC,*VD,*AC,*LD LN IN,对一个32位实数(IN)取自然对数,得IN还可以是常数 OUT 到32位实数结果(OUT) EXP IN,对一个32位实数(IN)取以e为底数的指数,得到32位实数结果(OUT) 数学函数OUT 指令 SIN IN,分别对一个32位实数弧度值(IN)取正OUT 弦、余弦、正切,得到32位实数结果COS IN,(OUT) OUT TAN IN,OUT INCB OUT DECB OUT INCW OUT 增减指令 DECW OUT INCD OUT DECD OUT 将字节无符号输入数加1 IN,OUT:VB,IB,QB,MB,SB,执行结果:OUT+1=OUT(在LAD和FBDSMB,LB,AC,*VD,*AC,*LD 中为:IN+1=OUT) IN还可以是常数 将字节无符号输入数减1 执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT) 将字(16位)有符号输入数加1 IN,OUT:VW,IW,QW,MW,SW,执行结果:OUT+1=OUT(在LAD和FBDSMW,LW,T,C,AC,*VD,*AC,中为:IN+1=OUT) *LD IN还可以是AIW和常数 将字(16位)有符号输入数减1 执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT) 将双字(32位)有符号输入数加1 IN,OUT:VD,ID,QD,MD,SD,执行结果:OUT+1=OUT(在LAD和FBDSMD,LD,AC,*VD,*AC,*LD 中为:IN+1=OUT) IN还可以是HC和常数 将字(32位)有符号输入数减1 执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT) S7-200PLC逻辑运算指令
逻辑运算指令如表4-21所示。
表4-21 逻辑运算指令 名称 指令格式 (语句表) 功能 操作数 字节逻辑ANDB IN1,将字节IN1和OUT按位作逻辑IN1,IN2,OUT:VB,IB,QB,MB,SB,运算指令 OUT 与运算,OUT输出结果 SMB,LB,AC,*VD,*AC,*LD ORB IN1,将字节IN1和OUT按位作逻辑IN1和IN2还可以是常数 OUT 或运算,OUT输出结果 XORB IN1,将字节IN1和OUT按位作逻辑OUT 异或运算,OUT输出结果 INVB OUT 将字节OUT按位取反,OUT输出结果 ANDW IN1,将字IN1和OUT按位作逻辑与IN1,IN2,OUT:VW,IW,QW,MW,SW,OUT 运算,OUT输出结果 SMW,LW,T,C,AC,*VD,*AC,*LD ORW IN1,将字IN1和OUT按位作逻辑或IN1和IN2还可以是AIW和常数 运算,OUT输出结果 字逻辑运OUT 算指令 XORW IN1,将字IN1和OUT按位作逻辑异OUT 或运算,OUT输出结果 INVW OUT 将字OUT按位取反,OUT输出结果 ANDD IN1,将双字IN1和OUT按位作逻辑IN1,IN2,OUT:VD,ID,QD,MD,SD,OUT 与运算,OUT输出结果 SMD,LD,AC,*VD,*AC,*LD ORD IN1,将双字IN1和OUT按位作逻辑IN1和IN2还可以是HC和常数 或运算,OUT输出结果 双字逻辑OUT 运算指令 XORD IN1,将双字IN1和OUT按位作逻辑OUT INVD OUT 异或运算,OUT输出结果 将双字OUT按位取反,OUT输出结果
S7-200PLC数据传送指令 数据传送指令如表4-22所示。
表4-22 数据传送指令
名称 指令格式 (语句表) MOVB IN,OUT 功能 操作数 IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD IN还可以是常数 IN,OUT:VW,IW,QW,MW,SW,SMW, LW,T,C,AC,*VD,*AC,*LD IN还可以是AIW和常数 OUT还可以是AQW 将IN的内容拷贝到OUT中 IN和OUT的数据类型应相同,可IN,OUT:VD,ID,QD,MD,SD,SMD,分别为字,字节,双字,实数 MOVD IN,LD,AC,*VD,*AC,*LD 单一传OUT IN还可以是HC,常数,&VB,&IB,送指令 &QB,&MB,&T,&C MOVR IN,OUT IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD IN还可以是常数 MOVW IN,OUT IN:IB BIR IN,立即读取输入IN的值,将结果输OUT:VB,IB,QB,MB,SB,SMB,LB, OUT 出到OUT AC,*VD,*AC,*LD BIW IN,立即将IN单元的值写到OUT所指IN:VB,IB,QB,MB,SB,SMB,LB, OUT 的物理输出区 AC,*VD,*AC,*LD和常数 OUT:QB 将从IN开始的连续N个字节数据IN,OUT:VB,IB,QB,MB,SB,SMB,BMB IN,拷贝到从OUT开始的数据块 LB,*VD,*AC,*LD OUT,N N的有效范围是1~255 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,*VD,*AC,*LD 将从IN开始的连续N个字数据拷块传送BMW IN,IN还可以是AIW 贝到从OUT开始的数据块 指令 OUT,N OUT还可以是AQW N的有效范围是1~255 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 将从IN开始的连续N个双字数据IN,OUT:VD,ID,QD,MD,SD,SMD,BMD IN,拷贝到从OUT开始的数据块 LD, *VD,*AC,*LD OUT,N N的有效范围是1~255 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 S7-200PLC移位与循环移位指令
移位与循环移位指令如表4-23所示。
表4-23 移位与循环移位指令 名称 指令格式 (语句表) 功能 操作数 将字节OUT右移N位,最左边的位依次用0IN,OUT,N:VB,IB,QB,SRB OUT,N 填充 MB,SB,SMB,LB,AC,*VD,将字节OUT左移N位,最右边的位依次用0*AC,*LD SLB OUT,N IN和N还可以是常数 填充 字节移位指令 将字节OUT循环右移N位,从最右边移出的RRB OUT,N 位送到OUT的最左位 将字节OUT循环左移N位,从最左边移出的RLB OUT,N 位送到OUT的最右位 将字OUT右移N位,最左边的位依次用0填IN,OUT:VW,IW,QW,MW,SRW OUT,N 充 SW,SMW,LW,T,C,AC,将字OUT左移N位,最右边的位依次用0填*VD,*AC,*LD SLW OUT,N IN还可以是AIW和常数 充 字移位指令 将字OUT循环右移N位,从最右边移出的位N:VB,IB,QB,MB,SB,RRW OUT,N SMB,LB,AC,*VD,*AC,送到OUT的最左位 将字OUT循环左移N位,从最左边移出的位*LD,常数 RLW OUT,N 送到OUT的最右位 将双字OUT右移N位,最左边的位依次用0IN,OUT:VD,ID,QD,MD,SRD OUT,N 填充 SD,SMD,LD,AC,*VD,*AC,将双字OUT左移N位,最右边的位依次用0*LD SLD OUT,N IN还可以是HC和常数 填充 双字移位指令 将双字OUT循环右移N位,从最右边移出的N:VB,IB,QB,MB,SB,RRD OUT,N SMB,LB,AC,*VD,*AC,位送到OUT的最左位 将双字OUT循环左移N位,从最左边移出的*LD,常数 RLD OUT,N 位送到OUT的最右位 位移位SHRB DATA,将DATA的值(位型)移入移位寄存器;S_BITDATA,S_BIT:I,Q,M,SM,寄存器S_BIT,N 指定移位寄存器的最低位,N指定移位寄存T,C,V,S,L 指令 器的长度(正向移位=N,反向移位=-N) N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 S7-200PLC交换和填充指令
交换和填充指令如表4-24所示。
表4-24 交换和填充指令 名称 换字节指令 指令格式 (语句表) SWAP IN 功能 操作数 将输入字IN的高位字节与低位字IN:VW,IW,QW,MW,SW,SMW,LW,节的内容交换,结果放回IN中 T,C,AC,*VD,*AC,*LD IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD 用输入字IN填充从OUT开始的N填充FILL IN,IN还可以是AIW和常数 个字存储单元 指令 OUT,N OUT还可以是AQW N的范围为1~255 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 S7-200PLC 表操作指令
表操作指令如表4-25所示。
表4-25 表操作指令
名指令格式 称 (语句表) 功能 操作数 DATA,TABLE:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD DATA还可以是AIW,AC和常数 表存ATT DATA,将一个字型数据DATA添加到表TABLE的末尾。EC数TABLE 值加1 指令 将表TABLE的第一个字型数据删除,并将它送到DATA,TABLE:VW,IW,FIFO 表DATA指定的单元。表中其余的数据项都向前移动一QW,MW,SW,SMW,LW,DATA 取TABLE,个位置,同时实际填表数EC值减1 T,C, *VD,*AC,*LD 数将表TABLE的最后一个字型数据删除,并将它送到DATA还可以是AQW和AC 指LIFO DATA指定的单元。剩余数据位置保持不变,同时实令 TABLE,DATA 际填表数EC值减1 FND= TBL,TBL:VW,IW,QW,MW,PTN,INDEX 搜索表TBL,从INDEX指定的数据项开始,用给定SMW,LW,T,C, *VD,表FND<> TBL,值PTN检索出符合条件(=,<>,<,>)的数据项 *AC,*LD 查PTN,INDEX 如果找到一个符合条件的数据项,则INDEX指明该PTN,INDEX:VW,IW,找FND< TBL,数据项在表中的位置。如果一个也找不到,则INDEXQW,MW,SW,SMW,LW,指PTN,INDEX 的值等于数据表的长度。为了搜索下一个符合的值,T,C,AC, *VD,*AC,令 FND> TBL,在再次使用该指令之前,必须先将INDEX加1 *LD PTN,INDEX PTN还可以是AIW和AC S7-200PLC 数据转换指令
数据转换指令如表4-26所示。
表4-26 数据转换指令 名称 指令格式 (语句功能 操作数 表) IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD BTI IN,将字节输入数据IN转换成整数类型,结果送到OUT OUT,无符号扩展 IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,ITB IN,将整数输入数据IN转换成一个字节,结果送到*LD,常数 OUT OUT。输入数据超出字节范围(0~255)则产生溢出 OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD IN:VD,ID,QD,MD,SD,SMD,LD,HC,AC,DTI IN,*VD,*AC,*LD,常数 将双整数输入数据IN转换成整数,结果送到OUT。 OUT OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD IN:VW,IW,QW,MW,SW,SMW,LW,T,C,数据类型AIW,AC,*VD,*AC,转换指令 ITD IN,将整数输入数据IN转换成双整数(符号进行扩展),*LD,常数 OUT 结果送到OUT OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD ROUND 将实数输入数据IN转换成双整数,小数部分四舍IN,OUT:VD,ID,QD,IN,OUT 五入,结果送到OUT MD,SD,SMD,LD,AC,*VD,*AC,*LD TRUNC 将实数输入数据IN转换成双整数,小数部分直接IN还可以是常数 在ROUND指令中IN还IN,OUT 舍去,结果送到OUT 可以是HC IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,DTR IN,将双整数输入数据IN转换成实数,结果送到OUT *VD,*AC,*LD OUT IN还可以是HC和常数 BCDI OUT IBCD OUT 将BCD码输入数据IN转换成整数,结果送到OUT。IN,OUT:VW,IW,QW,IN的范围为0~9999 MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD IN还可以是AIW和常将整数输入数据IN转换成BCD码,结果送到OUT。数 IN的范围为0~9999 AC和常数 IN:VW,IW,QW,MW,编码译码ENCO 将字节输入数据IN的最低有效位(值为1的位)SW,SMW,LW,T,C,指令 IN,OUT 的位号输出到OUT指定的字节单元的低4位 AIW,AC,*VD,*AC,*LD,常数
相关推荐: