我已经写了这个nasm代码来打印“hello world!”,但事实并非如此。有人可以解释原因吗? 我在奔腾(x86)上运行Windows XP。
segment .text ;code segment
global main ;must be declared for linker
main: ;tell linker entry point
mov edx,len ;message length
mov ecx,msg ;message to write
mov ebx,1 ;file descriptor (stdout)
mov eax,4 ;system call number (sys_write)
int 0x80 ;call kernel
mov eax,1 ;system call number (sys_exit)
int 0x80 ;call kernel
segment .data
msg db 'Hello, World!', 0xa ;our dear string
len equ $ - msg ;length of our dear string