微型計(jì)算機(jī)原理及應(yīng)用宋廷強(qiáng)_第1頁(yè)
微型計(jì)算機(jī)原理及應(yīng)用宋廷強(qiáng)_第2頁(yè)
微型計(jì)算機(jī)原理及應(yīng)用宋廷強(qiáng)_第3頁(yè)
微型計(jì)算機(jī)原理及應(yīng)用宋廷強(qiáng)_第4頁(yè)
微型計(jì)算機(jī)原理及應(yīng)用宋廷強(qiáng)_第5頁(yè)
已閱讀5頁(yè),還剩111頁(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)介

第4章16位微處理器

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

本章教學(xué)目的

本章以16位微處理器8086/8088為中心,講解微處理

器的內(nèi)部結(jié)構(gòu)、地址形成、內(nèi)部寄存器、工作模式、總

線時(shí)序、總線操作等主要內(nèi)容

使學(xué)生在掌握8086CPU的基礎(chǔ)上,進(jìn)一步理解微處理

器的工作原理以及與外部打交道的過(guò)程,為后面學(xué)習(xí)接

口技術(shù)做準(zhǔn)備。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

本章學(xué)習(xí)要求

,掌握

□掌握CPU的內(nèi)部邏輯結(jié)構(gòu)及外部引腳功能,存儲(chǔ)器結(jié)構(gòu),最小

工作模式及系統(tǒng)配置,CPU的典型操作和時(shí)序。

□CPU的內(nèi)部邏輯結(jié)構(gòu)。

□CPU的主要寄存器。標(biāo)志寄存器各位的功能定義。

□CPU的外部引腳類型,主要引腳功能。微機(jī)中存儲(chǔ)器組成結(jié)構(gòu),

存儲(chǔ)器的分段,邏輯地址與物理地址概念,存儲(chǔ)器堆棧的結(jié)構(gòu)

特點(diǎn)。

□CPU與外圍芯片的連接及典型配置情況,地址鎖存器(8282)

及雙向總線收發(fā)器(8286)、時(shí)鐘發(fā)生器(8284)的功能特

性。

□時(shí)鐘周期、總線周期及指令周期的定義,CPU讀、寫操作時(shí)序。

□8086CPU的中斷的分類、中斷類型碼、中斷向量的定義、硬

件中斷的響應(yīng)過(guò)禾早朋果你喜歡它,那么享受它。不喜

I十十切山⑴二口年王漱,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變__________s

2010-10-24觀念,你就能接受它喜歡就收藏二■一/

2.理解

□最大工作模式;8286總線收發(fā)器;8282地

址鎖存器。

3.了解

□最大工作模式的配置,最大工作模式的總線

操作。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏4

本章主要外語(yǔ)詞匯

Bill:BusInterfaceUnit,總線接口部件

EU:ExecutionUnit,執(zhí)行部件

Stack:堆棧

NMI:Non-maskableInterupt,非屏蔽中斷

INTR:InteruptRequest,可屏蔽中斷請(qǐng)求

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

主要內(nèi)容

?16位微處理器概述

?8086/8088CPU的結(jié)構(gòu)

?8086/8088CPU的弓I腳信號(hào)和工作模式

?8086/8088的主要操作功能

2010-10-24如果你喜歡它,那么享受它。不喜6

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

.4.116位微處理器概述

^rl^billl(microprocessor)

■微處理器(microprocessor)是微型計(jì)算機(jī)的運(yùn)算及控制部件,也稱

中央處理單元(CPU)。它本身不構(gòu)成獨(dú)立的工作系統(tǒng),因而它也

不能獨(dú)立地執(zhí)行程序。

■CPU功能:指令控制;操作控制;時(shí)序控制;數(shù)據(jù)加工

■8086概況:

■1979年推出,第一代超大規(guī)模集成電路(VLSI)微處理器,采用

HMOS工藝制造,內(nèi)含2.9萬(wàn)晶體管

■數(shù)據(jù)總線寬度16位,地址總線寬度20位;可直接尋址空間220=1M

字節(jié)單元;16位數(shù)據(jù)總線與地址總線復(fù)用

■采用單一的+5V電源,一相時(shí)鐘,時(shí)鐘頻率為

5MHz(8086),10MHz(8086-1),8MHz(8086-2)

