① MCS-51 內部RAM一共多少個單元
但是某些型號的可能要多 畢竟不是一家在生產 補充: 關於MCS-51 單片機的存儲器地址空間,講起來,要用幾頁的篇幅。 簡單介紹如下: MCS-51的存儲器有片內RAM、片外RAM 和 ROM 三個空間。 --------片內RAM:地址范圍是00H到7FH (52系列延伸到FFH)。 其中00H到1FH,共32位元組,分成四個工作寄存器區,每區有寄存器 R0~R7。 對此區域,可以使用 R0~R7 來操作,代碼短捷,但是,只有一個當前工作區是可以這樣讀寫的。 對此區域,也可以使用位元組地址,來讀寫。 --20H-2FH,共16位元組,是位定址區,共有128個「位」,位地址:00~7FH。 此區域,也可按照位元組定址,來讀寫。 --80H-FFH,共有128個地址號碼,其中離散的分布著21個特殊功能寄存器,必須直接定址才能讀寫。 (52系列,在此范圍,還有128位元組的 RAM,必須間接定址才能讀寫)。 對上述空間讀寫,必須使用 MOV 指令。 --------片外RAM:片外RAM的地址范圍是0000H到FFFFH,容量即為64KB。 對片外RAM讀寫,必須使用 MOVX 指令。 --------ROM:ROM的地址范圍是0000H到FFFFH,容量即為64KB。 其中0000~0FFFH,即4K,在片內,其它在片外。 (對於8031,這64K的ROM,都在片外。) 對ROM讀出,必須使用 MOVC 指令。 追問: 片內低128單元和片內高128單元能和到一起來說是256個單元嗎? 回答: 高128不是都有的,只有幾個特殊的存在的。
② 簡述MCS-51單片機內部RAM地址空間、內部特殊功能寄存器及位地址空間的區別
mcs-51單片機內部ram分配如下:
00h~1fh:為工作寄存器地址,共四組
20h~2fh:為位地址空間,位地址范圍為00h~7fh
30h~7fh:為用戶使用的ram空間
80h~ffh:為特殊功能寄存器空間。
③ MCS-51系列單片機的存儲器可劃分為幾個空間,地址范圍以及容量是多少
MCS-51單片機在物理的角度上有四個存儲空間:
1、片內程序存儲器
2、片外程序存儲器
3、片內數據存儲器
4、片外數據存儲器
但在邏輯上,從用戶的角度上,單片機有三個存儲空間:
1、片內外統一編址的64K的程序存儲器地址空間(MOVC)
2、256B的片內數據存儲器的地址空間(MOV)
3、以及64K片外數據存儲器的地址空間(MOVX)
④ 簡述MCS-51單片機內部RAM地址空間、內部特殊功能寄存器空間及位地址空間的區
內部數據存儲器低128單元
8051單片機的內部RAM共有256個單元,通常把這256個單元按其功能劃分為兩部分:低128單元(單元地址00H~7FH)和高128單元(單元地址80H~FFH)。如圖所示為低128單元的配置如上圖。
寄存器區
8051共有4組寄存器,每組8個寄存單元(各為8),各組都以R0~R7作寄存單元編號。寄存器常用於存放操作數中間結果等。由於它們的功能及使用不作預先規定,因此稱之為通用寄存器,有時也叫工作寄存器。4組通用寄存器占據內部RAM的00H~1FH單元地址。
在任一時刻,CPU只能使用其中的一組寄存器,並且把正在使用的那組寄存器稱之為當前寄存器組。到底是哪一組,由程序狀態字寄存器PSW中RS1、RS0位的狀態組合來決定。
通用寄存器為CPU提供了就近存儲數據的便利,有利於提高單片機的運算速度。此外,使用通用寄存器還能提高程序編制的靈活性,因此,在單片機的應用編程中應充分利用這些寄存器,以簡化程序設計,提高程序運行速度。
位定址區
內部RAM的20H~2FH單元,既可作為一般RAM單元使用,進行位元組操作,也可以對單元中每一位進行位操作,因此把該區稱之為位定址區。位定址區共有16個RAM單元,計128位,地址為00H~7FH。MCS-51具有布爾處理機功能,這個位定址區可以構成布爾處理機的存儲空間。這種位定址能力是MCS-51的一個重要特點。
用戶RAM區
在內部RAM低128單元中,通用寄存器佔去32個單元,位定址區佔去16個單元,剩下80個單元,這就是供用戶使用的一般RAM區,其單元地址為30H~7FH。對用戶RAM區的使用沒有任何規定或限制,但在一般應用中常把堆棧開辟在此區中。
內部數據存儲器高128單元
內部RAM的高128單元是供給專用寄存器使用的,其單元地址為80H~FFH。因這些寄存器的功能已作專門規定,故稱之為專用寄存器(Special Function Register),也可稱為特殊功能寄存器。
⑤ 51單片機的存儲器分為哪幾個空間
1)MCS-51單片機的存儲器從物理結構上分為:片內和片外數據存儲器,片內和片外程序存儲器。
2)從邏輯上分別可劃分為:片內統一定址的64K程序存儲器空間(0000H---FFFFH);64KB的片外數據存儲器空間(0000H---FFFFH);256B的片內數據存儲器空間(00H---FFH)。
(5)mcs51ram存儲空間擴展閱讀:
使用方法:
1、將模擬器插入需模擬的用戶板的CPU插座中,模擬器由用戶板供電;
2、將模擬器的串列電纜和PC機接好,打開用戶板電源;
3、通過KeilC 的IDE開發模擬環境UV2 下載用戶程序進行模擬、調試。
硬體說明
1、使用用戶板的晶振:模擬器晶振旁有兩組跳線用來切換內部晶振和用戶板晶振,當兩個短路塊位於模擬器晶振一側時,默認使用模擬板上的晶振(11.0592MHz), 當兩個短路塊位於電容一側時,使用用戶板的晶振。
2、為便於調試帶看門狗的用戶板,模擬器的復位端未與用戶板復位端相連;故模擬器的復位按鈕只復位模擬器,不復位用戶板;若要復位用戶板,請使用用戶板復位按鈕。
⑥ 簡述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系列單片機中,片內程序存儲器為4KB」,而同時又說「程序存儲器的定址空間為64KB」,求區別!
4K的存儲器表示這個51晶元的實際硬體的容量,你的程序受這個4K限制;
64K是51可以處理的地址能力范圍,這個是潛力而已。
有能力並不表示要把所有潛力轉化為實際的實力啊。
實際上,通過硬體電路的設計,是可以突破64K的限制的,不過這是另一方面的問題了。
⑧ MCS-51單片機內部RAM如何分配的
MCS-51單片機內部RAM分配如下:
00H~1FH:為工作寄存器地址,共四組
20H~2FH:為位地址空間,位地址范圍為00H~7FH
30H~7FH:為用戶使用的RAM空間
80H~FFH:為特殊功能寄存器空間。
⑨ MCS-51單片機內部RAM可分為幾個區各區的主要作用是什麼
MCS-51單片機內部RAM可分為5個區:
1、存儲矩陣區:RAM的核心區域是一個寄存器矩陣,用來存儲信息,稱為存儲矩區。
2、地址解碼器區:地址解碼器區的作用是將寄存器地址所對應的二進制數譯成有效的行選信號和列選信號,從而選中該存儲單元。
3、讀/寫控制器區:訪問RAM時,對被選中的寄存器進行讀操作還是進行寫操作,是通過的讀/寫控制器區讀寫信號來進行控制的。
4、輸入/輸出區:RAM通過輸入/輸岀區與計算機的CPU交換數據。輸入/輸出區數據線的條數,與一個地址中所對應的寄存器位數相同。
5、片選控制區:片選控制區就是用來實現這種控制的。控制RAM被訪問時,是否與CPU發生聯系,與其交換信息。
(9)mcs51ram存儲空間擴展閱讀:
MCS-51單片機內部RAM讀操作時,被選中單元的數據經數據線、輸入/輸出區處理後傳送給CPU;寫操作時,CPU將數據經輸入/輸出區轉化、數據線存入被選中單元。
由於受RAM的集成度限制。MCS-51單片機由許多RAM組合而成。CPU訪問存儲器時,一次只能訪問RAM中的某一片,片選控制區選中,地址解碼器的輸出信號控制該片某個地址的寄存器與CPU接通;當片選線接入無效電平時,則該片與CPU之間處於斷開狀態。