我是组装新手,我正在尝试让这个 hello world 程序正常工作:
.data
msg:
.ascii "Hello, world!\n"
len = . - msg
.text
.globl start
start:
movl $len,%edx
movl $msg,%ecx
movl $1,%ebx
movl $4,%eax
int $0x80
movl $0,%ebx
movl $1,%eax
int $0x80
我在mac上编译它:
as -o program.o program.s
然后将其链接到:
ld -o program program.o
两者都可以正常工作,但是当我运行生成的程序时出现错误:
Illegal instruction: 4
有人可以告诉我如何解决这个问题。