北航微機(jī)原理課件第十講_第1頁
北航微機(jī)原理課件第十講_第2頁
北航微機(jī)原理課件第十講_第3頁
北航微機(jī)原理課件第十講_第4頁
北航微機(jī)原理課件第十講_第5頁
已閱讀5頁,還剩58頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第十講匯編語言DOS與BIOS中斷調(diào)用(續(xù))

2009.4.21(星期二)主要內(nèi)容:

一、學(xué)習(xí)中斷調(diào)用 二、存儲器概述

1一、概述

1.BIOS和DOS中斷子程層次特點(diǎn)用戶程序磁盤管理模塊(DOS內(nèi)核)MSDOS.SYS系統(tǒng)功能基本輸入/輸出BIOS模塊IO.SYS設(shè)備驅(qū)動ROMBIOS基本I/O系統(tǒng)硬件裝入命令處理模塊COMMAND.COM用戶命令DOS系統(tǒng)層次結(jié)構(gòu)2層次特點(diǎn):

ROMBIOS中的中斷子程序使用IN/OUT指令直接控制外設(shè),實(shí)現(xiàn)與外設(shè)之間的輸入/輸出操作,以軟件形式向其上層提供服務(wù)。

IO.SYS中的中斷子程

(稱基本輸入/輸出BIOS模塊)

調(diào)用ROMBIOS的基本I/O功能,向MSDOS.SYS提供設(shè)備驅(qū)動服務(wù)。用戶程序磁盤管理模塊(DOS內(nèi)核)MSDOS.SYS系統(tǒng)功能基本輸入/輸出BIOS模塊IO.SYS設(shè)備驅(qū)動ROMBIOS基本I/O系統(tǒng)硬件裝入命令處理模塊COMMAND.COM用戶命令3

MSDOS.SYS中的中斷子程

(稱DOS內(nèi)核模塊)調(diào)用IO.SYS,實(shí)現(xiàn)對外設(shè)的控制。與標(biāo)準(zhǔn)外設(shè)有兩層隔離:IO.SYS和ROMBIOS。其中21H類型的中斷子程提供了豐富的系統(tǒng)服務(wù),稱21類型的中斷調(diào)用為DOS系統(tǒng)(功能)調(diào)用。用戶程序磁盤管理模塊(DOS內(nèi)核)MSDOS.SYS系統(tǒng)功能基本輸入/輸出BIOS模塊IO.SYS設(shè)備驅(qū)動ROMBIOS基本I/O系統(tǒng)硬件裝入命令處理模塊COMMAND.COM用戶命令4用戶編程原則①盡可能使用DOS的系統(tǒng)功能調(diào)用,提高程序可移植性。②在DOS功能不能實(shí)現(xiàn)情況下,考慮用BIOS功能調(diào)用。③在DOS和BIOS的中斷子程不能解決問題時,

使用IN/OUT指令直接控制硬件。用戶程序磁盤管理模塊(DOS內(nèi)核)MSDOS.SYS系統(tǒng)功能基本輸入/輸出BIOS模塊IO.SYS設(shè)備驅(qū)動ROMBIOS基本I/O系統(tǒng)硬件裝入命令處理模塊COMMAND.COM用戶命令52.中斷類型分類向量表中的中斷類型分為七類:①處理CPU特殊操作(除0、溢出)的00H、04H類型。②

為DEBUG調(diào)試程序設(shè)置的單步(01H)、斷點(diǎn)(03H)類型。③

處理CPU的NMI引腳信號的02H類型。非屏蔽硬中斷子程④

處理CPU的INTR引腳信號的08~0FH類型??善帘晤愋陀仓袛嘧映挞?/p>

用INT指令調(diào)用的中斷子程

BIOS功能調(diào)用(如10~1AH)DOS功能調(diào)用(如21H)NMIINTR80886⑥

保留類型為DOS系統(tǒng)保留

1)指現(xiàn)在未用到,以后系統(tǒng)可能會用到。

