SHR

Der IEC-Operator dient dem bitweisen Verschieben eines Operanden nach rechts.

Syntax: erg := SHR (in, n)

in: Operand, der nach rechts verschoben wird.

n: Anzahl der Bits, um die in nach rechts verschoben wird.

SHR 1:

Wenn n die Datentyp-Breite überschreitet, hängt es vom Zielsystem ab, wie BYTE-, WORD-, DWORD- und LWORD-Operanden auffüllt werden. Die Zielsysteme bewirken Auffüllen mit Nullen oder mit n MOD <register width>.

Beispiele:

ST:

PROGRAM Shr_st
VAR
    nInByte  :  BYTE:=16#45; (*2#01000101*)
    nInWord  :  WORD:=16#0045; (*2#0000000001000101*)
    nResByte :  BYTE;
    nResWord :  WORD;
    nVar : BYTE := 2; 
END_VAR

nResByte := SHR(nInByte,nVar); (*Result is 16#11, 2#00010001*)
nResWord := SHR(nInWord,nVar); (*Result is 16#0011, 2#0000000000010001*)

FUP:

SHR 2: