Untuk mengonversi file source bahasa C ke assembly menggunakan GCC adalah dengan menggunakan options -S.
#include <stdio.h>
int main() {
printf("Hello worldn");
return 0;
}
Misal nama filenya hello.c, maka gunakan perintah gcc -S coba.c
nama file outputnya sama dengan file input, yg membedakan adalah ekstensinya
kalau file inputnya coba.c, file outputnya adalah coba.s
dari potongan kode diatas akan menghasilkan kode assembly seperti ini
.file "coba.c"
.section .rodata
.LC0:
.string "Hello world"
.text
.globl main
.type main, @function
main:
pushl %ebp
movl %esp, %ebp
andl $-16, %esp
subl $16, %esp
movl $.LC0, (%esp)
call puts
movl $0, %eax
leave
ret
.size main, .-main
.ident "GCC: (SUSE Linux) 4.5.1 20101208 [gcc-4_5-branch revision 167585]"
.section .comment.SUSE.OPTs,"MS",@progbits,1
.string "ospwg"
.section .note.GNU-stack,"",@progbits
Pada kode assembly diatas terdapat beberapa tulisan SUSE karena saya menggunakan distro openSUSE, tulisan tersebut bisa berbeda tergantung distro yang digunakan.




