| Operand | Description |
reg |
An 8-, 16-, or 32-bit general register |
reg8, reg16, reg32 |
A general register, identified by its number of bits |
segreg |
A 16-bit segment register |
mem |
A memory operand, using any of the standard memory addressing modes |
mem8, mem16, mem32 |
A memory operand, identified by its number of bits |
accum |
, , or |
immed |
An immediate operand |
immed8, immed16, immed32 |
An immediate operand, identified by its number of bits |
| An Immediate Operand | A Memory Operand | Dereference |
INCLUDE Irvine32.inc .data dummy SDWORD ? .code main PROC mov eax, -5000h call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SDWORD -5000h .code main PROC mov eax, X call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SDWORD -5000h .code main PROC mov eax, [X] call WriteHex exit main ENDP END main |
| Output | Output | Output |
| Offset | Dereference | Offset then Dereference |
INCLUDE Irvine32.inc .data X SDWORD -5000h .code main PROC mov eax, offset X call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SDWORD -5000h .code main PROC mov eax, [offset X] call WriteHex exit main ENDP END main |
INCLUDE Irvine32.inc .data X SDWORD -5000h .code main PROC mov ebx, offset X mov eax, [ebx] call WriteHex exit main ENDP END main |
| Output | Output | Output |
|
“I am so clever that sometimes I don’t understand a single word of what I am saying.” — Oscar Wilde |