微機(jī)原理與接口技術(shù)(Chap2-2)_第1頁
微機(jī)原理與接口技術(shù)(Chap2-2)_第2頁
微機(jī)原理與接口技術(shù)(Chap2-2)_第3頁
微機(jī)原理與接口技術(shù)(Chap2-2)_第4頁
微機(jī)原理與接口技術(shù)(Chap2-2)_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

*1第三講2015.10.12主講人:

王建中課程網(wǎng)址:/auto/wjjk/Email:wangjz@Tel:86919060級(jí)精品課建設(shè)微機(jī)原理與接口技術(shù)*2復(fù)習(xí)8086CPU內(nèi)部結(jié)構(gòu)*38086CPU4039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15AD16/S3AD17/S4AD18/S5AD19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN(S0)ALE(QS0)INTA(QS1)TESTREADYRESET12345678910111213141516171819208086CPU引腳及功能復(fù)習(xí)*4第二章8086系統(tǒng)結(jié)構(gòu)內(nèi)容提要微型計(jì)算機(jī)的發(fā)展概況8086CPU內(nèi)部結(jié)構(gòu)8086CPU引腳及功能8086CPU存儲(chǔ)器組織8086CPU系統(tǒng)配置8086CPU時(shí)序*5主要內(nèi)容存儲(chǔ)器地址的分段8086存儲(chǔ)器的分體結(jié)構(gòu)堆棧的概念§2-38086存儲(chǔ)器組織§2-48086系統(tǒng)配置最小模式最大模式有關(guān)術(shù)語存儲(chǔ)器分類*61.

位(Bit)2.

字節(jié)(Byte)3.

字和字長(Word)4.

位編號(hào)5.

指令、指令系統(tǒng)和程序6.

寄存器7.

譯碼器有關(guān)術(shù)語*71.位(Bit)

指計(jì)算機(jī)能表示的最基本最小的單位在計(jì)算機(jī)中采用二進(jìn)制表示數(shù)據(jù)和指令,故:位就是一個(gè)二進(jìn)制位,有兩種狀態(tài),“0”

和“1”2.字節(jié)(Byte)

相鄰的8位二進(jìn)制數(shù)稱為一個(gè)字節(jié)1Byte=8Bit

如:11000011B01010111B有關(guān)術(shù)語*83.字和字長

字長是每一個(gè)字所包含的二進(jìn)制位數(shù)。常與CPU內(nèi)部的寄存器、運(yùn)算裝置、總線寬度一致

字是CPU內(nèi)部進(jìn)行數(shù)據(jù)處理的基本單位。有關(guān)術(shù)語*9例

某CPU內(nèi)含8位運(yùn)算器,則:參加運(yùn)算的數(shù)及結(jié)果均以

8位

表示,最高位產(chǎn)生的進(jìn)位或借位在8位運(yùn)算器中不保存,而將其保存到標(biāo)志寄存器中10110101被加數(shù)(8位)

+10001111加數(shù)(8位)進(jìn)位

111111101000100

和(8位)進(jìn)位運(yùn)算器被加數(shù)加數(shù)標(biāo)志寄存器運(yùn)算器和有關(guān)術(shù)語*10字長是衡量CPU工作性能的一個(gè)重要參數(shù)。

不同類型的CPU有不同的字長。如:Intel4004是4位

8080是8

8088/8086/80286是

16

80386/80486、Pentium是32

4位8次

8位4次16位2次32位1次

10101100011001011001100001000011

被加數(shù)

+

11000011110000110001010101011000

加數(shù)進(jìn)位

111111111111

01110000001010001010110110011011

和*11位

1或01位字節(jié)

110000118位字

110000110011110016位雙字100001100111100110000110011110032位高字節(jié)低字節(jié)

高字低字把一個(gè)字定為16位,1Word=2Byte一個(gè)雙字定為32位1DWord=2Word=4Byte有關(guān)術(shù)語*124.位編號(hào)為便于描述,對(duì)字節(jié),字和雙字中的各位進(jìn)行編號(hào)。從低位開始,從右到左依次為0、1、2...注意:從0開始編號(hào)。編號(hào)7654321010100010D7D6D5D4D3D2D1D0A7A6A5A4A3A2A1A0字節(jié)數(shù)據(jù)Data地址Address有關(guān)術(shù)語*13D0D7D15D8158101010101010101070A0A7A15A8字的位編號(hào)為15~0雙字的位編號(hào)依此類推,為31~0有關(guān)術(shù)語*145.指令、指令系統(tǒng)和程序指令是CPU能執(zhí)行的一個(gè)基本操作。如:取數(shù)、加、減、乘、除、存數(shù)等指令系統(tǒng)是CPU所能執(zhí)行的全部操作。不同的CPU,其指令系統(tǒng)不同。程序是用戶在使用計(jì)算機(jī)時(shí),為要解決的問題,用一條條指令編寫的指令序列。

