存儲器和布爾處理器課件_第1頁
存儲器和布爾處理器課件_第2頁
存儲器和布爾處理器課件_第3頁
存儲器和布爾處理器課件_第4頁
存儲器和布爾處理器課件_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第3章MCS-51存儲器MCS-51存儲器程序存儲器尋址系統(tǒng)控制信號功能尋址系統(tǒng)功能數(shù)據(jù)存儲器控制信號ROM用來存放始終保留的固定程序和數(shù)據(jù)RAM用來存放程序運(yùn)行時(shí)所需要的常數(shù)和變量第3章MCS-51存儲器MCS-51存儲器程序存儲器尋址系特殊功能寄存器

位尋址區(qū)00H1FH20H2FH30H7FH80HFFH部分可位尋址外部ROM內(nèi)部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH1000HFFFFH外部RAM(包含I/O口地址)0000HFFFFH內(nèi)部數(shù)據(jù)存儲器外部數(shù)據(jù)存儲器空間程序存儲器空間工作寄存器區(qū)RAM區(qū)00H1FH20H2FH30H7FH80HFFH部分可位尋址3.1程序存儲器

●程序存儲器ROM包括片內(nèi)ROM和片外ROM兩個部分,片內(nèi)有4K字ROM,片外用16位地址,兩者統(tǒng)一編址●16位的程序計(jì)數(shù)器PC為程序存儲器地址指針,尋址空間為64KB,編址為:0000——FFFFH/EA接高電平時(shí),單片機(jī)啟始從片內(nèi)程序存儲器取指令,當(dāng)指令地址超過片內(nèi)程序存儲器空間后,自動地轉(zhuǎn)向片外程序存儲器取指令;/EA接低電平時(shí),單片機(jī)直接從片外程序存儲器取指令。3.1程序存儲器圖2.5程序存儲器編址圖(a)51子系列;(b)52子系列圖2.5程序存儲器編址圖2.程序的6個特殊入口地址表3.1MCS-51單片機(jī)復(fù)位、中斷入口地址

操作 入口地址復(fù)位 0000H外部中斷0 0003H定時(shí)器/計(jì)數(shù)器0溢出 000BH外部中斷1 0013H定時(shí)器/計(jì)數(shù)器1溢出 001BH串行口中斷 002BH通常在這些入口地址處,存放一條絕對轉(zhuǎn)移指令,使程序轉(zhuǎn)移到用戶安排的中斷服務(wù)程序起始地址,或主程序起始地址。2.程序的6個特殊入口地址表3.1MCS-51單片機(jī)復(fù)位、3.2內(nèi)部數(shù)據(jù)存儲器

128個字節(jié),字節(jié)地址為00H~7FH3.2內(nèi)部數(shù)據(jù)存儲器1、工作寄存器區(qū)(通用寄存器)工作寄存器分成4組,每組都有8個寄存器,用R0~R7來表示。程序中每次只用1組,其它各組不工作。使用哪一組寄存器工作由程序狀態(tài)字PSW中的PSW.3(RS0)和PSW.4(RS1)兩位來選擇,其對應(yīng)關(guān)系如表2.4所示。

CPU既能以字節(jié)地址(00H~1FH)訪問它們,又能以寄存器符號(R0~R7)訪問。若程序中并不需要4組,那么其余的可用作一般的數(shù)據(jù)緩沖器。1、工作寄存器區(qū)(通用寄存器)PSW.4(RS1)PSW.3(RS0)當(dāng)前使用的工作寄存器組R0~R7000組(00H~07H)011組(08H~0FH)102組(10H~17H)113組(18H~1FH)PSW.4(RS1)PSW.3(RS0)當(dāng)前使用的工作0002、位尋址區(qū)

20H~2FH單元是位尋址區(qū)。這16個單元(共計(jì)16×8=128位)的每一位都賦予了一個位地址,位地址范圍為00H~7FH。通??梢园迅鞣N程序狀態(tài)標(biāo)志、位控制變量存于位尋址區(qū)內(nèi)。

CPU既能以字節(jié)地址(20H~2FH)訪問它們的每一字節(jié),又能以位地址(00H~7FH)訪問它們的每一位。

CPU以字節(jié)地址訪問時(shí),對某一個字節(jié)進(jìn)行處理,使用字節(jié)指令。

CPU以位地址訪問時(shí),對某一位進(jìn)行處理,使用位操作指令。2、位尋址區(qū)片內(nèi)數(shù)據(jù)存儲器中的位地址圖3.5(128個位單元)片內(nèi)數(shù)據(jù)存儲器中的位地址圖3.5(128個位單元)3、數(shù)據(jù)緩沖區(qū)

