当我反汇编我的 arm elf .so 文件时,我看到了以下代码:
170c: e28fc600 add ip, pc, #0, 12
我只知道这是一条ARM“添加”指令。但从 ARM 参考手册中,“add”的语法如下:
op{S}{cond} {Rd}, Rn, Operand2
op{cond} {Rd}, Rn, #imm12 ; Thumb-2 ADD and SUB only
和 Operand2 是:
#constant
Rm {, shift}
这行 asm 应该归结为语法:
op Rd, Rn, #constant
因此,代码应该意味着“将 pc 和 #0 添加到 ip”
那么问题来了:
- 那么代码的最后一部分“,12”呢?
- 您在哪里找到这些信息,GAS 手册或 ARM 手册?
提前致谢。