1

我正在寻找为什么我不能.s直接使用文件的解释。

我正在尝试在 X86_64 上学习汇编语言,这给了我汇编代码:

gcc -S sample.c 

为什么我不能直接使用运行它nasm

我重命名并sample.s尝试sample.asm这样做:

 nasm -f elf -l sample.lst  sample.asm

但这给了我一个错误(如果需要,将发布)。我认为中间文件是汇编代码。请说清楚。

4

1 回答 1

5

The problem if probably that the assembly from GCC and the one used by nasm is not using the same syntax!

GCC uses so-called AT&T syntax while nasm uses the standard Intel syntax. See e.g. http://en.wikipedia.org/wiki/X86_assembly_language#Syntax for a little information about the differences.

于 2012-07-18T10:26:47.900 回答