ibm-pc匯編語(yǔ)言程序設(shè)計(jì)第2章80x86計(jì)算機(jī)組織._第1頁(yè)
已閱讀1頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第二章 80X86計(jì)算機(jī),2.1 80X86微處理器2.2 基于微處理器的計(jì)算機(jī)系統(tǒng)構(gòu)成2.3 8086CPU和寄存器組2.4 存儲(chǔ)器物理地址的形成2.5 外部設(shè)備,開(kāi) 始,2.1 80X86計(jì)算機(jī)組織,計(jì)算機(jī)主要由運(yùn)算器、控制器、存儲(chǔ)器、輸入和輸出設(shè)備構(gòu)成。20世紀(jì)70年代初期,由于大規(guī)模集成電路技術(shù)的發(fā)展,已經(jīng)開(kāi)始把運(yùn)算器和控制器集成在一個(gè)芯片上,構(gòu)成中央處理機(jī)(CPU),80X8

2、6就是這樣一組微處理系列。 CPU配上一定容量的存儲(chǔ)器,再配上輸入輸出設(shè)備和系統(tǒng)軟件等就構(gòu)成微型計(jì)算機(jī)系統(tǒng),如80386微處理器芯片構(gòu)成構(gòu)成的微機(jī)稱為386微機(jī),80486微處理器芯片構(gòu)成構(gòu)成的微機(jī)稱為486微機(jī)等。,返回本章首頁(yè),2.2 基于微處理器的計(jì)算機(jī)系統(tǒng)構(gòu)成,2.2.1 硬 件2.2.2 軟 件,返回本章首頁(yè),2.2.1 硬件,典型的計(jì)算機(jī)結(jié)構(gòu)包括由微處理芯片構(gòu)成的

3、中央處理機(jī)(CPU)、存儲(chǔ)器(MEMORY)、和輸入輸出(I/O)、子系統(tǒng)三個(gè)主要組成部分,用系統(tǒng)總線把它們連接在一起。 系統(tǒng)總線包括:數(shù)據(jù)總線 地址總線 控制總線,2.2.2軟件,計(jì)算機(jī)軟件是計(jì)算機(jī)系統(tǒng)的重要組成部分,它可以分成系統(tǒng)軟件和應(yīng)用軟件兩部分 。 系統(tǒng)軟件是由計(jì)算機(jī)生產(chǎn)廠家提供給用戶的一組程序

4、,是執(zhí)行用戶程序所必須的。系統(tǒng)軟件的核心為操作系統(tǒng),操作系統(tǒng)是系統(tǒng)程序的集合,其主要部分是常駐監(jiān)督程序,包括:I/O驅(qū)動(dòng)程序,文件管理程序,文件編輯程序,翻譯程序,連接程序,裝入程序,調(diào)試程序,系統(tǒng)程序庫(kù)。 應(yīng)用軟件是用戶自行編制的各種程序,2.3 8086CPU和寄存器組,2.3.1 Intel 8086CPU內(nèi)部結(jié)構(gòu)2.3.2 8086寄存器組2.3.3 標(biāo)志寄存器,返回本章首頁(yè),2.3.

5、1 Intel 8086CPU內(nèi)部結(jié)構(gòu),,圖1.2 8086CPU內(nèi)部結(jié)構(gòu),圖1.2 8086CPU內(nèi)部結(jié)構(gòu),返回本節(jié),2.3.2 8086寄存器組,,圖1.3 8086CPU寄存器分組,1.通用寄存器,(1)數(shù)據(jù)寄存器數(shù)據(jù)寄存器共有4個(gè)寄存器AX、BX、CX、DX,用來(lái)保存操作數(shù)或運(yùn)算結(jié)果等信息。 AX寄存器稱為累加器。使用頻度最高,用于算術(shù)、邏輯運(yùn)算以及與外設(shè)傳送信息等。BX寄存器稱為基址寄存器。常用于存

6、放存儲(chǔ)器地址。CX寄存器稱為計(jì)數(shù)器。一般作為循環(huán)或串操作等指令中的隱含計(jì)數(shù)器。DX寄存器稱為數(shù)據(jù)寄存器。常用來(lái)存放雙字?jǐn)?shù)據(jù)的高16位,或存放外設(shè)端口地址。,變址和指針寄存器包括SI、DI、SP、BP4個(gè)16位寄存器,主要用于存放某個(gè)存儲(chǔ)單元的偏移地址。SI是源變址寄存器,DI是目的變址寄存器,在字符串操作中,SI和DI都具有自動(dòng)增量或減量的功能。 SP為堆棧指針寄存器,用于存放當(dāng)前堆棧段中棧頂?shù)钠频刂?;BP為基址指針寄存器,

