我正在尝试使用以下示例探索 GNU 汇编程序:https ://0xax.github.io/asm_1/
我的代码 main.s 是
.data
message: .ascii "ASSEMBLY OUTPUT"
.text
.globl _start
_start:
movq $1, %rdi
movq $1, %rax
movq $15, %rdx
movq $message, %rsi
syscall
movq $60, %rax
movq $0, %rdi
syscall
命令行准备:
as -g -o main.o main.s
ld -o main main.o
现在,我运行 ./main 但它不打印任何内容,终端正在等待我的下一个命令。
怎么了?
在 GNU 调试器中,数字已成功存储在寄存器中。
我在 RAX 中看到了第一个系统调用“-14”的结果。