单片机的堆栈是怎样工作的

发布网友 发布时间:2022-04-21 11:49

我来回答

2个回答

懂视网 时间:2022-04-21 16:11

堆栈的工作方式是先进后出。在内存储器(随机存储器)中开辟一个区域作为堆栈,叫软件堆栈;用寄存器构成的堆栈,叫硬件堆栈。

  

  堆栈是一个特定的存储区或寄存器,它的一端是固定的,另一端是浮动的。对这个存储区存入的数据,是一种特殊的数据结构。所有的数据存入或取出,只能在浮动的一端(称栈顶)进行,严格按照“先进后出”的原则存取,位于其中间的元素,必须在其栈上部(后进栈者)诸元素逐个移出后才能取出。

  

  

热心网友 时间:2022-04-21 13:19

单片机中的堆栈是1个连续的存储区,采取后入先出的方式存取数据。1般PUSH操作是向堆栈中存入数据,POP操作从堆栈取得数据。PUSH的操作顺序和POP的操作顺序正好相反,例如有A.B.C.D4个变量的值,依照PUSH
A,PUSH
B,PUSH
C和PUSH
D存入堆栈,则需要用POP
D,
POP
C,
POP
B,POP
A的顺序提取。如果ABCD的类型字长1致,则堆栈还可用来交换变量的值,例如PUSH
A,PUSH
B,然后用POP
A,
POP
B来实现A和B两个变量值的互换。但这样的操作不是所有单片机都支持。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com