S7-200PLC逻辑运算指令
逻辑运算指令如表4-21所示。
表4-21 逻辑运算指令
名称 | 指令格式 (语句表) | 功能 | 操作数 |
字节逻辑运算指令 | ANDB IN1,OUT | 将字节IN1和OUT按位作逻辑与运算,OUT输出结果 | IN1,IN2,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD IN1和IN2还可以是常数 |
ORB IN1,OUT | 将字节IN1和OUT按位作逻辑或运算,OUT输出结果 | ||
XORB IN1,OUT | 将字节IN1和OUT按位作逻辑异或运算,OUT输出结果 | ||
INVB OUT | 将字节OUT按位取反,OUT输出结果 | ||
字逻辑运算指令 | ANDW IN1,OUT | 将字IN1和OUT按位作逻辑与运算,OUT输出结果 | IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD IN1和IN2还可以是AIW和常数 |
ORW IN1,OUT | 将字IN1和OUT按位作逻辑或运算,OUT输出结果 | ||
XORW IN1,OUT | 将字IN1和OUT按位作逻辑异或运算,OUT输出结果 | ||
INVW OUT | 将字OUT按位取反,OUT输出结果 | ||
双字逻辑运算指令 | ANDD IN1,OUT | 将双字IN1和OUT按位作逻辑与运算,OUT输出结果 | IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD IN1和IN2还可以是HC和常数 |
ORD IN1,OUT | 将双字IN1和OUT按位作逻辑或运算,OUT输出结果 | ||
XORD IN1,OUT | 将双字IN1和OUT按位作逻辑异或运算,OUT输出结果 | ||
INVD OUT | 将双字OUT按位取反,OUT输出结果 | ||
表4-22 数据传送指令
名称 | 指令格式 (语句表) | 功能 | 操作数 | |
单一传送指令 | MOVB IN,OUT | 将IN的内容拷贝到OUT中 IN和OUT的数据类型应相同,可分别为字,字节,双字,实数 | IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD IN还可以是常数 | |
MOVW IN,OUT | IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD IN还可以是AIW和常数 OUT还可以是AQW | |||
MOVD IN,OUT | IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD 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还可以是常数 | |||
BIR IN,OUT | 立即读取输入IN的值,将结果输出到OUT | IN:IB OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD | ||
BIW IN,OUT | 立即将IN单元的值写到OUT所指的物理输出区 | IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 OUT:QB | ||
块传送指令 | BMB IN,OUT,N | 将从IN开始的连续N个字节数据拷贝到从OUT开始的数据块 N的有效范围是1~255 | IN,OUT:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 | |
BMW IN,OUT,N | 将从IN开始的连续N个字数据拷贝到从OUT开始的数据块 N的有效范围是1~255 | IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,*VD,*AC,*LD IN还可以是AIW OUT还可以是AQW N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 | ||
BMD IN,OUT,N | 将从IN开始的连续N个双字数据拷贝到从OUT开始的数据块 N的有效范围是1~255 | IN,OUT:VD,ID,QD,MD,SD,SMD,LD, *VD,*AC,*LD N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数 | ||
S7-200PLC移位与循环移位指令
移位与循环移位指令如表4-23所示。
移位与循环移位指令如表4-23所示。
表4-23 移位与循环移位指令
名称 | 指令格式 (语句表) | 功能 | 操作数 |
字节移位指令 | SRB OUT,N | 将字节OUT右移N位,最左边的位依次用0填充 | IN,OUT,N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD IN和N还可以是常数 |
SLB OUT,N 字符串截取指令 | 将字节OUT左移N位,最右边的位依次用0填充 | ||
RRB OUT,N | 将字节OUT循环右移N位,从最右边移出的位送到OUT的最左位 | ||
RLB OUT,N | 将字节OUT循环左移N位,从最左边移出的位送到OUT的最右位 | ||
字移位指令 | SRW OUT,N | 将字OUT右移N位,最左边的位依次用0填充 | IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD IN还可以是AIW和常数 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 |
SLW OUT,N | 将字OUT左移N位,最右边的位依次用0填充 | ||
RRW OUT,N | 将字OUT循环右移N位,从最右边移出的位送到OUT的最左位 | ||
RLW OUT,N | 将字OUT循环左移N位,从最左边移出的位送到OUT的最右位 | ||
双字移位指令 | SRD OUT,N | 将双字OUT右移N位,最左边的位依次用0填充 | IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD IN还可以是HC和常数 N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 |
SLD OUT,N | 将双字OUT左移N位,最右边的位依次用0填充 | ||
RRD OUT,N | 将双字OUT循环右移N位,从最右边移出的位送到OUT的最左位 | ||
RLD OUT,N | 将双字OUT循环左移N位,从最左边移出的位送到OUT的最右位 | ||
位移位寄存器指令 | SHRB DATA,S_BIT,N | 将DATA的值(位型)移入移位寄存器;S_BIT指定移位寄存器的最低位,N指定移位寄存器的长度(正向移位=N,反向移位=-N) | DATA,S_BIT:I,Q,M,SM,T,C,V,S,L N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数 |
S7-200PLC交换和填充指令
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论