首页 理论教育 多位逻辑处理指令:优化方案

多位逻辑处理指令:优化方案

更新时间:2025-01-10 工作计划 版权反馈
【摘要】:表3.3-2 字节/字/双字逻辑处理指令表图3.3-5 状态0和1标志字节的生成程序程序中的系统特殊标志SM0.0的状态恒为1,输入MB0可为任意状态,MB0通过字节取反指令INV_B,可在MB1上得到MB0的所有位取反状态。利用多位逻辑运算指令,将输入信号IW0的低字节I0.0~I0.7和高字节I1.0~I1.7的对应位进行“与”运算,结果输出到MB0的程序如图3.3-6所示。

1.指令格式

802S/C/D、808D/828D集成S7-200PLC可直接以字节(B)、字(W)或双字(D)为单位,一次性进行多位逻辑运算处理。

多位逻辑处理包括状态取反(INV)、逻辑“与”运算(WAND)、逻辑“或”运算(WOR)、逻辑“异或”运算(WXOR)。多位逻辑处理指令的编程格式相同,指令功能可通过表3.3-2所示的指令代码区分。此外,状态取反(INV)的操作数输入为1个(IN),其他指令则需要输入2个操作数(IN1、IN2)。

2.应用示例

【例3-1】利用多位逻辑运算指令在标志MB10中生成状态00000000、在标志MB11中生成状态11111111的梯形图程序如图3.3-5所示。

表3.3-2 字节/字/双字逻辑处理指令表

978-7-111-50291-3-Chapter03-32.jpg

978-7-111-50291-3-Chapter03-33.jpg(www.xing528.com)

图3.3-5 状态0和1标志字节的生成程序

程序中的系统特殊标志SM0.0的状态恒为1,输入MB0可为任意状态,MB0通过字节取反指令INV_B,可在MB1上得到MB0的所有位取反状态。因此,Network1可利用MB0和MB1的“位与”运算,在MB10上输出状态00000000;Network2则可通过MB0和MB1的“位或”运算,在MB11上输出状态11111111。

【例3-2】利用多位逻辑运算指令,将输入信号IW0的低字节I0.0~I0.7和高字节I1.0~I1.7的对应位进行“与”运算,结果输出到MB0的程序如图3.3-6所示。

978-7-111-50291-3-Chapter03-34.jpg

图3.3-6 字节输入信号“与”运算程序例

程序Network1通过IW0和十六进制数00FF的“位与”运算处理,可在MW10的低字节MB10上获得IW0低8位输入I0.0~I0.7的状态。Network2首先通过IW0与FF00的“位与”运算,在MW12的高字节MB13上获得IW0高8位输入I1.0~I1.7的状态,然后通过MB10和MB13的“与”运算,在MB0上得到所需要的结果。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