?那耐旨令,指令長(zhǎng)度my旨越助隔間為?!皍s(平均

Ubus;歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏7

4.28086/8088CPU的結(jié)構(gòu)

8086與8088的比較

-8086為16位機(jī)(數(shù)據(jù)總線16位)

-8088為準(zhǔn)工6位機(jī),數(shù)據(jù)總線內(nèi)部16位,外部8位

-8086是16位數(shù)據(jù)總線,而8088是8位數(shù)據(jù)總線,在

處理一個(gè)16位數(shù)據(jù)字時(shí),8088需要兩步操作而8086

只需要一步。

8086和8088CPU的內(nèi)部都采用16位字進(jìn)行操作及

存儲(chǔ)器尋址,兩者的軟件完全兼容,程序的執(zhí)行也

完全相同。然而,由于8088要比8086有較多的外部

存取操作,所以,對(duì)相同的程序,它將執(zhí)行得較慢。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

8086的內(nèi)部結(jié)構(gòu)

AHAL1、EU(ExecutionUnit

1)、功能:負(fù)責(zé)指令執(zhí)

行。

2、總線接口單元BIU接受從總線接口單元的指令隊(duì)列

(BusInterfaceUnit)中取來(lái)的指令代碼,其譯碼和向

1)功能:負(fù)責(zé)與M、I/O端EU內(nèi)各有關(guān)部分發(fā)出時(shí)序命令

口人送數(shù)據(jù)。具體講:

信號(hào),協(xié)調(diào)執(zhí)行指令規(guī)定的操作。外

總線接口部件要從內(nèi)存取部

指令送到指令隊(duì)列;線

CPU執(zhí)行指令時(shí),要配合

執(zhí)行部件從指定的內(nèi)存單元或

者外設(shè)端口中取數(shù)據(jù),將數(shù)據(jù)

傳送給執(zhí)行部件EU;

或把執(zhí)行部件的操作結(jié)果

傳給指定的M或I/O口。

2010-10-24

歡,那么避開它。避不開,那么改

421執(zhí)行部件

1執(zhí)行部件EU

■負(fù)責(zé)指令的執(zhí)行,它從指令流隊(duì)列去除指令,然后分析和執(zhí)行指

令。同時(shí)利用內(nèi)部的寄存器和ALU對(duì)數(shù)據(jù)進(jìn)行所需的處理,還要

負(fù)責(zé)計(jì)算操作數(shù)的16位偏移地址。

?EU的組成

■4個(gè)通用寄存器,即AX,BX,CX,DX;

-4個(gè)專用寄存器,

■SI(SourceIndex):源變址寄存器

■DI(DestinationIndex):目的變址寄存器

■BP(BasePointer):基址指針

■SP(StackPoint):堆棧指針

■標(biāo)志寄存器(FR),微處理器狀態(tài)字(ProcessorStateWord,PSW)

■算術(shù)邏輯部件(ALU黑你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏10

422總線接口部件Bill

?總線接口部件BIU的功能

根據(jù)EU計(jì)算出的16位偏移地址及16位段地址計(jì)算出20位物理

地址,并根據(jù)EU請(qǐng)求采用計(jì)算出的20位物理地址讀/寫寄存器,

也可根據(jù)EU請(qǐng)求讀/寫I/O設(shè)備,完成與存儲(chǔ)器、I/O端口之

間傳送數(shù)據(jù)。

?主要組成'4個(gè)段地址寄存器,即

2?CS—16位代碼段寄存器;

?DS—16位數(shù)據(jù)段寄存器;

-ES—16位附加段寄存器;

■SS—16位堆棧段寄存器。

■16位指令指針寄存器IP。

■20位的地址加法器。

■6字節(jié)的楷令撅筋U那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏11

總線接口部件BIU

?指令隊(duì)列

■8086的指令隊(duì)列為6個(gè)字節(jié),8088的指令隊(duì)列為4個(gè)字節(jié)。不管

是8086還是8088,都會(huì)在執(zhí)行指令的同時(shí),從內(nèi)存中取下一條

指令或下幾條指令,取來(lái)的指令就放在指令隊(duì)列中。

?地址加法器用

■地址加法器用來(lái)產(chǎn)生20位地址。8086可用20位地址尋址:LM字

節(jié)的內(nèi)存空間,但8086內(nèi)部所有的寄存器都是16位的,所以需

要由一個(gè)附加的機(jī)構(gòu)來(lái)根據(jù)16位寄存器提供的信息計(jì)算出20位

的物理地址,這個(gè)機(jī)構(gòu)就是20位的地址加法器。

-假設(shè)CS=0FE00H,IP=0400H,止匕時(shí)指令的物理地址為0FE400H。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏12

EU部件與Bill部件

?EU和BIU之間是通過(guò)指令流隊(duì)列相互聯(lián)系的

?EU和BIU的聯(lián)系上的不同步性:

-指令隊(duì)列空余時(shí)的填充

■在執(zhí)行指令的過(guò)程中,如果必須訪問存儲(chǔ)器或者輸入/輸出

設(shè)備,那么,執(zhí)行部件就會(huì)請(qǐng)求總線接口部件,進(jìn)入總線周

期,完成訪問內(nèi)存或者輸入/輸出端口的操作;

-如果此時(shí)總線接口部件正好處于空閑狀態(tài),那么,會(huì)立即響

應(yīng)執(zhí)行部件的總線請(qǐng)求。

-當(dāng)指令隊(duì)列已滿,而且執(zhí)行部件又沒有總線訪問時(shí),總線接

口部件便進(jìn)入空閑狀態(tài)。

■在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),指令隊(duì)列中的原

