堆棧指針SP( Stack Pointor)
發布時間:2014/6/3 21:14:16 訪問次數:5764
堆棧指針SP是一個8位寄存器,能自動加1或減1,專門用來存放雄棧的棧頂地址。
計算機中的堆棧是一種能按“先進后出”或“后進先出”規律存取數據的RAM區域。SN74LV4066APWR這個區域是可大可小的,常稱為堆棧區。8051片內RAM共有128B,地址范圍為OOH~7FH,故這個區域中的任何子域都可以用作堆棧區,即作為堆棧來使用。
堆棧有兩種類型,向上生長型和向下生長型。8051的堆棧屬于向上生長型,在數據壓入堆棧時,SP的內容自動加1,作為本次進棧的地址指針,然后再存入信息。所以隨著信息的存入,SP的值越來越大。在信息從堆棧彈出之后,SP的值隨著減少,如圖3-5所示。向下生長型的堆棧則相反。
堆棧有棧項和棧底之分,棧底由棧底地址標識,棧頂由棧頂地址指示。棧底地址是固定不變的,它決定了堆棧在RAM中的物理位置;棧頂地址是可以改變的,它決定堆棧中是否存放有數據。因此,當堆棧為空(即無數據)時,棧頂地址必定與棧底地址重合。對向上生長型的堆棧來說,當堆棧中存放的數據越多,SP中的棧頂地址比棧底地址就越大,也就是說,SP就好像是一個地址指針,始終指示著堆棧中最上面的那個數據。
8051單片機復位后,堆棧指針SP總是初始化到內部RAM地址07H。從08H開始就是8051的堆棧。當然,用戶也可以根據需要通過指令改變SP的值,從而改變堆棧的位置。
數據指針DPTR( Data Pointer)
數據指針DPTR是一個16位的寄存器,由兩個8位寄存器DPH和DPL組成。其中,DPH為DPTR的高8位,DPL為DPTR的低8位。DPTR可以用來存放片內ROM的地址,也可用來存放片外ROM和片外RAM的地址。
堆棧指針SP是一個8位寄存器,能自動加1或減1,專門用來存放雄棧的棧頂地址。
計算機中的堆棧是一種能按“先進后出”或“后進先出”規律存取數據的RAM區域。SN74LV4066APWR這個區域是可大可小的,常稱為堆棧區。8051片內RAM共有128B,地址范圍為OOH~7FH,故這個區域中的任何子域都可以用作堆棧區,即作為堆棧來使用。
堆棧有兩種類型,向上生長型和向下生長型。8051的堆棧屬于向上生長型,在數據壓入堆棧時,SP的內容自動加1,作為本次進棧的地址指針,然后再存入信息。所以隨著信息的存入,SP的值越來越大。在信息從堆棧彈出之后,SP的值隨著減少,如圖3-5所示。向下生長型的堆棧則相反。
堆棧有棧項和棧底之分,棧底由棧底地址標識,棧頂由棧頂地址指示。棧底地址是固定不變的,它決定了堆棧在RAM中的物理位置;棧頂地址是可以改變的,它決定堆棧中是否存放有數據。因此,當堆棧為空(即無數據)時,棧頂地址必定與棧底地址重合。對向上生長型的堆棧來說,當堆棧中存放的數據越多,SP中的棧頂地址比棧底地址就越大,也就是說,SP就好像是一個地址指針,始終指示著堆棧中最上面的那個數據。
8051單片機復位后,堆棧指針SP總是初始化到內部RAM地址07H。從08H開始就是8051的堆棧。當然,用戶也可以根據需要通過指令改變SP的值,從而改變堆棧的位置。
數據指針DPTR( Data Pointer)
數據指針DPTR是一個16位的寄存器,由兩個8位寄存器DPH和DPL組成。其中,DPH為DPTR的高8位,DPL為DPTR的低8位。DPTR可以用來存放片內ROM的地址,也可用來存放片外ROM和片外RAM的地址。
上一篇:程序狀態字PSW (Program Status Word)
上一篇:I/O端口
熱門點擊
- 訪問片外ROM/RAM的指令時序
- 堆棧指針SP( Stack Pointor)
- 16位特殊功能寄存器sfr16
- 三極管的極限參數有集電極最大允許電流
- PCB的元器件貼裝位置有偏移,可用以下兩種方
- “黑焊盤”現象的產生原因
- Sn-Ag-Cu三元合金
- 焊點形成過程
- I/O端口
- 程序執行過程
推薦技術資料
- DS2202型示波器試用
- 說起數字示波器,普源算是國內的老牌子了,FQP8N60... [詳細]