計(jì)算機(jī)原理課件_第1頁
計(jì)算機(jī)原理課件_第2頁
計(jì)算機(jī)原理課件_第3頁
計(jì)算機(jī)原理課件_第4頁
計(jì)算機(jī)原理課件_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

DalianUniversityofTechnology

計(jì)算機(jī)原理

電信學(xué)院自動(dòng)化系盧偉

ADD:大黑樓B705TEL:84706161Email:luwei@

第二章8086/8088微處理器史J體系結(jié)構(gòu)

2.18086/8088微處理器的編程結(jié)構(gòu)及指令執(zhí)行過程

2.1.18086/8088微處理器概述

2.1.28086/8088微處理器編程結(jié)構(gòu)

2.1.38086/8088微處理器程序執(zhí)行過程

2.28086/8088存貯器分段技術(shù)

2.2.1存貯器分段技術(shù)

2.2.2堆棧

2.38086/8088微處理器

2.3.18086/8088微處理器信號(hào)引腳和工作模式

2.3.28086/8088系統(tǒng)存貯器的結(jié)構(gòu)及I/O管理

2.3.2典型的系統(tǒng)配置及操作時(shí)序

2計(jì)算機(jī)原理2010年7月28日9時(shí)37分

概逑

b體系結(jié)構(gòu)的含義

計(jì)算機(jī)體系結(jié)構(gòu)=817^儂「Architecture

計(jì)算機(jī)體系結(jié)構(gòu)是程序員所看到的系統(tǒng)的一些屬性:

概念性的結(jié)構(gòu)和功能上的表現(xiàn),這些屬性既不同于數(shù)據(jù)流和控

制的組織,也不同于邏輯設(shè)計(jì)和物理實(shí)現(xiàn)。

計(jì)算機(jī)體系結(jié)構(gòu)是連接硬件和軟件的一門學(xué)科,它研究的內(nèi)

容不但涉及計(jì)算機(jī)硬件,也涉及計(jì)算機(jī)軟件。

3計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.18086/8088微處理器概述

2.1.18086/8088微處理器概述

1.8。86/8。88微處理器的外形和封裝

Intel1978年推出

3um工藝5V電壓

主頻477M0MHZ

集成度約3萬個(gè)晶體管

DIP(雙列直插)封裝

4計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.18086/8088微處理器概述

2.8086/8088微處理器概述

8。86:Intel系列的16位微處理器,16根數(shù)據(jù)線、2。根地址線,內(nèi)部有16

位的寄存器組,可尋址地址范22O=1MB,8086工作時(shí),只要一^Q5V

電源和一個(gè)時(shí)鐘,時(shí)鐘頻率約為5MHz。

8088:準(zhǔn)16位微處理器,內(nèi)部與8086兼容,只是外部數(shù)據(jù)總線為8位。

它具有包括乘法和除法的歸位運(yùn)算指令,所以能處理16位數(shù)據(jù),還

能處理8位數(shù)據(jù)。8。88有20根地址線,所以可尋址的地址空間達(dá)2%

即1M字節(jié)。

5計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

2.1.28086/8088微處理器編程結(jié)構(gòu)

8。86處理器結(jié)構(gòu)圖1

一?X斗看

cCsS16位

DS

—?ES!J

SSI/O

IP控制

內(nèi)部寄存器電路

123456

EU控制

8位

指令隊(duì)列緩沖器

標(biāo)志

EU(執(zhí)行部件)BIU(總線接口部件)

6計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

bBIU---總線接口部件

1、功能:

0從取指令送到指令隊(duì)列。

2)微處理器執(zhí)行指令時(shí),到指定的位置取操作數(shù),并將其送至要

求的位置單元中。

2、組成:

歷四個(gè)16位段地址寄存器

CS,16位代碼段寄存器;、

8086采用分段技術(shù)實(shí)現(xiàn)對(duì)存儲(chǔ)器

DS,16位數(shù)據(jù)段寄存器;卜的管理,分別用這四個(gè)段寄存器