有內(nèi)容被自動(dòng)消除,總線接口部件會(huì)接著往指令隊(duì)列中裝入

另一個(gè)程序段中的指令。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏13

8086的寄存器結(jié)構(gòu)

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

地址指針寄存器器

變址寄存器

控制寄存器

,那么享受良價(jià)每器

它。避不開,那么改

,那么接匣它。改變

2010-10-24觀念,你就能接受它喜歡就收藏14

1、通用寄存器

(1)數(shù)據(jù)寄存器AX、BX、CX、DX作為通用寄存器。

?功能用來(lái)暫存計(jì)算過(guò)程中所用到的操作數(shù),結(jié)果或其它信息。

?訪問形式:可以按字(16位)或字節(jié)(8位)形式訪問

高8位記作:AH、BH、CH、DHo

低8位記作:AL、BL、CL、DLO

?AX累加器

?功能它是算術(shù)運(yùn)算的主要寄存器,

所有I/O指令都使用這一寄存器與外部設(shè)備交換數(shù)據(jù)

?實(shí)例:MOVBX,AX

INAL,20H

2010-10-24如果你喜歡它,那么享受它。不喜15

歡,那么避開它。避不開,那么改

赤方M不了那4粒國(guó)亡M亦

?BX-基址寄存器

?功能:在計(jì)算內(nèi)存儲(chǔ)器地址時(shí),經(jīng)常用來(lái)存放基址。

?實(shí)例:MOVAX,[BX+03H]

?CX—可以作計(jì)數(shù)寄存器使用

?功能:在循環(huán)LOOP指令和串處理指令中用作隱含計(jì)數(shù)器。

?實(shí)例:MOVCX,8

AGAIN:.......

LOOPAGAIN;CX-1f(CX),結(jié)果wO轉(zhuǎn)AGAIN

?DX可以作為數(shù)據(jù)寄存器使用。

?一般在雙字長(zhǎng)乘除法運(yùn)算時(shí),把DX和AX組合在一起存放一個(gè)雙字

長(zhǎng)(32位)數(shù),DX用來(lái)存放高16位

?對(duì)某些I/O操作DX可用來(lái)存放I/O的端口地址(口地址>256)

2010-10-24如果你喜歡它,那么享受它。不喜16

歡,那么避開它。避不開,那么改

亦令M不了現(xiàn)力熔西eM■赤

(2)地址指針與變址寄存器:SP、BP、SI>DI

■以字為單位在運(yùn)算過(guò)程中存放操作數(shù)

■經(jīng)常用以在段內(nèi)尋址時(shí)提供偏移地址,本身不能形成獨(dú)立

的地址碼。

親SP(stackpointer-------堆棧指針寄存器

>用來(lái)指示當(dāng)前堆棧棧頂?shù)钠频刂?必須與SS段寄存器聯(lián)合使

用確定實(shí)際地址。

<BP(basepointer)------基址指針寄存器

A可以與SS寄存器聯(lián)合使用來(lái)確定堆棧段中某一存儲(chǔ)器單元地址,

在某些間接尋址中,用來(lái)存放堆棧段內(nèi)偏移地址。

2010-10-24如果你喜歡它,那么享受它。不喜17

歡,那么避開它。避不開,那么改

亦令M不7揶力熔思田M亦

補(bǔ)充:堆棧(STACK)

■堆棧:是按后進(jìn)先出原則組織的一片存儲(chǔ)區(qū)域,

用來(lái)暫存一批需要回避的數(shù)據(jù)或地址。

■用途:暫存數(shù)據(jù)、斷點(diǎn)信息或傳送信息

