存储和加载指令
ldr 指令寻址之1: 地址偏移模式 (unsigned offset)
1 | LDR Xd, [Xn, $offset] |
首先在 Xn 寄存器的内容上加上一个 offset 偏移量后作为内存地址,加载此地址的内容到 Xd 寄存器。
ldr 指令寻址之2: 变基模式
- 前变基模式(
pre-index模式): 先更新偏移地址然后再访问内存。 - 后变基模式(
post-index模式):先访问内存地址然后再更新偏移地址。
1 | LDR X0, [X1, #8]! // 前变基模式。先更新X1 的值为 X1+8,然后义新的X1值为地址,加载内存的值到X0 |
ldr 指令寻址之3: 标签(literal)
PC + label offset
ldr 伪指令
1 | LDR x7, =MY_LABEL |
move 指令
- 16位立即数
- 16立即数左移16,32,48位