Asll, Multiple-bit arithmetic shift left (dalu), Description – Freescale Semiconductor StarCore SC140 User Manual
Page 366: Status and conditions that affect instruction, Operation assembler syntax

A-52
SC140 DSP Core Reference Manual
ASLL
ASLL
Multiple-Bit Arithmetic Shift Left (DALU)
ASLL
Description
These operations shift the contents of Dn by the amount in #u5 or in Da. Bits shifted out of Dn are lost
except for the last bit, which is stored in the C bit.
Status and Conditions that Affect Instruction
None.
Operation
Assembler Syntax
Dn
<< #u5 → Dn
ASLL #u5,Dn {0
≤ u5 < 32}
If Da[6:0]
> 0, then Dn << Da[6:0] → Dn
else Dn
>> |Da[6:0]| → Dn
ASLL Da,Dn {–40
≤ Da[6:0] ≤ 40}
ASLL #u5,Dn
Shifts left by #u5, an immediate unsigned 5-bit integer. The vacated positions to the right are zero-filled.
ASLL Da,Dn
Performs a bidirectional arithmetic shift of Dn by Da[6:0] bits and stores the result in Dn. If Da[6:0] is
positive, the shift is left. If shifting left, the vacated positions to the right are zero-filled. If Da[6:0] is
negative, the shift is right. If shifting right, the MSB of the source is copied into the vacated positions,
creating a sign-extension.
0
0
15
16
31
32
39
C
0
0
15
16
31
32
39
C
0
15
16
31
32
39
C
Da[6:0]
> 0
Da[6:0]
< 0
39