Operatore IEC per la rotazione bit per bit di un operando verso destra.
erg:= ROR (in, n)
Tipi di dati consentiti
oBYTE
oWORD
oDWORD
oLWORD
in verrà spostato di 1 posizione bit verso destra n volte, mentre il bit più a sinistra verrà reinserito da sinistra.
NOTA: La quantità di bit notata per l'operazione aritmetica dipende dal tipo di dati della variabile di ingresso. Se la variabile di ingresso è una costante, viene considerato il tipo di dati più piccolo possibile. Il tipo di dati della variabile di uscita non ha alcun effetto sull'operazione aritmetica.
Vedere nel seguente esempio in notazione esadecimale i diversi risultati per erg_byte e erg_word. Il risultato dipende dal tipo di dati della variabile di ingresso (BYTE o WORD), sebbene i valori delle variabili di ingresso in_byte e in_word siano gli stessi.
PROGRAM ror_st
VAR
in_byte : BYTE:=16#45;
in_word : WORD:=16#45;
erg_byte : BYTE;
erg_word : WORD;
n: BYTE :=2;
END_VAR
erg_byte:=ROR(in_byte,n); (* Result is 16#51 *)
erg_word:=ROR(in_word,n); (* Result is 16#4011 *)
LD in_byte
ROR n
ST erg_byte