當前位置:旅游攻略大全網 - 酒店住宿 - 堆棧的功能、操作過程和特性

堆棧的功能、操作過程和特性

堆棧其實是數據結果中的兩個概念,是存儲數據的壹種方式。堆棧:隨機順序;堆棧:後進先出。要說有用性,就是寫代碼的時候,有時候數據存取壹定要有壹個規定的順序,這個順序是妳自己規定的。然後根據妳寫的程序有用性的特點,按照堆、棧或隊列的順序提問:為什麽編程時要重新賦值棧指針SP?回答:這不是初始化嗎?

堆棧是壹個特殊的存儲區域,它的主要功能是臨時存儲數據和地址,通常用來保護斷點和站點。它的特點是按照先入後出的原則存取數據,這裏的入和出指的是進入和退出棧的操作。

80C51片內RAM的某些單元可以用作堆棧。有壹個8位堆棧指針寄存器SP,專用於指示片內RAM的哪個單元位於當前堆棧的頂部。80C51單片機系統復位後,SP的初始值為07H,這意味著信息將從內部RAM的08H單元開始堆積。

但是80C51系列的堆棧面積不是固定的,可以通過軟件改變SP寄存器的值來改變堆棧面積。為了避開工作寄存器區和位尋址區,SP的初始值可以設置為2FH或更大的地址值。如果CPU在其操作中使用兩組工作寄存器,如果不使用位變量,則SP的初始值至少應為0FH或更大;如果使用位變量,SP的初始值至少應為2FH或更大;KeilC51編譯器會自動計算SP的初始設定值,無需程序員關心。