汇编语言操作数说明符

Posted

技术标签:

【中文标题】汇编语言操作数说明符【英文标题】:Assembly Language Operand Specifiers 【发布时间】:2016-09-28 18:34:26 【问题描述】:

我是学习汇编语言的新手,遇到了以下表达:

9(%rax, %rdx) 0xFC(,%rcx,4) (%rax, %rdx, 4)

如果有人能指出我可以理解这些命令或向我解释它们的资源,我将非常感激。

谢谢。

【问题讨论】:

考虑阅读有关 AT&T 汇编语法的教程。 【参考方案1】:

这显然是指 x86 AT&T 程序集中的算术寻址。

语法相当简单:

N(%reg1, %reg2, F)

这导致address = N + %reg1 + %reg2 * F。这可以用于多个指令中,用于访问结构内的数据(C 编译器)等目的。

如需完整参考,请查看this guide。

【讨论】:

非常感谢。这个链接真的很有帮助。 该参考文献省略了 RIP 相对寻址模式,但其他方面看起来不错。另请参阅all the available x86 addressing modes。

以上是关于汇编语言操作数说明符的主要内容,如果未能解决你的问题,请参考以下文章

汇编语言从入门到精通-通用寄存器功能的说明

C 语言文件操作 ( 文件加密解密 | 使用第三方 DES 加密解密库 | 头文件导入 | 兼容 C++ 语言 | 加密解密函数说明 )

vhdl语言中取余符号rem如何用?举例说明。

MySQL 基础 -- SQL(通用语法SQL分类DDL 数据定义语言(含数据类型说明)DML 数据操作语言DQL 数据查询语言(别名去重聚合函数排序分页)DCL 数据控制语言)

汇编各寄存器的作用说明

RHEL 7.1操作系统安装过程说明