ES,16位附加段寄存器;來存放當(dāng)前相應(yīng)段的段起始地址,

也稱作基址寄存器。

SS,16位堆棧段寄存器;

7計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

心6位指令指針寄存器滬

IP始終指向當(dāng)前代碼段(CS)所要取出的下一條指令的地址o

每取出一個(gè)字節(jié)指令后,IP自動(dòng)加1。

可以用轉(zhuǎn)移指令、調(diào)用指令及中斷和復(fù)位等改變IP值。

,2。位地址加法器

產(chǎn)生20位地址(物理地址)。

CPU內(nèi)無論是段地址寄存器還是偏移量都是16位的,戈

產(chǎn)生20位地址(物理地址)。

?段地址左移4位+段內(nèi)偏移量”20位實(shí)際物理地址

?段地址X16+段內(nèi)偏移量少20位實(shí)際物理地址

8計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

2.1.28086/8088微處理舞編程結(jié)構(gòu)

例2.1設(shè)代碼段寄存器CS的內(nèi)容為1234H,指令指針I(yè)P的內(nèi)容為

OO22H,即(CS)=1234H,(IP)=OO22H,則訪問代碼段存儲(chǔ)

單元的物理地址計(jì)算如下:

段基值]

.邏輯地址

偏移量-

+)

12362物理地址

9計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

物理地址與邏輯地址

在有地址變換機(jī)構(gòu)的計(jì)算機(jī)系統(tǒng)中,每個(gè)存儲(chǔ)單元可以看成具有兩

種地址:物理地址和邏輯地址

物理地址是信息在存儲(chǔ)器中實(shí)際存放的地址,它是CPU訪問存儲(chǔ)器

時(shí)實(shí)際輸出的地址。例如,8086系統(tǒng)的物理地址是20位,存儲(chǔ)空間

為22。=皿字節(jié)單元,地址范從00000H至!JFFFFFH。CPU和存儲(chǔ)器交換

數(shù)據(jù)時(shí)所使用的就是這樣的物理地址。

邏輯地址是編程時(shí)所使用的地址。或者說程序設(shè)計(jì)時(shí)所涉及的地址

是邏輯地址而不是物理地址。編程時(shí)不需要知道產(chǎn)生的代碼或數(shù)據(jù)

在存儲(chǔ)器中的具體物理位置。這樣可以簡化存儲(chǔ)資源的動(dòng)態(tài)管理。

在實(shí)模式下的軟件結(jié)構(gòu)中,邏輯地址由“段基值”和“偏移量”兩

部分構(gòu)成。

10計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

,6字節(jié)的指令隊(duì)列(ISQ)

Intel8086(8088)設(shè)置有6(4)個(gè)字節(jié)的ISQ,當(dāng)ISQ中出現(xiàn)2(1)

個(gè)字節(jié)空時(shí),CPU中的總線接口單元將自動(dòng)完成指令填充,當(dāng)遇到

分支、跳轉(zhuǎn)、子程序調(diào)用等情況時(shí),ISQ會(huì)自動(dòng)清空,并從新的程

序位置取出指令進(jìn)行填充。

事實(shí)上,8。86就采用了流水線(Pipeline)設(shè)計(jì)技術(shù)。

A堆棧和隊(duì)列

堆棧(Stack):按照后進(jìn)先出(LIFO)的原則組織的存儲(chǔ)器空間。

隊(duì)列(Queue):按照先進(jìn)先出(FIFO)的原則組織的存儲(chǔ)器空間。

11計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

隊(duì)列頭部隊(duì)列尾部

仁81H82H83H84H<=>

堆棧結(jié)構(gòu)示意圖隊(duì)列結(jié)構(gòu)示意圖

/與EU通訊的內(nèi)部寄存器

/總線控制邏輯

12計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

2.1.28086/8088微處理舞編程結(jié)構(gòu)

bEU—-執(zhí)行部件

1、功能:

⑴從指令隊(duì)列中取出指令。

(2)對(duì)指令進(jìn)行譯碼,發(fā)出相應(yīng)相應(yīng)的控制信號(hào)。

