




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2-2內(nèi)部存儲器結(jié)構(gòu)
一存儲器基礎(chǔ)知識1存儲器的分類:
程序存儲器ROM
數(shù)據(jù)存儲器RAM
只能讀出不能寫入。停電信息仍保存既能讀出也能寫入。停電信息不保存2存儲器單元的常用單位:
位(Bit)
計(jì)算機(jī)中能表示的最小數(shù)據(jù)單位(只有01兩種編碼)字節(jié)(Byte)
連續(xù)的8bit為一個(gè)字節(jié)字(Word)
連續(xù)的2byte為一個(gè)字存儲器中用于存放數(shù)據(jù)的場所稱為單元。每個(gè)單元都有個(gè)特定的地址。(地址用二進(jìn)制數(shù)表示)存儲器中的數(shù)據(jù)以字節(jié)為單位。因此存儲器以所能存放的字節(jié)數(shù)來衡量存儲器容量僅用來訪問外部程序存儲器和外部數(shù)據(jù)存儲器二存儲器的結(jié)構(gòu)存儲器數(shù)據(jù)存儲器程序存儲器對單片機(jī)來講,ROM和RAM的尋址機(jī)構(gòu)和尋址方式是分開的。ROM、EPROME2ROM或FLASHRAM按地址訪問的一維線性(邏輯)空間按地址訪問的一維線性(邏輯)空間PSENWRRD單片機(jī)常駐容量小僅256B容量大達(dá)64KB普林斯頓結(jié)構(gòu)哈佛結(jié)構(gòu)普林斯頓結(jié)構(gòu)從物理上分,MCS-51分為4個(gè)存儲空間·片內(nèi)程序存儲器ROM·片內(nèi)數(shù)據(jù)存儲器RAM·片外程序存儲器ROM·片外數(shù)據(jù)存儲器RAM(I/O)從邏輯上分,MCS-51分為3個(gè)邏輯空間·片內(nèi)、外統(tǒng)一編址的程序存儲器地址空間·256B或384B片內(nèi)數(shù)據(jù)存儲器地址空間·64KB片外數(shù)據(jù)存儲器或I/O地址空間片內(nèi)固有需要擴(kuò)展需要擴(kuò)展PCRAMSFR00FF807F8051片內(nèi)存儲器00000FFF4KROM(EA=1)FFFF64KROM1000(EA=0)(EA=1)00000FFF(EA=0)片外ROM0000FFFF64KRAM片外RAM1.物理地址:4個(gè)部分2.邏輯地址:3個(gè)部分片內(nèi)RAM片外RAM程序存儲器特殊功能寄存器SFR通用
RAM區(qū)00H1FH20H2FH30H7FH80HFFH80H88H90H98HA0HA8HB0HB8HD0HE0HF0H特殊功能寄存器中位尋址外部ROM內(nèi)部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH外部RAM(I/O口地址)0000HFFFFH內(nèi)部數(shù)據(jù)存儲器(a)外部數(shù)據(jù)存儲器(b)程序存儲器(c)工作寄存器區(qū)MCS-51單片機(jī)存儲器空間分布位尋址區(qū)128BRAM1程序存儲器
作用:
存放應(yīng)用程序和表格之類的固定常數(shù)。
分為片內(nèi)和片外兩部分
/EA引腳上所接電平確定
程序存儲器中的0000H地址是系統(tǒng)程序的啟動地址則單片機(jī)啟動時(shí)PC=0000H 其中5個(gè)單元具有特殊用途:
表2-15種中斷源的中斷入口地址 外中斷00003H 定時(shí)器T0000BH 外中斷10013H 定時(shí)器T1001BH 串行口0023H
想一想:二者通過什么區(qū)別?上幻燈片7頁EA=1內(nèi)部外部EA=00000H0FFFH0FFFH0000H1000H外部FFFFH8051/8751803151系列程序存儲器配置圖4KB接地8051片內(nèi)存儲器RAMSFR00FF807F00000FFF4KROM(EA=1)00000FFF(EA=0)FFFF64KROM1000(EA=0)(EA=1)片外ROM0000FFFF64KRAM片外RAM1000FFFF1000FFFF0204060810101000H:MOVA,#0DH;A0DH
1002H:MOVCA,@A+PC
;A(0DH+1003H)1003H:MOVR0,A;R0A
02A02R0740D93F80DA1000PC1002PC1003PC0000111111110000001100010010010111110000011101000000H0001H0002H0003H
MOVA
#0F0H
F0H0FH地址號地址中存放的代碼助記符01110100指令譯碼器微控制器程序計(jì)數(shù)器PC地址寄存器
AR指令寄存器IR微操作命令累加器ACC地址譯碼器程序存儲器返回111100000000H0000H0001H
2數(shù)據(jù)存儲器
作用:用于暫存數(shù)據(jù)和運(yùn)算結(jié)果等。
數(shù)據(jù)存儲器也可以分為片內(nèi)數(shù)據(jù)存儲器和片外數(shù)據(jù)存儲器。與內(nèi)、外部的程序存儲器不同,內(nèi)部和外部數(shù)據(jù)存儲器空間存在重疊(內(nèi)部RAM的地址范圍為00H~0FFH,外部RAM的地址范圍為0000H~0FFFFH),通過不同指令來區(qū)別。當(dāng)訪問內(nèi)部RAM時(shí),用MOV類指令;當(dāng)訪問外部RAM時(shí),用MOVX類指令,所以地址重疊不會造成操作混亂。
想一想:二者通過什么區(qū)別?特殊功能寄存器SFR通用
RAM區(qū)00H1FH20H2FH30H7FH80HFFH80H88H90H98HA0HA8HB0HB8HD0HE0HF0H特殊功能寄存器中位尋址外部RAM(I/O口地址)0000HFFFFH內(nèi)部數(shù)據(jù)存儲器(a)外部數(shù)據(jù)存儲器(b)工作寄存器區(qū)
數(shù)據(jù)存儲器空間分布位尋址區(qū)128BRAM內(nèi)部RAM存儲器分配80FF專用寄存器區(qū)SFR7F第0組工作寄存器第3組001F2F2030位尋址區(qū)(位地址00H~7FH)用戶RAM區(qū)(堆棧、數(shù)據(jù)緩沖)第1組第2組R0R7R0R7R0R7R0R7工作寄存器區(qū)
地址范圍在00H~1FH的32個(gè)字節(jié),可分成4個(gè)工作寄存器組,每組占8個(gè)字節(jié)。具體劃分如下:
第0組工作寄存器:地址范圍為00H~07H
第1組工作寄存器:地址范圍為08H~0FH
第2組工作寄存器:地址范圍為10H~17H
第3組工作寄存器:地址范圍為18H~1FH每個(gè)工作寄存器組都有8個(gè)寄存器,它們分別稱為R0、R1、R2、R3、R4、R5、R6、R7。但在程序運(yùn)行時(shí),只允許有一個(gè)工作寄存器組工作,把這組工作寄存器稱為當(dāng)前工作寄存器組,所以每組之間不會因?yàn)槊Q相同而混淆出錯(cuò)。
00第0組00H~07H
11第3組18H~1FH
10第2組10H~17H
01第1組08H~0FHRS1RS0寄存器組片內(nèi)RAM地址00H7FH工作寄存器組選擇位RS0、RS1組RS1RS0R0R1R2R3R4R5R6R701230001101100H08H10H18H01H09H11H19H02H0AH12H1AH03H0BH13H1BH04H0CH14H1CH05H0DH15H1DH06H0EH16H1EH07H0FH17H1FH工作寄存器的地址表
CPU在復(fù)位后,由于PSW=00
因而單片機(jī)選中第0組工作寄存器。返回位尋址區(qū)
單片機(jī)片內(nèi)RAM中20H~2FH地址范圍中共16個(gè)字節(jié)單元稱為位尋址區(qū)。該區(qū)的16個(gè)字節(jié)單元,既可作為一般的RAM使用,進(jìn)行字節(jié)操作,也可以對單元中的每一位進(jìn)行位操作。16個(gè)字節(jié)單元共128位,每位有位地址,地址范圍是00H~07H。位尋址區(qū)中的每一位地址有兩種表示形式:一是表中位地址形式,另一種是單元地址?位序形式。返回
3通用RAM區(qū)
單片機(jī)片內(nèi)RAM中,30H-7FH的80個(gè)單元只能以存儲單元的形式來使用沒有其它任何規(guī)定或限制,用戶可以根據(jù)需要自由安排所以稱它為通用RAM區(qū)。該區(qū)域中的單元只能用直接尋址、寄存器間接尋址等方式按字節(jié)訪問。
堆棧就是設(shè)在單片機(jī)內(nèi)部RAM中。返回
特殊功能寄存器(SFR)CPU對各種功能部件的控制采用特殊功能寄存器集中控制方式,共21個(gè)。有的SFR可進(jìn)行位尋址,其字節(jié)地址的末位是0H或8H。表2-2SFR的名稱及其分布21個(gè)特殊功能寄存器在各功能機(jī)構(gòu)的分布:中央處理器(CPU):A、B、PSW、SP、DPTR(DPH、DPL);并行口:P0、P1、P2、P3;串行口:SCON、SBUF、PCON;中斷系統(tǒng):IE、IP;定時(shí)/計(jì)數(shù)器:TMOD、TCON、TH0、TL0、TH1、TL1。
1累加器A地址:0E0H·最常用的一個(gè)專用寄存器·大部分單操作數(shù)指令的操作數(shù)取自A·很多雙操作數(shù)指令的一個(gè)操作數(shù)取自A·算術(shù)運(yùn)算和邏輯運(yùn)算的結(jié)果放在A或AB對中·指令系統(tǒng)采用A作為累加器的標(biāo)識符例:INCA;執(zhí)行A中的內(nèi)容加1操作ADDA,#data;執(zhí)行A(A)+#data操作位尋址功能2寄存器B地址:0F0H·8位寄存器·與累加器A配合使用,一般用于乘除法運(yùn)算·寄存器B存放第二操作數(shù)、乘積的高8位字節(jié)除法的余數(shù)部分例:MULAB;執(zhí)行(A)×(B)BADIVAB;執(zhí)行(A)/(B)商A余B上頁下頁回目錄次累加器作一RAM單元用B余B3程序狀態(tài)字PSW地址:0D0H·8位寄存器,存放程序的狀態(tài)信息CY
D7D6D5D4D3D2D1D0ACF0RS1RS0OVP格式如下:進(jìn)/借位標(biāo)志CY(PSW.7)加法運(yùn)算時(shí),如果D7有進(jìn)位,則CY=1,否則CY=0減法運(yùn)算時(shí),如果D7有借位,則CY=1,否則CY=0布爾運(yùn)算中被定義為位累加器上頁下頁回目錄PSWD7??????D0CY輔助進(jìn)位標(biāo)志AC(PSW.6)8位加法運(yùn)算時(shí),如果低半字節(jié)的D3向D4有進(jìn)位,則AC=1,否則AC=08位減法運(yùn)算時(shí),如果低半字節(jié)的D3向D4有借位,則AC=1,否則AC=0標(biāo)志F0(PSW.5)·由用戶定義·可用軟件來使它置“1”、或清“0”·可由軟件測試F0來控制程序流向上頁下頁回目錄D7~D4D3~D0AC工作寄存器區(qū)選擇位RS1、RS0(PSW.4、PSW.3)通過軟件來改變RS1、RS0的組合,以確定當(dāng)前工作寄存器區(qū)。上頁下頁回目錄工作寄存器區(qū)地址RS1RS0
2區(qū)10H~17H10
3區(qū)18H~1FH11
0區(qū)00H~0007H
1區(qū)08H~010FHPSW.4PSW.3用布爾操作來改變OV=C6′C7′+溢出標(biāo)志OV(PSW.2)·作為有符號數(shù)加、減法時(shí)由硬件置位或清除,以指示運(yùn)算結(jié)果是否溢出·執(zhí)行加/減法指令時(shí),用Ci′
表示i位向i+1有進(jìn)/借位a)第6位向第7位有進(jìn)/借位,而第7位不向CY進(jìn)/借位時(shí)b)第6位不向第7位進(jìn)/借位,而第7位向CY有進(jìn)/借位時(shí)OV=1,否則OV=0·若OV=1,意味著加/減法的結(jié)果已超出了一個(gè)字節(jié)
有符號補(bǔ)碼數(shù)
所表示的范圍(-128~+127)上頁下頁回目錄a)OV=10b)OV=01D7D6D5D4D3D2D1D0例:01010110(+86)(正)00110010(+50)(正)00010001此時(shí)C6′=1、
C7′=0則D7D6D5D4D3D2D1D010010110(-106)(負(fù))110111001(+136)(正)(-197)(負(fù))OV=C6′C7′=1
++此時(shí)C6′=0、
C7′=1則OV=C6′C7′=1
++符號位110100101(-91)(負(fù))Cy奇偶標(biāo)志P(PSW.0)·每個(gè)指令周期都由硬件置位或清零,以表示累加器A中值為“1”的位數(shù)的奇偶性·該標(biāo)志可用于串行數(shù)據(jù)通訊,驗(yàn)證數(shù)據(jù)傳輸?shù)目煽啃訮=1A中1的個(gè)數(shù)為奇數(shù)0A中1的個(gè)數(shù)為偶數(shù)4程序計(jì)數(shù)器PC16位專用寄存器,尋址范圍64KB
此時(shí)的程序是順序執(zhí)行的
通電時(shí)自動復(fù)位,運(yùn)行時(shí)可手動復(fù)位,復(fù)位后,PC的內(nèi)容自動清零用來存放下一條指令地址。CPU取指令時(shí),將PC內(nèi)容經(jīng)地址總線送到程序存儲器,從該地址單元取回指令,譯碼并執(zhí)行;同時(shí),PC自動加1如果程序需要轉(zhuǎn)移,可在程序中安排轉(zhuǎn)移或條件轉(zhuǎn)移指令(JMP或JNC)、調(diào)用子程序指令CALL等PC0000H系統(tǒng)的啟動地址PC管理程序執(zhí)行順序的過程:
74H08H24H04H02H22H00H78H74HPC0000HPCMOVA,#08HADDA,#04HLJMP,2200HMOVR0,#74H0004H0003H0002H0001H0000H2200H2201H0005H0006H0007H存儲器······××指令寄存器74HPC0001H08HPC0002H
24HPC0003H
04HPC0004H02HPC22HPC00HPC0005H0006H0007HPC2200H78HPC2201H74HPC2202H2202HMOVA,#08HADDA,#04HLJMP2200HMOVR0,#74H下一條指令⑸堆棧指針SP8位寄存器,存放棧頂?shù)刂繁Wo(hù)CPU現(xiàn)場和斷點(diǎn)地址作用:工作方式:“先進(jìn)后出”或“后進(jìn)先出”數(shù)據(jù)壓入堆棧時(shí),SP自動加1數(shù)據(jù)彈出堆棧時(shí),SP自動減1
SP始終指向棧頂?shù)刂分袛鄷r(shí)轉(zhuǎn)子時(shí)棧區(qū)“向上生成”按“先進(jìn)后出”工作原則,由SP組織的內(nèi)部RAM區(qū)域,被稱為堆棧。主程序SPSP例:堆棧操作’建立堆?!瘔喝氩僮鳌瘡棾霾僮?/p>
60H61H62H63H64HA的內(nèi)容B的內(nèi)容SPMOVSP,#60HPUSHAPUSHBPOPdirectSP上頁下頁回目錄direct棧底⑹數(shù)據(jù)指針DPTR·16位寄存器,高字節(jié)用DPH表示,低字節(jié)用DPL表示·對外部RAM或I/O口尋址,范圍64KB例:MOVXA,@DPTRMOVX@DPTR,A;將外部RAM中地址為@DPTR的單元內(nèi)容讀到A中;將A中的內(nèi)容寫到外部RAM中地址為@DPTR的單元MOVCA,A+@DPTR;采用基址+變址的方法讀程序存儲器內(nèi)的表格常數(shù);DPTR為基址寄存器,A為變址寄存器(DPTR)AP3.7RDP3.6WR(A)DPTR((A)+(DPTR))APSEN寄存器內(nèi)容寄存器內(nèi)容表2-2復(fù)位后內(nèi)部寄存器狀態(tài)PC0000HACC00HB00HPSW00HSP07HDPTR0000HP0~P30FFHIP×××00000BIE0××00000BTMOD00HTCON00HTH000HTL0
00HTH100HTL1
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東交通學(xué)院《金融學(xué)概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海南湖職業(yè)技術(shù)學(xué)院《大學(xué)信息技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南中醫(yī)藥大學(xué)《中國建筑史》2023-2024學(xué)年第二學(xué)期期末試卷
- 南方科技大學(xué)《工業(yè)通信與網(wǎng)絡(luò)技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖北工業(yè)大學(xué)工程技術(shù)學(xué)院《制漿造紙機(jī)械與設(shè)備》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江大學(xué)《經(jīng)典本草與湖湘中醫(yī)藥文化》2023-2024學(xué)年第二學(xué)期期末試卷
- 黑龍江幼兒師范高等??茖W(xué)?!侗髅缹W(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 成都工貿(mào)職業(yè)技術(shù)學(xué)院《設(shè)計(jì)與開發(fā)課程設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古經(jīng)貿(mào)外語職業(yè)學(xué)院《地理信息工程課程設(shè)計(jì)與實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南交通職業(yè)技術(shù)學(xué)院《空間文學(xué)與敘事》2023-2024學(xué)年第二學(xué)期期末試卷
- 國家科技安全教學(xué)課件
- DB3301T 1088-2018 杭州龍井茶栽培技術(shù)規(guī)范
- 2010浙G22 先張法預(yù)應(yīng)力混凝土管樁
- 安徽省部分省示范中學(xué)2025屆高三第一次模擬考試英語試卷含解析
- 工程機(jī)械租賃服務(wù)方案及保障措施 (二)
- 國網(wǎng)基建安全管理課件
- 部編版初中語文7-9年級教材必背古詩詞、古文99篇詳細(xì)解析及欣賞
- DB36T 1393-2021 生產(chǎn)安全風(fēng)險(xiǎn)分級管控體系建設(shè)通則
- 檔案三合一制度培訓(xùn)
- Unit 1 I go to school by bus. Period 4(說課稿)-2023-2024學(xué)年教科版(廣州)英語二年級下冊
- 《市場營銷學(xué)》講稿
評論
0/150
提交評論