我经常在ARM汇编代码(ARMv7)中看到这样一个表达式:
ldr r3, [r3, #0]
这意味着r3 = r3 + 0,不是吗?但是目的是什么?
答案 0 :(得分:7)
不,它没有。
这意味着“在地址r3 + 0
”中加载带有内存数据的r3(毕竟这是加载)。
将r3
的值移至r3
的说明,即不涉及记忆,将是mov
。
答案 1 :(得分:1)
没有! “ldr rd,[rn,#offset]”从rn中地址上方的“offset”字节加载rd。 “rd = rn + 0”想要添加rd,rn,#0