Page 224 shows the code for the following instructions:
MOV AL, moffset8 A0 Move 8-bit data at a specified memory offset to the AL
register.
MOV AX, moffset16 A1 Move 16-bit data at a specified memory offset to the AX
register.
MOV EAX, moffset32 A1 Move 32-bit data at a specified memory offset to the
EAX register.
MOV RAX, moffset64 A1 Move 64-bit data at a specified memory offset to the
RAX register.
MOV moffset8, AL A2 Move the contents of the AL register to an 8-bit memory
offset.
MOV moffset16, AX A3 Move the contents of the AX register to a 16-bit memory
offset.
MOV moffset32, EAX A3 Move the contents of the EAX register to a 32-bit
memory offset.
MOV moffset64, RAX A3 Move the contents of the RAX register to a 64-bit
memory offset.
In all cases, there is only one opcode byte and no values to specify an offset.
How can this be?
MOV AL, moffset8 A0 Move 8-bit data at a specified memory offset to the AL
register.
MOV AX, moffset16 A1 Move 16-bit data at a specified memory offset to the AX
register.
MOV EAX, moffset32 A1 Move 32-bit data at a specified memory offset to the
EAX register.
MOV RAX, moffset64 A1 Move 64-bit data at a specified memory offset to the
RAX register.
MOV moffset8, AL A2 Move the contents of the AL register to an 8-bit memory
offset.
MOV moffset16, AX A3 Move the contents of the AX register to a 16-bit memory
offset.
MOV moffset32, EAX A3 Move the contents of the EAX register to a 32-bit
memory offset.
MOV moffset64, RAX A3 Move the contents of the RAX register to a 64-bit
memory offset.
In all cases, there is only one opcode byte and no values to specify an offset.
How can this be?