(3)接收由總線接口送來的數(shù)據(jù)或發(fā)送數(shù)據(jù)至接口。

(4)進(jìn)行算術(shù)運(yùn)算。15870

2、組成:

AHALAX

/四個(gè)通用寄存器

BHBLBX

AX,BX,CX,DX-------------都是16位的

CHCLCX

也可做兩個(gè)8位寄存器使用。

DHDLDX

13計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

數(shù)據(jù)寄存器用于存放操作數(shù)及中間結(jié)果,AX和AL可用作累加操作,因

此又可稱作累加器。

/四個(gè)專用寄存器

SP——堆棧指針寄存器

BP——基址指針寄存器

DI——目的變址寄存器

SI——源變址寄存器

地址指針寄存器用于存放操作數(shù)的地址,編程時(shí)通過修改寄存器的

內(nèi)容達(dá)到修改地址的目的。

心6位算數(shù)邏輯單元

完成8位或者16位二進(jìn)制算術(shù)和邏輯運(yùn)算,計(jì)算偏移量。

14計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

/數(shù)據(jù)暫存寄存器

協(xié)助ALU完成運(yùn)算,暫存參加運(yùn)算的數(shù)據(jù)。

,EU控制電路

從總線接口的指令隊(duì)列取出指令操作碼,通過譯碼電路分析,

發(fā)出相應(yīng)的控制命令,控制ALU數(shù)據(jù)流向。

,16位標(biāo)志寄存器(FLAG)

6個(gè)狀態(tài)標(biāo)志,3個(gè)控制標(biāo)志IF、DF、TF,剩下7位保留。

15計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令執(zhí)行過程

.1.28086/8088微處理卷編程結(jié)構(gòu)

1514131211109876543210

OFDFIFTFSFZFAFPFCF

進(jìn)

號(hào)

標(biāo)

進(jìn)

標(biāo)

標(biāo)

標(biāo)

標(biāo)

標(biāo)

溢1-結(jié)果為0

1-有進(jìn)、借位

出0-結(jié)果不為0

0-無進(jìn)、借位

標(biāo)*

許1-低4位向高4位有進(jìn)、借位

0-低4位向高4位無進(jìn)、借位1-低8位有偶數(shù)個(gè)1

。-低8位有奇數(shù)個(gè)1

16計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.18086/8088微處理器編程結(jié)構(gòu)及指令抗行過程

.1.38086/8088微處理器程序執(zhí)行過程

2.1.38086/8088微處理器程序執(zhí)行過程

①指令隊(duì)列中出現(xiàn)兩個(gè)字節(jié)為空時(shí)自動(dòng)按CS值和IP值組成20位實(shí)際物

理地址到存儲(chǔ)器中取指令,一次取兩個(gè)字節(jié)指令存放到指令隊(duì)列中。

②EU從BIU指令隊(duì)列中讀取指令。

③由EU控制電路對(duì)指令進(jìn)行譯碼分析,指出操作性質(zhì)及操作對(duì)象。

④EU執(zhí)行指令,如果執(zhí)行指令時(shí)必需訪問存儲(chǔ)器或者I/O端口,則在

EU中計(jì)算出操作數(shù)的16位地址偏移量送給BIU,由BIU的X形成20位物

理地址。

⑤BIU根據(jù)EU請(qǐng)求,將操作數(shù)的20位物理地址傳遞給存儲(chǔ)器。

⑥BIU取來操作數(shù)經(jīng)總線控制邏輯傳送到內(nèi)部EU數(shù)據(jù)總線。

⑦EU將取來的操作數(shù)從內(nèi)部總線送入ALU,進(jìn)行指令指定的操作。⑧

EU運(yùn)算出的結(jié)果,經(jīng)內(nèi)部總線送到指定的位置,若需要傳送給存儲(chǔ)

器或者I/O端口,則由EU請(qǐng)求BIU產(chǎn)生20位實(shí)際目標(biāo)地址,將結(jié)果寫入

存儲(chǔ)器或者I/。接口。

