首页 新闻 搜索 专区 学院

为什么gcc提示无 pushad和popad这两条指令

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-03-11 13:36

  我在看Richard Blum的《Professional Assembly Language》这本书的第五章时,看到有介绍pushad,popad这2条指令,使用gcc编译时提示:

  stack.s:15: Error: no such instruction: `pushad '

  stack.s:16: Error: no such instruction: `popad '

查看http://baike.baidu.com/link?url=iEo76x5cL0j4LtB92mgXf-w0VwDIIOxfM9QOo4OnVuuIHJYqtGAdLdffYttBl9ltkSYi-D1lFcR4odJOCURAEq关于pushad这条指令的介绍,文中提到pusha,pushad,popa,popad都开始于80286cpu,我编译pusha和popa指令是能通过的,那么pushad,popad也应该能通过吧?

  我的gcc版本 4.1.2,cpu赛扬(R)。red-hat 32位操作。在另一台64位Xeon的机器上也编译不过,同样的错误提示,有人知道这是为什么吗?

  以上均使用AT&T汇编。

  再补充一点pushfd popfd也不能使用。

thammer的主页 thammer | 初学一级 | 园豆:148
提问于:2015-03-09 11:21
< >
分享
所有回答(1)
0

这里(jitinterfacex86.cpp)就用了pushad,编译时没这样的错误。

dudu | 园豆:38908 (高人七级) | 2015-03-09 12:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册