电子常识
由堆栈设计者确定。对于硬件堆栈计算机中的堆栈是计算机存储数据的一种数据结构,SP的作用就是指示当前要出栈或入栈的数据,并在操作执行后自动递增或递减。但有一点,SP是入栈递增的。至于是入栈递增还是入栈递减,就是由CPU的生产厂家确定,通常由一块存储区和指向该存储区的指针SP构成。
在堆栈中保存数据叫入栈,从堆栈中读取数据叫出栈。堆栈保存数据的特点是入栈和出栈是倒序的,最先入栈的数据要到最后才能出栈,而最后入栈的数据最先出栈,出栈就必定是递减,反之亦然。
8051的堆栈容量不超过(256-8)字节。SP入栈递增的堆栈通常叫向上生长型的堆栈,反之就是向下生长型的堆栈,这就是通常说的“先进后出,后进先出”。
堆栈保存数据和读取数据都是通过唯一的堆栈指针SP来实现的
SP是一个8位专用寄存器,它批示出堆栈顶部在内部RAM块中的位置。系统复位后,SP初始化为07H,实际上堆栈是由08H单元开始的。考虑08H~1FH单元分别属于工作寄存器区1~3,若在程序设计中用到这些区,则最好把SP值改值为1FH或更大的值。
MCS-51的堆栈是向上生成的,若SP=60H,CPU执行一和调用指令或者响应中断后,PC进栈,PCL保护到61H,PCH保护到62H,SP=62H。
全部0条评论
快来发表一下你的评论吧 !