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

下載本文檔

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

文檔簡(jiǎn)介

微機(jī)原理總復(fù)習(xí)

微型計(jì)算機(jī)經(jīng)歷了4位機(jī)、8位機(jī)、16位機(jī)至高性能的32位機(jī),64位機(jī)正在廣泛應(yīng)用。

現(xiàn)代計(jì)算機(jī)發(fā)展方向:

巨型化,微型化,網(wǎng)絡(luò)化,智能化,多媒體化應(yīng)用領(lǐng)域科學(xué)和工程計(jì)算密碼破譯,天氣預(yù)報(bào),地質(zhì)勘探,衛(wèi)星軌道計(jì)算工業(yè)控制機(jī)器人以及各種自動(dòng)化裝備,溫度調(diào)節(jié),閥門(mén)控制輔助設(shè)計(jì)/分析/制造/教學(xué)機(jī)械CAD,建筑CAD,CAE,CAM,CAI數(shù)據(jù)處理數(shù)據(jù)庫(kù)管理,企業(yè)信息管理,統(tǒng)計(jì)匯總、辦公自動(dòng)化智能模擬人工智能、專(zhuān)家系統(tǒng)、自學(xué)習(xí)

二進(jìn)制NB兩個(gè)數(shù)碼:0、1,逢二進(jìn)一。 例:1101.101=1×23+1×22+0×21+1×20+1×2-1+0×2-2+1×2-3

加權(quán)展開(kāi)式以2為基數(shù),各位系數(shù)為0、1。 一般表達(dá)式:1.2.1計(jì)算機(jī)中的進(jìn)位計(jì)數(shù)制八進(jìn)制No八個(gè)數(shù)碼:0、1、2、3、4、5、6、7逢八進(jìn)一。例:1101.101=1×83+1×82+0×81+1×80+1×8-1+0×8-2+1×8-3

加權(quán)展開(kāi)式以8為基數(shù),各位系數(shù)為0~7。一般表達(dá)式:1.2.1計(jì)算機(jī)中的進(jìn)位計(jì)數(shù)制

十六進(jìn)制NH十六個(gè)數(shù)碼0~9、A~F,逢十六進(jìn)一。 例:DFC.8=13×162+15×161+12×160+8×16-1

展開(kāi)式以十六為基數(shù),各位系數(shù)為0~9,A~F。

一般表達(dá)式:

1.2.1計(jì)算機(jī)中的進(jìn)位計(jì)數(shù)制二.進(jìn)位計(jì)數(shù)制之間的轉(zhuǎn)換R進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù):按權(quán)展開(kāi),求和

1011.1010B=1×23+1×21+1×20+1×2-1+1×2-3=11.625

DFC.8H=13×162+15×161+12×160+8×16-1=3580.5十進(jìn)制數(shù)轉(zhuǎn)換為R進(jìn)制數(shù):整數(shù)和小數(shù)部分分別進(jìn)行轉(zhuǎn)換

1、整數(shù)部分

“除R取余”:十進(jìn)制整數(shù)不斷除以轉(zhuǎn)換進(jìn)制基數(shù),直至商為0。每除一次取一個(gè)余數(shù),從低位排向高位。二.進(jìn)位計(jì)數(shù)制之間的轉(zhuǎn)換2、小數(shù)部分“乘R取整”:用轉(zhuǎn)換進(jìn)制的基數(shù)乘以小數(shù)部分,直至小數(shù)為0或達(dá)到轉(zhuǎn)換精度要求的位數(shù)。每乘一次取一次整數(shù),從最高位排到最低位。例:

1、0.625轉(zhuǎn)換成二進(jìn)制數(shù)

0.625 ×2 1.2501(b-1) × 2 0.500(b-2) × 2 1.0 1(b-3)0.625=0.101B二.進(jìn)位計(jì)數(shù)制之間的轉(zhuǎn)換二進(jìn)制與八進(jìn)制、十六進(jìn)制之間的轉(zhuǎn)換

八進(jìn)制二進(jìn)制:一位八進(jìn)制數(shù)用三位二進(jìn)制數(shù)表示。

十六進(jìn)制二進(jìn)制:一位十六進(jìn)制數(shù)用四位二進(jìn)制數(shù)表示。

二進(jìn)制八進(jìn)制:從小數(shù)點(diǎn)開(kāi)始,分別向左右兩邊把三位二進(jìn)制數(shù)碼劃為一組,最左和最右一組不足三位用0補(bǔ)充,然后每組用一個(gè)八進(jìn)制數(shù)碼代替。

二進(jìn)制十六進(jìn)制:與八進(jìn)制類(lèi)似,但是四位分為一組。1.3.2微型計(jì)算機(jī)微型計(jì)算機(jī)微型計(jì)算機(jī)由CPU、存儲(chǔ)器、輸入/輸出接口及系統(tǒng)總線(xiàn)組成。微機(jī)與外部交換信息通過(guò)總線(xiàn)控制。外部——采用三總線(xiàn)結(jié)構(gòu)AB、DB、CB。內(nèi)部——采用單總線(xiàn),即內(nèi)部所有單元電路都掛在內(nèi)部總線(xiàn)上,分時(shí)使用總線(xiàn)。1.3.2微型計(jì)算機(jī)1.3.2微型計(jì)算機(jī)1、總線(xiàn)及存儲(chǔ)器系統(tǒng)總線(xiàn)包括數(shù)據(jù)總線(xiàn)DB、地址總線(xiàn)AB和控制總線(xiàn)CB。地址總線(xiàn):傳送地址信息,單向。其位數(shù)決定了CPU可以直接尋址的內(nèi)存空間、I/O口數(shù)目。A15~A0,可尋址216=64KB內(nèi)存單元。A7~A0,可尋址28=256外設(shè)接口。數(shù)據(jù)總線(xiàn):傳送數(shù)據(jù),雙向。其位數(shù)和微處理器的位數(shù)相對(duì)應(yīng)??刂瓶偩€(xiàn):傳輸控制信號(hào)。

