我正在尝试生成这样的汇编代码(以便它与 nasm 一起工作)
;hello.asm
[SECTION .text]
global _start
_start:
jmp short ender
starter:
xor eax, eax ;clean up the registers
xor ebx, ebx
xor edx, edx
xor ecx, ecx
mov al, 4 ;syscall write
mov bl, 1 ;stdout is 1
pop ecx ;get the address of the string from the stack
mov dl, 5 ;length of the string
int 0x80
xor eax, eax
mov al, 1 ;exit the shellcode
xor ebx,ebx
int 0x80
ender:
call starter ;put the address of the string on the stack
db 'hello'
首先,这是什么汇编风格,其次,如何使用类似于 gcc -S code.c -o code.S -masm=intel
的命令从 C 文件生成它
最佳答案
这是英特尔风格。
问题中你写的命令行有什么问题?
关于c++ - 这是什么样式的组件(intel、att...等?),我该如何生产它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10070091/