0

私はGNUアセンブラを初めて使用し、次のコードを実行しようとしています。

.globl _main
_main:
    movl $1, %eax
    movl $0, %ebx
    int $0x80

このプログラムは、システムコールexit(1)で終了する必要があります。コンパイルしました(警告なし):

gcc test.s

しかし、それを実行するとエラーが発生します:Illegal instruction: 4

手伝ってくれてありがとう!

4

1 に答える 1

1

64 ビットの実行可能ファイルをコンパイルする場合は、次のように記述します。

movq $0x2000001, %rax
movq $0, %rdi
syscall

ソース

于 2012-06-24T15:11:44.320 に答える