LSR AX,T
SYNTAX OPTIONS
LSR AX,T
Operands
AX
Description
Flags and
N
Modes
Z
C
Repeat
Example
; Calculate un-signed value: VarC = VarA >> VarB;
MOV
MOV
LSR
MOV
1111 1111 0110 001A
Accumulator high (AH) or accumulator low (AL) register
Upper 16 bits of the multiplicand (XT) register
Perform a logical shift right on the content of the specified AX register (AH or
AL) as specified by the four least significant bits of the T register, T(3:0). The
contents of higher order bits are ignored. During the shift, the high order bits
of the AX register are zero filled If the T(3:0) register bits specify a shift of 0,
then C is cleared; otherwise, C is filled with the last bit to be shifted out of AX:
0
Contents of T (3:0)
After the shift, if bit 15 of AX is 1 then the negative flag bit is set; otherwise it is
cleared. Even if the T(3:0) register bits specify a shift of 0, the value of AH or
AL is still tested for the negative condition and N is affected.
After the shift, if AX is 0, then the Z bit is set, otherwise it is cleared. Even if the
T(3:0) register bits specify a shift of 0, the value of AH or AL is still tested for
the zero condition and Z is affected.
If T(3:0) specifies a shift of 0, then C is cleared; otherwise, C is filled with the
last bit to be shifted out of AH or AL.
This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
T,@VarB
AL,@VarA
AL,T
@VarC,AL
Logical Shift Right by T(3:0)
OPCODE
AX
Right shift
AX
; Load T with contents of VarB
; Load AL with contents of VarA
; Scale AL by value in T bits 0 to 3
; Store result in VarC
LSR AX,T
OBJMODE
RPT
CYC
X
−
1
Last bit out or cleared
C
Discard
other bits
6-141
Need help?
Do you have a question about the TMS320C28x and is the answer not in the manual?