1.3.2微型計(jì)算機(jī)

存儲(chǔ)器1)存儲(chǔ)器是用來(lái)存儲(chǔ)數(shù)據(jù)、程序的部件。按照存儲(chǔ)器與CPU的關(guān)系,分為內(nèi)存儲(chǔ)器(主存儲(chǔ)器)和外存儲(chǔ)器。按其工作方式,又可分為隨機(jī)存儲(chǔ)器和只讀存儲(chǔ)器。2)三級(jí)存儲(chǔ)體系結(jié)構(gòu):高速緩沖存儲(chǔ)器、內(nèi)存儲(chǔ)器和外存儲(chǔ)器

1.3.2微型計(jì)算機(jī)輸入/輸出設(shè)備和接口:外設(shè):計(jì)算機(jī)中除主機(jī)以外的其它機(jī)電或電子設(shè)備統(tǒng)稱(chēng)外部設(shè)備,簡(jiǎn)稱(chēng)外設(shè)。

I/O接口:CPU和外設(shè)之間的I/O適配器,是微型計(jì)算機(jī)的重要組成部件。1.3.3微型計(jì)算機(jī)系統(tǒng)

微型計(jì)算機(jī)系統(tǒng)

以微型計(jì)算機(jī)為主體,配上系統(tǒng)軟件和外部設(shè)備以后,就構(gòu)成完整的微型計(jì)算機(jī)系統(tǒng)。

1.3.3微型計(jì)算機(jī)系統(tǒng)1.3.3微型計(jì)算機(jī)系統(tǒng)

性能指標(biāo):1)字長(zhǎng):字是CPU與存貯器或輸入/輸出設(shè)備之間傳送數(shù)據(jù)的基本單位。字的二進(jìn)制代碼位數(shù)稱(chēng)為計(jì)算機(jī)字長(zhǎng),反映一臺(tái)機(jī)器的計(jì)算精度。

2)主存容量:主存貯器所能存貯的信息總量為主存容量。是衡量計(jì)算機(jī)處理能力大小的一個(gè)重要指標(biāo)。表示主存容量有兩種方法:用字節(jié)數(shù)表示;用單元數(shù)×字長(zhǎng)表示。1.3.3微型計(jì)算機(jī)系統(tǒng)3)主頻:主時(shí)鐘信號(hào)的頻率稱(chēng)為計(jì)算機(jī)主頻,用于協(xié)調(diào)計(jì)算機(jī)操作。決定計(jì)算機(jī)的處理速度,頻率越高,處理速度越快。4)運(yùn)算速度:計(jì)算機(jī)每秒鐘運(yùn)算的次數(shù)。5)系統(tǒng)可靠性:指計(jì)算機(jī)系統(tǒng)在規(guī)定的時(shí)間和工作條下正常工作而不發(fā)生故障的概率。計(jì)算機(jī)系統(tǒng)的可靠性含系統(tǒng)的可維護(hù)性和可用性,三者構(gòu)成計(jì)算機(jī)系統(tǒng)的可靠性指標(biāo)。

1.3.3微型計(jì)算機(jī)系統(tǒng)6)系統(tǒng)的兼容性:兼容性指一種計(jì)算機(jī)中的設(shè)備和程序可以用于其他多種系統(tǒng)中的性能,分硬件兼容和軟件兼容。7)性能價(jià)格比:是計(jì)算機(jī)產(chǎn)品性能優(yōu)劣的綜合性指標(biāo)。包括計(jì)算機(jī)硬件和軟件的各種性能。

Intel8086/8088結(jié)構(gòu)

8086/8088微處理器是Intel公司推出的第三代CPU芯片,它們的內(nèi)部結(jié)構(gòu)基本相同,都采用16位結(jié)構(gòu)進(jìn)行操作及存儲(chǔ)器尋址,兩種處理器都封裝在相同的40腳雙列直插組件(DIP)中。在Intel8080與8085的基礎(chǔ)上發(fā)展起來(lái)的。結(jié)構(gòu)特點(diǎn):

(1)內(nèi)部結(jié)構(gòu)是16位的內(nèi)部寄存器,內(nèi)部運(yùn)算部件,內(nèi)部操作按16位設(shè)計(jì));

(2)外部數(shù)據(jù)總線(xiàn)16(8086)/8(8088)位,能處理16位數(shù)據(jù),也能處理8位數(shù)據(jù);

(3)匯編語(yǔ)言與8080/8085兼容,即能執(zhí)行整套8080/8085的指令,增加了許多16位操作指令;

(4)20條地址總線(xiàn),直接尋址能力1M字節(jié);

(5)40條引線(xiàn)、雙列直插式;

(6)單相時(shí)鐘;

(7)電源為5V。

8088微處理器與8086微處理器的主要區(qū)別:對(duì)外的數(shù)據(jù)線(xiàn)只有8位,目的是為了方便地與8位I/O接口芯片相兼容。2.18086/8088CPU的編程結(jié)構(gòu)

傳統(tǒng)結(jié)構(gòu)的CPU執(zhí)行程序時(shí),取指令與執(zhí)行指令交替進(jìn)行:

為提高CPU的工作效率,8086/8088CPU采用流水線(xiàn)處理方式,取指令與執(zhí)行指令同時(shí)進(jìn)行。

一方面提高了執(zhí)行速率;另一方面降低了與之相配的存儲(chǔ)器的存取速度的要求。8086/8088的編程結(jié)構(gòu)分兩部分:1、總線(xiàn)接口單元BIU(BusInterfaceUnit)2、執(zhí)行部件 EU(ExecutionUnit)一、總線(xiàn)接口單元BIU(BusInterfaceUnit)

