系列plc循环与移位指令是使位数据或字数据向指定方向循环、位移的指令。
一、循环移位指令
1.左、右循环移位指令
左、右循环移位指令包括循环右移ROR(Rotation Right)和循环左移ROL(Rotation Left)指令。
2.带进位左、右循环移位指令
带进位循环移位指令也包括带进位循环右移RCR(Rotation Right with Carry)和带进位循环左移RCL(Rotation Left with Carry)指令,功能编号分别为FNC32和FNC33。
二、移位指令
1.位右移和位左移指令
位右移SFTR(Shift Right)与位左移SFTL(Shift Left)指令实现位元件中的状态成组地向右或向左移动。
2.字右移和字左移指令
字右移WSFR(word Shift Right)、字左移WSFL(word Shift Left)的源操作数可以取KnX、KnY、KnM、KnS、T、C和D,目标操作数可以取KnY、KnM、KnS、T、C和D。字移动指令只有16位运算。
3.移位寄存器写入与读出指令
移位寄存器又称为先入先出FIFO(First in First out)堆栈,堆栈的长度范围为2~512个字。移位寄存器写入指令SFWR(Shift Register Write)和移位寄存器读出指令SFRD(Shift Register Read)用于FIFO堆栈的读写,先写入的数据先读出。