是不是所有的PLC移位寄存器指令都一样以及怎么辨别
移位寄存器指令的LAD及STL指令格式如图6-37所示。
![移位寄存器指令的LAD及STL指令格式图](http://www.591dg.com/uploads/allimg/160825/5-160R515002cB.png)
移位寄存器指令SHRB将DATA端输入的数值移人移位寄存器。其中,S—BIT指定移位寄存器的最低位,N指定移位寄存器的长度和移位方向(正向移位时N为正值,反向移位时N为负值,N= -64 - +64)。移位寄存器的移出端与溢出标志位( SMl.1)连接,移出的位存放在SMl.1中。
正向移位(N为正)时,在使能输入(EN)的上升沿,寄存器中的各位由低位向 图6-37移位寄存器指令的LAD及STL指令格式高位移一位,DATA输入的二进制数从最低位(S- BIT)移入,最高位移出,被移到溢出标志位(SMl.1)。
反向移位(N为负)时,在使能输入( EN)的上升沿,输入数据DATA从最高位移入,最低位(S- BIT)移出,移出的数据存放在溢出标志位(SMl.1)中。DATA和S-BIT为BOOL型变量。图6-38中给出了N为正和负两种情况下的移位过程。
![移位寄存器的移位过程](http://www.591dg.com/uploads/allimg/160825/5-160R5150125251.png)
移位寄存器指令提供了一种排列和控制产品流或者数据的简单方法。
移位寄存器最低位的地址为S- BIT;最高位(MSB.)地址的计算公式为MSB.:l(S_BIT的字节号)+(c1 N 1-1)+(S_BIT的位号))/8的商]*[除8的余数]
例如,如果S—BIT是V33.4,N是14,则有如下计算式:
33+(14 -1+4)/8 =33 +17/8 =33 +2(余数为1)=35(余数为1),因此,MSB.b是V35.1。
移位寄存器指令影响的特殊继电器为:零标志位SMl.0(结果为0),溢出标志位SMl.1(溢出)。移位寄存器指令的应用示例如图6-39所示。
![移位寄存器指令的应用示例图](http://www.591dg.com/uploads/allimg/160825/5-160R51502251I.png)
下一篇:西门子PLC怎样处理故障
相关推荐
最新更新
推荐阅读
猜你喜欢
电工推荐
![电工技术基础_电工基础知识_电工之家-电工学习网](/skin/images/guanzhu.jpg)