2)已用到,但不向用戶公開。為用戶保留

1)被系統(tǒng)子程嵌套調(diào)用了的類型(如1BH、1CH)。

使用戶在系統(tǒng)功能基礎(chǔ)上擴(kuò)充功能。

2)系統(tǒng)未占用類型(如60H~67H)。⑦非中斷向量類型對應(yīng)向量表中的4個單元存放的不是中斷向量。(如1DH、1EH、1FH、41H、46H、22H)

通常是一些參數(shù)表的地址信息.7

中斷向量分配表89103.調(diào)用方法設(shè)置入口參數(shù)在AH設(shè)置功能號m執(zhí)行中斷指令I(lǐng)NTN分析、應(yīng)用出口參數(shù)11二、DOS系統(tǒng)功能調(diào)用(21H類型中斷調(diào)用)1..顯示單字符(02H功能)2.顯示字符串(09H功能)3.單字符輸入(01H、07H、08H功能)4.字符串輸入(0AH功能)5.檢測鍵盤狀態(tài)(0BH功能)6.返回DOS(4CH)12例:顯示以“$”結(jié)尾的字符串(09H功能)

功能號

AH=09H類型號

INT21H入口參數(shù)DS:DL字符串首地址

實(shí)現(xiàn)功能顯示指定字符。dataSEGMENT

;定義顯示的子符串striDB‘BeijingUniversityofAeronauticsandAustronautics’,‘$’dataENDScodeSEGMENTASSUMECS:code,DS:datastart:MOVAX,data

;置緩沖區(qū)地址于DS:DXMOVDS,AXLEADX,stri

MOVAH,09H;調(diào)顯示功能

INT21HMOVAH,4CH;返回DOS

INT21HcodeENDS

ENDstart13字符串輸入(0AH功能)

入口參數(shù)

DS:DX=緩沖區(qū)的首地址

(DS:DX)=限制最多輸入的字符數(shù)

功能號

AH=0AH

類型號

21H

出口參數(shù)

(DS:DX+1)=實(shí)際鍵入的字符(不含回車符)從(DS:DX+2)開始順序存放鍵入的字符串,回車符0DH為串尾最后一字符。

實(shí)現(xiàn)功能等待從鍵盤輸入字符串,并存入設(shè)定的緩沖區(qū)內(nèi),同時回顯字符串,光標(biāo)隨著移動,

回車符使光標(biāo)回到行首。

注意事項(xiàng):應(yīng)按要求先定義緩沖區(qū),再調(diào)用。14例應(yīng)用0AH功能輸入字符串。

dataSEGMENT;定義緩沖區(qū)maxDB11;定義限制最多輸入個數(shù)lenthDB?;用于存放實(shí)際輸入個數(shù)striDB11DUP(?);用于存放輸入的字符串dataENDScodeSEGMENTASSUMECS:code,DS:datastart:MOVAX,data;置緩沖區(qū)地址于DS:DXMOVDS,AXLEADX,max

MOVAH,0AHINT21H;調(diào)0A輸入功能

MOXCH,0MOVCL,lenth

;取字符串長度放CX中

LEABX,stri

;取字符串首址于BX中

MOVAL,[BX];應(yīng)用輸入字符、、、、、codeENDS15dataSEGMENT;定義緩沖區(qū)maxDB11;定義限制最多輸入個數(shù)lenthDB?;用于存放實(shí)際輸入個數(shù)striDB11DUP(?);用于存放輸入的字符串dataENDS從鍵盤輸入‘ABCD’,回車,內(nèi)存的存放結(jié)果:0B04414243440D00max07000000000000000080a0b0f12345690c0d0elenthstri地址內(nèi)容DS:DX16第五章

微機(jī)的存儲器

要求:1.了解典型的半導(dǎo)體存儲

2.存儲器的編程結(jié)構(gòu)

3.存儲器與8086CPU的連接 本章內(nèi)容中:半導(dǎo)體存儲器原理,略;各種外部存儲器原理,略重點(diǎn):1.存儲器的地址編碼