17計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.18086/8088微處理器編程結(jié)構(gòu)及指令我行過程

.1.38。86/8。88微處理器程序執(zhí)行過程

為什么要采用存儲(chǔ)器“分段”技術(shù)?

8O86CPU可直接尋址的地址空間為2?。=1M字節(jié)單元。CPU需輸出

2。位地址信息才能實(shí)現(xiàn)對(duì)1M字節(jié)單元存儲(chǔ)空間的尋址。但8。86

CPU中所使用的寄存器均是16位的,內(nèi)部ALU也只能進(jìn)行16位運(yùn)

算,其尋址范能局限在”=65536(64K)字節(jié)單元。為了實(shí)現(xiàn)對(duì)

加字節(jié)單元的尋址,8。86系統(tǒng)采用了存儲(chǔ)器分段技術(shù)。

具體做法是:將IM字節(jié)的存儲(chǔ)空間分成許多邏輯段,每段最長64K

字節(jié)單元,可以用16位地址碼進(jìn)行尋址。每個(gè)邏輯段在實(shí)際存儲(chǔ)空

間中的位置是可以浮動(dòng)的,其起始地址可由段寄存器的內(nèi)容來確定.

邏輯段在物理存儲(chǔ)器中的位置如圖所示。

18計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存1諸器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

2.2.1存儲(chǔ)器分段技術(shù)

邏輯段1起點(diǎn)

邏輯段2起點(diǎn)

邏輯段3起點(diǎn)

邏輯段4起點(diǎn)

19計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

各個(gè)邏輯段在實(shí)際的存儲(chǔ)空間中可以完全分開,也可以部分重疊,

甚至完全重疊。

段的起始地址的計(jì)算和分配通常是由操作系統(tǒng)完成的,并不需要

普通用戶參與。

“段基值”是段的起始地址。

“偏移量”(offset)也稱偏移地址,它是所訪問的存儲(chǔ)單元距段的起

始地址之間的字節(jié)距離。

給定段基值和偏移量,就可以在存儲(chǔ)器中尋址所訪問的存儲(chǔ)單元。

20計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

+需注意的是,每個(gè)存儲(chǔ)單元有惟一的物理地址,但它可以由不同

的“段基值”和“偏移量”轉(zhuǎn)換而來,這只要把段基值和偏移量改

變?yōu)?/p>

相應(yīng)的值即可。也就是說,同一個(gè)物理地址可以由不同的邏輯地址

來構(gòu)成?;蛘哒f,同一個(gè)物理地址與多個(gè)邏輯地址相對(duì)應(yīng)。例如,

段基值為0020H,偏移量為0013H,構(gòu)成的物理地址為OO213H;然

而,若段基值改變?yōu)?。?1H,配以新的偏移量0003H,其物理地址

仍然是OO213H,如圖示。

21計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

物理地址OO213H

OO212H

段基值00211H

(0021H)00210H

0020FH

0020EH

0020DH

0020CH

0020BH

0020AH

邏輯地址OO2O9H

OO2O8H

OO2O7H

OO2O6H

OO2O5H

00204H

OO2O3H

OO2O2H

段基值00201H

(0020H)00200H

22計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

下圖進(jìn)一步說明了這種“段加偏移”的尋址機(jī)制如何選擇所訪問

的存儲(chǔ)單元的情形。這里段寄存器的內(nèi)容為1000H,偏移地址為

2000Ho圖中顯示了一個(gè)64KB長的存儲(chǔ)器段,該段起始于10000H,結(jié)

束于1FFFFH。

圖中也表示了如何通過段基值(段寄存器的內(nèi)容)和偏移量找到存

儲(chǔ)器中被選單元的情形。偏移量(offset)也稱偏移地址,正如圖中所

示,它是自段的起始位置到所選存儲(chǔ)單元之間的距離(或跨度)o

23計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

存儲(chǔ)器

一個(gè)邏輯段

(64KB)

24計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

上圖中段的起始地址I0000H是由段寄存器內(nèi)容1000H左移4位低位補(bǔ)

