複製鏈接
請複製以下鏈接發送給好友

堆棧指針

鎖定
堆棧指針總是指向棧頂位置。一般堆棧的棧底不能動,所以數據入棧前要先修改堆棧指針,使它指向新的空餘空間然後再把數據存進去,出棧的時候相反。
堆棧指針,隨時跟蹤棧頂地址,按先進後出的原則存取數據。
中文名
堆棧指針
外文名
Stack pointer
應    用
堆棧操作
棧是一種特殊的線性表,是一種只允許在表的一端進行插入或刪除操作的線性表。表中允許進行插入、刪除操作的一端稱為棧頂。表的另一端稱為棧底。棧頂的當前位置是動態的,對棧頂當前位置的標記稱為棧頂指針。當棧中沒有數據元素時,稱之為空棧。棧的插入操作通常稱為進棧或入棧,棧的刪除操作通常稱為退棧或出棧。
計算機中的堆棧主要用來保存臨時數據,局部變量和中斷/調用子程序程序的返回地址。
堆棧指針是在棧操作過程中,有一個專門的棧指針(習慣上稱它為TOP),指出棧頂元素所在的位置。
堆棧指針總是指向棧頂元素。
堆棧可以使向下生長的(向低地址),也可以是向上生長的。
如果堆棧是向上生長的,數據入棧的時候,堆棧指針先加1,再壓棧。出棧的時候先彈出數據,堆棧指針再減1。如果堆棧是向下生長的,數據入棧時指針將減1,數據出棧時指針將加1。