MOVAD T, loc16
Repeat
Example
; Calculate using 16-bit multiply:
; Y = (X0*C0) >> 2) + (X1*C1 >> 2) + (X2*C2 >> 2)
; X2 = X1
; X1 = X0
SPM
MOVP
MPYS
MOVAD
MPY
MOVAD
MPY
ADDL
MOVL
6-186
This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
−2
; Set product shift to >> 2
T,@X2
; T = X2
P,T,@C2
; P = T*C2, ACC = 0
T,@X1
; T = X1, ACC = X2*C2>>2, X2 = X1
P,T,@C1
; P = T*C1
T,@X0
; T = X0, ACC = X1*C1>>2 + X2*C2>>2, X1 = X0
P,T,@C0
; P = T*C0
ACC,P << PM
; ACC = X0*C0>>2 + X1*C1>>2 + X2*C2>>2
@Y,ACC
; Store result into Y
Need help?
Do you have a question about the TMS320C28x and is the answer not in the manual?