亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: C51單片機(jī)是怎么存儲程序和數(shù)據(jù)的 [打印本頁]

作者: 電阻不接地    時間: 2018-10-13 08:24
標(biāo)題: C51單片機(jī)是怎么存儲程序和數(shù)據(jù)的
初學(xué)51單片機(jī)總是會有這樣的疑問,從電腦下載程序到開發(fā)板后,程序去哪了? C51中,用戶或應(yīng)用程序,系統(tǒng)程序和數(shù)據(jù)都是存放在哪的?

51 單片機(jī)從物理結(jié)構(gòu)上,可分為片內(nèi),片外程序存儲器,片內(nèi)片外數(shù)據(jù)存儲器。

51 單片機(jī)從功能上,有程序存儲器,片內(nèi)數(shù)據(jù)存儲器,特殊功能寄存器,位地 址空間,片外數(shù)據(jù)存儲器。



51單片機(jī)的程序存儲器用于存儲代碼和一些固定表格常數(shù)。 可尋址的程序存儲器空間為 64KB

51單片機(jī)的從物理角度上可分為:片內(nèi),片外程序存儲器,作為編址空間,編 址規(guī)律是:先片內(nèi),后片外,片內(nèi)片外連續(xù),不重疊。
如圖:為 51 單片機(jī)程序存儲器編址圖。




單片機(jī)如何執(zhí)行指令?
如圖:




無論片內(nèi)程序存儲器,還是片外程序存儲器,他們的地址是共享的。如果片內(nèi)
4K ROM 的話,地址就是 0x0000-0x0FFF,從 0x1000-0xFFFF 就是外部 ROM 的地址 空間。可外部 ROM 的 0x0000-0x0FFF 的這一部分是否使用呢,這取決于單片機(jī) EA 引腳的電平值。EA=1 時就是使用內(nèi)部 ROM 的這一部分,外部 ROM 的這一部 分浪費(fèi)不用;EA=0 時就是使用外部ROM 的這一部分,內(nèi)部 ROM 浪費(fèi)不用。從
CODE 段讀取數(shù)據(jù)要使用匯編的 MOVC 指令,單片機(jī)會根據(jù) MOVC 指令、EA 狀態(tài)、 要讀取的地址值,來自動地判斷從什么存儲器里取數(shù)據(jù)。

程序地址空間一般可以根據(jù)用戶需要任意安排使用,但是 cpu 執(zhí)行特殊程序的入 口地址,用戶必須按照規(guī)定存放相應(yīng)的程序。
特殊程序入口地址如圖:






數(shù)據(jù)


51 單片機(jī)內(nèi)外數(shù)據(jù)存儲器是兩個獨(dú)立的地址空間,應(yīng)單獨(dú)編址。 片內(nèi)數(shù)據(jù)存儲器地址空間"00H-FFH",RAM 地址空間“00H-7FH” 特殊功能寄存器 SFR 地址空間“80H-FFH”
片外數(shù)據(jù)存儲器地址空間“0000H-FFFFH”
如圖:





為了使片內(nèi)數(shù)據(jù)存儲器的存儲空間合理運(yùn)用,對低 128 字節(jié)的 RAM 劃分了不同 的功能區(qū)。
如圖:










位尋址區(qū),地址空間 20H-2FH,16 個單元,共 128 位。
數(shù)據(jù)緩沖區(qū),地址空間 30H-7FH,共 80 個單元。 特殊功能寄存器
特殊功能寄存器(SFR,Special Function Registers)別稱專用寄存器,主要用于管 理,控制,片內(nèi)邏輯部件,并行 i/o 口,串行 i/O 口,定時器/計數(shù)器,中斷系統(tǒng) 等功能模塊的工作。

總結(jié):對于數(shù)據(jù)存儲器,則分為內(nèi)部數(shù)據(jù)存儲器(IDATA/RAM)和外部數(shù)據(jù)存儲 器(XDATA)兩個部分,但這兩個存儲器就不像 code 存儲器那樣共享地址空間 的了。一般 的 8051 芯片,內(nèi)部 RAM 只有 128B,從 0x00-0x7F,而從 0x80-0xFF 則是 SFR(CPU 工作寄存器和各種外設(shè)寄存器都在此)的區(qū)域。對于 8052 來說, 內(nèi)部 RAM 有 256B,所 以 0x80-0xFF 是高 128B 的 RAM 在使用。可這部分不是 SFR 專用的嗎?是SFR 專用,但注意,SFR 的訪問只能使用“直接尋址方式”(使 用特定的匯編指令來實(shí)現(xiàn)),區(qū)別就 在這里。只有通過直接尋址訪問的地址才是 SFR,否則就是普通的 RAM。至于外擴(kuò)的 RAM(XDATA),地址也是從
0x0000-0xFFFF 的,而且這里的 0x0000 和內(nèi)部 RAM 的 0x00 是不同的,是完全獨(dú) 立的兩個空間。他們的訪問方法也是不同的。MCS-51 使用MOVX 指令,來讀寫 XDATA 區(qū)。而且,訪問 XDATA 區(qū),是需要 DPTR 寄存器來輔助 的。因為只有 DPTR 才能裝得下十六位的 XDATA 地址。參考:
http://blog.csdn.net/shanzhizi/article/details/8997881



特殊功能寄存器(SFR,Special Function Registers)別稱專用寄存器,主要用于管 理,控制,片內(nèi)邏輯部件,并行 i/o 口,串行 i/O 口,定時器/計數(shù)器,中斷系統(tǒng) 等功能模塊的工作。

51 單片機(jī)中,專用寄存器與片內(nèi) RAM 統(tǒng)一編址,且作為直接尋址使用。


51 單片機(jī)有 18 個專用寄存器,其中 3 個是雙字節(jié)寄存器,占用 21 個字節(jié)。


在 SFR 塊的地址空間 80H-FFH 中,僅僅只有 21 個字節(jié)作為特殊功能寄存器離散 分布在這 128 個字節(jié)范圍中,其余字節(jié)無定義,但是用戶不能對這些字節(jié)進(jìn)行“讀 寫操作”

下圖為特殊功能寄存器的名稱,表示符,地址一覽表。



完整的pdf格式文檔51黑下載地址:
C51單片機(jī)是怎么存儲程序和數(shù)據(jù)的.pdf (315.08 KB, 下載次數(shù): 23)




作者: w2009118161    時間: 2019-4-17 17:25
看看,看看,謝謝樓主
作者: wdliming    時間: 2019-11-23 16:38
謝謝分享




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1