1、功能:負(fù)責(zé)與存儲(chǔ)器、I/O端口進(jìn)行數(shù)據(jù)傳送。具體講:取指令:總線(xiàn)接口部件從內(nèi)存中取出指令后送到指令隊(duì)列。

預(yù)取指令。配合EU執(zhí)行指令,存取操作數(shù)和運(yùn)算結(jié)果。2、組成

?段地址寄存器(CS、DS、ES、SS)。?16位指令指針寄存器IP。?地址加法器(形成20位物理地址),?6字節(jié)(8086)或4字節(jié)(8088)的指令隊(duì)列,?內(nèi)部寄存器?總線(xiàn)控制電路:

3、注:1)指令隊(duì)列

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

2)指令執(zhí)行順序順序指令執(zhí)行:指令隊(duì)列存放緊接在執(zhí)行指令后面的那一條指令。執(zhí)行轉(zhuǎn)移指令:BIU清除指令隊(duì)列中的內(nèi)容,從新的地址取入指令,立即送往執(zhí)行單元,然后再?gòu)男聠卧_(kāi)始重新填滿(mǎn)隊(duì)列。二、EU(ExecutionUnit)執(zhí)行單元?

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

2、組成:

?4個(gè)通用寄存器:AX、BX、CX、DX?4個(gè)專(zhuān)用寄存器:BP、SP、SI、DI,

?標(biāo)志寄存器(PSW):為16位,存放指令執(zhí)行結(jié)果的特征和處理器狀態(tài),如結(jié)果為0,為負(fù),單步執(zhí)行等。

?算術(shù)邏輯單元ALU:

16位加法器。完成8位/16位二進(jìn)制數(shù)的算術(shù)邏輯運(yùn)算。

?EU控制系統(tǒng):接受從總線(xiàn)接口單元的指令隊(duì)列中取來(lái)的指令代碼, 對(duì)其譯碼和向EU內(nèi)各有關(guān)部分發(fā)出時(shí)序命令信號(hào),協(xié)調(diào)執(zhí)行指令規(guī)定的操作。2、程序執(zhí)行過(guò)程設(shè)程序的指令代碼已存放在存貯器中。為執(zhí)行程序,CPU按照時(shí)鐘節(jié)拍,產(chǎn)生一系列控制信號(hào),有規(guī)則地重復(fù)進(jìn)行以下過(guò)程。(1)BIU從存貯器中取出一條指令存入指令隊(duì)列。(2)EU從指令隊(duì)列取指令并執(zhí)行指令。BIU利用總線(xiàn)空閑時(shí)間,從內(nèi)存取第二條指令或取第三條指令存入指令隊(duì)列。(3)EU執(zhí)行下一條指令。如果前面一條指令有寫(xiě)存貯器的要求,則通知BIU把前條指令結(jié)果寫(xiě)到存貯器中,然后再取指令存入指令隊(duì)列。

(4)如指令執(zhí)行要求讀取操作數(shù),由BIU完成。(5)EU執(zhí)行再下一條指令,返回(1)處繼續(xù)執(zhí)行上述操作過(guò)程。所以,程序的執(zhí)行過(guò)程就是CPU取指令、分析指令、執(zhí)行指令,再取指令這樣一個(gè)循環(huán)重復(fù)過(guò)程。在指令執(zhí)行過(guò)程中,利用EU分析指令操作碼和執(zhí)行指令時(shí)不占用總線(xiàn)操作時(shí)間的特點(diǎn),BIU自動(dòng)地通過(guò)總線(xiàn)讀取存貯器中的指令碼存入BIU指令隊(duì)列,從而使BIU與EU并行工作,提高CPU執(zhí)行指令的速度。

1、通用寄存器 通用寄存器包括:數(shù)據(jù)寄存器、地址指針寄存器、變址寄存器。數(shù)據(jù)寄存器包括:AX、BX、CX、DX。

地址指針寄存器包括:SP、BP。

變址寄存器包括:SI、DI。2、段寄存器段寄存器包括:CS、SS、DS、ES。3、控制寄存器控制寄存器包括:IP、PSW。

2.3寄存器結(jié)構(gòu)1、通用數(shù)據(jù)寄存器

AX、BX、CX、DX作為通用寄存器。用來(lái)暫存計(jì)算過(guò)程中所用到的操作數(shù),結(jié)果或其它信息。訪(fǎng)問(wèn)形式:可以用16位的訪(fǎng)問(wèn); 或者可以用字節(jié)(8位)形式訪(fǎng)問(wèn).

高8位記作:AH、BH、CH、DH。 低8位記作:AL、BL、CL、DL。AX——(Accumulator)累加器。 它是算術(shù)運(yùn)算的主要寄存器。 所有I/O指令都使用這一寄存器與外部設(shè)備交換數(shù)據(jù)。 BX——Base用作基址寄存器使用。 在計(jì)算內(nèi)存儲(chǔ)器地址時(shí),經(jīng)常用來(lái)存放基址。CX——Count可以作計(jì)數(shù)寄存器使用。

DX——Data可以作為數(shù)據(jù)寄存器使用。一般在雙字長(zhǎng)乘除法運(yùn)算時(shí),把DX和AX組合在一起存放一個(gè)雙字長(zhǎng)(32位)數(shù),DX用來(lái)存放高16位。

2、地址指針與變址寄存器

SP、BP、SI、DI四個(gè)16位寄存器。以字為單位在運(yùn)算過(guò)程中存放操作數(shù),經(jīng)常用以在段內(nèi)尋址時(shí)提供偏移地址。

段地址:只取段起始地址高16位值。偏移地址:指在段內(nèi)某內(nèi)存單元物理地址相對(duì)段起始地址的偏移值。

