MOV ACC,loc16<<T
MOV ACC,loc16<<T
SYNTAX OPTIONS
MOV ACC,loc16 << T
Operands
ACC
loc16
T
Description
Flags and
g
N
Modes
Z
SXM
Repeat
Example
; Calculate signed value: ACC = (VarA << SB) + (VarB << SB)
SETC SXM
MOV
MOV
MOV
ADD
6-158
Accumulator register
Addressing mode (see Chapter 5)
Upper 16 bits of the multiplicand register, XT(31:16)
Load the ACC register with the left-shifted contents of the 16-bit location
pointed to by the "loc16" addressing mode. The shift value is specified by the
four least significant bits of the T register, T(3:0) = shift value = 0..15. Higher
order bits are ignored. The shifted value is sign extended if sign extension
mode is turned on (SXM = 1) else the shifted value is zero extended
(SXM = 0). The lower bits of the shifted value are zero filled:
if(SXM = 1)
// sign extension mode enabled
ACC = S:[loc16] << T(3:0);
else
// sign extension mode disabled
ACC = 0:[loc16] << T(3:0);
After the load, the N flag is set if bit 31 of the ACC is 1, else N is cleared.
After the load, the Z flag is set if the ACC value is zero, else Z is cleared.
If sign extension mode bit is set; then the 16-bit operand, addressed by the
"loc16" field, will be sign extended before the load; else the value will be zero
extended.
This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
T,@SA
ACC,@VarA << T
T,@SB
ACC,@VarB << T
OPCODE
0101 0110 0000 0110
0000 0000 LLLL LLLL
; Turn sign extension mode on
; Load T with shift value in SA
; Load in ACC shifted contents of VarA
; Load T with shift value in SB
; Add to ACC shifted contents of VarB
Load Accumulator With Shift
OBJMODE
RPT
1
−
CYC
1
Need help?
Do you have a question about the TMS320C28x and is the answer not in the manual?