Vue d'ensemble
Opérateur IEC servant à effectuer une rotation bit à bit d'un opérande vers la gauche.
erg:= ROL (in, n)
Types de données autorisés
in
est décalé n
fois vers la gauche d'une position équivalant à un bit, le bit le plus à gauche étant réinséré à droite.
NOTE : le type de données de la variable d'entrée détermine le nombre de bits à utiliser pour l'opération arithmétique. Avec une constante comme variable d'entrée, c'est le type de données de taille la plus faible qui est considéré. L'opération arithmétique ne dépend en aucune manière du type de données de la variable de sortie.
Exemples
L'exemple suivant illustre les différents résultats de erg_byte
et erg_word
en notation hexadécimale. Le résultat dépend du type de données de la variable d'entrée (BYTE ou WORD), bien que les variables d'entrée in_byte
et in_word
aient les mêmes valeurs.
Exemple en langage ST
PROGRAM rol_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:=ROL(in_byte,n); (* Result is 16#15 *)
erg_word:=ROL(in_word,n); (* Result is 16#0114 *)
Exemple en langage IL
LD in_byte
ROL n
ST erg_byte