㈠ MCS-51單片機內部程序存儲器是如何分配的哪些地址用於保留區有何作用
8051片內有4kB的程序存儲單元,其地址為0000H—0FFFH,其中一組特殊是0000H—0002H單元,系統復位後,PC為0000H,單片機從0000H單元開始執行程序 ,另一組特殊單元是0003H—002AH,這40個單元各有用途,它們被均勻地分為五段,它們的定義如下:
0003H—000AH 外部中斷0中斷地址區。
000BH—0012H 定時/計數器0中斷地址區。
0013H—001AH 外部中斷1中斷地址區。
001BH—0022H 定時/計數器1中斷地址區。
0023H—002AH 串列中斷地址區。
可見以上的40個單元是專門用於存放中斷處理程序的地址單元
二、數據存儲器
MCS-51內部RAM有128或256個位元組的用戶數據存儲(不同的型號有分別),它們是用於存放執行的中間結果和過程數據的。MCS-51的數據存儲器均可讀寫,部分單元還可以位定址。
1、 8051內部RAM共有256個單元,這256個單元共分為兩部分。其一是地址從00H—7FH單元(共128個位元組)為用戶數據RAM。從80H—FFH地址單元(也是128個位元組)為特殊寄存器(SFR)單元。從圖1中可清楚地看出它們的結構分布。
在00H—1FH共32個單元中被均勻地分為四塊,每塊包含八個8位寄存器,均以R0—R7來命名,我們常稱這些寄存器為通用寄存器。
內部RAM的20H—2FH單元為位定址區,既可作為一般單元用位元組定址,也可對它們的位進行定址。位定址區共有16個位元組,128個位,位地址為00H—7FH。。
㈡ MCS-51單片機片內256B的數據存儲器可分為幾個區分別起什麼作用
MCS-51 單片機片內數據存儲器可分為二個區: 00H~7FH 單元組成的低128B 的片內RAM區、80H ~FFH單元組成的高128B 的專用寄存器區。其中低128B的RAM區又分為: 00H~1FH 單元為工作寄存器區、20H~2FH 單元為位定址區、30H~7FH單元為用戶RAM區。
工作寄存器區可作通用寄存器用,用戶RAM區可作堆棧和數據緩沖用。專用寄存器區又稱特殊功能寄存器,使用80H~FFH單元。
(2)msc51存儲器結構圖擴展閱讀
存儲器空間在物理結構上可劃分為:MCS-51存儲器是採用將程序存儲器和數據存儲器分開定址的結構,其存儲器空間在物理結構上可劃分為如下四個空間:片內程序存儲器、片外程序存儲器、片內數據存儲器、片外數據存儲器。
MCS-51單片機的P0~P3四個I/O埠在結構上的異同以及使用時應注意的事項:MCS-51單片機的四個埠在結構上相同之處: P0~P3 都是准雙向I/O 口,作輸入時,必須先向相應埠的鎖存器寫入「1」。
不同之處;P0口的輸出級與P1~P3口不相同,它無內部上拉電阻,不能提供拉電流輸出,而P1~P3 則帶內部上拉電阻,可以提供拉電流輸出。
當P0口作通用I/O口輸出使用時,需外接上拉電阻才可輸出高電平;但作地址/數據匯流排時,不需要外接上拉電阻。P1~P3口IO輸出時,均無需外接上拉電阻。
㈢ MCS-51單片機內部結構由哪幾部分組成
單片機與微型計算機都是由CPU、存儲器和輸入/輸出介面等組成的。
單片機(Single-Chip Microcomputer)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能。
集成到一塊矽片上構成的一個小而完善的微型計算機系統,在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。
特點:
單片機的特點可歸納為以下幾個方 面:集成度高;存儲容量大;外部擴展能力強;控制功能強。
1、從內部的硬體到軟體有一套完整的按位操作系統,稱作位處理器,處理對象不是字或位元組而是位。不但能對片內某些特殊功能寄存器的某位進行處理,如傳送、置位、清零、測試等,還能進行位的邏輯運算,其功能十分完備,使用起來得心應手。
2、同時在片內RAM區間還特別開辟了一個雙重功能的地址區間,使用極為靈活,這一功能無疑給使用者提供了極大地方便。
3、乘法和除法指令,這給編程也帶來了便利。很多的八位單片機都不具備乘法功能,作乘法時還得編上一段子程序調用,十分不便。
㈣ 簡述51單片機的存儲器邏輯空間分布,並說明當存儲器地址發生重疊時應如何處
MCS-51單片機存儲器結構
1、 程序存儲器
MCS-51具有64kB程序存儲器定址空間,它是用於存放用戶程序、數據和表格等信息。對於內部無ROM的8031單片機,它的程序存儲器必須外接,空間地址為64kB,此時單片機的端必須接地。強制CPU從外部程序存儲器讀取程序。對於內部有ROM的8051等單片機,正常運行時,則需接高電平,使CPU先從內部的程序存儲中讀取程序,當PC值超過內部ROM的容量時,才會轉向外部的程序存儲器讀取程序。
8051片內有4kB的程序存儲單元,其地址為0000H—0FFFH,單片機啟動復位後,程序計數器的內容為0000H,所以系統將從0000H單元開始執行程序。但在程序存儲中有些特殊的單元,這在使用中應加以注意:
其中一組特殊是0000H—0002H單元,系統復位後,PC為0000H,單片機從0000H單元開始執行程序,如果程序不是從0000H單元開始,則應在這三個單元中存放一條無條件轉移指令,讓CPU直接去執行用戶指定的程序。
另一組特殊單元是0003H—002AH,這40個單元各有用途,它們被均勻地分為五段,它們的定義如下:
0003H—000AH 外部中斷0中斷地址區。
000BH—0012H 定時/計數器0中斷地址區。
0013H—001AH 外部中斷1中斷地址區。
001BH—0022H 定時/計數器1中斷地址區。
0023H—002AH 串列中斷地址區。
可見以上的40個單元是專門用於存放中斷處理程序的地址單元,中斷響應後,按中斷的類型,自動轉到各自的中斷區去執行程序。因此以上地址單元不能用於存放程序的其他內容,只能存放中斷服務程序。但是通常情況下,每段只有8個地址單元是不能存下完整的中斷服務程序的,因而一般也在中斷響應的地址區安放一條無條件轉移指令,指向程序存儲器的其它真正存放中斷服務程序的空間去執行,這樣中斷響應後,CPU讀到這條轉移指令,便轉向其他地方去繼續執行中斷服務程序。
2、 數據存儲器
數據存儲器也稱為隨機存取數據存儲器。MCS-51單片機的數據存儲器在物理上和邏輯上都分為兩個地址空間,一個是內部數據存儲區和一個外部數據存儲區。MCS-51內部RAM有128或256個位元組的用戶數據存儲(不同的型號有分別),它們是用於存放執行的中間結果和過程數據的。MCS-51的數據存儲器均可讀寫,部分單元還可以位定址。
8051內部RAM共有256個單元,這256個單元共分為兩部分。其一是地址從00H—7FH單元(共128個位元組)為用戶數據RAM。從80H—FFH地址單元(也是128個位元組)為特殊寄存器(SFR)單元。從圖1中可清楚地看出它們的結構分布。
在00H—1FH共32個單元中被均勻地分為四塊,每塊包含八個8位寄存器,均以R0—R7來命名,我們常稱這些寄存器為通用寄存器。這四塊中的寄存器都稱為R0—R7,那麼在程序中怎麼區分和使用它們呢?聰明的INTEL工程師們又安排了一個寄存器——程序狀態字寄存器(PSW)來管理它們,CPU只要定義這個寄存的PSW的第3和第4位(RS0和RS1),即可選中這四組通用寄存器。對應的編碼關系如圖2所示。
內部RAM的20H—2FH單元為位定址區,既可作為一般單元用位元組定址,也可對它們的位進行定址。位定址區共有16個位元組,128個位,位地址為00H—7FH。位地址分配如表1所示,CPU能直接定址這些位,執行例如置「1」、清「0」、求「反」、轉移,傳送和邏輯等操作。我們常稱MCS-51具有布爾處理功能,布爾處理的存儲空間指的就是這些為定址區。
㈤ MCS-51系列單片機的存儲器可劃分為幾個空間其地址范圍和容量是多少在使用上有什麼不同
1)MCS-51單片機的存儲器從物理結構上分為:片內和片外數據存儲器,片內和片外程序存儲器。
2)從邏輯上分別可劃分為:片內統一定址的64K程序存儲器空間(0000H---FFFFH);64KB的片外數據存儲器空間(0000H---FFFFH);256B的片內數據存儲器空間(00H---FFH)。
㈥ MCS-51系列單片機系統的存儲器結構
8051存儲器包括內部數據存儲器RAM,地址為00~7FH,特殊功能存儲器80H~FFH,外部擴展數據存儲器,地址:0000H~FFFFH,外部擴展數據存儲器:0000H~FFFFH。
內部數據存儲器又細分為:
工作寄存器:00~1FH(共四組)
位定址寄存器:20H~2FH(位地址00H~7FH)
用戶寄存器:30H~7FH
位地址20H的具體地址為:24H.0
㈦ 51單片機的結構組成
上圖就是我們要研究學習的對象,51單片機摧部結構圖了。大家看看上圖,中間的一條雙橫線就是51單片機的內部匯流排了。其它的部件都是通過內部的匯流排與CPU相聯接的,在第一節課時我們已跟大家講述過,8051單片機是匯流排結構的。下面我們就51單片機內部的單個部件與大家進行講解。
中央處理器(CPU):
剛跟大家講過,需要提醒的是MCS-51的CPU能處理8位二進制數或代碼。CPU是單片機的主要核心部件,在CPU裡麵包含了運算器、控制器以及若干寄存器等部件給成。
內部數據存儲器(RAM):
MCS-51單片機晶元共有256個RAM單元,其中後128單元被專用寄存器佔用(稍後我們詳解),能作為寄存器供用戶使用的只是前128單元,用於存放可讀寫的數據。因此通常所說的內部數據存儲器就是指前128單元,簡稱內部RAM。地址范圍為00H~FFH(256B)。是一個多用多功能數據存儲器,有數據存儲、通用工作寄存器、堆棧、位地址等空間。
內部程序存儲器(ROM):
在前面也已講過,MCS-51內部有4KB/8KB位元組的ROM(51系列為4KB,51系列為8KB),用於存放程序、原始數據或表格。因此稱之為程序存儲器,簡稱內部RAM。地址范圍為0000H~FFFFH(64KB)。
定時器/計數器
51系列共有2個16位的定時器/計數器(52系列共有3個16位的定時器/計數器),以實現定時或計數功能,並以其定時或計數結果對計算機進行控制。定時時靠內部分頻時鍾頻率計數實現,做計數器時,對P3.4(T0)或P3.5(T1)埠的低電平脈沖計數。
並行I/O口
MCS-51共有4個8位的I/O口(P0、P1、P2、P3)以實現數據的輸入輸出。具體功能在後面章節中將會詳細論述。
串列口
MCS-51有一個可編程的全雙工的串列口,以實現單片機和其它設備之間的串列數據傳送。該串列口功能較強,既可作為全雙工非同步通信收發器使用,也可作為移位器使用。RXD( P3.0)腳為接收埠,TXD(P3.1)腳為發送埠。
中斷控制系統
MCS-51單片機的中斷功能較強,以滿足不同控制應用的需要。51系列有5個中斷源(52系列有6個中斷源),即外中斷2個,定時中斷2個,串列中斷1個,全部中斷分為高級和低級共二個優先順序別,優先順序別的設置我們也將在後面進行詳細的講解。
定時與控制部件
MCS-51單片機內部有一個高增益的反相放大器,基輸入端為XTAL1輸出端為XTAL2。MCS-51晶元的內部有時鍾電路,但石英晶體和微調電容需外接。時鍾電路為單片機產生時鍾脈沖序列。