nasm 中的系统调用不工作
System call in nasm not working
我尝试编写以下代码,使用 int 0x80 打印数字 5,但它不打印任何内容。
segment .bss
num1 resb 1
section .text
global _start
_start:
mov dword [num1],5
add [num1],byte '0'
mov ecx, dword [num1]
mov eax, 4
mov ebx, 1
mov edx, 1
int 0x80
mov eax, 1
int 0x80
系统调用 4 期望 ecx
包含指向以 NUL 结尾的字符串的指针。
所以你应该使用 mov ecx, num1
.
而不是 mov ecx, dword [num1]
我尝试编写以下代码,使用 int 0x80 打印数字 5,但它不打印任何内容。
segment .bss
num1 resb 1
section .text
global _start
_start:
mov dword [num1],5
add [num1],byte '0'
mov ecx, dword [num1]
mov eax, 4
mov ebx, 1
mov edx, 1
int 0x80
mov eax, 1
int 0x80
系统调用 4 期望 ecx
包含指向以 NUL 结尾的字符串的指针。
所以你应该使用 mov ecx, num1
.
mov ecx, dword [num1]