
什么是堆栈?
展开全部
在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据,它遵循顺序存取和后进先出(LIFO/FILO)的原则,这个RAM区叫堆栈。
子程序调用和中断服务时CPU自动将当前PC值压栈保存,返回时自动将PC值弹栈;
保护现场/恢复现场;
数据传输。

2021-01-14 广告
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
堆是堆(heap),栈是栈(stack),虽然堆栈(heap and stack)有相似之处,但不要混为一谈。
本质上讲,堆(heap)是一种数据结构,是纯软件的实现。堆基于一定的程序基础(例如在操作系统),它更加偏向于软件实现动态的内存管理,令程序运行时根据所需来动态申请/释放内存。
而栈(stack)既存在软件实现又存在硬件实现。栈本质上是一种简单的先进先出结构,主要目的是为程序运行时保存关键的现场数据,尤其适合于(嵌套式)中断的配合。几乎所有的微控制器/微处理器都具备硬件栈。而软件/操作系统中又可以进一步建立软件栈,为线程建立专用的存储区域。
本质上讲,堆(heap)是一种数据结构,是纯软件的实现。堆基于一定的程序基础(例如在操作系统),它更加偏向于软件实现动态的内存管理,令程序运行时根据所需来动态申请/释放内存。
而栈(stack)既存在软件实现又存在硬件实现。栈本质上是一种简单的先进先出结构,主要目的是为程序运行时保存关键的现场数据,尤其适合于(嵌套式)中断的配合。几乎所有的微控制器/微处理器都具备硬件栈。而软件/操作系统中又可以进一步建立软件栈,为线程建立专用的存储区域。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询