Menjana Output Assembler daripada Sumber C/C dalam GCC
Untuk menganalisis proses penyusunan, dapatkan kod pemasangan yang dipancarkan daripada sumber C/C boleh menjadi tidak ternilai. GCC menawarkan dua kaedah untuk mencapai ini: menggunakan pilihan -S dan menggunakan objdump.
Menggunakan Pilihan -S:
Pilihan -S mengarahkan GCC untuk menjalankan prapemproses dan melaksanakan kompilasi awal, tetapi berhenti sebelum pelaksanaan pemasang. Secara lalai, output disimpan dalam fail dengan sambungan .s. Untuk menentukan fail output tersuai, gunakan pilihan -o.
gcc -S helloworld.c
Menggunakan objdump:
Jika anda hanya mempunyai fail objek yang terhasil, anda boleh menggunakan objdump dengan pilihan --disassemble (-d untuk versi yang lebih pendek) untuk membuka kod:
objdump -S --disassemble helloworld > helloworld.dump
Pilihan Tambahan:
Contoh:
Untuk mendapatkan pemasang terperinci output dengan sintaks Intel daripada fail .o yang mungkin mengandungi ruang letak untuk rujukan simbol, gunakan:
objdump -drwC -Mintel -S foo.o | less
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Kod Perhimpunan daripada Sumber C/C Menggunakan GCC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!