MPYA P,loc16,#16bit
Example
; Calculate using 16-bit multiply:
; Y = (X0*C0) >> 2) + (X1*C1 >> 2) + (X2*C2 >> 2),
; C0, C1 and C2 are constants
SPM
MOVB
MPY
MPYA
MPYA
ADDL
MOVL
6-232
−2
; Set product shift to >> 2
ACC,#0
; Zero ACC
P,@X2,#C2
; P = X2*C2
P,@X1,#C1
; ACC = X2*C2>>2, P = X1*C1
P,@X0,#C0
; ACC = X1*C1>>2 + X2*C2>>2, P = X0*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?