MOVL loc32,XT
6-211
MOVL loc32,XT Store the XT Register
SYNTAX OPTIONS OPCODE OBJMODE RPT CYC
MOVL loc32,XT 1010 1011 LLLL LLLL 1 − 1
Operands loc32 Addressing mode (see Chapter 5)
XT Multiplicand register
Description Store the T register into 32-bit location pointed to by the “loc32” addressing
mode:
[loc32] = XT;
Flags and
Modes
N
If (loc32 = @ACC) and bit 31 of the ACC register is 1, then the N bit is set;
otherwise, N is cleared.
Z
If (loc32 = @ACC) and the value of ACC after the load is zero, then the Z bit is
set; otherwise Z is cleared.
Repeat This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
Example
; Calculate using 32-bit multiply, retaining high result:
; Y = (X0*C0) >> 2) + (X1*C1 >> 2) + (X2*C2 >> 2)
; X2 = X1
; X1 = X0
SPM −2 ; Set product shift to >> 2
ZAPA ; Zero ACC, P, OVC
MOVL XT,@X2 ; XT = X2
QMPYL P,XT,@C2 ; P = XT*C2
MOVL XT,@X1 ; XT = X1, ACC = X2*C2 >> 2
QMPYAL P,XT,@C1 ; P = XT*C1
MOVL @X2,XT ; X2 = X1
MOVL XT,@X0 ; XT = X0, ACC = X1*C1 >> 2 + X2*C2 >> 2
QMPYAL P,XT,@C0 ; P = XT*C0
MOVL @X1,XT ; X1 = X0
ADDL ACC,P << PM ; ACC = X0*C0 >> 2 + X1*C1 >> 2 + X2*C2 >> 2
MOVL @Y,ACC ; Store result into Y