Computer Hardware User's Guide

Multiply Integer, 3-Operand
MPYI3
13-161
Assembly Language Instructions
Syntax MPYI3
src2, src1, dst
Operation
src1
×
src2
dst
Operands
src1
3-operand addressing modes (T):
0 0 any CPU register
0 1 indirect (
disp
= 0, 1, IR0, IR1)
1 0 any CPU register
1 1 indirect (
disp
= 0, 1, IR0, IR1)
src2
3-operand addressing modes (T):
0 0 any CPU register
0 1 any CPU register
1 0 indirect (
disp
= 0, 1, IR0, IR1)
1 1 indirect (
disp
= 0, 1, IR0, IR1)
dst
register (R
n
, 0
n
27)
Opcode
31 24 23 16 8 7 015
001 00 1
0 01
dst
T
src
1
src
2
Description The product of the
src1
and
src2
operands is loaded into the
dst
register. The
src1
and
src2
operands are assumed to be 24-bit signed integers. The result
is assumed to be a signed 48-bit integer. The output to the
dst
register is the
32 LSBs of the result.
Integer overflow occurs when any of the 16 MSBs of the 48-bit result differs
from the MSB of the 32-bit output value.
Cycles 1
Status Bits These condition flags are modified only if the destination register is R7R0.
LUF Unaffected
LV 1 if an integer overflow occurs; unchanged otherwise
UF 0
N 1 if a negative result is generated; 0 otherwise
Z 1 if a 0 result is generated; 0 otherwise
V 1 if an integer overflow occurs; 0 otherwise
C Unaffected
OVM Operation is affected by OVM bit value.
Mode Bit