带有[[]的汇编问题

时间:2018-11-28 14:55:46

标签: gcc assembly x86

简而言之:当我尝试汇编代码时,我得到了这个
Error: invalid char '[' beginning operand 2 '[esp+4]'

Error: invalid char '[' beginning operand 1 '[edx]'

最相关的代码已经在错误中,但是我从here获得了代码。要重现该错误,只需使用.section .text中的小模式,如下所示:

mov edx, [esp + 4]
lidt [edx]
sti
ret

我正在使用gcc -m32 -c -o idtasm.o idtasm.S进行组装。

谢谢您的回答,
真诚的G3bE

1 个答案:

答案 0 :(得分:0)

感谢杰斯特,我找到了一个解决方案:汇编代码是为nasm编写的,因此可通过以下命令使用它:nasm -f elf -o idtasm.o idtasm.S -f elf替换了gcc的-c -m32了解一切正确。