mov 0x8(%r14,%r15,8),%rax是啥意思
Posted
技术标签:
【中文标题】mov 0x8(%r14,%r15,8),%rax是啥意思【英文标题】:What's the meaning of mov 0x8(%r14,%r15,8),%raxmov 0x8(%r14,%r15,8),%rax是什么意思 【发布时间】:2018-08-01 08:18:53 【问题描述】:这里的0x8(%r14,%r15,8)是什么意思,我知道0x8(%r14,%r15,8)是SRC,但是不明白为什么要用两个寄存器%r14和%r15在这里,我不明白如何调用 src 地址。 非常感谢您的任何意见。
【问题讨论】:
【参考方案1】:从http://flint.cs.yale.edu/cs421/papers/x86-asm/asm.html提取的信息
AT&T 寻址:
内存地址参考:Address_or_Offset(%base_or_offset, %Index_Register, Scale)
最终地址计算:Address_or_Offset + %base_or_offset + [Scale * %Index_Reg]
例子:
mov (%esi,%ebx,4), %edx /* Move the 4 bytes of data at address ESI+4*EBX into EDX. */
【讨论】:
非常感谢您的回复。这对我很有帮助。以上是关于mov 0x8(%r14,%r15,8),%rax是啥意思的主要内容,如果未能解决你的问题,请参考以下文章
(32位汇编 五)mov/add/sub/and/or/xor/not
关于间接寻址,如 %segreg:disp(base,index,scale),foo