Skip to content

Instantly share code, notes, and snippets.

@andrewrk
Created April 5, 2017 05:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andrewrk/4c7fc4d4755a2b2625428e4dfe96f701 to your computer and use it in GitHub Desktop.
Save andrewrk/4c7fc4d4755a2b2625428e4dfe96f701 to your computer and use it in GitHub Desktop.
.text
.globl _start
_start:
mov $1, %rax
mov $1, %rdi
mov $msg, %rsi
mov $14, %rdx
syscall
mov $60, %rax
mov $0, %rdi
syscall
.data
msg:
.ascii "Hello, world!\n"
.intel_syntax
.text
.globl _start
_start:
mov rax, 1
mov rdi, 1
mov rsi, msg
mov rdx, 14
syscall
mov rax, 60
mov rdi, 0
syscall
.data
msg:
.ascii "Hello, world!\n"
[nix-shell:~/tmp]$ $(CC) -o hello_intel hello_intel.s -nostdlib && ./hello_intel
[nix-shell:~/tmp]$ $(CC) -o hello_att hello_att.s -nostdlib && ./hello_att
Hello, world!
[nix-shell:~/tmp]$ objdump -d hello_intel -s -M intel
hello_intel: file format elf64-x86-64
Contents of section .text:
4000e8 48c7c001 00000048 c7c70100 0000488b H......H......H.
4000f8 34251701 600048c7 c20e0000 000f0548 4%..`.H........H
400108 c7c03c00 000048c7 c7000000 000f05 ..<...H........
Contents of section .data:
600117 48656c6c 6f2c2077 6f726c64 210a Hello, world!.
Disassembly of section .text:
00000000004000e8 <_start>:
4000e8: 48 c7 c0 01 00 00 00 mov rax,0x1
4000ef: 48 c7 c7 01 00 00 00 mov rdi,0x1
4000f6: 48 8b 34 25 17 01 60 mov rsi,QWORD PTR ds:0x600117
4000fd: 00
4000fe: 48 c7 c2 0e 00 00 00 mov rdx,0xe
400105: 0f 05 syscall
400107: 48 c7 c0 3c 00 00 00 mov rax,0x3c
40010e: 48 c7 c7 00 00 00 00 mov rdi,0x0
400115: 0f 05 syscall
[nix-shell:~/tmp]$ objdump -d hello_att -s -M intel
hello_att: file format elf64-x86-64
Contents of section .text:
4000e8 48c7c001 00000048 c7c70100 000048c7 H......H......H.
4000f8 c6160160 0048c7c2 0e000000 0f0548c7 ...`.H........H.
400108 c03c0000 0048c7c7 00000000 0f05 .<...H........
Contents of section .data:
600116 48656c6c 6f2c2077 6f726c64 210a Hello, world!.
Disassembly of section .text:
00000000004000e8 <_start>:
4000e8: 48 c7 c0 01 00 00 00 mov rax,0x1
4000ef: 48 c7 c7 01 00 00 00 mov rdi,0x1
4000f6: 48 c7 c6 16 01 60 00 mov rsi,0x600116
4000fd: 48 c7 c2 0e 00 00 00 mov rdx,0xe
400104: 0f 05 syscall
400106: 48 c7 c0 3c 00 00 00 mov rax,0x3c
40010d: 48 c7 c7 00 00 00 00 mov rdi,0x0
400114: 0f 05 syscall
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment