在 Linux 使用 AT&T 语法写汇编程序时
程序中有一条命令为:pushl %eax
使用 as 编译时出现错误:Error: invalid instruction suffix for `push'
原因是 64 位系统和 32 位系统的差别引起的
解决方法为:
在代码开头添加 .code32 即可
本文介绍在64位Linux系统下使用AT&T语法编写32位汇编程序时遇到的错误:“Error:invalid instructionsuffixfor`push'”,并提供了解决方案:在代码开头添加.code32。
在 Linux 使用 AT&T 语法写汇编程序时
程序中有一条命令为:pushl %eax
使用 as 编译时出现错误:Error: invalid instruction suffix for `push'
原因是 64 位系统和 32 位系统的差别引起的
解决方法为:
在代码开头添加 .code32 即可