什麼叫堆疊?8051堆疊指示器SP有多少位,作用是什麼?單片

2021-09-04 02:40:43 字數 1824 閱讀 7438

1樓:生活如歌

堆疊是計算機中在記憶體ram裡的一段特殊的儲存空間,儲存資料按「先進後出,後進先出」規律,一般在子程式呼叫,中斷子程式呼叫時儲存地址和資料用。

8051微控制器堆疊指標sp是8位的,用來指向堆疊的棧頂。

初始化後sp=07h

2樓:渾興

堆疊是連續的記憶體單元,存取方式遵循「先進後出」的原則。

其作用一般是儲存暫存器或標誌暫存器的內容。堆疊就是這樣一種資料結構。它是在記憶體中開闢一個儲存區域,資料一個一個順序地存入(也就是「壓入——push」)這個區域之中。

有一個地址指標總指向最後一個壓入堆疊的資料所在的資料單元,存放這個地址指標的暫存器就叫做堆疊指示器。開始放入資料的單元叫做「棧底」。資料一個一個地存入,這個過程叫做「壓棧」。

在壓棧的過程中,每有一個資料壓入堆疊,就放在和前一個單元相連的後面一個單元中,堆疊指示器中的地址自動加1。讀取這些資料時,按照堆疊指示器中的地址讀取資料,堆疊指示器中的地址數自動減 1。這個過程叫做「彈出pop」。

如此就實現了後進先出的原則。sp是一個8位專用暫存器,它批示出堆疊頂部在內部ram塊中的位置。系統復位後,sp初始化為07h,實際上堆疊是由08h單元開始的。

考慮08h~1fh單元分別屬於工作暫存器區1~3,若在程式設計中用到這些區,則最好把sp值改值為1fh或更大的值。 sp是一個8位專用暫存器,它批示出堆疊頂部在內部ram塊中的位置。系統復位後,sp初始化為07h,實際上堆疊是由08h單元開始的。

考慮08h~1fh單元分別屬於工作暫存器區1~3,若在程式設計中用到這些區,則最好把sp值改值為1fh或更大的值。

at89s52微控制器復位後的堆疊指標sp的值是多少?

3樓:匿名使用者

at89s52微控制器復位後sp=07h

51微控制器復位後sp=07h

堆疊指標(sp)的作用是什麼?在程式設計時,為什麼還要對 sp重新賦值?

4樓:匿名使用者

堆疊指標的作用就是指向棧頂元素的,通過它還可以對棧頂元素進行出棧操作

當堆疊中的元素進行出棧或入棧操作時,都會使棧頂元素髮生變化,堆疊指標sp就需要重新賦值,讓其指向新的棧頂元素

5樓:匿名使用者

堆疊是一種執行「後進先出」演算法的資料結構。 設想有一個直徑不大、一端開口一端封閉的竹筒。有若干個寫有編號的小球,小球的直徑比竹筒的直徑略小。

現在把不同編號的小球放到竹筒裡面,可以發現一種規律:先放進去的小球只能後拿出來,反之,後放進去的小球能夠先拿出來。所以「先進後出」就是這種結構的特點。

堆疊就是這樣一種資料結構。它是在記憶體中開闢一個儲存區域,資料一個一個順序地存入(也就是「壓入——push」)這個區域之中。有一個地址指標總指向最後一個壓入堆疊的資料所在的資料單元,存放這個地址指標的暫存器就叫做堆疊指示器。

開始放入資料的單元叫做「棧底」。資料一個一個地存入,這個過程叫做「壓棧」。在壓棧的過程中,每有一個資料壓入堆疊,就放在和前一個單元相連的後面一個單元中,堆疊指示器中的地址自動加1。

讀取這些資料時,按照堆疊指示器中的地址讀取資料,堆疊指示器中的地址數自動減 1。這個過程叫做「彈出pop」。如此就實現了後進先出的原則。

堆疊是計算機中最常用的一種資料結構,比如函式的呼叫在計算機中是用堆疊實現的。 堆疊可以用陣列儲存,也可以用以後會介紹的連結串列儲存。 下面是一個堆疊的結構體定義,包括一個棧頂指標,一個資料項陣列。

棧頂指標最開始指向-1,然後存入資料時,棧頂指標加1,取出資料後,棧頂指標減1。 #define max_size 100 typedef int data_type; struct stack ;

1用c 或java寫關於堆疊的類描述,併為堆疊的壓

include using namespace std const int max 5 假定棧中最多儲存5個資料 定義名為stack的類,其具有棧功能 class stack 初始化函式void push float x 入棧函式 以下利用迴圈和pop 成員函式依次彈出b棧中的資料並顯示for i ...

8051包括AT89C51嗎,有什麼區別

1 89c51和8051在引腳方面沒有任何區別 按dip40封奘 2 89c51是cmos工藝 8051是nmos工藝製造內 80c51則是cmos工藝製造 容cmos工藝製造的功耗更加小。3 89c51的內部rom是flash rom,可多次更新改寫 相當於8751,不過8751是eerom 80...

esp暫存器到底指在什麼位置,資料壓入堆疊時,ESP暫存器的指向?

在汽車制動情況下輪胎即將抱死時,esp會採用 機械點剎 的形式在1秒鐘內進行上白次的制動,使車輛在完成全力制動時仍然可以保持通過方向盤來控制車輛行駛的方向 esp指向的是記憶體單元不是一條線,可以假設esp每個值所指向的是一個位元組的記憶體單元這樣想就簡單了,新棧幀底部就是esp當前所指向的值,棧頂...