單片機原理及應用/單片機中的匯流排

維基教科書,自由的教學讀本

微處理器是計算機的核心,各器件都要與微處理器相連,各器件之間的工作必須相互協調,微處理機中引入了匯流排的概念,各個器件共同享用匯流排。在計算機中,根據匯流排的功能可以分為數據匯流排、地址匯流排和控制匯流排。

數據匯流排(DB,Data Bus)[編輯]

數據匯流排是片內外之間用來相互傳送數據的匯流排,所有器件的數據線全部接到公用的數據匯流排上,即相當於各個器件並聯起來。在AT89S52中,數據匯流排寬度為8位,就是一次可以同時處理8位數據,每次恰好操作一個字節。

地址匯流排(AB,Address Bus)[編輯]

在單片機的外部存儲器和其它器件中有存儲單元,這些存儲單元要被分配地址才能使用。數據是按照地址進行存儲的,就像我們坐火車一樣,首先對火車進行編號,比如哪節車廂,哪個座位,這就是地址,然後我們每個人才可以按照這個地址就坐,這個時候,我們每個人就是數據。單片機信息按存儲單元分組存放在存儲器中,每一個存儲單元有唯一的存儲器地址與之對應。在一個存儲單元中進行讀寫之前,單片機首先選擇所需要的存儲器地址,把地址信息輸出到地址匯流排上,然後通過解碼器譯出相應的地址。
AT89S52單片機地址匯流排寬度為16位,表示符號為A0~A15,可以分配216=65536個地址,地址從0000H~FFFFH。

控制匯流排(CB,Control Bus)[編輯]

控制匯流排是用來傳送控制信息的匯流排,主要功能是傳送控制信息,使單片機與外部電路的操作同步。控制匯流排分為輸入控制線和輸出控制線,計算機在控制匯流排的控制下進行相應的操作。