版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
2-2內(nèi)部存儲器結構
一存儲器基礎知識1存儲器的分類:
程序存儲器ROM
數(shù)據(jù)存儲器RAM
只能讀出不能寫入。停電信息仍保存既能讀出也能寫入。停電信息不保存2存儲器單元的常用單位:
位(Bit)
計算機中能表示的最小數(shù)據(jù)單位(只有01兩種編碼)字節(jié)(Byte)
連續(xù)的8bit為一個字節(jié)字(Word)
連續(xù)的2byte為一個字存儲器中用于存放數(shù)據(jù)的場所稱為單元。每個單元都有個特定的地址。(地址用二進制數(shù)表示)存儲器中的數(shù)據(jù)以字節(jié)為單位。因此存儲器以所能存放的字節(jié)數(shù)來衡量存儲器容量僅用來訪問外部程序存儲器和外部數(shù)據(jù)存儲器二存儲器的結構存儲器數(shù)據(jù)存儲器程序存儲器對單片機來講,ROM和RAM的尋址機構和尋址方式是分開的。ROM、EPROME2ROM或FLASHRAM按地址訪問的一維線性(邏輯)空間按地址訪問的一維線性(邏輯)空間PSENWRRD單片機常駐容量小僅256B容量大達64KB普林斯頓結構哈佛結構普林斯頓結構從物理上分,MCS-51分為4個存儲空間·片內(nèi)程序存儲器ROM·片內(nèi)數(shù)據(jù)存儲器RAM·片外程序存儲器ROM·片外數(shù)據(jù)存儲器RAM(I/O)從邏輯上分,MCS-51分為3個邏輯空間·片內(nèi)、外統(tǒng)一編址的程序存儲器地址空間·256B或384B片內(nèi)數(shù)據(jù)存儲器地址空間·64KB片外數(shù)據(jù)存儲器或I/O地址空間片內(nèi)固有需要擴展需要擴展PCRAMSFR00FF807F8051片內(nèi)存儲器00000FFF4KROM(EA=1)FFFF64KROM1000(EA=0)(EA=1)00000FFF(EA=0)片外ROM0000FFFF64KRAM片外RAM1.物理地址:4個部分2.邏輯地址:3個部分片內(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單片機存儲器空間分布位尋址區(qū)128BRAM1程序存儲器
作用:
存放應用程序和表格之類的固定常數(shù)。
分為片內(nèi)和片外兩部分
/EA引腳上所接電平確定
程序存儲器中的0000H地址是系統(tǒng)程序的啟動地址則單片機啟動時PC=0000H 其中5個單元具有特殊用途:
表2-15種中斷源的中斷入口地址 外中斷00003H 定時器T0000BH 外中斷10013H 定時器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指令譯碼器微控制器程序計數(shù)器PC地址寄存器
AR指令寄存器IR微操作命令累加器ACC地址譯碼器程序存儲器返回111100000000H0000H0001H
2數(shù)據(jù)存儲器
作用:用于暫存數(shù)據(jù)和運算結果等。
數(shù)據(jù)存儲器也可以分為片內(nèi)數(shù)據(jù)存儲器和片外數(shù)據(jù)存儲器。與內(nèi)、外部的程序存儲器不同,內(nèi)部和外部數(shù)據(jù)存儲器空間存在重疊(內(nèi)部RAM的地址范圍為00H~0FFH,外部RAM的地址范圍為0000H~0FFFFH),通過不同指令來區(qū)別。當訪問內(nèi)部RAM時,用MOV類指令;當訪問外部RAM時,用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個字節(jié),可分成4個工作寄存器組,每組占8個字節(jié)。具體劃分如下:
第0組工作寄存器:地址范圍為00H~07H
第1組工作寄存器:地址范圍為08H~0FH
第2組工作寄存器:地址范圍為10H~17H
第3組工作寄存器:地址范圍為18H~1FH每個工作寄存器組都有8個寄存器,它們分別稱為R0、R1、R2、R3、R4、R5、R6、R7。但在程序運行時,只允許有一個工作寄存器組工作,把這組工作寄存器稱為當前工作寄存器組,所以每組之間不會因為名稱相同而混淆出錯。
00第0組00H~07H
11第3組18H~1FH
10第2組10H~17H
01第1組08H~0FHRS1RS0寄存器組片內(nèi)RAM地址00H7FH工作寄存器組選擇位RS0、RS1組RS1RS0R0R1R2R3R4R5R6R701230001101100H08H10H18H01H09H11H19H02H0AH12H1AH03H0BH13H1BH04H0CH14H1CH05H0DH15H1DH06H0EH16H1EH07H0FH17H1FH工作寄存器的地址表
CPU在復位后,由于PSW=00
因而單片機選中第0組工作寄存器。返回位尋址區(qū)
單片機片內(nèi)RAM中20H~2FH地址范圍中共16個字節(jié)單元稱為位尋址區(qū)。該區(qū)的16個字節(jié)單元,既可作為一般的RAM使用,進行字節(jié)操作,也可以對單元中的每一位進行位操作。16個字節(jié)單元共128位,每位有位地址,地址范圍是00H~07H。位尋址區(qū)中的每一位地址有兩種表示形式:一是表中位地址形式,另一種是單元地址?位序形式。返回
3通用RAM區(qū)
單片機片內(nèi)RAM中,30H-7FH的80個單元只能以存儲單元的形式來使用沒有其它任何規(guī)定或限制,用戶可以根據(jù)需要自由安排所以稱它為通用RAM區(qū)。該區(qū)域中的單元只能用直接尋址、寄存器間接尋址等方式按字節(jié)訪問。
堆棧就是設在單片機內(nèi)部RAM中。返回
特殊功能寄存器(SFR)CPU對各種功能部件的控制采用特殊功能寄存器集中控制方式,共21個。有的SFR可進行位尋址,其字節(jié)地址的末位是0H或8H。表2-2SFR的名稱及其分布21個特殊功能寄存器在各功能機構的分布:中央處理器(CPU):A、B、PSW、SP、DPTR(DPH、DPL);并行口:P0、P1、P2、P3;串行口:SCON、SBUF、PCON;中斷系統(tǒng):IE、IP;定時/計數(shù)器:TMOD、TCON、TH0、TL0、TH1、TL1。
1累加器A地址:0E0H·最常用的一個專用寄存器·大部分單操作數(shù)指令的操作數(shù)取自A·很多雙操作數(shù)指令的一個操作數(shù)取自A·算術運算和邏輯運算的結果放在A或AB對中·指令系統(tǒng)采用A作為累加器的標識符例:INCA;執(zhí)行A中的內(nèi)容加1操作ADDA,#data;執(zhí)行A(A)+#data操作位尋址功能2寄存器B地址:0F0H·8位寄存器·與累加器A配合使用,一般用于乘除法運算·寄存器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格式如下:進/借位標志CY(PSW.7)加法運算時,如果D7有進位,則CY=1,否則CY=0減法運算時,如果D7有借位,則CY=1,否則CY=0布爾運算中被定義為位累加器上頁下頁回目錄PSWD7??????D0CY輔助進位標志AC(PSW.6)8位加法運算時,如果低半字節(jié)的D3向D4有進位,則AC=1,否則AC=08位減法運算時,如果低半字節(jié)的D3向D4有借位,則AC=1,否則AC=0標志F0(PSW.5)·由用戶定義·可用軟件來使它置“1”、或清“0”·可由軟件測試F0來控制程序流向上頁下頁回目錄D7~D4D3~D0AC工作寄存器區(qū)選擇位RS1、RS0(PSW.4、PSW.3)通過軟件來改變RS1、RS0的組合,以確定當前工作寄存器區(qū)。上頁下頁回目錄工作寄存器區(qū)地址RS1RS0
2區(qū)10H~17H10
3區(qū)18H~1FH11
0區(qū)00H~0007H
1區(qū)08H~010FHPSW.4PSW.3用布爾操作來改變OV=C6′C7′+溢出標志OV(PSW.2)·作為有符號數(shù)加、減法時由硬件置位或清除,以指示運算結果是否溢出·執(zhí)行加/減法指令時,用Ci′
表示i位向i+1有進/借位a)第6位向第7位有進/借位,而第7位不向CY進/借位時b)第6位不向第7位進/借位,而第7位向CY有進/借位時OV=1,否則OV=0·若OV=1,意味著加/減法的結果已超出了一個字節(jié)
有符號補碼數(shù)
所表示的范圍(-128~+127)上頁下頁回目錄a)OV=10b)OV=01D7D6D5D4D3D2D1D0例:01010110(+86)(正)00110010(+50)(正)00010001此時C6′=1、
C7′=0則D7D6D5D4D3D2D1D010010110(-106)(負)110111001(+136)(正)(-197)(負)OV=C6′C7′=1
++此時C6′=0、
C7′=1則OV=C6′C7′=1
++符號位110100101(-91)(負)Cy奇偶標志P(PSW.0)·每個指令周期都由硬件置位或清零,以表示累加器A中值為“1”的位數(shù)的奇偶性·該標志可用于串行數(shù)據(jù)通訊,驗證數(shù)據(jù)傳輸?shù)目煽啃訮=1A中1的個數(shù)為奇數(shù)0A中1的個數(shù)為偶數(shù)4程序計數(shù)器PC16位專用寄存器,尋址范圍64KB
此時的程序是順序執(zhí)行的
通電時自動復位,運行時可手動復位,復位后,PC的內(nèi)容自動清零用來存放下一條指令地址。CPU取指令時,將PC內(nèi)容經(jīng)地址總線送到程序存儲器,從該地址單元取回指令,譯碼并執(zhí)行;同時,PC自動加1如果程序需要轉移,可在程序中安排轉移或條件轉移指令(JMP或JNC)、調用子程序指令CALL等PC0000H系統(tǒng)的啟動地址PC管理程序執(zhí)行順序的過程:
74H08H24H04H02H22H00H78H74HPC0000HPCMOVA,#08HADDA,#04HLJMP,2200HMOVR0,#74H0004H0003H0002H0001H0000H2200H2201H0005H0006H0007H存儲器······××指令寄存器74HPC0001H08HPC0002H
24HPC0003H
04HPC0004H02HPC22HPC00HPC0005H0006H0007HPC2200H78HPC2201H74HPC2202H2202HMOVA,#08HADDA,#04HLJMP2200HMOVR0,#74H下一條指令⑸堆棧指針SP8位寄存器,存放棧頂?shù)刂繁WoCPU現(xiàn)場和斷點地址作用:工作方式:“先進后出”或“后進先出”數(shù)據(jù)壓入堆棧時,SP自動加1數(shù)據(jù)彈出堆棧時,SP自動減1
SP始終指向棧頂?shù)刂分袛鄷r轉子時棧區(qū)“向上生成”按“先進后出”工作原則,由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復位后內(nèi)部寄存器狀態(tài)PC0000HACC00HB00HPSW00HSP07HDPTR0000HP0~P30FFHIP×××00000BIE0××00000BTMOD00HTCON00HTH000HTL0
00HTH100HTL1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版鍋爐供暖設施安全運行管理與維護合同3篇
- 2025年度白酒企業(yè)白酒回購資金結算合同模板3篇
- 2025版新型建筑爬架安全使用合同3篇
- 2024年私家借款協(xié)議范本
- 2024年石油勘探開發(fā)生產(chǎn)合同
- 2024年河南施工方標準協(xié)議文件范本版B版
- 2024年跨境電商銷售合同英文版版
- 2025版園林景觀工程造價審核與咨詢服務合同3篇
- 保險職業(yè)學院《培訓與開發(fā)B》2023-2024學年第一學期期末試卷
- 2024年債轉股項目盡職調查及報告編制合同3篇
- 2025小學創(chuàng)意特色寒假素養(yǎng)作業(yè)設計真絕了【高清可打印】
- 2025年上半年河南安陽市睢陽區(qū)“減縣補鄉(xiāng)”鄉(xiāng)鎮(zhèn)事業(yè)單位選拔130人重點基礎提升(共500題)附帶答案詳解
- 2025學年學期學校衛(wèi)生工作計劃
- 10.1.2事件的關系和運算(教學課件)高一數(shù)學(人教A版2019必修第二冊)
- 2024-2030年中國天然靛藍行業(yè)市場規(guī)模預測及發(fā)展可行性分析報告
- DB37T 4548-2022 二氧化碳驅油封存項目碳減排量核算技術規(guī)范
- 2024年廣東省深圳市寶安區(qū)高一上學期期末數(shù)學試題及答案
- (CJJ-T308-2021)《濕地公園設計標準》
- 2024國家開放大學基礎寫作形考任務2試題及答案
- 2023-2024學年江蘇省蘇州市高一(上)期末地理試卷
- 安全風險防控培訓
評論
0/150
提交評論