構(gòu)成程序的指令在存儲(chǔ)器中一般都是順序存放, 要改變這種順序性,必須由轉(zhuǎn)移指令操作。有關(guān)術(shù)語*156.寄存器

寄存器是用來存放數(shù)據(jù)和指令的一種基本邏輯部件。根據(jù)存放信息的不同,有指令寄存器、數(shù)據(jù)寄存器、地址寄存器等。地址總線AB數(shù)據(jù)總線DB控制總線CB標(biāo)志寄存器指令寄存器數(shù)據(jù)寄存器控制電路指令譯碼器地址寄存器指令指針寄存器R1R2R3R4寄存器組運(yùn)算器IPCPU結(jié)構(gòu)示意圖有關(guān)術(shù)語*167.譯碼器

譯碼器是將輸入代碼轉(zhuǎn)換成相應(yīng)輸出信號(hào)的邏輯電路。指令是CPU能執(zhí)行的一個(gè)基本操作;CPU的設(shè)計(jì)者對(duì)CPU的所有指令進(jìn)行編碼;用戶用編碼形式的指令進(jìn)行編程,程序存放在內(nèi)存中;CPU從內(nèi)存取來編碼形式的指令,對(duì)指令進(jìn)行譯碼,發(fā)出執(zhí)行該指令功能所需的信號(hào)。有關(guān)術(shù)語*17CPU總線內(nèi)存標(biāo)志寄存器地址總線AB程序數(shù)據(jù)數(shù)據(jù)總線DB控制總線CB地址譯碼器、、、指令1指令2指令3指令4…….…….數(shù)據(jù)1數(shù)據(jù)2數(shù)據(jù)3…….指令寄存器數(shù)據(jù)暫存器控制電路指令譯碼器地址寄存器指令指針寄存器R1R2R3R4寄存器組運(yùn)算器IP

根據(jù)譯碼內(nèi)容的不同,可分為:

指令譯碼器:

將指令代碼轉(zhuǎn)換成該指令所需的各種控制信號(hào)。

地址譯碼器:

將地址信號(hào)轉(zhuǎn)換成各地址單元相應(yīng)的選通信號(hào)。*18存儲(chǔ)器分類存儲(chǔ)器內(nèi)存外存高速緩沖存儲(chǔ)器Cache隨機(jī)存取存儲(chǔ)器(RAM)只讀存儲(chǔ)器(ROM)硬盤軟盤磁帶光盤靜態(tài)RAM(SRAM)動(dòng)態(tài)RAM(DRAM)只讀存儲(chǔ)器(ROM)可編程ROM(PROM)可擦除PROM(EPROM)電可擦除可編程ROM(E2PROM)*19§2-38086存儲(chǔ)器組織存儲(chǔ)器地址的分段存儲(chǔ)器的要求:以字節(jié)為單位存儲(chǔ)信息,每個(gè)存儲(chǔ)單元有唯一的地址。分段管理的原因:

8086/8088系統(tǒng)的存儲(chǔ)空間1M字節(jié)(即220,要20位物理地址),CPU內(nèi)部寄存器只有16位(只能尋址64K字節(jié))。整個(gè)存儲(chǔ)中間分成許多邏輯段。1.存儲(chǔ)器地址的分段0段000000FFFF100001FFFF

F0000FFFFF1段…15段64KB64KB64KB*20一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

1.存儲(chǔ)器地址的分段…邏輯段1起點(diǎn)邏輯段2起點(diǎn)邏輯段3起點(diǎn)邏輯段4起點(diǎn)……邏輯段1≤64KB邏輯段2≤64KB邏輯段3≤64KB邏輯段4≤64KB00000FFFFF0段1段…15段2段64KB64KB64KB00000H0FFFFH10000H1FFFFH20000H2FFFFHF0000HFFFFFH64KB*21分段管理的特點(diǎn):每段容量不超過64K字節(jié);允許各個(gè)邏輯段在整個(gè)存儲(chǔ)空間中浮動(dòng);段和段之間可以連續(xù),也可以分開或重疊存儲(chǔ)單元的實(shí)際地址:段地址+段內(nèi)偏移地址(IBMPC機(jī)規(guī)定段的首地址必須從每小段(paragraph)的首地址開始,機(jī)器規(guī)定每16字節(jié)為一小段,所以段起始地址必須能被16整除)。1.存儲(chǔ)器地址的分段一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

