关于间接寻址,如 %segreg:disp(base,index,scale),foo
Posted
技术标签:
【中文标题】关于间接寻址,如 %segreg:disp(base,index,scale),foo【英文标题】:about indirect addressing like %segreg:disp(base,index,scale),foo 【发布时间】:2012-11-01 14:13:09 【问题描述】:movl $0x14,0x4(%rax,%rdx,1) 测量 %rax+%rdx*1+0x4 = $0x14(20)
但是: mov 0x0(,%rax,8),%rax 哪个是基段寄存器? 这个指令是什么意思?
【问题讨论】:
【参考方案1】:将内存地址%rax * 8
处的值加载到%rax
。没有基址寄存器和偏移量只是意味着base + index * multiplier + offset
的那些部分被假定为0x0
。
【讨论】:
以上是关于关于间接寻址,如 %segreg:disp(base,index,scale),foo的主要内容,如果未能解决你的问题,请参考以下文章
存储器 间接 寻址 试验 立即寻址 ;直接寻址 ;间接寻址 16位指针间接寻址 32位指针间接寻址