AT& T语法汇编浮点运算的参考

时间:2010-10-10 22:22:51

标签: assembly floating-point x86

过去一周我一直在尝试使用AT& T语法为x86汇编找到一个合适的浮点运算资源。理想情况下,操作码列表,它们的作用以及浮点数的存储位置。我熟悉IEEE 754表示法。我不熟悉浮点堆栈,以及任何涉及浮点运算的程序集。

这很难找到。

编辑:我一直在研究过去一个月学习装配的gcc -S输出。这就是我如何计算除浮点运算之外的所有东西。即使经过几十个没有优化编译的小程序,我仍然无法弄清浮点操作码和堆栈。我只在网上找到了一些简单的例子。

1 个答案:

答案 0 :(得分:4)

好。首先从Intel语法开始,因为大多数x86汇编程序员都使用它。 Intel's manuals是了解x86如何处理浮点内容的绝佳资源。

一般来说,学习x86程序集之后,AT& T语法并不那么难学。需要注意的主要事项是:

  • 寄存器以%为前缀;数字常量以$
  • 为前缀
  • 寄存器顺序被交换为大多数双操作数指令(即,第一个源,最后一个目标)
  • 指令名称指定大小;所以不是mov dword ptr [ebx], 1337,而是movl $1337, (%ebx)