…邏輯段1起點(diǎn)邏輯段2起點(diǎn)邏輯段3起點(diǎn)邏輯段4起點(diǎn)……邏輯段1≤64KB邏輯段2≤64KB邏輯段3≤64KB邏輯段4≤64KB00000FFFFF*22物理地址形成地址范圍:00000~FFFFFH物理地址=段基址×16十偏移地址其中:

段基址:放在段寄存器地址(CS、DS、ES、SS)

偏移地址:從段地址開始的相對(duì)偏移位置(放在指令指針寄存器IP、16位通用寄存器中)邏輯地址:段基址+偏移地址組成(無符號(hào)的16位二進(jìn)制數(shù),程序設(shè)計(jì)時(shí)用)物理地址:存儲(chǔ)器的絕對(duì)地址,是CPU訪問存儲(chǔ)器的實(shí)際尋址地址。一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

*23物理地址形成段基址指每段的起始地址,根據(jù)前述PC機(jī)規(guī)定,它必須是每小段的首地址,即必須能被16整除,則其低4位一定為0。一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

0小段1小段…65535小段2小段16B16B16B00000H0000FH00010H0001FH00020H0002FHFFFF0HFFFFFH16B*24物理地址形成段基址00001503210偏移地址150地址加法器物理地址190段基址指每段的起始地址,根據(jù)前述PC機(jī)規(guī)定,它必須是每小段的首地址,即必須能被16整除,則其低4位一定為0。從段寄存器中取出段基址,將其左移4位,再與16位偏移地址相加,就得到了物理地址(由總線接口部件BIU的地址加法器完成)。一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

*25邏輯地址來源訪問存儲(chǔ)器的操作類型不同,BIU所使用的邏輯地址來源也不同。操作類型隱含段地址替換段地址偏移地址取指令CS無IP堆棧操作SS無SPBP為間接SSCS、DS、ES有效地址EA存取變量DSCS、DS、ES有效地址EA源字符串DSCS、DS、ESSI目標(biāo)字符串ES無DI一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

*26邏輯地址來源IPCSSI,DI或BXDSSP或BPSS代碼段數(shù)據(jù)段堆棧段取指令(IP)堆棧操作(SP)讀/寫存儲(chǔ)器操作數(shù)或訪問變量字符串尋址(源操作數(shù)放在DS:SI中,目標(biāo)操作數(shù)放在ES:DI中)

一、存儲(chǔ)器地址的分段§2-38086存儲(chǔ)器組織

*27§2-38086存儲(chǔ)器組織8086存儲(chǔ)器的分體結(jié)構(gòu)分體結(jié)構(gòu)概念兩個(gè)存儲(chǔ)體:偶地址存儲(chǔ)體+奇地址存儲(chǔ)體,各為512KByte,共1MByte.512K×8位奇地址存儲(chǔ)體(A0=1)512K×8位偶地址存儲(chǔ)體(A0=0)00001H00003H00005H

FFFFFH00000H00002H00004H

FFFFEH220-1==220-2*28二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

分體結(jié)構(gòu)概念兩個(gè)存儲(chǔ)體:偶地址存儲(chǔ)體+奇地址存儲(chǔ)體,各為512KByte,共1MByte.512K×8位奇地址存儲(chǔ)體(A0=1)512K×8位偶地址存儲(chǔ)體(A0=0)000010000300005

FFFFF000000000200004

FFFFE220-1==220-2與數(shù)據(jù)總線低8位相連,當(dāng)A0=0時(shí),選擇訪問偶地址存儲(chǔ)體,從低8位數(shù)據(jù)總線讀/寫一個(gè)字節(jié)。與數(shù)據(jù)總線高8位相連,當(dāng)A0=1時(shí),選擇訪問奇地址存儲(chǔ)體,從高8位數(shù)據(jù)總線讀/寫一個(gè)字節(jié)。*29分體結(jié)構(gòu)概念BHEA0操作總線使用情況00從偶地址開始讀/寫一個(gè)字AD15~AD001從奇地址單元讀/寫一個(gè)字節(jié)AD15~AD810從偶地址單元讀/寫一個(gè)字節(jié)AD7~AD011無效01從奇地址開始讀/寫一個(gè)字AD15~AD810AD7~AD0BHE、A0編碼含義二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

*30分體結(jié)構(gòu)概念34000FF0010000101

