如何使用S7-200 PLC的循环右移位和循环左移位指令
循环移位指令将输入IN中的数的各位向右或向左循环移动N位后,送给输出OUT。循环移位是环形的,移出端既与另一端相连,又与特殊存储器位SMl.1相连,即移出位在被移到另一端的同时,也进入SMl.1,如图6-36所示。
![移位和循环移位指令图](http://www.591dg.com/uploads/allimg/160825/5-160R514513N18.png)
![移位和循环移位指令图](http://www.591dg.com/uploads/allimg/160825/5-160R514513N18.png)
移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位;如果移动的位数N大于或等于允许值(字节操作为8,字操作为16,双字操作为32),则在执行循环移位之前,先对N进行取模操作,方法是用移位的次数N除以实际的数据长度,取余数得到一个有效的移位次数;例如对于字移位,将N除以16后取余数。取模操作的结果对于字节操作是0 -7,对于字操作是0-15,对于双字操作是0~31。如果移位次数为0,循环移位指令不执行。
如果循环移位指令执行,移出的最后一位的值存放在溢出标志位( SMl.1)。当循环移位的结果为0时,零标志位( SMl.0)置1。
字节操作是无符号的,对于字和双字操作,当使用有符号的数据时,符号位也被移动。
移位和循环指令影响到的特殊存储器SM标志位是:零标志位SMl.0(结果为O),溢出标志位SMl.1(溢出)。
上一篇:PLC变频器受干扰的处理方法
下一篇:PLC怎样排除逻辑错误
相关推荐
最新更新
推荐阅读
猜你喜欢
电工推荐
![电工技术基础_电工基础知识_电工之家-电工学习网](/skin/images/guanzhu.jpg)