|
//file1.asm
section .text
extern printf
global main
main:
push dword str1
call printf
add esp,byte 4
ret
str1: db "Hello,World! ",0
//file2.asm
section .text
extern printf
global main
main:
push dword str1
call printf
add esp,byte 4
mov eax,1
mov ebx,0
int 0x80
str1: db "Hello,World! ",0
我使用nasm -felf file1.asm
gcc -o file1 file1.o
两条命令分别编译两个文件,得出的结果运行file1可以得到输出,但运行file2就没有结果,使用ret与系统调用结束有什么区别吗?还是有其他问题? |
|