ROL
Der IEC-Operator dient der bitweisen Rotation eines Operanden nach links.
Erlaubte Datentypen: BYTE, WORD, DWORD, LWORD
Syntax: erg := ROL (in, n)
TwinCAT verschiebt in n-mal um 1 Bit nach links und fügt gleichzeitig das Bit mit der äußersten linken Position von rechts wieder ein.
Die Anzahl der Bits, die TwinCAT für die Rechenoperation berücksichtigt, geben Sie durch den Datentyp der Eingangsvariable in vor. Wenn es sich hierbei um eine Konstante handelt, 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 Rol_st
VAR
nInByte : BYTE := 16#45;
nInWord : WORD := 16#45;
nResByte : BYTE;
nResWord : WORD;
nVar : BYTE := 2;
END_VAR
nResByte := ROL(nInByte,nVar); (*Result: 16#15*)
nResWord := ROL(nInWord,nVar); (*Result: 16#0114*)
FUP: