寻址模式 描述 起始地址 结束地址 Rn!
IA 执行后增加 Rn Rn+4*N-4 Rn+4*N
DB 执行前减少 Rn-4*N Rn-4 Rn-4*N
注意看DB模式的起始地址,这是能够使用
STMIA 与 LDMDB 指令对(相同寄存器数目)来临时保存一组寄存器,然后在恢复它们的关键所在。
分析ARM内核的数据流模型可以发现,对于地址寄存器只有一个加法器相连,就是说只能对地址进行自动加运算,于是我们得出这样的结论,实际上DB模式还是采用增加地址的方法的,他的起始地址为
Rn-4*N,结束地址是Rn-4,整体看起来实现的效果从Rn-4 到Rn-4*N,所以被称为递减。(实际上回写时也确实是回写Rn-4*N)
另外三对load-store同理可得。
有关多寄存器load-store指令
最新推荐文章于 2024-03-16 20:35:07 发布