0(或在1000H后邊添加0H)而得到的。段的結(jié)束地址1FFFFH是由段起始

地址10000H與段長度FFFFH(64K)相加之結(jié)果。

還需指出的是,在這種“段加偏移”的尋址機(jī)制中,由于是將段寄

存器的內(nèi)容左移4位(相當(dāng)于乘以十進(jìn)制數(shù)⑹來作為段的起始地址的,

所以各個(gè)邏輯段只能起始于存儲(chǔ)器中16字節(jié)整數(shù)倍的邊界。這樣可

以簡化CPU生成物理地址的操作。通常稱這16字節(jié)的小存儲(chǔ)區(qū)域?yàn)?/p>

“小段”、“分段”或"節(jié)"(paragraph)。

25計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

在“段加偏移”的尋址機(jī)制中,微處理器有一套用于定義各種尋址

式中段寄存器和偏移地址寄存器的組合規(guī)則。

段寄存器偏移地址寄存器主要用途

CSIP指令地址

SSSP或BP堆棧地址

DSBX>DI、Sl>8位或16位數(shù)數(shù)據(jù)地址

ES串操作指令的DI串操作目的地址

26計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.1存儲(chǔ)器分段技術(shù)

段寄存器(CS、DS、ES、SS)與地址指針寄存器(SP、BP、SKDI)默

認(rèn)是隱含配對(duì)使用,但也允許段超越。

存儲(chǔ)器操作類型隱含段超越段偏移量

取指令CS無IP

堆棧SS無SP

數(shù)據(jù)變量DSCS,ES,SS有效地址

源串變量DSCS,ES,SSSI

目的串變量ES無DI

基址BP指針SSCS,ES,DSBP

27計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.2堆棧

2.2.2堆棧

堆棧定義:堆棧是存儲(chǔ)器中的一個(gè)特定的存儲(chǔ)區(qū),它的一端(棧底)

是固定的,另一端(棧頂)是浮動(dòng)的,信息的存入和取出都只能在

浮動(dòng)的一端進(jìn)行,并且遵循后進(jìn)先出(LastinFirstOut)的原則。

堆棧的用途:

堆棧主要用來暫時(shí)保存程序運(yùn)行時(shí)的一些地址或數(shù)據(jù)信息。

例如,當(dāng)CPU執(zhí)行調(diào)用(CaQ指令時(shí),用堆棧保存程序的返回地址

(亦稱斷點(diǎn)地址);在中斷響應(yīng)及中斷處理時(shí),通過堆?!氨4娆F(xiàn)場”

和“恢復(fù)現(xiàn)場”;有時(shí)也利用堆棧為子程序傳遞參數(shù)。

28計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)聚分度技術(shù)

.2.2堆棧

/堆棧的結(jié)構(gòu):

堆棧是在存儲(chǔ)器中實(shí)現(xiàn)的,并由堆棧段寄存器SS和堆棧指針寄

存器SP來定位。SS寄存器中存放的是堆棧段的段基值,它確定了

堆棧段的起始位置。SP寄存器中存放的是堆棧操作單元的偏移量,

SP總是指向棧頂,如下圖所示。

值得注意的是,這種結(jié)構(gòu)的堆棧通常是所謂“向下生長的”

,即棧底在堆棧的高地址端,當(dāng)堆棧為空時(shí)SP就指向棧底。因此,

堆棧段的段基址(由SS寄存器確定)并不是棧底。

29計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

22堆棧

低地址

存儲(chǔ)器

(字寬)

SS——>SS—SS―

sp—?繆78H棧頂78H

56H56H

34HSP—棧頂

12H12H

SP------>伐,氐銃/氐在/氐