■存取原則:“后進(jìn)先出”

■堆棧段的最大深度:64KB

2010-10-24如果你喜歡它,那么享受它。不喜18

歡,那么避開它。避不開,那么改

亦在能不了那乃卑國(guó)立加亦

?堆棧的構(gòu)造

1.棧底:一端固定,具有最大地址的

單元(數(shù)據(jù)由此向上堆積)

[ssl-

2.棧頂:

一端浮動(dòng),指向最后被壓入堆棧

的數(shù)據(jù)所在存儲(chǔ)單元(棧頂?shù)奈划嬕欢?/p>

置隨堆棧中存放數(shù)據(jù)多少而變化)棧

3.堆棧指針:To

XX

用來(lái)指示當(dāng)前棧頂?shù)奈恢?。(?/p>

入的數(shù)據(jù)放入哪個(gè)單元或從那個(gè)

單元彈出數(shù)據(jù)均由SP決定Botto)

初始/

SP

9

2010-10-24如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

?8086堆棧的組織

?堆棧段:由SS存放堆棧段段基值以決定其起始地址

?堆棧段的長(zhǎng)度:

該片存儲(chǔ)區(qū)域所包含存儲(chǔ)單元數(shù),其值有由初

始時(shí)SP的值決定(指向棧底+1單元)

-數(shù)據(jù)在堆棧段內(nèi)的存放

堆棧是按字組織的,數(shù)據(jù)的存取均為2字節(jié)操作

?堆棧區(qū)域的擴(kuò)展:

如64KB的堆棧段不能滿足需要,可01954H

通過(guò)修改SS來(lái)改變當(dāng)前的堆棧段,01955H

使之指向另一片存儲(chǔ)區(qū)域,同時(shí)SP

重新賦值

2010-10-24如果你喜歡它,那么享受它。不喜20

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳匹令M赤

-堆棧的三種基本操作

1、設(shè)置堆棧

SS、SP賦值(段的起始位置及長(zhǎng)度)

2、進(jìn)棧把數(shù)據(jù)壓入堆棧,在棧頂進(jìn)行

SP-2fsp;棧頂向上浮動(dòng)

數(shù)據(jù)一(SS:SP)

3、出棧從棧頂取出數(shù)據(jù)送入R/M

(SS:SP)-R/M

SP+2-SP數(shù)據(jù);棧頂向下回落

2010-10-24如果你喜歡它,那么享受它。不喜21

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

?SP和BP在使用上有區(qū)別:

?執(zhí)行堆棧指令PUSH和POP時(shí),指令地址是由SP給出當(dāng)

前棧頂?shù)钠频刂罚蕦P稱為堆棧指針寄存器。

?BP則是用來(lái)存放位于堆棧段中的一個(gè)數(shù)據(jù)區(qū)基址的偏移

地址的,故將BP稱做基址指針寄存器。

2010-10-24如果你喜歡它,那么享受它。不喜22

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

變址寄存器(SI、DI)

SI------SourceIndexRegister源變址寄存器。

DI------DestinationIndex目的變址寄存器。

■使用場(chǎng)合:常用于變址尋址方式中的地址運(yùn)算

>一般與DS聯(lián)用,用來(lái)確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址

例:MOVAX,[SI]

>SI,DI具有自動(dòng)增量和自動(dòng)減量功能.

>在數(shù)據(jù)串操作中,SI與DS聯(lián)用,DI與ES聯(lián)用

2010-10-24如果你喜歡它,那么享受它。不喜23

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

2、段寄存器

段寄存器:4個(gè)16位段寄存器CS、DS、SS、ESo

用來(lái)識(shí)別當(dāng)前可尋址的四個(gè)段,不可互換的使用。

CS------CodeSegmentRegister代碼段寄存器

用來(lái)識(shí)別當(dāng)前代碼段(程序一般放在代碼段)。

DS-----DataSegmentRegister數(shù)據(jù)段寄存器

用來(lái)識(shí)別當(dāng)前數(shù)據(jù)段寄存器。

SS------StackSegmentRegisteri主棧段寄存器,

用來(lái)識(shí)別當(dāng)前堆棧段。

ES-----ExtraSegmentRegister附力口段寄存器,

用來(lái)識(shí)別當(dāng)前附加段。

2010-10-24如果你喜歡它,那么享受它。不喜24

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳匹令M赤

3、控制寄存器:IP、FLAG

IP一InstructionPointer指令指針寄存器

?用來(lái)存儲(chǔ)代碼段中的偏移地址;

