堆栈的功能,操作过程和特点

 我来答
小灰马mxh
高粉答主

2015-09-23 · 醉心答题,欢迎关注
知道大有可为答主
回答量:6527
采纳率:97%
帮助的人:408万
展开全部
堆栈其实是数据结果中的两个概念 ,是存放数据的方式,堆:顺序随意;栈:后进先出(Last-In/First-Out)。要说用处,那就是在写代码的时候,有时数据存取肯定是要有规定的顺序的,这个是你自己规定的,然后按照你所写程序的用处的特点来用堆还是栈还是队列之类的顺序 追问: 程序设计时,为什么要对堆栈指针SP重新赋值? 回答: 这不是初始化嘛
堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。它的特点是按照先进后出的原则存取数据,这里的进与出是指进栈与出栈操作。
80C51片内RAM的部分单元可以用做堆栈。有一个8位的堆栈指针寄存器SP,专用于指出当前堆栈顶部是片内RAM的哪一个单元。80C51单片机系统复位后SP的初值为07H,也就是将从内部RAM的08H单元开始堆放信息。
但是,80C51系列的栈区不是固定的,只要通过软件改变SP寄存器的值便可更动栈区。为了避开工作寄存器区和位寻址区,SP的初值可置为2FH或更大的地址值。如果CPU在操作中要使用两组工作寄存器,如果不使用位变量,SP的初值至少应为0FH或更大的值;如果使用位变量,SP的初值至少应为2FH或更大的值;KeilC51编译器会自动计算SP的初始设定值,无需编程者关心。
ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
黑的白社会
2018-12-09 · TA获得超过1448个赞
知道小有建树答主
回答量:980
采纳率:59%
帮助的人:297万
展开全部
操作过程中按照后入后出原则
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旅德昌2E
2018-04-25
知道答主
回答量:1
采纳率:0%
帮助的人:876
展开全部
功能:

保护断点,保护现场。
操作过程:
PUSH出栈,POP入栈,存入/取出数据后,栈顶指针变化。
特点:
先进后出,后进先出。
同学,武汉理工的吧?微机原理吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lishengjun132
2011-10-25 · 超过16用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:46.1万
展开全部
堆栈的作用是保护现场和恢复现场。进栈指令是用于保护片内某个单元的数据;出栈指令是用于恢复片内某个单元的数据。
堆栈数据是“后进先出”的方式,由堆栈指针SP自动跟踪栈定地址。单片机堆栈编址采用向上生长方式,即栈底占用较低地址,栈顶占用较高地址。
堆栈指令采用直接寻址方式。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式