2.86/88CPU與存儲器連接時的區(qū)別

175.1存儲器的分類與組成存儲器按它與CPU的連接方式不同,可分為內(nèi)存儲器和外存儲器。通過CPU的外部總線直接與CPU相連的存儲器稱為內(nèi)存儲器(簡稱內(nèi)存或主存)。

CPU要通過I/O接口電路才能訪問的存儲器稱為外存儲器(簡稱外存或二級存儲器)。按存儲器信息的器件和媒體來分,有半導(dǎo)體存儲器、磁表面存儲器、磁泡存儲器和磁芯存儲器以及光盤存儲器等。18一、存儲系統(tǒng)的基本概念二、存儲器的分類三、存儲器的主要性能指標(biāo)四、隨機(jī)存取存儲器RAM五、只讀存儲器RAM六、存儲器的接口特性19一、存儲系統(tǒng)的基本概念

存儲器是 一種接收、保存和取出信息(程序、數(shù)據(jù)、文件)的設(shè)備;

一種具有記憶功能的部件;是計(jì)算機(jī)的重要組成部分,是CUP最重要的系統(tǒng)資源之一。

CPU與存儲器的關(guān)系如下圖所示。20DSESSSCSIPPSW標(biāo)志寄存器執(zhí)行部件控制電路指令譯碼器4321數(shù)據(jù)暫存器AXBXCXDXAHBHCHDHSIDIBPSPALBLCLDL寄存器組指令隊(duì)列地址總線AB數(shù)據(jù)總線DB總線接口控制電路控制總線CB運(yùn)算器地址加法器地址譯碼器、、、指令1指令2指令3指令4、、、數(shù)據(jù)1數(shù)據(jù)29AH、、、指令MOVAL,[BX]包含一個存儲器讀操作存儲器CPU21三級層次的存儲器結(jié)構(gòu)存儲器的基本結(jié)構(gòu)22存儲系統(tǒng)的基本概念半導(dǎo)體存儲器的發(fā)展: 各種存取時間短、容量大、功耗低、價格便宜的器件不斷涌現(xiàn),微機(jī)中內(nèi)存采用半導(dǎo)體存儲器。本章著重介紹:

微機(jī)主存的半導(dǎo)體存儲器及其應(yīng)用 其中包括:半導(dǎo)體存儲器種類各種RAM/ROM的基本構(gòu)成典型存儲器芯片與CPU接口技術(shù)

23二、存儲器分類

1.按用途分類2.按存儲器存取方式不同241.按用途分類按存儲器用途可以分為主存儲器和輔助存儲器。⑴主存儲器(MainMemory)

主存又稱內(nèi)存,

用來存放計(jì)算機(jī)正在執(zhí)行的或經(jīng)常使用的程序和數(shù)據(jù)。CPU可以直接對它進(jìn)行訪問, 一般是由半導(dǎo)體存儲器構(gòu)成,通常裝在主板上, 存取速度快,但容量有限,

其大小受地址總線位數(shù)的限制。 如在8086/8088系統(tǒng)中, 有20條地址總線,CPU可以尋址內(nèi)存1MB空間, 用來存放系統(tǒng)軟件及當(dāng)前運(yùn)行的應(yīng)用軟件。25⑵輔助存儲器(ExternalMemory)輔助存儲器又稱外存,是主存的后援,一般不安裝在主機(jī)板上,屬計(jì)算機(jī)的外部設(shè)備。輔存是為彌補(bǔ)內(nèi)存容量的不足而配置的, 用來存放不經(jīng)常使用的程序和數(shù)據(jù), 需要時成批調(diào)入主存供CPU使用,CPU不能直接訪問它。最廣泛使用的外存是磁盤、光盤等。 輔存容量大,成本低,所存儲信息既可以修改也可以長期保存,但存取速度慢。外存需要配置專門的驅(qū)動設(shè)備才能完成對它的訪問,如硬盤、軟盤驅(qū)動器等。26計(jì)算機(jī)工作時存儲器工作情況:一般由內(nèi)存ROM中引導(dǎo)程序啟動系統(tǒng), 從外存儲器讀取系統(tǒng)程序和應(yīng)用程序,送到內(nèi)存RAM中;程序運(yùn)行時中間結(jié)果放在RAM中,程序運(yùn)行結(jié)束時將結(jié)果存入外存。272.按存儲器存取方式不同