?程序運(yùn)行過(guò)程中IP始終指向下一次要取出的指令偏移地址

?IP要與CS寄存器相配合才能形成真正的物理地址。

151098765420

0FDFIFTFSFZFAFPFCF

標(biāo)志寄存器

2010-10-24如果你喜歡它,那么享受它。不喜25

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳匹令M赤

口狀態(tài)標(biāo)志:

?用來(lái)記錄程序中運(yùn)行結(jié)果的狀態(tài)信息作為后續(xù)條

件轉(zhuǎn)移指令的轉(zhuǎn)移控制條件,也稱為狀態(tài)標(biāo)志。

?狀態(tài)標(biāo)志共包括6位:

CF、PF、AF、ZF、SF、OFo

□控制標(biāo)志:

?對(duì)控制標(biāo)志位進(jìn)行設(shè)置后,對(duì)其后的操作起控制作用。

?控制標(biāo)志位包括3位:TF、IF、DF

2010-10-24如果你喜歡它,那么享受它。不喜26

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳匹令M赤

4.2.3存儲(chǔ)器結(jié)構(gòu)

8086/8088CPU能尋址1M字節(jié)的存儲(chǔ)單元,以8位

為一個(gè)字節(jié)的順序排列存放

每一個(gè)字節(jié)用一個(gè)唯一的地址碼標(biāo)示

地址碼為一個(gè)不帶符號(hào)的整數(shù)表示,范圍從0到22。?1,習(xí)慣用

十六進(jìn)制表示,即OOOOOH~FFFFFH。將存儲(chǔ)器空間按照

字節(jié)地址號(hào)順序排列的方式稱作“字節(jié)編址”。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

十六進(jìn)制地址二進(jìn)制地址存儲(chǔ)器

00000H0000,0000,0000,0000,0000B

00001H0000,0000,0000,0000,0001B

00002H0000,0000,0000,0000,0002B

?1

1

1Jc

?1

11

FFFFDH1111,1111,1111,111bH01B

FFFFEM1111,1111,1111,1111,1U0B

FFFFFHmi,mi,mi,mi,HUB

存儲(chǔ)器空間的字節(jié)編址

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏28

20位地址的形成

16位寄存器II20位地址

地址加法器

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏29

2010-10-24如果你喜歡它,那么享受它。不喜30

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

1.存儲(chǔ)器的分段

■每段最長(zhǎng)可達(dá)64K字節(jié)

00000

=64K字節(jié)

■各段起始地址能被16整除。0FFFF。段

(低4位為0)10000

1段=64K字節(jié)

■各段之間可分開、部分或完全1FFFFa16個(gè)

重疊、可首尾相接。邏輯段

-根據(jù)各段的用途將其定義為CS、

DS、ES、SS段。并用偏移地F0000

=64K字節(jié)J

址(距段起址的字節(jié)距離)表15段

FFFFF

示被訪問單元。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏31

存儲(chǔ)器結(jié)構(gòu)(續(xù))

00000

邏輯段1起點(diǎn)A邏輯段1

“<64KB

邏輯段2起點(diǎn)邏輯段2

?^64KB

邏輯段3起點(diǎn)]邏輯段3

|<64KB

邏輯段4,5起點(diǎn))邏輯段4,5

JW64KB

FFFFF

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏32

?存儲(chǔ)器結(jié)構(gòu)(續(xù))

七&址

■每一個(gè)段首地址的低4位是“0”

■段首地址的高工6位稱為“段基址”,也稱段地址

■段地址一般存放在段寄存器DS,CS,SS,ES

■偏移地址

■每一個(gè)段的容量:64KB(OOOOH^FFFFH)

■偏移地址是指一個(gè)段內(nèi)的存儲(chǔ)空間相對(duì)于段基地址的偏移

■段內(nèi)偏移地址一般存放在IP,SP

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏33

2.存儲(chǔ)器中的邏輯地址和物理地址

■任何一個(gè)邏輯地址由段基址和偏移地址兩個(gè)部分構(gòu)成,

它們都是無(wú)符號(hào)的16位二進(jìn)制數(shù)。

邏輯地址的表示:段地址:偏移地址

.任何一個(gè)存儲(chǔ)單元對(duì)應(yīng)一個(gè)20位的物理地址,也可稱

為絕對(duì)地址,它是由邏輯地址變換得來(lái)的。當(dāng)CPU需

要訪問存儲(chǔ)器時(shí),必須完成如下的地址運(yùn)算:

物理地址二段地址X16+偏移地址

