对于我的生活,我无法弄清楚为什么这不会打印到屏幕上。不会崩溃或故障,只是退出。是的,我是新人,并且事实上寻找一位导师,如果有人能够如此善良地帮助它,那将是非常值得赞赏的。Linux大会不打印到标准输出 - 屏幕
; Hello World in nasm
;
; Intel Linux bt 2.6.39.4 #1 SMP x86_64 GNU/Linux
; NASM version 2.07
; ld 2.20.1-system.20100303
;
; Compile to 32bit with debugging symbols:
; nasm -g -f elf32 -F dwarf string-w.asm
; ld -g -melf_i386 -o string-w string-w.o
; file string-w.asm
[section .data]
msg db "Hello World",0xa,0x0
len equ $ - msg
[section .bss]
[section .text]
global _start
_start:
push dword len
push dword msg
push dword 1 ; Stdout
mov eax,0x4 ; write
int 0x80
ret
add esp,12
push dword 0
mov eax, 0x1 ; exit
int 0x80
同样,任何帮助是极大的赞赏,如果有人正在寻找一个学生,我已经准备好当志愿者。
您没有正确使用写入。 afaik它根本不使用堆栈 –
请查看http://docs.cs.up.ac.za/programming/asm/derick_tut/syscalls.html –