Skip to main content

Opérateur : SHL

L'opérateur IEC est utilisé pour le décalage au niveau du bit d'un opérande vers la gauche.

erg := SHL (in, n)

in: Opérande qui est décalé vers la gauche

n: Nombre de bits à décaler in À gauche

Important

Si n dépasse la largeur du type de données, cela dépend du système cible de la façon dont le BYTE, WORD, DWORD, et LWORD les opérandes sont remplis. Les systèmes cibles provoquent un remplissage avec des zéros ou n MOD <taille du registre>.

Important

Notez le nombre de bits qui CODESYS utilise pour cette opération tel que défini par le type de données de la variable d'entrée in.

Exemple 118. Exemples

Les résultats pour erg_byte et erg_word sont différentes, bien que les valeurs des in_byte et in_word les variables d'entrée sont les mêmes et les types de données des variables d'entrée sont différents.

ST

PROGRAM shl_st
VAR
  in_byte : BYTE := 16#45; (* 2#01000101 )
  in_word : WORD := 16#0045; (* 2#0000000001000101 )
  erg_byte : BYTE;
  erg_word : WORD;
  n: BYTE := 2;
END_VAR

erg_byte := SHL(in_byte,n); (* Result is 16#14, 2#00010100 *)
erg_word := SHL(in_word,n); (* Result is 16#0114, 2#0000000100010100 *)

FDB

_cds_img_shl.png