>物理地址是唯一的

>對(duì)應(yīng)于同一物理地址,可以有不同的邏輯地址

>要分清段內(nèi)偏移地址的來(lái)源,及其相匹配的段地址

2010-10-24如果你喜歡它,那么享受它。不喜34

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

-例:已知某存儲(chǔ)單元所在的段地址為0AC08H,偏移

地址為2596H,試求出該單元所在的物理地址?

■已知某單元的物理地址為21000H,試求該單元所對(duì)

應(yīng)的邏輯地址?

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏35

段基址

2000H/20000H、

輯段內(nèi)偏移地址

地5F62H

址25F60H

25F61H

25F62H

25F63H

7

邏輯地址跖物理地她受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏36

已知CS、DS、SS

代碼段

和SS分別為1055H,

250AH,8FFBH和

數(shù)據(jù)段

EFFOH,試分析它

們?cè)诖鎯?chǔ)器中的分附加段

布情況。

堆棧段

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏37

每一個(gè)存儲(chǔ)單元看成是具有兩種類型的地址:

物理地址和邏輯地址

?物理地址:

-是實(shí)際地址,它具有20位的地址值,并是惟一標(biāo)識(shí)

1MB存儲(chǔ)空間的某一個(gè)字節(jié)的地址

?邏輯地址:

-由段基址和偏移地址組成。程序以邏輯地址編址,

而不是用物理地址。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏38

■4個(gè)段寄存器分別指向4個(gè)分段的起始字節(jié)單元

-指令程序一般存放在代碼段(CS)中,段地址來(lái)源于代碼段寄存器,

偏移地址來(lái)源于指令指針I(yè)P,即

指令程序的物理地址二(CS)*16+(IP)

-進(jìn)行堆棧操作時(shí),段地址寄存器為SS,偏移地址來(lái)源于棧指針寄存

器SP,即

堆棧地址二(SS)*16+(SP)

-對(duì)于操作數(shù),則由數(shù)據(jù)段寄存器DS或附加段寄存器ES作為段寄存器,

而偏地址取決于指令的尋址方式。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏39

例,在8086CPU中,設(shè)某段寄存器的內(nèi)容為lOOOH,

試確定由該段寄存器所決定的內(nèi)存段的起始地址和終

止地址

解:lOOOOH/vlFFFFH

■在8086CPU中,CS寄存器和IP寄存器的內(nèi)容分別如

下,試確定由CS和IP指定的內(nèi)存指令地址

(1)CS=1OOOHIP=2000H

(2)CS=1234HIP=ABCDH

解:1)1000H*16+2000H=12000H

2)1234H*環(huán)扇線QW刃版DH

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏40

]按信息的分段存儲(chǔ)和分段尋址

-在存儲(chǔ)器中存儲(chǔ)的信息可以分為程序指令、數(shù)據(jù)、和

計(jì)算機(jī)系統(tǒng)的狀態(tài)等信息,為了尋址和操作的方便,

存儲(chǔ)器的空間可按信息特征進(jìn)行分段存儲(chǔ)。

■一般將存儲(chǔ)器劃分為程序區(qū)、數(shù)據(jù)區(qū)、和堆棧區(qū)。

■程序區(qū)中存儲(chǔ)程序的指令代碼

■數(shù)據(jù)區(qū)中存儲(chǔ)原始數(shù)據(jù)、中間結(jié)果和最后結(jié)果

■堆棧區(qū)存儲(chǔ)壓入堆棧的數(shù)據(jù)和狀態(tài)信息

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏41

-8086/8088CPU中通常按照信息特征來(lái)區(qū)分段寄存

器的作用,如:

-代碼段寄存器CS存儲(chǔ)程序存儲(chǔ)器區(qū)的段地址;

-數(shù)據(jù)段寄存器DS和附加段寄存器ES存儲(chǔ)源和目的數(shù)據(jù)區(qū)段的

段地址;

■堆棧段寄存器SS存儲(chǔ)堆棧區(qū)的段地址

■8086/8088中設(shè)置四個(gè)段寄存器的目的除了可以擴(kuò)充尋址

的范圍以外,還便于存儲(chǔ)器的讀/寫操作

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏42

■^^1、對(duì)程序區(qū)的訪問

■為程序單獨(dú)劃開的存儲(chǔ)器區(qū)指令指針I(yè)P

稱為程序存儲(chǔ)區(qū)。

cs代碼段寄存器

-在執(zhí)行程序時(shí)CS指定程序的

左移4位