30H~7FH是數(shù)據(jù)緩沖區(qū),也即用戶RAM區(qū),共80個單元。由于工作寄存器區(qū)、位尋址區(qū)、數(shù)據(jù)緩沖區(qū)統(tǒng)一編址,使用同樣的指令訪問,這三個區(qū)的單元既有自己獨(dú)特的功能,又可統(tǒng)一調(diào)度使用。因此,前兩個區(qū)未使用的單元也可作為用戶RAM單元使用,使容量較小的片內(nèi)RAM得以充分利用。

3、數(shù)據(jù)緩沖區(qū)

堆棧是一組編有地址碼的特殊的存儲單元。第一個進(jìn)棧的數(shù)據(jù)所在的存儲單元稱為棧底,最后一個進(jìn)棧的數(shù)據(jù)所在的存儲單元稱為棧頂,棧頂?shù)牡刂反a由棧指針SP指示。存儲單元的數(shù)目稱堆棧深度。堆棧單元中存放的信息稱為堆棧元素。

SP總是指向棧頂且裝有數(shù)據(jù)堆棧元素的壓入和彈出遵循“先進(jìn)后出”的原則壓棧:先SP+1,后數(shù)據(jù)壓棧出棧:先彈出,后SP-1主機(jī)復(fù)位,SP=07H,壓入數(shù)據(jù)從08H單元為起始。一般設(shè)置SP=2FH4、堆棧和堆棧指針堆棧是一組編有地址碼的特殊的存儲單元。第一個進(jìn)棧的數(shù)據(jù)第3章存儲器和布爾處理器課件3.3特殊功能寄存器(SFR)特殊功能寄存器(SFR,即SpecialFunctionRegisters),又稱為專用寄存器,專用于控制、管理片內(nèi)算術(shù)邏輯部件、并行I/O口、串行I/O口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等功能模塊的工作。

18個專用寄存器,占用21個字節(jié),分散在80H——FFHCPU訪問它們既可以用字節(jié)地址,又可用寄存器符號

PC指針不包含在21個專用寄存器中,PC指針只有寄存器符號,沒有字節(jié)地址。其中有12個專用寄存器可以位尋址3.3特殊功能寄存器(SFR)特殊功能寄存器

位尋址區(qū)00H1FH20H2FH30H7FH80HFFH部分可位尋址內(nèi)部數(shù)據(jù)存儲器工作寄存器區(qū)RAM區(qū)00H1FH20H2FH30H7FH80HFFH部分可位尋址第3章存儲器和布爾處理器課件SFR中的位地址分布SFR中的位地址分布串行數(shù)據(jù)緩沖器SBUF:

由兩個獨(dú)立的寄存器組成:發(fā)送緩沖器,接收緩沖器存放準(zhǔn)備發(fā)送或已經(jīng)接收到的數(shù)據(jù),一個字節(jié)地址,物理空間上是兩個獨(dú)立寄存器定時(shí)器/計(jì)數(shù)器:

兩個16位定時(shí)器/計(jì)數(shù)器(T1和T0)各由兩個獨(dú)立的8位寄存器組成:TH1、TL1、TH0、TL0

第3章存儲器和布爾處理器課件3.4外部數(shù)據(jù)存儲器可擴(kuò)展64K字節(jié)(擴(kuò)展外部RAM或擴(kuò)展外部I/O)1、地址的重疊程序存儲器與外部數(shù)據(jù)存儲器64K字節(jié)地址重疊2、程序存儲器與數(shù)據(jù)存儲器在使用上是不同的,訪問片內(nèi)RAM用“MOV”指令,訪問片外RAM用“MOVX”指令。3、外部數(shù)據(jù)存儲區(qū)中,外部RAM與外部I/O端口統(tǒng)一編址所有外部擴(kuò)展的I/O端口地址均占用外部RAM單元地址訪問外部擴(kuò)展的I/O端口方式(指令)與訪問外部數(shù)據(jù)存儲器相同3.4外部數(shù)據(jù)存儲器

總結(jié):編址與訪問用于存放運(yùn)算中間結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等。片內(nèi)、外數(shù)據(jù)存儲器是兩個獨(dú)立的地址空間,應(yīng)分別單獨(dú)編址。片內(nèi)256字節(jié)RAM,片外擴(kuò)充到64K字節(jié)RAM。訪問片內(nèi)RAM用“MOV”指令,訪問片外RAM用“MOVX”指令。片內(nèi)數(shù)據(jù)存儲器除128字節(jié)RAM塊外,還有特殊功能寄存器(SFR)21個CPU專用寄存器分散在80H——FFH中。總結(jié):編址與訪問3.5外部存儲器工作過程

