r <- (IX+d)
LD
r,(IX+d)
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | |
---|---|---|---|---|---|---|---|---|
1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | $DD |
0 | 1 | r | 1 | 1 | 0 | |||
d |
The (IX+d) operand (i.e., the contents of Index Register IX summed with two’s-complement displacement integer d) is loaded to register r, in which r identifies registers A, B, C, D, E, H, or L, assembled as follows in the object code:
Register | r | Hex |
---|---|---|
A | 111 | $7E |
B | 000 | $46 |
C | 001 | $4E |
D | 010 | $56 |
E | 011 | $5E |
H | 100 | $66 |
L | 101 | $6E |
None
If Index Register IX contains the number $25AF, the instruction
LD B,(IX+$19)
allows the calculation of the sum $25AF+$19, which points to memory location $25C8. If this address contains byte $39, the unstruction results in Register B also containing $39.