Bit-shift instructions
564
Part III FP Instructions
F103_DSHL
Left shift of 32-bit data in bit units
31
00000000
0
CY
16 15
Daten
[n bits]
The data in the nth
bit is transferred to
R9009 (carry flag).
[n bits] starting from bit position 0
are filled with 0s.
This instruction also exists as a P instruction (for FP2/2SH, FP3/5, FP10/10SH PLC types), which
is only executed at the rising edge of the EN trigger. Select [Insert P instruction] from the
"Instructions" pane if you require a P instruction. To facilitate reuse, the instruction then appears
under "Recently used" in the pop-up menu. Press <Ctrl>+<Shift>+<v> within the programming
area to open the list of recently used elements.
PLC types
Availability of F103_DSHL (see page 1320)
Variable Data type Function
n INT number of bits to be shifted (range: 16#0 to 16#FF)
d ANY32 32-bit area to be shifted to the left
For Relay T/C Register Constant
n WX WY WR WL SV EV DT LD FL dec. or hex.
d - DWY DWR DWL DSV DEV DDT DLD DFL -
No. IEC address Set If
R9009 %MX0.900.9 for an instant the bit at position 31 - n has the value 1.
Description
The function rotates the value at output d to the left. The number of bits at output d to be shifted to
the left is specified by the value assigned at input n. This shift can lie between 0 and 255 (only the
lower value byte of n is effective). Bits cleared because of the shift become 0. When input n = 0, no
shift takes place. A shifting distance larger than 32 does not make sense, since when n = 32 the
value at output d is already filled with zeros. The bit at position 31 - n (the last bit shifted out to the
left) is simultaneously stored in special internal relay R9009 (carry flag) so that it can be evaluated
accordingly. When n = 0 the content of the carry flag does not change.
Data types
Operands
Error flags