對內(nèi)、外存儲器進(jìn)行進(jìn)一步分類:

⑴外存儲器分類

⑵內(nèi)存儲器按使用屬性分類28外存儲器信息存取方式特點(diǎn)例如順序存取存儲器SAM以文件或數(shù)據(jù)形式按順序存取磁帶不同地址讀/寫需時間不同。容量大,價格低存取速度慢。直接存取存儲器DAM先指向一個小區(qū)(如一個磁道),在小區(qū)內(nèi)順序檢索存取信息時間與地址有關(guān)磁盤⑴、外存儲器分類

①順序存取存儲器SAM(SequentialAccessMemory)②直接存取存儲器DAM(DirectAccessMemory)29⑵、內(nèi)存儲器按使用屬性分類

內(nèi)存儲器種類繁多,按使用屬性分為:①

隨機(jī)存取存儲器RAM(RandomAccessMemory)②只讀存儲器ROM(ReadOnlyMemory)

30三、存儲器的主要性能指標(biāo)

存儲器性能指標(biāo)主要有五項(xiàng): 容量、速度、功耗、可靠性、集成度。

1、存儲器容量

2、存取速度

3、功耗

4、可靠性

5、集成度311、存儲器容量

存儲器容量:通常計(jì)算機(jī)編址單元是字節(jié)/字(二個字節(jié)定義成一個字),

存儲器的容量是指一個存儲器中單元總數(shù),

用字?jǐn)?shù)或字節(jié)數(shù)表示。

也可以用二進(jìn)制位(bit)來表示。 如64K字=64K×16位,

512KB(B表示字節(jié))=512K×8位。 外存為了表示更大的容量,采用MB、GB、TB等。 其中:

1KB=210B,1MB=220B,1GB=230B,1TB=240B322、存取速度

存取速度:存儲器的存取速度:

是指訪問(讀/寫)一次存儲器所需要的時間。常用存儲器的存取時間(MemoryAccessTime)

和存儲周期表示,MOS工藝的存儲器存取周期數(shù)為數(shù)十--數(shù)百nS,

雙極型RAM存取周期最快可達(dá)10nS以下, 一般存儲周期略大于存取時間, 其差別取決于主存的物理實(shí)現(xiàn)細(xì)節(jié)。33

3.功耗維持功耗操作功耗

4.可靠性指存儲器對電磁場及溫度等變化的抗干撓能力

5.集成度指單位毫米芯片上集成的存儲電路數(shù)34(1)、地址線An~A0

存儲器芯片的存儲單元數(shù)取決于地址線的位數(shù)。

地址線An

~A0

An為最高位(MSB),A0是最低有效位(LSB),

下標(biāo)n總比地址引腳數(shù)少1。 對于1KB的存儲器有10條地址引腳(A9

~

A0),

用來選擇1024個存儲單元; 具有11條地址總線的芯片(A10

~A0),就有2048個存儲單元供使用, 而對于8088CPUPC機(jī),具有20位(A19

~

A0)地址總線,直接進(jìn)行選擇存儲單元可以達(dá)1MB。

一般存儲器件信息是以二進(jìn)制0或1形式存取。

6264A0—A7

D0D7/WE/OE/CS靜態(tài)存儲器SRAM35(2)、數(shù)據(jù)線(入/出)數(shù)據(jù)線(O7

~O0或I/O7

~

I/O0) ROM芯片有一組可以進(jìn)行輸出的數(shù)據(jù)總線(O7

~O0) RAM芯片有一組可以進(jìn)行輸入/輸出的數(shù)據(jù)總線 (I/O7

~

I/O0)其中:

