« FC4A MICROSMART USER’S MANUAL » 13-1
13: SHIFT / ROTATE INSTRUCTIONS
Introduction
Bit shift and rotate instructions are used to shift the 16-bit data in the designated source operand S1 to the left or right by
the quantity of bits designated. The result is set to the source operand S1 and a carry (special internal relay M8003).
The BCD left shift instruction shifts the BCD digits in two consecutive data registers to the left.
The word shift instruction is used to move 16-bit data to a destination data register and shifts down the data of subsequent
data registers as many as designated.
SFTL (Shift Left)
Applicable CPU Modules
Valid Operands
For the valid operand number range, see pages 6-1 and 6-2.
▲ Internal relays M0 through M1277 can be designated as S1. Special internal relays cannot be designated as S1.
The quantity of bits to shift can be 1 through 15.
Since the SFTL instruction is executed in each scan while input is on, a pulse input from a SOTU or SOTD instruction
should be used as required.
Valid Data Types
FC4A-C10R2/C FC4A-C16R2/C FC4A-C24R2/C FC4A-D20K3/S3 FC4A-D20RK1/RS1 & FC4A-D40K3/S3
XXX X X
Operand Function I Q M R T C D Constant Repeat
S1 (Source 1) Data for bit shift — X ▲ X——X — —
bits Quantity of bits to shift ——————— 1-15 —
W (word) I (integer)
X—
S1
When input is on, 16-bit data of the designated source operand S1 is shifted to
the left by the quantity of bits designated by operand bits.
The result is set to the source operand S1, and the last bit status shifted out is
set to a carry (special internal relay M8003). Zeros are set to the LSB.
0Before shift: 1 0 1010 1 0 1 1 1101 0 0
CY
M8003
MSB LSB
S1
1After shift: 00 1010 1 0 1 1 1101 0 0
CY
M8003
MSB LSB
S1
Shift to the left
SFTL(W)
When bits to shift = 1
When a bit operand such as Q (output), M (internal relay), or R (shift register) is designated
as the source, 16 points are used.
When a word operand such as D (data register) is designated as the source, 1 point is used.