3.10 栈段

* 我们可以根据需要,将一组内存单元定义为一个段
* 我们可以将长度为n(n<=64k)的一组地址连续。起始地址为16的倍数的内存单元,当做栈来使用,从而定义了一个栈段
* 将内存当做栈栈,仅仅是我们再编程时的一种安排。CPU并不会由于这种安排,就在执行push、pop等栈操作指令时就自动的将我们定义的栈段当做栈空间来访问
*
如果我们将10000~1FFFF这段空间当做栈段。初始状态是空的,此时ss=1000,sp=?

* 栈最底部的内存单元为1000:FFFE
* 任意时刻,ss:sp执行栈顶,当栈中只有一个元素的时候,ss=1000, sp=FFFEH
* 栈为空的,就相当于与栈中唯一的元素出栈, 出栈后,sp=sp+2
FFFE + 2 = 10000 因为进位存不下的问题,又用到了前面相加的知识,所以当这段栈为空的时候:SS=1000H,SP

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信