名称:循环右移

符号:ROR

说明:

        该类型模块功能是将输入参数1“IN”循环右移输入参数2“N”位，结果赋给输出参数OUT，BOOL类型循环移位任意位后仍得到原来的值，当BYTE类型、USINT类型和SINT类型的移位数N超过8时，按N%8（取余）进行运算，当UINT类型、INT类型和WORD类型的移位数N超过16时，按N%16（取余）进行运算，当UDINT类型、DINT类型和DWORD类型的移位数N超过32时，按N%32（取余）进行运算。

图片:

参数:

参数 | 声明 | 类型 | 描述
--- | --- | --- | ---
IN | Input | BOOL/BYTE/WORD/DWORD |
    第一输入值(被操作数)
N | Input | UINT |
    第二输入值（右移位数）
OUT | Output | BOOL/BYTE/WORD/DWORD |
    输出值

示例:

LD:

ST:

TagOut := ROR(IN := TagIn1, N := TagIn2);

解释:

参数 | 操作数 | 值
--- | --- | ---
IN | TagIn1 | 8
N | TagIn2 | 33
OUT | TagOut | 4

    	IN1、N输入相应类型数据，ROR输出循环右移运算结果。