0010300104125201字節(jié)存儲(chǔ):一個(gè)字節(jié)存放一個(gè)單元。如單元00100H中的內(nèi)容為34H,表示為(00100H)=34H。

字存儲(chǔ):一個(gè)字存于相鄰兩個(gè)單元,

低位字節(jié)在低地址,高位字節(jié)在高地址,字單元的地址以低位地址表示。如:(00100H)=1234H,(00103H)=0152H一個(gè)字可以從偶地址開始存放,也可以從奇地址開始存放。二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

*31分體結(jié)構(gòu)讀寫操作00000FF10000100011000200103100041122330000000FF100001000110002001031000411223311從偶地址讀一個(gè)字節(jié)從奇地址讀一個(gè)字節(jié)8086CPU訪問存儲(chǔ)器時(shí),以字為單位進(jìn)行,并從偶地址開始。二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

*32分體結(jié)構(gòu)讀寫操作00000FF10000100011000200103100041122333322從偶地址讀一個(gè)字若字單元地址從偶地址開始,只需訪問一次存儲(chǔ)器

從奇地址讀一個(gè)字00000FF10000100011000200103100041122332211若字單元地址從奇地址開始,要訪問兩次存儲(chǔ)器

二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

*33存儲(chǔ)器與總線連接D7~D0

數(shù)據(jù)總線D15~D8

數(shù)據(jù)總線D7~D0奇地址存儲(chǔ)體SELA18~A0D7~D0偶地址存儲(chǔ)體SELA18~A0A0BHEA19~A1地址總線8086系統(tǒng)D7~D0數(shù)據(jù)總線D7~D01M×8位存儲(chǔ)體A19~A0A19~A0地址總線8088系統(tǒng)0000000001FFFFF二、8086存儲(chǔ)器的分體結(jié)構(gòu)§2-38086存儲(chǔ)器組織

*34§2-38086存儲(chǔ)器組織堆棧的概念堆棧的定義堆棧是在存儲(chǔ)器中開辟一個(gè)區(qū)域,用來存放需要暫時(shí)保存的一種數(shù)據(jù)結(jié)構(gòu)。堆棧段構(gòu)成及特點(diǎn)

堆棧段由段定義語句在存儲(chǔ)器中定義的一個(gè)段;可以在存儲(chǔ)器1M字節(jié)空間內(nèi)任意浮動(dòng);容量小于等于64K字節(jié);段基址由堆棧寄存器SS指定;棧頂由堆棧指針SP指定,SP指向當(dāng)前棧頂單元。C0000

C1000sp向上增長棧底*35三、堆棧的概念§2-38086存儲(chǔ)器組織

堆棧的工作方式及特點(diǎn)

工作方式:“先進(jìn)后出”,指令為PUSH、POP,棧頂指針SP的變化由CPU自動(dòng)管理。操作特點(diǎn):以字為單位進(jìn)行操作,低字節(jié)在偶地址,高字節(jié)在奇地址,每訪問一次堆棧就能壓入/彈出一個(gè)字。地址增長方式一般是向上增長:棧底設(shè)在存儲(chǔ)器的高地址區(qū),堆棧地址由高向低增長。C0000

C1000sp向上增長棧底*36C0000

C1000…高位數(shù)sp向上增長棧底執(zhí)行PUSH指令:CPU自動(dòng)修改指針SP-2SP;使SP指向新棧頂;將低位數(shù)據(jù)壓入(SP)單元;將高位數(shù)據(jù)壓入(SP+1)單元。三、堆棧的概念§2-38086存儲(chǔ)器組織

低位數(shù)sp高位數(shù)執(zhí)行PUSH指令:CPU自動(dòng)修改指針SP-2SP;使SP指向新棧頂;將低位數(shù)據(jù)壓入(SP)單元;將高位數(shù)據(jù)壓入(SP+1)單元。*37三、堆棧的概念§2-38086存儲(chǔ)器組織

當(dāng)執(zhí)行POP指令:CPU先將當(dāng)前棧頂SP(低位數(shù)據(jù))和SP+1(高位數(shù)據(jù))中的內(nèi)容彈出;然后再自動(dòng)修改指針,使SP+2SP,SP指向新棧頂。C0000

C1000…高位數(shù)sp向上增長棧底低位數(shù)sp高位數(shù)*38C0000

C1000sp向上增長棧底【例1】假如當(dāng)前SS=0C000H。堆棧段<64K,

SP=1000H,指出當(dāng)前棧頂在存儲(chǔ)器中的位置。當(dāng)前棧頂在存儲(chǔ)器中的地址為

0C000H×16+1000H=0C1000

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論