外部ROM內(nèi)部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH1000HFFFFH外部RAM(包含I/O口地址)FFFFH外部數(shù)據(jù)存儲器空間程序存儲器空間0000H3.5外部存儲器工作過程內(nèi)部外部0000H0000H0FF1、以P2口作為高8位地址線。2、以P0口作為低8位地址/8位數(shù)據(jù)復(fù)用線。3、控制信號線。 *使用ALE信號作為低8位地址鎖存控制信號。 *以/EA信號作為內(nèi)、外程序存儲器的選擇控制信號。*以/PSEN信號作為擴(kuò)展程序存儲器的讀選通信號。*由/RD和/WR信號作為擴(kuò)展數(shù)據(jù)存儲器和擴(kuò)展I/O口的讀選通、寫選通信號。MCS-51有4個并行I/O口,共32條口線,但由于系統(tǒng)擴(kuò)展需要,作為I/O口使用的,就剩下P1口和P3口的部分口線。1、以P2口作為高8位地址線。3.6MCS-51的尋址方式

尋址方式就是在指令中指明操作數(shù)所在地址的方式共7種尋址方式一、寄存器尋址方式操作數(shù)在寄存器中

MOVA,Rn;(Rn)→A,n=0~7

(表示把寄存器Rn的內(nèi)容傳送給累加器A)尋址范圍:(1)4組通用工作寄存器共32個工作寄存器。(2)部分特殊功能寄存器,例如A、B以及數(shù)據(jù)指針寄存器

DPTR等。3.6MCS-51的尋址方式二、直接尋址方式

操作數(shù)直接以單元地址的形式給出:

MOVA,40H

(表示把內(nèi)部RAM40H中的內(nèi)容傳送給累加器A)

尋址范圍:

(1)內(nèi)部RAM的128個單元

(2)特殊功能寄存器。除了以單元地址的形式外,還可用寄存器符號的形式給出。例如:MOVA,80H與

MOVA,P0

是等價(jià)的。二、直接尋址方式三、寄存器間接尋址方式

寄存器中存放的是操作數(shù)的地址,寄存器前加“@”

MOVA,@Ri

;i=0或1

(如果Ri中的內(nèi)容為40H,把內(nèi)部RAM40H單元內(nèi)容送A)

尋址范圍:(1)訪問內(nèi)部RAM和特殊功能寄存器區(qū),其通用形式為@Ri

(只能用R0或R1作為間址寄存器)(2)對外部內(nèi)部RAM的64K字節(jié)的間接尋址例如:MOVXA,@DPTR

(訪問外部RAM的256個字節(jié)范圍時(shí),也可以用R0或R1

作為間址寄存器)

三、寄存器間接尋址方式第3章存儲器和布爾處理器課件四、立即尋址方式

操作數(shù)在指令中直接給出,操作數(shù)前面加“#”MOVA,#40H

五、基址寄存器加變址寄存器間址尋址方式

以DPTR或PC作基址寄存器,以累加器A作為變址寄存器。

MOVCA,@A+DPTR

如果A中原有內(nèi)容為05H,DPTR內(nèi)容為0400H,該指令執(zhí)行的結(jié)果是把程序存儲器0405H單元中的內(nèi)容傳送給A

說明:(1)專門針對程序存儲器的尋址方式,尋址范圍達(dá)64KB

(2)本尋址方式的指令只有3條:

MOVCA,@A+DPTR MOVCA,@A+PC JMP@A+DPTR

四、立即尋址方式第3章存儲器和布爾處理器課件六、相對尋址方式

在相對尋址的轉(zhuǎn)移指令中,給出了地址偏移量,以“rel”表示;把PC的當(dāng)前值加上偏移量就構(gòu)成了程序轉(zhuǎn)移的目的地址

目的地址=轉(zhuǎn)移指令所在的地址+該轉(zhuǎn)移指令的字節(jié)+rel

偏移量“rel”是一帶符號的8位二進(jìn)制數(shù)補(bǔ)碼范圍是:–128~+127

向地址增加方向最大可轉(zhuǎn)移(127+該轉(zhuǎn)移指令字節(jié))個單元地址向地址減少方向最大可轉(zhuǎn)移(128-該轉(zhuǎn)移指令字節(jié))個單元地址六、相對尋址方式01000000011101011000H1001H1002H1077H+1PCALURel=75HPC=1002H1077H程序存儲器例:C=1,PC=1000H,REL=75H,執(zhí)行指令JCREL0100000001110101+1PCALURel=75H七、位尋址方式

MCS-51有位處理功能,可以對數(shù)據(jù)的位進(jìn)行操作。

MOVC,40H

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論