7、用于存放堆棧段中某一存儲(chǔ)單元的偏移地址。,(2)變址和指針寄存器,2.段寄存器,8086CPU的4個(gè)16位的段寄存器分別稱為代碼段寄存器CS,數(shù)據(jù)段寄存器DS,堆棧段寄存器SS,附加數(shù)據(jù)段寄存器ES。段寄存器用來(lái)確定該段在內(nèi)存中的起始地址。代碼段用來(lái)存放程序的指令序列。CS存放代碼段的段首址,指令指針寄存器IP指示代碼段中指令的偏移地址。,3.指令指針,8086CPU中的指令指針I(yè)P,它總是保存下一次將要從主存中取出指令的偏移地址,偏

8、移地址的值為該指令到所在段段首址的字節(jié)距離。在目標(biāo)程序運(yùn)行時(shí),IP的內(nèi)容由微處理器硬件自動(dòng)設(shè)置,程序不能直接訪問(wèn)IP,但一些指令卻可改變IP的值,如轉(zhuǎn)移指令、子程序調(diào)用指令等。,返回本節(jié),2.3.3 標(biāo)志寄存器,8086CPU中有一個(gè)很重要的16位標(biāo)志寄存器,它包含9個(gè)標(biāo)志位,主要用于保存一條指令執(zhí)行后,CPU所處狀態(tài)信息及運(yùn)算結(jié)果的特征。 1.條件標(biāo)志 2.狀態(tài)控制標(biāo)志,15 14 13 12

9、 11 10 9 8 7 6 5 4 3 2 1 0,OF DF IF TF SF ZF AF PF CF,1.條件標(biāo)志,(1)進(jìn)位標(biāo)志CF(2)零標(biāo)志ZF(3)符號(hào)標(biāo)志SF(4)溢出標(biāo)志 OF (5)奇偶標(biāo)志 PF (6)輔助進(jìn)位標(biāo)志AF,2.狀態(tài)控制標(biāo)志,(1)方向標(biāo)志DF(2)

10、中斷允許標(biāo)志IF(3)追蹤標(biāo)志TF,返回本節(jié),2.4 存儲(chǔ)器物理地址的形成,2.4.1 存儲(chǔ)器2.4.2 存儲(chǔ)器單元的地址和內(nèi)容2.4.3 物理地址的形成,返回本章首頁(yè),2.4.1 存儲(chǔ)器,存儲(chǔ)器是計(jì)算機(jī)的記憶部件,用來(lái)存放程序和數(shù)據(jù)。按所在的位置,存儲(chǔ)器可以分成主存儲(chǔ)器和輔助存儲(chǔ)器。主存儲(chǔ)器存放當(dāng)前正在執(zhí)行的程序和使用的數(shù)據(jù),CPU可以直接存取,它由半導(dǎo)體存儲(chǔ)器芯片構(gòu)成,其成本高,容量小,但速度

11、快。輔助存儲(chǔ)器可用來(lái)長(zhǎng)期保存大量程序和數(shù)據(jù),CPU需要通過(guò)I/O接口訪問(wèn),它由磁盤或光盤構(gòu)成,其成本低,容量大,但速度較慢。,返回本節(jié),2.4.2 存儲(chǔ)器單元的地址和內(nèi)容,存儲(chǔ)單元地址 :8086系統(tǒng)中,為了標(biāo)識(shí)和存取每一個(gè)存儲(chǔ)單元,給每個(gè)存儲(chǔ)單元規(guī)定一個(gè)編號(hào),這就是存儲(chǔ)單元地址,地址從0開(kāi)始編號(hào),順序地每次加1,用二進(jìn)制表示,書寫格式為16進(jìn)制。16位二進(jìn)制數(shù)可以表示多少個(gè)字節(jié)單元的地址呢?存儲(chǔ)單元的內(nèi)容 :一個(gè)存儲(chǔ)單元

12、中存放的信息稱為該存儲(chǔ)單元的內(nèi)容,以字節(jié)為單位存儲(chǔ)信息。字節(jié)和字:,圖1.4表明了存儲(chǔ)器中部分存儲(chǔ)單元存放信息情況。從圖1.4可看到,地址為34560H的字節(jié)的存儲(chǔ)單元中的內(nèi)容是34H,而地址為34561H的字節(jié)存儲(chǔ)單元中的內(nèi)容是12H。,,返回本節(jié),存儲(chǔ)單元的地址和內(nèi)容:,? 存儲(chǔ)器以字節(jié)(8 bit)為編程單位? 每個(gè)字節(jié)單元都有唯一的地址編碼? 地址用無(wú)符號(hào)整數(shù)來(lái)表示(編程用十六進(jìn)制表示)? 一個(gè)字要占用相繼的兩個(gè)