SP:為堆棧指針寄存器,指出當(dāng)前堆棧段中棧頂?shù)钠频刂罚cSS聯(lián)用。BP:為對(duì)堆棧操作的基址寄存器。BP中存放的是堆棧中某一存儲(chǔ)單元的偏移地址,不是指棧頂。通常和SS聯(lián)用。SI:為源變址寄存器,與數(shù)據(jù)段寄存器DS聯(lián)合使用,確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址。DI:為目的變址寄存器,與數(shù)據(jù)段寄存器DS聯(lián)合使用,確定數(shù)據(jù)段中某一存儲(chǔ)單元的地址。

SI和DI具有自動(dòng)增量和減量的功能。在串操作指令中,SI、DI隱含作為源變址和目的變址寄存器。對(duì)其他的指令,則沒(méi)有這種限制。3、段寄存器 段寄存器:4個(gè)16位段寄存器CS、DS、SS、ES。

用來(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——StackSegmentRegister堆棧段寄存器, 用來(lái)識(shí)別當(dāng)前堆棧段。ES——ExtraSegmentRegister附加段寄存器, 用來(lái)識(shí)別當(dāng)前附加段。4、指令指針寄存器用來(lái)存儲(chǔ)代碼段中的偏移地址;

程序運(yùn)行過(guò)程中IP始終指向下一次要取出的指令偏移地址。IP要與CS寄存器相配合才能形成真正的物理地址。5、標(biāo)志寄存器FR

由條件碼標(biāo)志FLAG、控制標(biāo)志構(gòu)成。只用了其中9位,6位條件碼標(biāo)志,3位控制標(biāo)志。?狀態(tài)標(biāo)志位:

用來(lái)記錄程序中運(yùn)行結(jié)果的狀態(tài)信息。包括6位:CF、PF、AF、ZF、SF、OF。CF進(jìn)位標(biāo)志

CF=1:從最高有效位產(chǎn)生進(jìn)位值。

CF=0:從最高有效位不產(chǎn)生進(jìn)值。PF奇偶標(biāo)志

PF=1:結(jié)果操作數(shù)低8位中有偶數(shù)個(gè)1。

PF=0:結(jié)果操作數(shù)低8位中有奇數(shù)個(gè)1。AF輔助進(jìn)位標(biāo)志

AF=1:第3位(半個(gè)字節(jié))產(chǎn)生進(jìn)位值。

AF=0:第3位(半個(gè)字節(jié))不產(chǎn)生進(jìn)位值。ZF零標(biāo)志

ZF=1:運(yùn)算結(jié)果為0。

ZF=0:運(yùn)算結(jié)果不為0。SF符號(hào)標(biāo)志

SF=1:運(yùn)算結(jié)果的符號(hào)為負(fù)。

SF=0:運(yùn)算結(jié)果的符號(hào)為正。OF溢出標(biāo)志

OF=1:在運(yùn)算過(guò)程中,如操作數(shù)超過(guò)了機(jī)器表示的范圍稱(chēng)為溢出。

OF=0:在運(yùn)算過(guò)程中,如操作數(shù)未超過(guò)了機(jī)器能表示的范圍稱(chēng)為不溢出。IF中斷標(biāo)志位

IF=1,允許外部可屏蔽中斷。

IF=0,關(guān)閉中斷。CPU禁止響應(yīng)可屏蔽中斷請(qǐng)求。DF(DirectionFlag)方向標(biāo)志,用來(lái)控制串操作指令標(biāo)志。

DF=0,地址指針為自動(dòng)遞增。

DF=1,地址指針自動(dòng)遞減。由STD指令可使DF置1,用CLD指令可使DF清0。TF單步標(biāo)志。

TF=1時(shí),CPU為單步工作方式,每執(zhí)行完一條指令就自動(dòng)產(chǎn)生一次內(nèi)部中斷。用在調(diào)試程序,可使用戶(hù)逐條跟蹤程序??刂茦?biāo)志一旦設(shè)置,便對(duì)處理器的操作產(chǎn)生控制作用。

控制標(biāo)志:對(duì)控制標(biāo)志位進(jìn)行設(shè)置后,對(duì)其后的操作起控制作用。2.48086存儲(chǔ)器組織

1、存儲(chǔ)單元的地址和內(nèi)容

2、8086存儲(chǔ)器的分體結(jié)構(gòu)

3、存儲(chǔ)器的分段

4、物理地址的形成1、存儲(chǔ)單元的地址和內(nèi)容存儲(chǔ)單元地址:就是對(duì)存儲(chǔ)單元的編號(hào)。

8086/8088系統(tǒng)中,存儲(chǔ)器是按照字節(jié)編址的,即一個(gè)存儲(chǔ)單元存放一個(gè)字節(jié)的內(nèi)容。存儲(chǔ)單元內(nèi)容:是指一個(gè)存儲(chǔ)單元中的有效信息。

8086/8088系統(tǒng)字長(zhǎng)是16位的,由二個(gè)字節(jié)組成。所以當(dāng)一個(gè)字存入存儲(chǔ)器時(shí)需要占用相繼的二個(gè)存儲(chǔ)單元:低位字節(jié)存入低地址單元,高位字節(jié)存入高地址單元。字單元的地址采用它的低地址來(lái)表示。3、存儲(chǔ)器地址分段:

8086/8088有20條地址總線(xiàn),直接尋址能力為220=1M字節(jié)。用16進(jìn)制數(shù)表示1M字節(jié)的地址范圍應(yīng)為00000H~FFFFFH。

CPU中的寄存器是16位的,20位地址無(wú)法用16位寄存器表示,必須分段。 程序員在編制程序時(shí)把存儲(chǔ)器劃分成段;

段內(nèi)地址16位,每個(gè)段的大小最大可達(dá)64KB。

20位物理地址形成物理地址:在1M字節(jié)存儲(chǔ)器里,每個(gè)存儲(chǔ)單元都有一個(gè)唯一的20位地址作為該存儲(chǔ)單元的物理地址。

