示例
以下示例说明了该指令的工作原理:
如果“TagIn”信号状态为“1”,则执行循环右移指令,将“TagIn_Value”的内容向右循环移动5位,并将结果发送到“TagOut_Value”。如果指令执行成功,将使“ENO”的信号状态为“1”,并触发输出“TagOut”置位。
可以使用“循环左移”指令对输入IN的操作数内容进行按位循环左移,结果存储在输出OUT中。该指令需要一个参数N,用于确定要循环移位的位数。如果N为0,输入IN的值会直接复制到输出OUT。
如果N的值超出操作数的位数,则操作数IN的值依然会按照可用位数进行循环移位。在移位过程中,移出的位会用来填充循环移位而产生的空位。
您可以在指令框的数据类型下拉菜单中选择合适的数据类型。图示说明了如何将DWORD数据类型的操作数内容向左循环移动3位:
示例
以下示例说明了该指令的工作原理:
如果“TagIn”信号状态为“1”,则执行循环左移指令,将“TagIn_Value”的内容向左循环移动5位,并将结果发送到“TagOut_Value”。如果指令执行成功,将使“ENO”的状态为“1”,并触发输出“TagOut”置位。