INSTRUCTION DESCRIPTIONS
A - 194 INSTRUCTION SET DETAILS MOTOROLA
Class II Example:
:
MAC X0,Y0,A Y0,B B,Y:(R1)+ ;multiply X0 and Y0 and accumulate in A
: ;move B to Y memory location pointed to
;by R1 and postincrement R1
;move Y0 to B
Explanation of the Class II Example: Prior to execution, the 24-bit registers, X0 and
Y0, contain $400000 and $600000, respectively. The 56-bit accumulators A and B con-
tain the values $00:000000:000000 and $00:800000:000000 (+1.0000), respectively.
The 24-bit Y memory location Y:$1234 contains the value $000000, and the 16-bit R1
register contains the value $1234. Execution of the parallel move portion of the instruc-
tion (Y0,B B,Y:(R1)+) moves the Y0 register ($600000) into accumulator B1 ($600000),
sign extends B1 into B2 ($00), and zero fills B0 ($000000). It also moves the 24-bit lim-
ited value of B ($7FFFFF) into the Y:$1234 memory location and increments R1 to
$1235.
R:Y Register and Y Memory Data Move R:Y
Before Execution After Execution
X0 X0
$400000 $400000
Y0 Y0
$600000 $600000
A A
$00:000000:000000 $00:300000:000000
B B
$00:800000:000000 $00:600000:000000
Y:$1234 Y:$1234
$000000 $7FFFFF
R1 R1
$1234 $1235