rax是得到偏移加上这个指令的地址,还是下一个?从微码的角度来看,如果答案是下一条指令,可能会更容易。
发布于 2015-04-02 22:24:10
下一个。这是x86上的一般规则(参见分支)。
在Intel的手册第2卷2.2.1.6 RIP-相对地址:
在64位模式下实现了一种新的寻址形式RIP相对(相对指令指针)寻址.将位移添加到下一指令的64位RIP,从而形成有效地址。
发布于 2019-01-22 17:19:06
注意,symbol_name(%rip)计算从这里到达symbol_name所需的偏移量,而不是将symbol_name的绝对地址作为偏移量添加到RIP。
但是是的,对于像mov 4(%rip), %rax这样的数字偏移,它将加载8个字节,从这个指令结束后的4个字节开始。
https://stackoverflow.com/questions/29421766
复制相似问题