CPU訪(fǎng)問(wèn)存儲(chǔ)器時(shí),必須先確定所要訪(fǎng)問(wèn)的存儲(chǔ)單元的物理地址才能取出(或存入)該單元中的內(nèi)容。

20位物理地址形成:由16位段地址和16位偏移地址組成。段地址:只取段起始地址高16位值。偏移地址:指在段內(nèi)某內(nèi)存單元物理地址相對(duì)段起始地址的偏移值。物理地址計(jì)算方法:即把段地址左移4位再加上偏移地址值形成物理地址,寫(xiě)成:

物理地址=16d段地址+偏移地址。每個(gè)存儲(chǔ)單元只有唯一的物理地址。但可由不同的段地址和不同的偏移地址組成。存儲(chǔ)器物理地址的計(jì)算方法

段地址與偏移地址關(guān)系示意圖

段寄存器和其他寄存器組合指向存儲(chǔ)單元示意圖指令系統(tǒng):一臺(tái)計(jì)算機(jī)所能識(shí)別和執(zhí)行的全部 指令的集合。指令的組成:操作碼說(shuō)明計(jì)算機(jī)要執(zhí)行哪種操作,如傳送、運(yùn)算、移位、跳轉(zhuǎn)等操作,它是指令中不可缺少的組成部分。操作數(shù)是指令執(zhí)行的參與者,即各種操作的對(duì)象。有些指令不需要操作數(shù),通常的指令都有一個(gè)或兩個(gè)操作數(shù),也有個(gè)別指令有3個(gè)甚至4個(gè)操作數(shù)。操作碼操作數(shù)3.18088/8086的尋址方式尋址方式有:1、立即尋址 操作數(shù)直接放在指令中。不 需要訪(fǎng)問(wèn)存儲(chǔ)器。 例:

MOVAL,34H

MOVAX,1234H

需要注意在16位操作時(shí),兩個(gè)字節(jié)數(shù)據(jù)的高低位存儲(chǔ)位置。立即數(shù)只能是源操作數(shù)。AX12H34HAHAL3.18088/8086的尋址方式2、寄存器尋址 操作數(shù)就放在CPU的內(nèi)部寄存器中,AX、BX、CX、DX、DI、SI、SP和BP,不需要訪(fǎng)問(wèn)存儲(chǔ)器。例:INCCXMOVAX,BX

若執(zhí)行前AX=30A6H,

BX=69EDH,

CX=40D9H

則執(zhí)行后AX=69EDH,

BX內(nèi)容不變

CX=40DAH3.18088/8086的尋址方式3、直接尋址有效地址由指令直接給出,有效地址只包含位移量。 例:MOVAX,[2000H]

默認(rèn)的段寄存器是DS,也可以在指令中使用段超越前綴來(lái)指定段寄存器。例:MOVAL,ES:[2000H]

有效地址EA=2000H,在指令中直接給出。

物理地址PA=(ES)×10H+2000H3.18088/8086的尋址方式4、寄存器間接尋址 操作數(shù)的地址在對(duì)應(yīng)的寄存器中稱(chēng)為寄存器間接尋址。

EA取自基址寄存器BX,BP或變址寄存器SI,DI中的一個(gè),操作數(shù)在有效地址對(duì)應(yīng)的存儲(chǔ)單元中。以SI,DI,BX間接尋址:默認(rèn)操作數(shù)在數(shù)據(jù)段DS中 以BP間接尋址:默認(rèn)操作數(shù)在堆棧段SS中

例:MOVAX,[BX]

若(DS)=1492H,(BX)=2000H

則EA=(BX)=2000H

物理地址PA=14920H+2000H=16920H, 執(zhí)行(AX)=(16920H)3.18088/8086的尋址方式5、變址尋址在寄存器間接尋址的基礎(chǔ)上再加一個(gè)16位的偏移量.例:MOVAX,[SI+COUNT]

若COUNT=3000H,(DS)=3000H

(SI)=2000H,則物理地址=35000HEA=3000H+2000H=5000HPA=30000H+5000H=35000H3.18088/8086的尋址方式6、基址加變址尋址

EA=基址寄存器(BX或BP)+變址寄存器(SI或DI) [+16位偏移量]若用BX:默認(rèn)操作數(shù)在數(shù)據(jù)段DS中 若用BP:默認(rèn)操作數(shù)在堆棧段SS中 例:

MOVAX,[BX+DI+6]

3.28088/8086的指令系統(tǒng)Intel8086/8088指令系統(tǒng)共有117條基本指令,可分成6個(gè)功能組:①數(shù)據(jù)傳送類(lèi)指令②算術(shù)運(yùn)算類(lèi)指令③邏輯運(yùn)算類(lèi)指令④串操作類(lèi)指令⑤控制轉(zhuǎn)移類(lèi)指令⑥處理器控制類(lèi)指令

4.2匯編語(yǔ)言源程序的結(jié)構(gòu)二、段定義語(yǔ)句與段尋址 一般來(lái)說(shuō),一個(gè)完整的匯編源程序由3個(gè)段組成,即堆棧段、數(shù)據(jù)段和代碼段。段定義偽指令可將源程序劃分成若干段,以便生成目的代碼和連接時(shí)將各同名段進(jìn)行組合。段定義偽指令一般格式為: 段名SEGMENT[定位類(lèi)型][組合類(lèi)型][類(lèi)別]

段名ENDS(1)定位類(lèi)型:用來(lái)規(guī)定段起始邊界的要求,可以為以下四種,缺省為PARA)

PAGE:16位段地址的最低8位必須為0,即從一頁(yè)的起點(diǎn)開(kāi)始。

PARA:16位段地址的最低4位必須為0,即從一段的起點(diǎn)開(kāi)始。

WORD:16位段地址的最低1位必須為0,即從偶地址開(kāi)始。

BYTE:16位段地址可以為任意值,即段可以從任何字節(jié)開(kāi)始

