後進先出存儲列表

後進先出存儲列表

是一種後進先出的數據結構。從中取出數據項的順序與將它們插入棧的順序相反。

基本介紹

  • 中文名:後進先出存儲列表
  • 外文名:The back in comes out the list of stores
  • 又稱:棧
  • 類型:數據結構
  • 定義:數據項按序排列的數據結構
  • 套用學科:計算機原理
程式簡介,定址方式,

程式簡介

後進先出存儲器(LIF0)又稱堆疊,它的工作情況與FIFO相反,LIFO是按後寫入的數據先讀出的順序進行存取的,LIFO存儲器只有一個數據連線埠,它既是輸入口,又是輸出口。LIFO與FIFO存儲器一樣沒有外部地址碼輸入端,而是由內部的指針指示存取的地址。LIFO只需一個指針。復位時,指針指向最末一個單元(棧底)。每寫入一個數據,指針減1。當指針值減為0時,表示LIFO充滿數據。每讀出一個數據,指針加1。當指針值為最大值(即指向棧底)時,說明LIFO中沒有數據了。通常把LIFO(堆疊)的寫入操作叫壓入,讀出操作叫彈出。

定址方式

堆疊存儲器指定兩個暫存器定址:堆疊指針ESP和堆疊段暫存器SS,使用堆疊段之前首先要定義,程式中對堆疊段的定義語句為:STACK 200H;就是對堆疊的定義,即在記憶體中劃分200H~SS:000001FFH,那么堆疊指針ESP的初值為00000200H。
後進先出存儲列表
當字數據AX壓入堆疊時,高8位放入由ESP-1定址的單元,低8位放入由ESP-2定址的單元,然後ESP中的值減2。當字數據從堆疊彈出到BX時,低8位從ESP定址的單元移出,高8位從ESP+1定址的單元移出,然後ESP暫存器加2。
後進先出存儲列表

相關詞條

熱門詞條

聯絡我們