段地址,IP作為程序段內(nèi)的地址加法器

偏移量來(lái)控制取指令的地址。程序區(qū)

-當(dāng)前取指令的物理地址=代20位當(dāng)前指令物理地址

碼段寄存器CS的內(nèi)容左移四

位加上指令指針I(yè)P的內(nèi)容。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏43

2、堆棧區(qū)的操作

■不同的任務(wù)程序區(qū)往往要求有

對(duì)應(yīng)的堆棧區(qū),以便在執(zhí)行程

序時(shí)進(jìn)行各自的堆棧操作。

-程序更新時(shí),堆棧區(qū)也隨之

更新,這就需要指定堆棧段

寄存器SS。

■堆棧操作所指的物理地址=

堆棧段寄存器內(nèi)容左移四位

后加上堆棧指針的內(nèi)容

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏44

3、數(shù)據(jù)區(qū)

有效地址EA或BX

■不同任務(wù)的程序一般有與之對(duì)應(yīng)

的數(shù)據(jù)區(qū),在執(zhí)行指令時(shí)對(duì)區(qū)內(nèi)

的數(shù)據(jù)進(jìn)行操作,需要設(shè)置數(shù)據(jù)

段寄存器DS

■實(shí)際操作的物理地址=數(shù)據(jù)段寄

存器的內(nèi)容左移四位,加上基地

址寄存器BX或通過(guò)尋址獲得的有

效地址EA。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏45

4、字符串操作

■字符串操作時(shí),一般是對(duì)存儲(chǔ)器源變址寄存器si

中的兩個(gè)數(shù)據(jù)塊進(jìn)行傳送,需要、一

在一條指令中同時(shí)指定源和目的I數(shù)據(jù)寄存器DS

兩個(gè)數(shù)據(jù)區(qū)。///〃〃/

地址加法器

■需要分別使用數(shù)據(jù)段寄存器DS和

附加段寄存器ES分別指定源數(shù)據(jù)

和目的數(shù)據(jù)區(qū)的段地址,用SI和

DI變址寄存器指明段內(nèi)偏移量。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

■訪問存儲(chǔ)器時(shí)使用的段地址寄存器和偏移地址寄存器

-表中所示的訪問存儲(chǔ)器時(shí)所使用的段地址可以由指令中隱含的段寄

存器提供,也可以由“可更換的段寄存器”提供。

-段寄存器DS、SS、ES的內(nèi)容可以通過(guò)傳送類指令置入或者進(jìn)行變

更,但代碼段寄存器不同,它的內(nèi)容是當(dāng)前程序指令字節(jié)地址的一

部分,只能通過(guò)JMP、CALL、RET、INT和IRET等指令來(lái)改變。

-段內(nèi)偏移地址的來(lái)源除IP、SP、SI和DI外,還可以由尋址方式求

得的EA確定

2010-10-24如果你喜歡它,那么享受它。不喜47

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M赤

訪問存儲(chǔ)器類型隱含的可“段更換”段內(nèi)偏移地址來(lái)源

段地址的段地址

取指令碼CS無(wú)IP

堆棧操作SS無(wú)SP

字符串操作源地址DSCS,ES,SSSI

字符串操作目的地址ES無(wú)DI

BP用作基址寄存器時(shí)SSCS,DS,ES由指令尋址方式求得有效地址EA

一般數(shù)據(jù)存取DSCS,ES,SS由指令尋址方式求得有效地址EA

2010-10-24如果你喜歡它,那么享受它。不喜48

歡,那么避開它。避不開,那么改

亦令M■不了玻力墳號(hào)令M亦

、4.28086的總線周期

■時(shí)序(Timing):

■是指信號(hào)高低電平(有效或無(wú)效)變化及相互

間的時(shí)間順序關(guān)系。

■總線時(shí)序描述CPU引腳如何實(shí)現(xiàn)總線操作

■CPU時(shí)序決定系統(tǒng)各部件間的同步和定時(shí)

什么是總線操還>

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏49

■總線操作是指CPU通過(guò)總線對(duì)外的各種操作

■8088的總線操作主要有:

■存儲(chǔ)器讀、I/O讀操作

■存儲(chǔ)器寫、I/O寫操作

■中斷響應(yīng)操作

■總線請(qǐng)求及響應(yīng)操作

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏50

■描述總線操作的微處理器時(shí)序有三級(jí):

■指令周期二>總線周期匚>時(shí)鐘周期

什么是指令、總線和時(shí)鐘周期?

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏51