高地址(棧頂

(a)空棧堆(b)壓入:PUSHAX;AX=1234H(C)彈出:POPCX;

PUSHBX;BX=5678H

30計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.28086/8088存儲(chǔ)器分段技術(shù)

.2.2堆棧

/堆棧的操作特點(diǎn):

8086下堆棧為16位寬(字寬),堆棧操作指令(PUSH指令或POP指令)對(duì)堆

棧的操作總是以字為單位進(jìn)行。即要壓棧(執(zhí)行PUSH指令)時(shí),先將SP的值減

2,然后將16位的信息壓入新的棧頂;要彈棧(執(zhí)行POP指令)時(shí),先從當(dāng)前棧

頂取出16位的信息,然后將SP的值加2??筛爬椋骸皦簵r(shí),先修改棧指針

后壓入”,“彈棧時(shí),先彈出后修改棧指針”。

例2.2若寄存器AX,BX,CX,DX的內(nèi)容分別為10,20,30,40時(shí),依次執(zhí)行

PUSHAX,PUSHBX,POPCX,POPDX,PUSHCX,PUSHDX,POPAX,POPBX

后,寄存器AX和BX的內(nèi)容分別為什么?

31計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

GND140vcc》20根地址線/16根數(shù)據(jù)線分時(shí)

AD142.AD15

AD133.A16/S3復(fù)用,先傳地址后傳數(shù)據(jù)。

AD124.37A17/S4

AD115.36A18/S5A根據(jù)所連的存儲(chǔ)器和外設(shè)規(guī)

6.35A1Q/CZ

AD10Aiy/oc

Ano7.DUC/Q7模的不同,使它們可以在兩種

AD88.m/iuv

9.32nn模式下工作:

ADRL/

AD610.31HOLD

11.30系統(tǒng)的最小模式:

/XUJ迎ADC/CTI

WR_

13■A/f/rTT只有一個(gè)8086/8088微處理器。

AUUJ1V1/1U

A.D214.DT/R.奸dl系統(tǒng)的最大模式:

A15.26npxr

m5JL/EIN.on

ADfALEV有兩個(gè)或兩個(gè)以上的CPU,—

17■24

NM]INTA1

p18.23n____TUQT

INTK1Ed1個(gè)為主處理器8086/8088,另一

pikr〉19■22Y

LLJSbREAD

20.21

GNI)個(gè)為協(xié)處理器8087/8089。

別、模式最大彳就弋

fl32計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

L3.18086/8088做處醵曲信號(hào)引H和工作模式

2.3.18086/8088微處理器的信號(hào)引腳和工作模式

。幾個(gè)術(shù)語:

時(shí)鐘周期(T狀態(tài)):微處理器處理動(dòng)作的最小時(shí)間單位,也是微

處理器的基本時(shí)間計(jì)量單位。

指令周期:執(zhí)行一條指令所需要的時(shí)間。

總線周期(機(jī)器周期):微處理器通過總線與存儲(chǔ)器或"。接口進(jìn)行

一次數(shù)據(jù)傳輸所需的時(shí)間。一個(gè)最基本的總線周期由4個(gè)時(shí)鐘周期

(T狀態(tài))組成。

總線周我—

IT1IT2T3ITwIT4I

33計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

2.3.18086m薄處理飄牖號(hào)引廊工㈱式

年最小模式下引腳信號(hào)和功能

AD0-AD15:地址數(shù)據(jù)復(fù)用總線

雙向,三態(tài),高電平有效。分時(shí)傳送16位數(shù)據(jù)和地址的低16位,由

ALE鎖存地址信息。

A16/S3?A19/S6:地址/狀態(tài)引腳

輸出,三態(tài),高電平有效。分時(shí)輸出地址的高4位或微處理器當(dāng)前

的狀態(tài),地址信息由ALE鎖存。

BHE/S7:高8位數(shù)據(jù)總線允許/狀態(tài)引腳

輸出,三態(tài),低電平有效。靛為低電平表示高8位數(shù)據(jù)線D15?

D8上數(shù)據(jù)有效,BGiALE鎖存。BHE標(biāo))可用于分別選中奇偶地

址,并控制讀/寫一個(gè)字或者字節(jié)O

34計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

L3.18086/8088微處理等的信號(hào)引"利工作模式

ALE:地址鎖存允許信號(hào)

輸出、高電平有效。表示總線上的信息是地址信息。

M/I(T存儲(chǔ)器/輸入輸出口控制信號(hào)

輸出,三態(tài)。高電平表示當(dāng)前的信息是存儲(chǔ)器地址信息;低電平表

示當(dāng)前的信息是I/O口地址信息。

RD1讀信號(hào)

輸出,三態(tài),低電平有效。表示CPU正在從存儲(chǔ)器或I/O口讀入數(shù)據(jù)。

而寫信號(hào)

輸出,三態(tài),低電平有效。表示CPU正向存儲(chǔ)器或I/O口輸出數(shù)據(jù)。

35計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

L3.18086/8088微處理等的信號(hào)引"利工作模式

DT/R「數(shù)據(jù)收發(fā)信號(hào)

輸出,三態(tài),高電平表示CPU正在發(fā)送數(shù)據(jù);低電平表示CPU接收

數(shù)據(jù)。

而7數(shù)據(jù)允許信號(hào)

輸出,三態(tài),低電平有效。表示CPU正在進(jìn)行數(shù)據(jù)收發(fā)操作。

INTR::可屏蔽中斷請(qǐng)求信號(hào)

輸入,高電平有效。表示外部向CPU提出中斷申請(qǐng)。

INTA:中斷響應(yīng)信號(hào)

輸出,低電平有效。表示外設(shè)的中斷申請(qǐng)得到響應(yīng)。

NMI:非屏蔽中斷申請(qǐng)信號(hào)

輸入,上升沿有效。表示外部有非屏蔽中斷申請(qǐng)。非屏蔽中斷不受

軟件控制,CPU必須響應(yīng)。

、?t——at.ttIIMBt、

36vr舁不L原埋NU1U年/月NNtlVWSb分

2.38086/8088微處理器

L3.18086/8088微處理等的信號(hào)引"利工作模式

HOLD:總線保持請(qǐng)求信號(hào)

輸入,高電平有效,表示其他模塊(如DMAC)申請(qǐng)占用總線。

HLDA:總線保持響應(yīng)信號(hào)

輸出,高電平有效,表示CPU已讓出總線。

READY:準(zhǔn)備好信號(hào)

輸入,高電平有效,高電平表示存儲(chǔ)器或I/??谝褱?zhǔn)備好接收數(shù)

據(jù),外部使READY為低電平CPU要插入等待周期。

TEST:測(cè)試信號(hào)

輸入,低電平有效,有效時(shí)CPU退出WAIT指令。

37計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

L3.18086/8088微處理等的信號(hào)引"利工作模式

RESET:復(fù)位信號(hào)

輸入,高電平有效,至少保持4個(gè)時(shí)鐘周期的高電平。復(fù)位時(shí)CPU

停止現(xiàn)行操作,并開始進(jìn)行初始化:標(biāo)志寄存器FLAG,IP,DS,

SS,ES及指令隊(duì)列均清零;CS設(shè)置為FFFFH,復(fù)位結(jié)束時(shí)CPU從

FFFFOH開始執(zhí)行程序。

MN/M才最小/最大模式控制信號(hào)

輸入,高電平,微處理器工作在最小模式,低電平,微處理器

工作在最大模式。

CLK:時(shí)鐘信號(hào)

8086時(shí)鐘頻率約5MHZ、T=200ns;單相,占空比為1/3。

VCC,GND:電源及地

單+5V,滿足TTL規(guī)范

38計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

U.18086/8088微處螂楠號(hào)引師工作模式

,最大模式下引腳信號(hào)和功能

最大模式下8。86有8個(gè)控制信號(hào)被重

新定義,此時(shí)系統(tǒng)中可接入?yún)f(xié)處理

器8087或8089。

S2,S1,S0:總線周期狀態(tài)信號(hào)輸出

三個(gè)信號(hào)組合產(chǎn)生系統(tǒng)控制信號(hào),由

總線控制器8288譯碼。

39計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.38086/8088微處理器

L3.18086/8088微處理等的信號(hào)引"利工作模式

LOCK:總線封鎖信號(hào)