13、字節(jié)? 低位字節(jié)存入低地址,高位字節(jié)存入高地址? 字單元地址用它的低地址來(lái)表示? 機(jī)器以偶地址訪問(wèn)(讀 / 寫)存儲(chǔ)器,2.4.3 物理地址的形成,8086CPU的地址線是20位的,這樣最大可尋址空間應(yīng)為220=1MB,其物理地址范圍從00000H~FFFFFH。而8086CPU寄存器都是16位的。那么,這1MB空間如何用16位寄存器表達(dá)呢?根據(jù)要求可把1M字節(jié)地址空間劃成若干邏輯段。每個(gè)邏輯段必須滿足兩個(gè)條件:一是

14、邏輯段的起始地址(簡(jiǎn)稱段首址)必須是16的倍數(shù);二是邏輯段的最大長(zhǎng)度為64K。按照這兩個(gè)條件,1M字節(jié)地址空間最多可劃分成64K個(gè)邏輯段,最少也能劃分成16個(gè)邏輯段。邏輯段與邏輯段可以相連,也可以不連,還可以重疊。,存儲(chǔ)器的邏輯地址與物理地址,邏輯地址,段地址 : 偏移地址,1000 : 0000H,1000 : 0001H,1000 : 0002H,1000 : 0003H,1000 : 0004H,1000 : 0005H,1001

15、1111,00100110,01001000,10011111,10011111,10100011,10000H,10001H,10002H,10003H,10004H,10005H,物理地址,字節(jié)內(nèi)容:(10000H)=9FH(10001H)=26H字內(nèi)容 (10000H)=269FH;(10001H)=4826H,,,,,存儲(chǔ)器的分段:,20 根地址線: 地址范圍 00000H ~ FFFFFH (1MB)機(jī)器字長(zhǎng)16

16、位:僅能表示地址范圍 0000H ~ FFFFH (64KB)小段:每16個(gè)字節(jié)為一小段,共有64K個(gè)小段 小段的首地址 00000 H ~ 0000F H 00010 H ~ 0001F H 00020

17、H ~ 0002F H … FFFF0 H ~ FFFFF H 段起始地址:小段首地址段的大?。?64K 范圍內(nèi)的任意字節(jié),【例2.1】各獨(dú)立段的分配情況示例。,設(shè)CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它們分別為代碼段、數(shù)據(jù)段、堆棧段和附加段的段首址。自每個(gè)段

18、首址開(kāi)始,各段均占64KB的范圍,各段之間互不重疊。如圖1.5所示。,,【例2.2】各段相互重疊情況示例。,設(shè)CS=0200H、DS=0400H、SS=0480H,這樣代碼段、數(shù)據(jù)段和堆棧段的物理首地址分別為02000H、04000H和04800H。其中代碼段占8KB地址空間,數(shù)據(jù)段占2KB,堆棧段占256B,SP=0100H。如圖1.6所示。,,圖1.6 各段重疊存儲(chǔ)單元分配圖,返回本節(jié),物理地址的計(jì)算方法,物理地址 = 16

19、? 段地址 + 偏移地址 16 位 段 地 址 0000,16 位 偏 移 地 址,20 位 物 理 地 址,+,,例:(DS) = 2100H, (BX) = 0500H (PA) = 21000H+0500H = 21500H,寄存器與存儲(chǔ)器的比較:,在CPU內(nèi)部 在CPU外部訪問(wèn)速度快

20、 訪問(wèn)速度慢容量小,成本高 容量大,成本低用名字表示 用地址表示沒(méi)有地址 地址可用各種方式形成,寄存器,存儲(chǔ)器,2.5外部設(shè)備,外部設(shè)備與主機(jī)( CPU 和存儲(chǔ)器)的通信是通過(guò)外設(shè)接口(Interface)進(jìn)行的,每個(gè)接口包括一組寄存器。數(shù)據(jù)寄存器:存放外設(shè)和主機(jī)間傳送的數(shù)據(jù)狀態(tài)寄存器:保存外設(shè)或接口的狀態(tài)信息命令寄存器:保存CPU發(fā)給外設(shè)或接口的控制命令 外

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論