<< Previous | Next >>

> SLA (HL)
> SLA (IX+d)
> SLA (IY+d) Shift Left Arithmetic Rabbit 2000/3000/4000 Instruction

> Opcode | Instruction | Clocks | Operation
> CB 26 | SLA (HL) | 10* | (HL) = {(HL)[6,0],0} CF = (HL)[7]
> DD CB d 26 | SLA (IX+d) | 13** | (IX + d) = {(IX + d)[6,0],0} CF = (IX+d)[7]
> FD CB d 26 | SLA (IY+d) | 13** | (IY + d) = {(IY + d)[6,0],0} CF = (IY+d)[7]
> Clocking: *10 (2,2,1,2,3) **13 (2,2,2,2,2,3)

> Flags | ALTD | IOI/IOE
> S | Z | L/V | C | F | R | SP | S | D
> · | · | L | · | · |  |  | · | ·

> #### Description

> Arithmetically shifts to the left the bits of the data whose address is

> - HL, or
> - the sum of IX and the 8-bit signed displacement d, or
> - the sum of IY and the 8-bit signed displacement d.

> Bits 0 through 6 are each shifted to the next highest-order bit position (bit 0 moves to bit 1, etc.). Bit 7 is shifted to the C flag. Bit 0 is reset. See Figure 19 for an illustration.

<< Previous | Next >>