Der IEC-Operator dient der bitweisen Rotation eines Operanden nach rechts.
Erlaubte Datentypen: BYTE
, WORD
, DWORD
, LWORD
erg := ROR(in,n)
CODESYS 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.
Die Anzahl der Bits, die CODESYS für die Rechenoperation berücksichtigt, wird durch den Datentyp der Eingangsvariablen
in
vorgegeben. Handelt es sich hierbei um eine Konstante, berücksichtigt CODESYS den kleinstmöglichen Datentyp . Der Datentyp der Ausgangsvariable bleibt ohne Auswirkung
auf die Rechenoperation.
Beispiele
Die Ergebnisse für erg_byte
und erg_word
sind unterschiedlich, abhängig vom Datentyp der Eingangsvariablen, obwohl die Werte
der Eingangsvariablen in_byte
und in_word
gleich sind.
ST:
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: 16#51 *) erg_word := ROR(in_word,n); (* Result: 16#4011 *)
FUP:
