㈠ 80C51單片機片內數據存儲器(RAM)的三個存儲區域是如何劃分的
內部數據存儲器RAM 物理上分為兩大區:00H ~ 7FH即128B內RAM 和 SFR區。數據存儲器空間(低128單元);特殊功能寄存器空間(高128單元);這兩個空間是相連的,從用戶角度而言,低128單元才是真正的數據存儲器。在片內RAM低128單元中,通用寄存器佔去32個單元,位定址區佔去16個單元,剩下的80個單元就是供用戶使用的一般RAM區了,地址單元為30H-7FH。對這部份區域的使用不作任何規定和限制,但應說明的是,堆棧一般開辟在這個區域。
㈡ 單片機片內256b的數據存儲器可分為幾個區分別作什麼用
片內有256個數據存儲器的只能是52或者更高級的51系列單片機,應該是分成五個區:
1、工作寄存器區,00H~1FH,四組工作寄存器R0~R7
2、位址寄存器區,20H~2FH ,可以位定址的區域,位址范圍00H~7FH
3、普通用戶存儲器區,30H~7FH,可以隨意使用。
4、高218位元組區,80H~FFH,只能通過間接定址訪問。
以上是可以讀寫的區域
5、特殊功能寄存器區,80H~FFH,只能通過直接定址訪問。
㈢ 單片機存儲器主要由哪幾個部分組成,如何使用
存儲器由存儲體、地址解碼器和控制電路組成。
1)存儲體是存儲數據信息的載體。由一系列存儲單元組成,每個存儲單元都有確定的地址。存儲單元通常按位元組編址,一個存儲單元為一個位元組,每個位元組能存放一個8位二進制數。就像一個大倉庫,分成許多房間,大倉庫相當於存儲體,房間相當於位元組,房間都有編號,編號就是地址。
2)地址解碼器將CPU發出的地址信號轉換為對存儲體中某一存儲單元的選通信號。相當於CPU給出地址,地址解碼器找出相應地址房間的鑰匙。通常地址是8位或1 6位,輸入到地址解碼器,產生相應的選通線,8位地址能產生28=256根選通線,即能選通256位元組。16位地址能產生216=65536=64K根選通線,即能選通64K位元組。當然要產生65536根選通線是很難想像的,實際上它是分成256根行線和256根列線,256 X 256=65536,合起來能選通65536個存儲單元。
3)存儲器控制電路包括片選控制、讀/寫控制和帶三態門的輸入/輸出緩沖電路。
①片選控制確定存儲器晶元是否工作。
②讀/寫控制確定數據傳輸方向;若是讀指令,則將已被選通的存儲單元中的內容傳送到數據匯流排上;若是寫指令,則將數據匯流排上的數據傳送到已被選通的存儲單元中。
③帶三態門的輸入/輸出緩沖電路用於數據緩沖和防止匯流排上數據競爭。數據匯流排相當於一條車流頻繁的大馬路,必須在綠燈條件下,車輛才能進入這條大馬路,否則要撞車發生交通事故。同理,存儲器的輸出端是連接在數據匯流排上的,存儲器中的數據是不能隨意傳送到數據匯流排上的。例如,若數據匯流排上的數據是「1」(高電平5V),存儲器中的數據是「0」(低電平OV),兩種數據若碰到一起就會發生短路而損壞單片機。因此,存儲器輸出埠不僅能呈現「1」和「O」兩種狀態,還應具有第三種狀態「高阻"態。呈「高阻"態時,它們的輸出埠相當於斷開,對數據匯流排不起作用,此時數據匯流排可被其他器件佔用。當其他器件呈「高阻"態時,存儲器在片選允許和輸出允許的條件下,才能將自己的數據輸出到數據匯流排上。
㈣ 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。。
㈤ MSC-51單片機程序存儲器和數據存儲器各有什麼功用其內部RAM區功能結構如何分配
程序存儲器用來存放編制好的始終保留的固定程序和表格常數;數據存儲器用以存放數據或中間運行結果。
8051單片機內部設置有256位元組的RAM,其中有128位元組的內部RAM數據存儲器和128位元組的專用(特殊功能)寄存器。128位元組的內部RAM數據存儲器可分為三個部分:通用工作寄存器區、位定址區、用戶數據緩沖區。128位元組專用寄存器定址空間離散地分布著19個特殊功能寄存器。
㈥ MCS-51 單片機的存儲器地址空間如何劃分各地址空間的地址范圍和容量如何
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.
此區域,也可按照位元組定址,來讀寫.
30H-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指令.
㈦ 51單片機片內數據存儲器分哪幾個性質和用途不同的區域
8051內部128B的數據RAM區,包括有工作寄存器組區、可直接位定址區和數據緩沖區。各區域的特性如下:
(1) 00H~1FH為工作寄存器組區,共分4組,每組佔用8個RAM位元組單元,每個單元作為一個工作寄存器,每組的8個單元分別定義為8個工作寄存器R0~R7。當前工作寄存器組的選擇是由程序狀態字PSW的RS1、RS0兩位來確定。如果實際應用中並不需要使用工作寄存器或不需要使用4組工作寄存器,不使用的工作寄存器組的區域仍然可作為一般數據緩沖區使用,用直接定址或用Ri的寄存器間接定址來訪問。
(2) 20H~2FH為可位定址區域,這16個位元組的每一位都有一個地址,編址為00H~7FH。
當然,位定址區也可以用作位元組定址的一般數據緩沖區使用。
(3) 30H~7FH為堆棧、數據緩沖區。