O7或I/O7為最高位MSB; O0或I/O0為最低位LSB。

用于存(寫)/?。ㄗx)數(shù)據(jù)。 數(shù)據(jù)總線8位意味著一個存儲單元存放8位(1個字節(jié))數(shù)據(jù), 當(dāng)然還有32位、16位、4位.1位等寬的存儲器芯片。36(3)、控制線(入)控制線隨著芯片不同而不同:

①ROM控制線

②SRAM控制線

37

①ROM控制線ROM芯片提供兩個控制輸入信號:

芯片允許,輸出允許。

=1使該芯片處于低功耗備用模式; =0該芯片被選中,使O7~

O0處于允許狀態(tài);

=1輸出被禁止,O7~

O0處于高阻;

=0允許O7~

O0正常輸出。由此可見,使ROM能有效地操作必須使==0。38②SRAM控制線靜態(tài)RAM(SRAM)提供三個控制輸入信號:

芯片允許輸出允許寫允許無論對SRAM進(jìn)行讀或?qū)憯?shù)據(jù)時,必須使=0。向SRAM寫數(shù)據(jù)時,=0、=0、=1,將I/O7

~I/O0

配置為輸入,實(shí)現(xiàn)存儲器寫操作。從SRAM讀出數(shù)據(jù)時,=1、=0、=0,

I/O7

~I/O0

為非高阻態(tài),實(shí)現(xiàn)對存儲器讀操作。注意:==0不能存在。

==1數(shù)據(jù)線處于高阻抗?fàn)顟B(tài), 即不能讀/不能寫。39(3).DRAM存儲器動態(tài)RAM(DRAM)以電荷形式存儲信息的器件。以INTEL2164為例2164為64K×116根地址分為兩組

/RAS(行地址有效)時,

A0—A7有效/CAS(列地址有效)時,

A8—A15有效DIN為數(shù)據(jù)輸入,DOUT為數(shù)據(jù)輸出2164內(nèi)部有4個128×128的存貯矩陣DRAM必須再2ms內(nèi)對所有內(nèi)存刷新/RAS作為刷新的選通信號刷新時按行進(jìn)行,且數(shù)據(jù)線不起作用

2164A0—A7DINDOUT/WE/RAS/CAS40芯片地址線與CPU的低地址總線相連,以確定存儲器片內(nèi)地址,剩下CPU的高位地址通過地址譯碼產(chǎn)生片選控制信號。存儲器芯片的選擇原則確定好電路結(jié)構(gòu)以后,

存儲器芯片的選擇應(yīng)盡量選用容量相同的芯片存儲器芯片連接原則412、存儲器芯片與CPU的連接方式。存儲器芯片與CPU的連接方式。是指與CPU總線相關(guān)的信號線的連接??刂瓶偩€由芯片類型決定,只能隨芯片一塊討論。

(1)根據(jù)CPU外部數(shù)據(jù)總線的位數(shù)確定主存結(jié)構(gòu)

(2)根據(jù)CPU外部地址總線的位數(shù)與存儲器的容量 確定主存儲器芯片連接原則(3)8位數(shù)據(jù)總線CPU與存儲器接口42(1)根據(jù)CPU外部數(shù)據(jù)總線的位數(shù)

確定主存結(jié)構(gòu)

讀寫存儲器RAM只讀存儲器ROM

以EPROM2716(2K8)為例加以說明。

以靜態(tài)RAM(SRAM)2114芯片(1K4位/片)和6116芯片(2K8位/片)為例加以說明。43讀寫存儲器RAM(

6116芯片)A10~A0I/O0~I/O76116寫使能WE輸出使能OE片選CS6116存儲芯片為2K8位,8088CPU數(shù)據(jù)總線是8位的,2K容量的存儲器用一片6116實(shí)現(xiàn)。①6116的引腳圖如下44存儲器與CPU的連接復(fù)用總線結(jié)構(gòu)數(shù)據(jù)與地址分時共用一組總線。CPU