三態(tài),輸出,低電平有效。有效時(shí)禁止其他部件占用總線。

福/G手Q1而1:總線請(qǐng)求/允許信號(hào)

雙向,低電平有效。有兩個(gè)總線請(qǐng)求與總線響應(yīng)信號(hào),支持多處理

器工作。

QS1,QS0:指令隊(duì)列狀態(tài)信號(hào)

輸出,兩個(gè)信號(hào)組合指示指令隊(duì)列狀態(tài)。

QS1QS2含義

00無操作

01將指令首字節(jié)送入指令隊(duì)列

10隊(duì)列為空

11將指令其余字節(jié)送入指令隊(duì)列

40計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.38086/8088微處理器

,3.18086/808薄處理署的信號(hào)引序和工作模式

*8086與8088在引腳上的區(qū)別

8086微處理器8088微處理器

16位AB復(fù)用8位AB復(fù)用

BHE高八位數(shù)據(jù)允許SS0/高電平

M/IO引腳選擇存儲(chǔ)器/IO口M/IO引腳選擇存儲(chǔ)器/IO口

41計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理患

32S086/S088系統(tǒng)中存物的輔和I/O的管理

2.3.28086/8088系統(tǒng)中存儲(chǔ)器的結(jié)構(gòu)和I/O的管理

1>存儲(chǔ)器的地址和內(nèi)容

存儲(chǔ)器通常以字節(jié)編址,一個(gè)字節(jié)單元有一個(gè)唯一的一個(gè)物理地

址。地址通常以16進(jìn)制數(shù)表示。如20位地址總線,其地址范為

00000?FFFFFH。

一個(gè)存儲(chǔ)單元中存放的信息稱為該單元的內(nèi)容。

若存放的信息是字節(jié),則按順序存放

若存放的信息是字,則將字的低位字節(jié)存放在低地址,高位字節(jié)

存放在高地址,以低地址作為該字的地址。

若存放的信息是雙字,則將雙字的低位字存放在低地址,高位字

存放在高地址,以低地址作為該雙字的地址。

42計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2、存儲(chǔ)器的組織

8086CPU有20根地址線,它的尋址空間為220=1M字節(jié),這1M字節(jié)

的存儲(chǔ)空間按照00000H-FFFFFH束編址。

43計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

328086/8088系統(tǒng)中存儲(chǔ)著的窗杓釉/0的管理

①8086系統(tǒng)中,1M字節(jié)分為2個(gè)512K的存儲(chǔ)體,一個(gè)存儲(chǔ)體中的

地址都是偶數(shù)地址,叫偶體,另一個(gè)都是奇數(shù)地址,叫做奇體。

44計(jì)算機(jī)原理2010年7月28日9時(shí)36分

2.38086/8088微處理器

328086/8088系統(tǒng)中存儲(chǔ)著的窗杓釉/0的管理

②訪問一個(gè)存儲(chǔ)體,只需19位地址,剩下一位用來區(qū)分訪問那個(gè)存

儲(chǔ)體。AO=O為偶存儲(chǔ)體,AO=1為奇存儲(chǔ)體。

③證管號(hào):由該信號(hào)和AO控制讀寫那個(gè)存儲(chǔ)體。

BHEA0操作(讀或?qū)懀?/p>

00同時(shí)訪問兩個(gè)存儲(chǔ)體,讀寫一個(gè)字

01只訪問奇地址存儲(chǔ)體,讀寫高字節(jié)

10只訪問偶地址存儲(chǔ)體,讀寫低字節(jié)

11無操作

45計(jì)算機(jī)原理2010年7月28日9時(shí)37分

2.38086/8088微處理器

1.3.28086/8088系統(tǒng)中存儲(chǔ)署的窗構(gòu)和I/O的管理

MEH

1

何敬的址

M-的牢'二理二I陽敵地址

奇蓑地址-產(chǎn)II奇景地址

讀寓教地址中的手

H(c)

KEN

鵬敬地虬

氫咕的字爺_--

班法的第二春奇領(lǐng)地必

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論