ARM嵌入式——堆栈寻址

堆栈寻址可与前面的多寄存器寻址一起来记

4种类型的堆栈工作方式:

满递增堆栈:堆栈指针指向最后压入的数据,且由低地址向高地址生成
满递减堆栈:堆栈指针指向最后压入的数据,且由高地址向低地址生成
空递增堆栈:堆栈指针指向下一个将要放入数据的空位置,且由低地址向高地址生成
空递减堆栈:堆栈指针指向下一个将要放入数据的空位置,且由高地址向低地址生成
下图为批量数据指令和堆栈指令对比
存储

在这里插入图片描述

加载

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

总结:

满堆栈:指针+1 后进栈
空堆栈:先进栈 后SP+1
IA: 每次传送后地址加4;
IB: 每次传送前地址加4;
DA: 每次传送后地址减4;
DB: 每次传送前地址减4;

猜你喜欢

转载自blog.csdn.net/weixin_44044395/article/details/111560447