■指令周期是指一條指令經(jīng)取指、譯碼、讀寫操作數(shù)到執(zhí)行完成

的過(guò)程。若干總線周期組成一個(gè)指令周期

■總線周期是指CPU通過(guò)總線操作與外部(存儲(chǔ)器或I/O端口)

進(jìn)行一次數(shù)據(jù)交換的過(guò)程

■8088的基本總線周期需要4個(gè)時(shí)鐘周期

-4個(gè)時(shí)鐘周期編號(hào)為TrT2、T3和T4

■總線周期中的時(shí)鐘周期也被稱作“T狀態(tài)”

-時(shí)鐘周期的時(shí)間長(zhǎng)度就是時(shí)鐘頻率的倒數(shù)

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏52

1?2個(gè)若干個(gè)

1ITwTwTwn-4Tj儲(chǔ)

_01_0_01_0_01_0_01_0

總線周期總線周期

?基本總線周期由4個(gè)T狀態(tài)組成:TvT2、T3、T4

?等待時(shí)鐘周期Tw,在總線周期的T3和T4之間插入

?空閑時(shí)鐘周期Ti,在廂忠娥周期息間摘入

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏53

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏54

何時(shí)有總線周期?__________________

■任何指令的取指階段都需要存儲(chǔ)器讀總線周期,讀

取的內(nèi)容是指令代碼

■任何一條以存儲(chǔ)單元為源操作數(shù)的指令都將引起存

儲(chǔ)器讀總線周期,任何一條以存儲(chǔ)單元為目的操作

數(shù)的指令都將引起存儲(chǔ)器寫總線周期

■只有執(zhí)行IN指令才出現(xiàn)I/O讀總線周期,執(zhí)行OUT

指令才出現(xiàn)I/O寫總線周期

■CPU響應(yīng)可屏蔽中斷時(shí)生成中斷響應(yīng)總線周期

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏55

總線操作的簡(jiǎn)要過(guò)程

■CPU往總線上發(fā)出地址信息,指出要尋址的存儲(chǔ)單元或I/O

端口地址。—

-CPU撤消地址,使總線的低16位浮置成高阻狀態(tài),為傳輸數(shù)

據(jù)做準(zhǔn)備??偩€的最高四位(46?A?用來(lái)輸出本總線周期

狀態(tài)信息。一

-多路總線的高4位繼續(xù)提供狀態(tài)信息,而多路總線的低16位

(8088則為低8位)上出現(xiàn)由CPU寫出的數(shù)據(jù)或者CPU從存儲(chǔ)器

或端口讀入的數(shù)據(jù)。

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏56

等待狀態(tài)

CLK

1

READY/

前沿檢測(cè)

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏

一個(gè)基本的總線周期

TiT2T:J14

慟一()~~〈y-讀周期

瞰一C~X~>寫周期

IM:觸

5

■便線操作的同步_______________

-總線操作中如何實(shí)現(xiàn)時(shí)序同步是關(guān)鍵

■CPU總線周期采用同步時(shí)序:

■各部件都以系統(tǒng)時(shí)鐘信號(hào)為基準(zhǔn)

■當(dāng)相互不能配合時(shí),快速部件(CPU)插入

等待狀態(tài)等待慢速部件(I/O和存儲(chǔ)器)

■CPU與外設(shè)接口常采用異步時(shí)序,它們通

過(guò)應(yīng)答聯(lián)絡(luò)信號(hào)實(shí)現(xiàn)同步操作

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏59

4.38086/8088CPU的弓I腳信號(hào)和工作模式

?兩種組態(tài)構(gòu)成兩種不同規(guī)模的應(yīng)用系統(tǒng)

?最小組態(tài)模式

■構(gòu)成小規(guī)模的應(yīng)用系統(tǒng)

■8086本身提供所有的系統(tǒng)總線信號(hào)

.最大組態(tài)模式

-構(gòu)成較大規(guī)模的應(yīng)用系統(tǒng),例如可以接入數(shù)值協(xié)處

理器8087

■8086和總線控制器8288共同形成系統(tǒng)總線信號(hào)

如果你喜歡它,那么享受它。不喜

歡,那么避開它。避不開,那么改

變它。改不了,那么接受它。改變

2010-10-24觀念,你就能接受它喜歡就收藏60

■兩種組態(tài)利用MN/MX*引腳區(qū)別

■MN/MX*接高電平為最小組態(tài)模式

■MN/MX*接低電平為最大組態(tài)模式

■兩種組態(tài)下的內(nèi)部操作并

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論