Shift / rotate instructions, Sftl (shift left), Sftl (shift left) -1 – IDEC MicroSmart User Manual

Page 245: Hift, Otate, Nstructions

Advertising
background image

« FC4A M

ICRO

S

MART

U

SER

S

M

ANUAL

»

13-1

13: S

HIFT

/ R

OTATE

I

NSTRUCTIONS

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

X

X

X

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

*****

bits

**

CY

← 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 carr y (special internal relay M8003). Zeros are set to the LSB.

0

Before shift:

1

0

1

0

1

0

1

0 1

1

1

1

0

1

0

0

CY

M8003

MSB

LSB

S1

1

After shift:

0

0

1

0

1

0

1

0 1

1

1

1

0

1

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.

Advertising