Stereo System User Manual

MOTOROLA DSP96002 USER’S MANUAL A - 27
ASL Arithmetic Shift Left ASL
Operation:
Assembler Syntax:
ASL D (move syntax - see the MOVE instruction description.)
ASL S,D (move syntax - see the MOVE instruction description.)
ASL #shift,D
Description:
Single-bit shift: Arithmetically shift the low portion of the specified operand one bit to the left. The carry
bit receives the MSB shifted out of the low portion of the source operand. A zero is shifted into the least
significant bit of the destination operand. The result is stored in the low portion of D.
Multi-bit shift: Arithmetically shift the low portion of the specified operand N bits (up to 63 bits) to the left.
The number of bits to shift is determined by the 11-bit unsigned integer located in the 11 LSBs of the high
portion of S or by a 6-bit immediate field in the instruction. The carry bit receives the Nth bit shifted out of
the low portion of the source operand; it is cleared for a shift count of zero. N zeros are shifted into the
LSBs of the destination operand. If more than 32 bits are shifted, zeros will be stored in D and the carry
bit. The result is stored in the low portion of D.
Input Operand(s) Precision: 32-bit integer.
Output Operand Precision: 32-bit integer.
CCR Condition Codes:
C - Set if the last bit shifted out of the operand is set. Cleared otherwise. Cleared for a
shift count of zero.
V - Set if the MSB is changed any time during the shift operation. Cleared otherwise.
Z - Set if result is zero. Cleared otherwise.
N - Set if result is negative. Cleared otherwise.
I - Not affected.
LR - Not affected.
R - Not affected.
A - Not affected.
ER Status Bits: Not affected.
IER Flags: Not affected.
31 0
C 0 (parallel data bus move)