4.2匯編語(yǔ)言源程序的結(jié)構(gòu)(2)組合類(lèi)型(表示本段與其他段的關(guān)系,為連接程序使 用,缺省為NONE):

NONE:與其他段不發(fā)生關(guān)系,每段都有自己的基地址

PUBLIC:與其他同名同‘類(lèi)別’的段連接在一起,使用 一個(gè)共同的基地 址

STACK:與PUBLIC同樣處理,但作為堆棧段

COMMON:與其他同名同‘類(lèi)別’的段相互重疊在一起,使用一個(gè)共同的 基地址

AT表達(dá)式:把本段裝在表達(dá)式值所指定的段地址上(值為16位;不能 指定代碼段)

MEMORY:把本段定位在所有其他段之上,若有多個(gè)則只有 連接時(shí)遇到的第一個(gè)有效,其余按COMMON處理)(3)類(lèi)別名:為連接程序使用,把類(lèi)別名相同的段放在連續(xù)的存儲(chǔ)區(qū)間 (一般有‘STACK’、‘CODE’、‘DATA’)。

4.2匯編語(yǔ)言源程序的結(jié)構(gòu)四、ORG偽指令

ORG偽指令規(guī)定了在某一段內(nèi),程序或數(shù)據(jù)代碼存放的起始偏移地址。

一般格式:ORG<表達(dá)式>

例如:DATASEGMENT ORG 2000H BUFFDB‘STRING’ DATAENDS

上述變量定義中,BUFF從DATA段偏移為2000H的單元開(kāi)始存放。五、匯編程序結(jié)束偽指令END

該偽指令表示源程序的結(jié)束.令匯編程序停止匯編。因此,任何一個(gè)完整的源程序均應(yīng)有END指令。

一般格式:END[表達(dá)式]

其中表達(dá)式表示該匯編程序的啟動(dòng)地址。例如:

ENDSTART;表明該程序的啟動(dòng)地址為START。4.3數(shù)據(jù)定義

3.3.1常量、變量和標(biāo)號(hào)(1)常量 二進(jìn)制:10111001B

十進(jìn)制:1234D或1234

八進(jìn)制:255Q或255O

十六進(jìn)制:3A5DH,第一位為字母時(shí)前面加數(shù)字0

字符串常數(shù):用單引號(hào)括起來(lái)的一個(gè)或多個(gè)字符組成一個(gè) 字符串常數(shù),例如:‘The’在內(nèi)存中以字符的 ASCII碼值存放,注意一個(gè)空格也是一個(gè)字符。 如‘The’,在內(nèi)存中是: 54H、68H、65H和20H。

4.3.1常量、變量和標(biāo)號(hào)(2)變量:

代表存放在某些存儲(chǔ)單元的數(shù)據(jù)。這些數(shù)據(jù)在程序運(yùn)行期間隨時(shí)可以修改。變量有三個(gè)屬性:段屬性、偏移屬性和類(lèi)型屬性(所具有的字節(jié)數(shù))。(3)標(biāo)號(hào)標(biāo)號(hào)是一條指令的目標(biāo)代碼的符號(hào)地址,它常用作轉(zhuǎn)移指令(或子程序調(diào)用指令)的操作數(shù)。標(biāo)號(hào)有三個(gè)屬性:段屬性、偏移屬性和類(lèi)型屬性。段屬性是該標(biāo)號(hào)的段地址,偏移屬性是該標(biāo)號(hào)的偏移地址,類(lèi)型屬性是表示該標(biāo)號(hào)的范圍是本段(NEAR)或段間(FAR),或稱(chēng)為近或遠(yuǎn)屬性。

4.3.2數(shù)據(jù)定義偽指令格式1:[變量名]偽指令名表達(dá)式1,表達(dá)式2,‥‥

這里偽指令可為DB,DW,DD,

表達(dá)式有以下幾種情況:①數(shù)值表達(dá)式例:DA_BYTEDB50H,50,0caHDA_WORDDW0a3f1H,498dH A1 DD12345H;Memory:45H,23H,01H,00H②?表達(dá)式,不帶引號(hào)的?表示可預(yù)置任何內(nèi)容例:DA_BDB?,?;要求分配兩個(gè)字節(jié)單元

DA_WDW?,?;要求分配兩個(gè)字單元③字符串表達(dá)式數(shù)據(jù)項(xiàng)可以寫(xiě)成字符串形式,但只能用DB、DW、DD定 義,而且DW、DD語(yǔ)句定義的串只允許包含兩個(gè)字符。

4.3.2數(shù)據(jù)定義偽指令格式2:[變量名]偽指令名表達(dá)式1DUP(表達(dá)式2)用于定義重復(fù)的數(shù)據(jù)或分配一數(shù)據(jù)塊空間. 例:D_B1

DB20HDUP(?);保留20H個(gè)字節(jié)

D_B2DB10HDUP(‘ABCD’);字符串‘ABCD’

重復(fù)10H次

D_W1DW10HDUP(4);字4重復(fù)10H次

5.1總線(xiàn)概述

