3

目前,我正在学习 GNU as,并在“info as”中找到了很多有用的信息。

我发现在 MIPS 指定代码中使用了“.set noat”,但是在“info as”中搜索该指令时,我在节点“alpha 指令”中找到了它的解释,但在“MIPS Dependent Features”中没有。为什么?我错过了手册中的内容吗?

TIA

4

2 回答 2

2

.set at/noat是 MIPS 体系结构的有效结构,并且$at通过在用户使用寄存器时禁用/启用警告,其工作方式与 Alpha 类似。

有时,文档和代码并不总是 100% 同步。所以请提交一个针对 binutils 的错误,甚至更好 - 提供一个补丁。通过这样做,您可以向专业人士学习(除非他们真的很忙,就像有时发生的那样)。

关于 MIPS vs Alpha:Alpha 架构似乎受到 MIPS 的极大影响。

于 2011-10-27T06:00:10.703 回答
2

GNUas支持从 8041 微控制器系列到最强大的 Cray 及更高版本的大量处理器目标(CPU 架构)。手册的机器相关部分列出了 42 种架构。

121 条伪指令中的大多数对所有架构都是通用的,标签的语义和对它们的引用也是如此。目标之间的最大区别在于特定的 CPU 指令、地址模式和指令编码。令人印象深刻的是,as可以为大多数目标生成相同的目标文件格式:COFF、ELF、a.out 和 SOM。

由于大多数伪指令影响汇编程序,而不是 CPU 执行,因此它们适用于大量架构也就不足为奇了。

于 2011-10-27T06:23:54.493 回答