dsp56800e Freescale Semiconductor, Inc, dsp56800e Datasheet - Page 101

no-image

dsp56800e

Manufacturer Part Number
dsp56800e
Description
16-bit Digital Signal Controller Core
Manufacturer
Freescale Semiconductor, Inc
Datasheet
4.1.3
The shifting instructions are used to perform shift and rotate operations within the data ALU. They
generally execute in 1 instruction cycle, except for the multi-bit shift instructions (ASLL.L, ASRR.L, and
LSRR.L), which execute in 2 cycles. These instructions may affect one or more of the condition code
register bits.
Table 4-3 lists the shifting instructions.
Freescale Semiconductor
1.ASL should not be used to shift the 16-bit X0, Y0, and Y1 registers because the condition codes might not
be calculated as expected. The ASL.W instruction should be used instead.
Instruction
ASRR.W
LSRR.W
ASLL.W
ASRR.L
ASRAC
LSRR.L
ROR.W
ASLL.L
LSRAC
ROL.W
ASR16
LSR.W
ASL.W
LSR16
ROR.L
ASL16
LSL.W
ROL.L
ASL
ASR
Shifting Instructions
1
Parallel
Move?
Yes
Yes
Arithmetic shift left (shift register 1 bit)
Arithmetic left shift a register or accumulator by 16 bits
Arithmetic shift left a 16-bit register (shift register 1 bit)
Arithmetic multi-bit shift left a long value
Arithmetic multi-bit shift left a word value
Arithmetic shift right (shift register 1 bit)
Arithmetic right shift a register or accumulator by 16 bits
Arithmetic multi-bit shift right with accumulate
Arithmetic multi-bit shift right a long value
Arithmetic multi-bit shift right a word value
Logical shift left a word-sized register
Logical shift right (shift word-sized register 1 bit)
Logical right shift a register or accumulator by 16 bits
Logical multi-bit shift right with accumulate
Logical multi-bit shift right a long value
Logical multi-bit shift right a word value
Rotate left on long register
Rotate left on word register
Rotate right on long register
Rotate right on word register
Table 4-3. Shifting Instructions
Instruction Set Introduction
Description
Instruction Groups
4-5

Related parts for dsp56800e