微型計(jì)算機(jī)系統(tǒng)中,總線(xiàn)可以說(shuō)是無(wú)所不在。總線(xiàn)的層次包括:片內(nèi)總線(xiàn);片總線(xiàn);系統(tǒng)總線(xiàn);外部總線(xiàn)(通信總線(xiàn))。5.1總線(xiàn)概述5.1總線(xiàn)概述總線(xiàn)結(jié)構(gòu)的優(yōu)缺點(diǎn)簡(jiǎn)化結(jié)構(gòu),降低成本統(tǒng)一標(biāo)準(zhǔn),便于制造擴(kuò)充靈活,方便使用不允許同時(shí)有幾個(gè)部件互相傳輸信息總線(xiàn)傳輸看起來(lái)簡(jiǎn)單,其實(shí)是相當(dāng)復(fù)雜的。需要妥善解決總線(xiàn)握手和總線(xiàn)仲裁問(wèn)題。5.3總線(xiàn)仲裁和握手技術(shù)總線(xiàn)主設(shè)備總線(xiàn)主設(shè)備是指可以發(fā)起和控制總線(xiàn)數(shù)據(jù)傳輸?shù)脑O(shè)備。如DMA控制器??偩€(xiàn)從設(shè)備總線(xiàn)從設(shè)備不能直接發(fā)起和控制總線(xiàn)的數(shù)據(jù)傳輸。它們只能接受主設(shè)備的要求,在主設(shè)備的控制下,接收主設(shè)備傳送過(guò)來(lái)的數(shù)據(jù),或者把數(shù)據(jù)傳送給主設(shè)備。如RAM模塊。5.3總線(xiàn)仲裁和握手技術(shù)總線(xiàn)仲裁需要進(jìn)行總線(xiàn)仲裁的前提是總線(xiàn)上連接了多個(gè)總線(xiàn)主設(shè)備。總線(xiàn)仲裁就是在總線(xiàn)上有多個(gè)總線(xiàn)主設(shè)備并且同時(shí)要求控制總線(xiàn)時(shí),決定將總線(xiàn)控制權(quán)交給哪一個(gè)主設(shè)備。也就是裁決哪個(gè)主設(shè)備可以控制總線(xiàn)?;镜奶幚矸椒?,就是由總線(xiàn)仲裁器來(lái)判定哪個(gè)主設(shè)備可以控制總線(xiàn)。5.3總線(xiàn)仲裁和握手技術(shù)主設(shè)備在請(qǐng)求控制總線(xiàn)前,先測(cè)試BB信號(hào)如果BB顯示不忙,發(fā)出BR信號(hào),請(qǐng)求占用總線(xiàn)仲裁器發(fā)出BR信號(hào),表示同意使用總線(xiàn)的請(qǐng)求仲裁器將BB信號(hào)改為“忙”,標(biāo)識(shí)總線(xiàn)已經(jīng)被占用。5.3總線(xiàn)仲裁和握手技術(shù)總線(xiàn)上的主設(shè)備和從設(shè)備在工作速度上可以有較大的差別。如果主設(shè)備發(fā)送數(shù)據(jù)的速度快,從設(shè)備接收數(shù)據(jù)的速度慢,就會(huì)造成數(shù)據(jù)的丟失。因此,必須對(duì)于總線(xiàn)的數(shù)據(jù)傳輸進(jìn)行控制。對(duì)于總線(xiàn)傳輸進(jìn)行控制,就是這里所說(shuō)的總線(xiàn)握手。總線(xiàn)握手的基本方式有同步方式、異步方式和半同步方式。5.3總線(xiàn)仲裁和握手技術(shù)1.同步方式采用同步傳輸控制方式的總線(xiàn)就是同步總線(xiàn)。同步方式的總線(xiàn)主、從設(shè)備在同一時(shí)鐘的控制下進(jìn)行傳送,一次數(shù)據(jù)傳輸?shù)臅r(shí)間是固定的。采用同步方式時(shí),發(fā)送地址和數(shù)據(jù)的時(shí)間是固定的,總線(xiàn)主、從設(shè)備嚴(yán)格按照一定的時(shí)序進(jìn)行數(shù)據(jù)的讀寫(xiě)操作。5.3總線(xiàn)仲裁和握手技術(shù)2.異步方式異步傳輸控制方式?jīng)]有統(tǒng)一的時(shí)鐘,總線(xiàn)主設(shè)備和從設(shè)備可以具有不同的工作速度。在主、從設(shè)備之間增加了一條請(qǐng)求線(xiàn)Req,一條應(yīng)答線(xiàn)Ack。也就是采用請(qǐng)求~應(yīng)答的握手方式,來(lái)進(jìn)行傳輸控制。5.3總線(xiàn)仲裁和握手技術(shù)3.半同步方式半同步方式是對(duì)于同步方式的適當(dāng)修正。半同步方式仍然具有統(tǒng)一的時(shí)鐘,但是增加了一條WAIT信號(hào)線(xiàn)。主設(shè)備在正式接收數(shù)據(jù)前,先檢測(cè)WAIT信號(hào)線(xiàn),如果WAIT信號(hào)是高電平,則意味著需要等待,主設(shè)備將繼續(xù)等待,繼續(xù)在下一個(gè)時(shí)鐘周期檢測(cè)WAIT信號(hào),一直到WAIT信號(hào)等于低電平,就是不需要繼續(xù)等待時(shí),才開(kāi)始正式的數(shù)據(jù)傳輸。存儲(chǔ)器系統(tǒng)設(shè)計(jì)存儲(chǔ)器系統(tǒng)設(shè)計(jì):首先應(yīng)該確定整機(jī)存儲(chǔ)容量,再根據(jù)需要確定選用存儲(chǔ)芯片的類(lèi)型和數(shù)量劃分RAM、ROM區(qū),畫(huà)出地址分配圖并根據(jù)地址分配圖確定譯碼方法最后選用合適器件,畫(huà)出譯碼電路圖。

存儲(chǔ)器系統(tǒng)設(shè)計(jì)

存儲(chǔ)器芯片的選擇:根據(jù)存儲(chǔ)器的容量和芯片的容量決定需要存儲(chǔ)器芯片的數(shù)目:

T=總?cè)萘?單片容量 注意:總?cè)萘渴谴鎯?chǔ)器單元數(shù)×8

如:64KB存儲(chǔ)器需要2164(64K×1位):