AD0~n

ALER/WD0~nA0~nR/W存儲器Di

QiG地址鎖存器ALE地址鎖存地址鎖存地址輸出數(shù)據(jù)有效地址輸出數(shù)據(jù)有效AD0~n數(shù)據(jù)采樣數(shù)據(jù)采樣R/W45

只讀存儲器ROM(2716)

2716存儲芯片為2K8位的,8088CPU數(shù)據(jù)總線是8位的,2K容量的存儲器用一片2716實(shí)現(xiàn)。①其引腳圖如下:2716A10~A0D7~D0OECE/PGMVCC=5V

VPP{使用5V編程+25V46(2)根據(jù)CPU外部地址總線的位數(shù)與存儲器的容量確定主存儲器芯片連接原則確定好電路結(jié)構(gòu)后,存儲器芯片選擇應(yīng)盡量選用容量相同的芯片。連接原則:芯片的地址線與CPU的低地址總線相連,以確定存儲器片內(nèi)地址,剩下的高位地址通過譯碼產(chǎn)生片選控制信號。

①根據(jù)系統(tǒng)對存儲器分配情況可以選擇不同的譯碼方式:

線選 全譯碼

②常用的譯碼器有以下三種

與非門譯碼器3-8譯碼器(74LS138)

PLD可編程譯碼器47①譯碼方式

線選(地址有重疊區(qū))

PC總線A12~A08K8CSCSCSA13A14A15IIIIII

XXXX,1100,0000,0000,0000

XXXX,1101,1111,1111,1111I存儲器地址A13

XXXX,1010,0000,0000,0000;XXXX,1011,1111,1111,1111II存儲器地址A14滿足條件的地址有16塊48譯碼方式(續(xù))

全譯碼(地址無重疊區(qū))

PC總線A12~A0CSCS譯碼。。。A13A14A1549②常用的譯碼器

與非門譯碼A19A18A16A17A15A13A14A12WRIO/MRDCPU&111A11=074LS3074LS24574LS326116WEOECSMEMRMEMWD7~D0ADIRD7~D0DBGA10~A0D7~D0???存儲地址為:A0000~A07FFH50

3-8譯碼器(74LS138)使能輸入選擇輸入G1G2AG2BCBAY0~Y7輸出100000Y0=0其余為1100001Y1=0其余為1100010Y2=0其余為1100011Y3=0其余為1100100Y4=0其余為1100101Y5=0其余為1100110Y6=0其余為1100111Y7=0其余為1513-8譯碼器應(yīng)用舉例存儲器地址為:2000H~23FFH,2400H~27FFHA0

A9A0

A9A0

A9A0

A9A0

A9CSCSCSCSWEWEWEWED3D0D7D4D7D4D3D02114211421142114D7D0CPUA15

A10IO/M1K1KWRDBABCB片選譯碼?

????片選譯碼74LS13852輸出要滿足: 譯碼器要能工作,輸出有效要對應(yīng)輸入的編碼。530800~0FFFH3800~3FFFH0000~07FFH用74LS138全譯碼實(shí)現(xiàn)真值表000000000011111111110000000000111111111100000000001111111111A12A11A1300 000 00100111輸出A10A9~A0地址范圍只Y0=0只Y1=0只Y7=001010100A15A14A12A11A13A14IO/MA1574LS138G1G2AG2BCBAY0Y1Y2Y3Y4Y5Y6Y70000~07FFH0800~0FFFH1000~17FFH1800~1FFFH2000~27FFH2800~0FFFH3000~37FFH3800~3FFFH54存儲器地址: FC000~FC7FFHFC800~FCFFFH …FF800~FFFFFH111111y0y7OERDABC+5V1K&30G2AG2B地址數(shù)據(jù)A0~A10O0~072716WAITA11A12A13IO/MA14A15A16A17A18A19CECECECE

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論