数据结构中的栈与汇编语言中的栈的区别

在《数据结构》中,我们知道有关于栈的概念都是逻辑上的,而在《汇编语言》一门课中,关于栈的操作就是对内存的操作。以下的都是我在学习了王爽的《汇编语言》第三版以及清华大学出版社的《数据结构》第四版的有关栈的总结,如有错误,还请各位不吝赐教。

在《数据结构》中,关于进栈的操作是:

首先,top++;   //为下一个元素腾出空间

然后,下一个元素进栈


出栈的话:

首先,元素出栈

然后,top--;

总之就是,进栈是先自增,再赋值,出栈是先赋值,再自减。


在《汇编语言》中,对栈的操作相当于对内存的操作,下面的是进栈图:


若刚开始sp指向1000:[12]的内存,然后,sp = sp-2,sp指向往上两个内存处;元素进入内存1000:[10]的位置;

出栈时,元素出栈,sp=sp+2,指向往下两个内存处。

总结,进栈sp先减2,再元素进栈,出栈元素先出栈,sp再加2.


©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值