(64K×8)/(64K×1)=8片根據(jù)需要選擇靜態(tài)或動(dòng)態(tài)RAM主存儲(chǔ)器設(shè)計(jì)存儲(chǔ)器芯片和CPU的連接數(shù)據(jù)線(xiàn):CPU的數(shù)據(jù)總線(xiàn)和存儲(chǔ)器的數(shù)據(jù)線(xiàn)直接連接。當(dāng)存儲(chǔ)器芯片的數(shù)據(jù)線(xiàn)不足8位時(shí),需要幾個(gè)芯片并聯(lián),使數(shù)據(jù)線(xiàn)數(shù)目和CPU需要的一致。存儲(chǔ)器芯片并聯(lián)時(shí),地址線(xiàn)、控制線(xiàn)是并聯(lián)的,但數(shù)據(jù)線(xiàn)是單獨(dú)地接到數(shù)據(jù)總線(xiàn)。這時(shí)的要求是同樣的地址能選中并聯(lián)在一起的幾個(gè)芯片。主存儲(chǔ)器設(shè)計(jì)存儲(chǔ)器的尋址方法——地址線(xiàn)的連接要求:CPU發(fā)出一個(gè)地址,只能找到一片(或一組)存儲(chǔ)器芯片。一般在總線(xiàn)上,總是有多組存儲(chǔ)器芯片,存儲(chǔ)器尋址就是要區(qū)分這些存儲(chǔ)器芯片。存儲(chǔ)器芯片的地址線(xiàn)一般總是少于CPU的地址線(xiàn),也就是說(shuō),除了直接連接到存儲(chǔ)器芯片的地址線(xiàn)外,還有一些沒(méi)有連接的地址線(xiàn)。這些地址線(xiàn)將通過(guò)譯碼器形成存儲(chǔ)器芯片的高位地址。地址線(xiàn)的連接根據(jù)所選用的半導(dǎo)體存儲(chǔ)器芯片地址線(xiàn)的多少,把CPU的地址線(xiàn)分為芯片外(指存儲(chǔ)器芯片)地址和芯片內(nèi)的地址片外地址經(jīng)地址譯碼器譯碼后輸出,作為存儲(chǔ)器芯片的片選信號(hào),用來(lái)選中CPU所要訪(fǎng)問(wèn)的存儲(chǔ)器芯片。片內(nèi)地址線(xiàn)直接接到所要訪(fǎng)問(wèn)的存儲(chǔ)器芯片的地址引腳,用來(lái)直接選中該芯片中的一個(gè)存儲(chǔ)單元。片外地址譯碼電路實(shí)現(xiàn)片選的方法有3種:線(xiàn)選法、全譯碼法和部分譯碼法。主存儲(chǔ)器設(shè)計(jì)線(xiàn)選法用一條多余的地址線(xiàn)連接一片存儲(chǔ)器芯片,可以直接連接,或通過(guò)反相器連接。用線(xiàn)選法尋址,需要增加的硬件電路最少,甚至不需要增加任何硬件。但是,線(xiàn)選法所選擇的芯片的地址是不連續(xù)的,在使用中不方便。此外,線(xiàn)選法會(huì)產(chǎn)生不可以使用的地址,地址的利用率受到影響.。主存儲(chǔ)器設(shè)計(jì)部分譯碼:用多余地址線(xiàn)的一部分加到譯碼器,用譯碼器的輸出控制存儲(chǔ)器芯片的片選端。各芯片的地址可以保證是連續(xù)的。由于還有一部分地址線(xiàn)沒(méi)有參加尋址,這些地址線(xiàn)的信號(hào)值可以是任意的。結(jié)果是使得每個(gè)芯片的地址區(qū)不是唯一的,也就是存在著地址的重疊區(qū)。主存儲(chǔ)器設(shè)計(jì)全譯碼用全部多余的地址線(xiàn)加到譯碼器,用譯碼器輸出控制存儲(chǔ)器芯片的片選端。由于全部地址線(xiàn)都參加譯碼,存儲(chǔ)器芯片的地址將是唯一的。一般來(lái)說(shuō),全譯碼需要的譯碼器比較復(fù)雜,譯碼器的輸出可能沒(méi)有全部使用。適當(dāng)?shù)剡B接譯碼器,可以即達(dá)到全譯碼的效果,譯碼器也不太復(fù)雜。概述把外部設(shè)備同計(jì)算機(jī)連接起來(lái)實(shí)現(xiàn)數(shù)據(jù)傳送的控制電路稱(chēng)為I/O接口電路,簡(jiǎn)稱(chēng)I/O接口。第七章微型計(jì)算機(jī)和外設(shè)間的數(shù)據(jù)傳輸I/O接口

(1)轉(zhuǎn)換信息格式——例如串/并、并/串轉(zhuǎn)換等;(2)提供聯(lián)絡(luò)信號(hào)——協(xié)調(diào)數(shù)據(jù)傳送的狀態(tài)信息,如設(shè)備“就緒”、“忙”、“選通”、“應(yīng)答”,數(shù)據(jù)緩沖器“滿(mǎn)”、“空”等;(3)協(xié)調(diào)定時(shí)差異——為協(xié)調(diào)計(jì)算機(jī)與外設(shè)在“定時(shí)”或數(shù)據(jù)處理速度上的差異,使兩者之間的數(shù)據(jù)交換取得同步,有必要對(duì)傳輸?shù)臄?shù)據(jù)或地址加以緩沖或鎖存;(4)進(jìn)行譯碼選址——一般微機(jī)系統(tǒng)中都具有多臺(tái)外設(shè),因此I/O接口必須提供設(shè)備地址譯碼以及確定其端口的功能;(5)實(shí)現(xiàn)電平轉(zhuǎn)換——外部電路采用的電平多種多樣,包括TTL,CMOS,RS-232等,接口電路必須提供計(jì)算機(jī)同外設(shè)間的電平轉(zhuǎn)換和驅(qū)動(dòng)功能;(6)具備時(shí)序控制——有的接口電路具有自己的時(shí)序,以滿(mǎn)足計(jì)算機(jī)和各種外設(shè)在時(shí)序方面的要求。

CPU與I/O之

溫馨提示

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

評(píng)論

0/150

提交評(píng)論