MPY ACC, T, loc16
6-228
MPY ACC, T, loc16 16 X 16-bit Multiply
SYNTAX OPTIONS OPCODE OBJMODE RPT CYC
MPY ACC,T,loc16 0001 0010 LLLL LLLL X − 1
Operands ACC Accumulator register
T Multiplicand register
loc16 Addressing mode (see Chapter 5)
Description Multiply the signed 16-bit content of the T register by the signed 16-bit
contents of the location pointed to by the “loc16” addressing mode and store
the result in the ACC register:
ACC = signed T * signed [loc16];
Flags and
Modes
Z After the operation, the Z flag is set if the ACC is zero, else Z is cleared.
N After the operation, the N flag is set if bit 31 of the ACC is 1, else N 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 signed using 16-bit multiply:
; Y32 = Y32 + X16*M16
MOV T,@X16 ; T = X16
MPY ACC,T,@M16 ; ACC = T * M16
ADDL @Y32,ACC ; Y32 = Y32 + ACC