堆栈寻址可与前面的多寄存器寻址一起来记
4种类型的堆栈工作方式:
满递增堆栈:堆栈指针指向最后压入的数据,且由低地址向高地址生成
满递减堆栈:堆栈指针指向最后压入的数据,且由高地址向低地址生成
空递增堆栈:堆栈指针指向下一个将要放入数据的空位置,且由低地址向高地址生成
空递减堆栈:堆栈指针指向下一个将要放入数据的空位置,且由高地址向低地址生成
下图为批量数据指令和堆栈指令对比
存储
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/cc394239f78ab8882c1538589cf2326b.png#pic_center)
加载
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9492ed577935f582ec1eb8d886b18c47.png#pic_center)
![](https://i-blog.csdnimg.cn/blog_migrate/ec206a7355344bbc1e3b366279ec18c4.png#pic_center)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/93df8a5c057b352a4a22d99ee4bd47c3.png#pic_center)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9eab093598aca995a79267ac0f7fa547.png#pic_center)
总结:
满堆栈:指针+1 后进栈
空堆栈:先进栈 后SP+1
IA: 每次传送后地址加4;
IB: 每次传送前地址加4;
DA: 每次传送后地址减4;
DB: 每次传送前地址减4;