L-force | plc designer – Lenze PLC Designer PLC Designer (R3-1) User Manual

Page 1055

Advertising
background image

L-force | PLC Designer

Programming Reference

DMS 4.1 EN 03/2011 TD29

1053

Example in ST:

PROGRAM shr_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:=SHR(in_byte,n); (* Result is 11 *)
erg_word:=SHR(in_word,n); (* Result is 0011 *)

Example in FBD:

Example in IL:

ROL
IEC Operator: Bitwise rotation of an operand to the left.

erg:= ROL (in, n)

Allowed data types: BYTE, WORD, DWORD, LWORD.
in will be shifted one bit position to the left n times while the bit that is furthest to the
left will be reinserted from the right.

Note: Please note, that the amount of bits, which is noticed for the arithmetic
operation, is pretended by the data type of the input variable !. If the input variable
is a constant the smallest possible data type is noticed. The data type of the output
variable has no effect at all on the arithmetic operation.

See in the following example in hexadecimal notation that you get different results for
erg_byte and erg_word depending on the data type of the input variable (BYTE or
WORD), although the values of the input variables in_byte and in_word are the same.

Advertising