15
15 – 71
Syntax:
DM (
I0 ,
M0 ) =
dreg ;
I1
M1
<data>
I2
M2
I3
M3
I4
M4
I5
M5
I6
M6
I7
M7
data:
<constant>
‘%’ <symbol>
‘^’ <symbol>
Permissible dregs
AX0
MX0
SI
AX1
MX1
SE
AY0
MY0
SR1
AY1
MY1
SR0
AR
MR2
MR1
MR0
Example:
DM (I2, M0) = MR1;
Description:
The Data Memory Write Indirect instruction moves the
contents of the source to the data memory location specified in the
instruction word. The immediate data may be a constant or any symbol
referenced with the “length of” (%) or “pointer to” (^) operators.
The addressing mode is register indirect with post-modify. For linear (i.e.
non-circular) indirect addressing, the L register corresponding to the I
register used must be set to zero.
When a register of less than 16 bits is
written to memory, the value written is sign-extended to form a 16-bit
value. The contents of the source are always right-justified in the
destination location after the write (bit 0 maps to bit 0).
Status Generated:
None affected.
MOVE
DATA MEMORY WRITE (Indirect Address)
(instruction continues on next page)