diff options
Diffstat (limited to 'subx/ex6.subx')
-rw-r--r-- | subx/ex6.subx | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/subx/ex6.subx b/subx/ex6.subx index 2c9555d8..8f4f6b40 100644 --- a/subx/ex6.subx +++ b/subx/ex6.subx @@ -6,25 +6,25 @@ # Hello, world! == 0x08048074 # code segment, after leaving room for ELF header and segment headers -# instruction effective address operand displacement immediate -# op subop mod rm32 base index scale r32 -# 1-3 bytes 3 bits 2 bits 3 bits 3 bits 3 bits 2 bits 2 bits 0/1/2/4 bytes 0/1/2/4 bytes +# instruction effective address operand displacement immediate +# op subop mod rm32 base index scale r32 +# 1-3 bytes 3 bits 2 bits 3 bits 3 bits 3 bits 2 bits 2 bits 0/1/2/4 bytes 0/1/2/4 bytes ## write(stdout, x, 1) # fd = 1 (stdout) - bb/copy 1/imm32 # copy 1 to EBX + bb/copy 1/imm32 # copy 1 to EBX # initialize x (location to write result to) - b9/copy 0x08049097/imm32 # copy to ECX + b9/copy 0x08049097/imm32 # copy to ECX # initialize size - ba/copy 0x08049093/imm32 # copy to EDX - 8b/copy 0/mod/indirect 2/rm32/edx 2/r32/edx # copy *EDX to EDX + ba/copy 0x08049093/imm32 # copy to EDX + 8b/copy 0/mod/indirect 2/rm32/edx 2/r32/edx # copy *EDX to EDX # write(fd, x, size) - b8/copy 4/imm32 # copy 4 to EAX - cd/syscall 0x80/imm8 # int 80h + b8/copy 4/imm32 # copy 4 to EAX + cd/syscall 0x80/imm8 # int 80h ## exit(EBX) - b8/copy 1/imm32 # copy 1 to EAX - cd/syscall 0x80/imm8 # int 80h + b8/copy 1/imm32 # copy 1 to EAX + cd/syscall 0x80/imm8 # int 80h == 0x08049093 # size of string |