棧頂是高地址還是低地址 計算機二級怎么確定棧的棧頂和棧底位置?
計算機二級怎么確定棧的棧頂和棧底位置?如果您編寫一段代碼來實現(xiàn)堆棧,那么所有這些問題都取決于您自己。但要注意壓堆與卸堆的匹配。也就是說,如果先按堆棧,然后移動指針,則表示指針指向自由區(qū)域。當(dāng)您從堆棧中
計算機二級怎么確定棧的棧頂和棧底位置?
如果您編寫一段代碼來實現(xiàn)堆棧,那么所有這些問題都取決于您自己。
但要注意壓堆與卸堆的匹配。
也就是說,如果先按堆棧,然后移動指針,則表示指針指向自由區(qū)域。當(dāng)您從堆棧中取出時,需要首先移動指針,然后獲取值。
如果您詢問的是運行時存儲臨時變量的堆棧。低位地址是棧頂還是高位地址是棧頂取決于系統(tǒng)架構(gòu)。X86平臺和arm平臺是不同的。
棧的順序存儲空間怎么表示?
順序堆棧,即堆棧的順序存儲結(jié)構(gòu),使用一組具有連續(xù)地址的存儲單元依次存儲從堆棧底部到堆棧頂部的數(shù)據(jù)元素。同時,還附加了一個指針top,以指示堆棧元素的頂部在順序堆棧中的位置。通常使用top=0表示空堆棧。一般來說,初始化空堆棧時,不應(yīng)限制堆棧的最大容量。更合理的方法是:首先為堆棧分配一個基本的容量,然后在應(yīng)用過程中當(dāng)堆棧空間不足時擴展堆棧??斩褩5谋磉_式是s.top==s.base。