<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 關(guān)于A(yíng)RM堆棧的一些問(wèn)題

關(guān)于A(yíng)RM堆棧的一些問(wèn)題

作者: 時(shí)間:2016-11-21 來(lái)源:網(wǎng)絡(luò ) 收藏
學(xué)習ARM尋址方式的時(shí)候,里面有種尋址為堆棧尋址。

ARM7中的寄存器R13就是作為堆棧指針SP的。堆棧內容的增減,就會(huì )影響堆棧指針的移動(dòng)。這個(gè)移動(dòng)方向與堆棧的生長(cháng)方向有關(guān)。

本文引用地址:http://dyxdggzs.com/article/201611/319110.htm

ARM7的有兩種堆棧生長(cháng)方向。

1.向上生長(cháng) 在像堆棧寫(xiě)入數據后,堆棧指針的值變大,也就是向高地址方向生長(cháng),這種是遞增堆棧。

2.向下生長(cháng) 在像堆棧寫(xiě)入數據后,堆棧指針的值變小,也就是向低地址方向生長(cháng),這種是遞減堆棧。

要注意的問(wèn)題不僅僅是堆棧增長(cháng)方向。還要考慮到堆棧指針指向的存儲單元是否已經(jīng)保存有堆棧數據,或者說(shuō)入棧時(shí)是否可以直接向堆棧指針指向的存儲單元寫(xiě)入數據。這就是“滿(mǎn)堆棧”與“空堆棧”。

1.滿(mǎn)堆棧 堆棧指針指向最后壓入棧的有效數據項,稱(chēng)為滿(mǎn)堆棧。此時(shí)堆棧入棧操作要先調整指針再寫(xiě)入數據;

2.空堆棧 堆棧指針指向下一個(gè)待壓入數據的空位置,稱(chēng)為空堆棧。此時(shí)堆棧的入棧操作的入棧操作要先先寫(xiě)入數據再調整指針。

綜合以上敘述,就可以得到四種堆棧類(lèi)型,分別為滿(mǎn)遞增,空遞增,滿(mǎn)遞減,空遞減。

然后我想到了uc/OS-II中就有與堆棧類(lèi)型密切相關(guān)的東西,移植ucOS-II到相應平臺上,就要考慮到堆棧類(lèi)型。我看書(shū)上說(shuō)到ADS1.2堆棧類(lèi)型只支持滿(mǎn)遞減。此時(shí)我的問(wèn)題就出來(lái)了,堆棧類(lèi)型具體應該是跟MCU有關(guān),而不同的編譯器又支持不同的類(lèi)型,是不是這樣呢,最后我在A(yíng)DS1.2文件的一個(gè)講ATPCS的PDF中找到了答案,原來(lái)就是這樣,ADS1.2只能滿(mǎn)遞減。一下就是PDF中的截圖。



關(guān)鍵詞: ARM堆棧連續空

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>