MOV loc16, T
6-175
MOV loc16, T Store the T Register
SYNTAX OPTIONS OPCODE OBJMODE RPT CYC
MOV, loc16,T 0010 0001 LLLL LLLL X − 1
Operands loc16 Addressing mode (see Chapter 5)
T Upper 16 bits of the multiplicand register (XT)
Description Store the 16-bit T register contents into the location pointed to by the “loc16”
addressing mode:
[loc16] = T;
Flags and
Modes
N If (loc16 = @AX) and bit 15 of the AX register is 1, then the N bit is set;
otherwise, N is cleared.
Z If (loc16 = @AX) and the value of AX 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 16-bit multiply:
; Y = (X0*C0) >> 2) + (X1*C1 >> 2) + (X2*C2 >> 2)
; X2 = X1
; X1 = X0
SPM −2 ; Set product shift to >> 2
MOV T,@X2 ; T = X2
MPY P,T,@C2 ; P = T*C2
MOVP T,@X1 ; T = X1, ACC = X2*C2 >> 2
MPY P,T,@C1 ; P = T*C1
MOV @X2,T ; X2 = X1
MOVA T,@X0 ; T = X0, ACC = X1*C1 >> 2 + X2*C2 >> 2
MPY P,T,@C0 ; P = T*C0
MOV @X1,T ; X1 = X0
ADDL ACC,P << PM ; ACC = X0*C0 >> 2 + X1*C1 >> 2 + X2*C2 >> 2
MOVL @Y,ACC ; Store result into Y