ROR

Der IEC-Operator dient der bitweisen Rotation eines Operanden nach rechts.

Erlaubte Datentypen: BYTE, WORD, DWORD, LWORD

Syntax: erg := ROR (in, n)

TwinCAT verschiebt in n-mal um 1 Bit nach rechts und fügt gleichzeitig das Bit mit der äußersten rechten Position von links wieder ein.

ROR 1:

Die Anzahl der Bits, die TwinCAT für die Rechenoperation berücksichtigt, wird durch den Datentyp der Eingangsvariablen in vorgegeben. Handelt es sich hierbei um eine Konstante, berücksichtigt TwinCAT den kleinstmöglichen Datentyp. Der Datentyp der Ausgangsvariablen bleibt ohne Auswirkung auf die Rechenoperation.

Beispiele:

Die Ergebnisse für nResByte und nResWord sind unterschiedlich, abhängig vom Datentyp der Eingangsvariablen, obwohl die Werte der Eingangsvariablen nInByte und nInWord gleich sind.

ST:

PROGRAM Ror_st 
VAR 
    nInByte  : BYTE:=16#45; 
    nInWord  : WORD:=16#45; 
    nResByte : BYTE; 
    nResWord : WORD;
    nVar : BYTE :=2; 
END_VAR

nResByte := ROR(nInByte,nVar); (*Result: 16#51*)
nResWord := ROR(nInWord,nVar); (*Result: 16#4011*)

FUP:

ROR 2: