《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件_第1頁
《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件_第2頁
《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件_第3頁
《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件_第4頁
《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件_第5頁
已閱讀5頁,還剩115頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第二章8086/8088微處理器第二章8086/8088微處理器18086:16位微處理器數(shù)據(jù)總線寬度16位:可以處理8位或16位數(shù)據(jù)地址總線寬度20位:可直接尋址1MB單元和64KB的

I/O端口8088:準(zhǔn)16位處理器內(nèi)部寄存器及內(nèi)部操作均為16位,外部數(shù)據(jù)總線8位8088與8086指令系統(tǒng)完全相同,芯片內(nèi)部邏輯結(jié)構(gòu)、芯片引腳有個(gè)別差異。設(shè)計(jì)8088的目的主要是為了與Intel原有的8位外圍接口芯片直接兼容8086:16位微處理器2第一節(jié)8086/8088微處理器的結(jié)構(gòu)一、內(nèi)部結(jié)構(gòu)(編程結(jié)構(gòu)):見圖2.1

由兩部分組成:總線接口單元BIU(BusInterfaceUnit)執(zhí)行單元EU(ExecutionUnit)(一)總線接口單元BIU

功能:負(fù)責(zé)與內(nèi)存或I/O端口傳送指令或數(shù)據(jù)①BIU從內(nèi)存取指令送到指令隊(duì)列緩沖器②當(dāng)EU執(zhí)行指令時(shí),BIU要配合EU從指定的內(nèi)存單元或I/O端口中讀取數(shù)據(jù),或者把EU的操作結(jié)果送到指定的內(nèi)存單元或I/O端口去。

組成:4個(gè)16位的段寄存器(CS、DS、ES、SS);1個(gè)16位的指令指針寄存器IP;1個(gè)地址加法器;6個(gè)字節(jié)的指令隊(duì)列;總線控制電路

第一節(jié)8086/8088微處理器的結(jié)構(gòu)一、內(nèi)部結(jié)構(gòu)(編程結(jié)31.指令隊(duì)列緩沖器

先進(jìn)先出8086:6個(gè)字節(jié),有2個(gè)空字節(jié)時(shí),自動(dòng)取指令8088:4個(gè)字節(jié),有1個(gè)空字節(jié)時(shí),自動(dòng)取指令說明傳統(tǒng)的CPU執(zhí)行指令的過程是:取指令->執(zhí)行指令->再取指令->……,串行執(zhí)行。

8086是把“取指令”和“執(zhí)行指令”分別由BIU和EU兩個(gè)部件來完成。當(dāng)EU正在執(zhí)行指令時(shí),BIU可以從內(nèi)存中取出指令字節(jié),放在指令隊(duì)列中。這樣,使得“取指令”和“執(zhí)行指令”的操作在時(shí)間上是并行的。

BIU和EU協(xié)調(diào)配合,使EU可以連續(xù)不停一條接一條地執(zhí)行事先已進(jìn)入指令隊(duì)列中的指令。顯然,這種工作方式可以加快程序的執(zhí)行,提高了CPU的效率。體現(xiàn)了“流水線計(jì)算機(jī)”(PipeLineComputer)的初步特點(diǎn)。1.指令隊(duì)列緩沖器42.地址加法器和段寄存器

地址加法器:用來產(chǎn)生20位的物理地址。一個(gè)存儲(chǔ)單元具有兩種地址屬性:物理地址和邏輯地址。物理地址:CPU訪問存儲(chǔ)器時(shí),在地址總線上實(shí)際送出的地址。它的范圍(如8086系統(tǒng))是00000H~FFFFFH,即有220=1MB的地址空間。但8086的內(nèi)部寄存器是16位。顯然,不能用16位的寄存器來實(shí)現(xiàn)對(duì)1MB單元的尋址。為此,引入了存儲(chǔ)器“分段”的概念,即把1MB內(nèi)存空間分成若干段。每段最大可達(dá)64KB--可由16位寄存器進(jìn)行尋址。2.地址加法器和段寄存器

地址加法器:用來產(chǎn)生20位的5段的起始地址成為“段基址”,要訪問的單元距段基址的距離(字節(jié)數(shù))為“偏移量”(Offset)?!蔚钠鹗嫉刂菲屏恳L問的單元段段的起始地址成為“段基址”,要訪問的單元距段基址的距離(字節(jié)6程序設(shè)計(jì)時(shí),使用的是邏輯地址。邏輯地址由“段基址”和“偏移量”構(gòu)成(均為16位)?!岸位贰庇啥渭拇嫫鰿S、DS、SS和ES提供;“偏移量”由BX、BP、IP、SP、SI、DI或根據(jù)尋址方式計(jì)算出的有效地址EA(EffectiveAddress)提供。注意:①每個(gè)存儲(chǔ)單元有唯一的物理地址,但它卻可由不同的“段基址”和“偏移量”組成。例如: 1200H:0345H12345H 1100H:1345H12345H②除非專門指定,一般情況下,段在存儲(chǔ)器中的分配是由操作系統(tǒng)負(fù)責(zé)的。程序設(shè)計(jì)時(shí),使用的是邏輯地址。邏輯地址由“段基址”和“偏移量7由邏輯地址獲得物理地址的計(jì)算公式:

物理地址=段基值X16+偏移量由邏輯地址獲得物理地址的計(jì)算公式:8例.設(shè)(CS)=4232H,(IP)=66H例.設(shè)(CS)=4232H,(IP)=66H93.16位指令指針寄存器IP

正常運(yùn)行時(shí),IP中含有BIU要取的下一條指令(字節(jié))的偏移地址。IP在程序運(yùn)行中能自動(dòng)加1,指向要執(zhí)行的下一條指令。3.16位指令指針寄存器IP10(二)執(zhí)行單元EU(ExecutionUnit)見圖2.1

功能:負(fù)責(zé)指令的譯碼和執(zhí)行,負(fù)責(zé)向總線接口單元BIU提供偏移地址,對(duì)通用寄存器和標(biāo)志寄存器進(jìn)行管理。

組成:ALU(算術(shù)邏輯單元)通用寄存器組:AX,BX,CX,DX,BP,SP,SI,DI標(biāo)志寄存器FR執(zhí)行單元控制電路(二)執(zhí)行單元EU(ExecutionUnit)見圖2.11二、寄存器結(jié)構(gòu)

共有14個(gè)16位的寄存器。

(一)通用寄存器1.數(shù)據(jù)寄存器AX、BX、CX、DX:16位每個(gè)數(shù)據(jù)寄存器也可分為兩個(gè)8位寄存器使用,如:AX可分為AH(高8位)、AL(低8位)。

數(shù)據(jù)寄存器的隱含使用見表2-1。二、寄存器結(jié)構(gòu)122.指針寄存器和變址寄存器

指針寄存器:

BP:基址指針寄存器SP:堆棧指針寄存器變址寄存器:SI:源變址寄存器DI:目的變址寄存器一般用來存放地址的偏移量。

2.指針寄存器和變址寄存器13(二)段寄存器

CS—代碼段寄存器DS—數(shù)據(jù)段寄存器ES—擴(kuò)展段寄存器SS—堆棧段寄存器(三)標(biāo)志寄存器

16位,只用了其中的9位根據(jù)功能,8086的標(biāo)志分為兩類:狀態(tài)標(biāo)志和控制標(biāo)志(二)段寄存器14標(biāo)志寄存器的格式及各位的含義1514131211109876543210OFDFIFTFSFZFAFPFCF狀態(tài)標(biāo)志方向標(biāo)志中斷標(biāo)志跟蹤標(biāo)志TraceFlag控制標(biāo)志進(jìn)位標(biāo)志奇偶標(biāo)志半進(jìn)位標(biāo)志零標(biāo)志符號(hào)標(biāo)志溢出標(biāo)志標(biāo)志寄存器的格式及各位的含義1514131211109876151.

狀態(tài)標(biāo)志(6位):表示前面的操作執(zhí)行后,算術(shù)邏輯部件處于怎樣一種狀態(tài)。例如,是否產(chǎn)生了進(jìn)位,是否發(fā)生了溢出等等。程序中,可以通過對(duì)某個(gè)狀態(tài)標(biāo)志的測(cè)試,決定后面的走向及操作。

●進(jìn)位標(biāo)志CF(CarryFlag)它反映:加法時(shí),最高位(字節(jié)操作時(shí)的D7位,字操作時(shí)的D15位)是否有進(jìn)位產(chǎn)生。減法時(shí),最高位(字節(jié)操作時(shí)的D7位,字操作時(shí)的D15位)是否有借位產(chǎn)生?!衿媾紭?biāo)志PF(ParityFlag):若運(yùn)算結(jié)果低8位中“1”的個(gè)數(shù)為偶數(shù),則PF=1;否則PF=0?!褫o助進(jìn)位標(biāo)志AF(AuxiliarycarrryFlag):也稱“半進(jìn)位標(biāo)志”,它反映:加法時(shí),第3位向第4位有進(jìn)位;減法時(shí),第3位向第4位有借位。1.狀態(tài)標(biāo)志(6位):表示前面的操作執(zhí)行后,算術(shù)邏輯部件16●零標(biāo)志ZF(ZeroFlag):若運(yùn)算結(jié)果為0,則ZF=1;否則ZF=0。●符號(hào)標(biāo)志(SignFlag):它和運(yùn)算結(jié)果的最高位相同。

●溢出標(biāo)志OF(OverflowFlag):若運(yùn)算過程中發(fā)生了“溢出”,則OF=12.控制標(biāo)志(3位):每一位控制標(biāo)志都對(duì)一種特定的功能起控制作用。可以通過專門的指令對(duì)其進(jìn)行“置位”(Set)或“復(fù)位”(Reset)?!裰袛嘣试S標(biāo)志IF(InterruptEnableFlag):如果IF置“1”,則CPU可以接受可屏蔽中斷請(qǐng)求;反之,則CPU不能接受可屏蔽中斷請(qǐng)求。指令系統(tǒng)中有兩條專門的指令可以置“1”或置“0”IF標(biāo)志位:

STI使IF置“1”,即開放中斷。

CLI使IF清“0”,即關(guān)閉中斷●零標(biāo)志ZF(ZeroFlag):若運(yùn)算結(jié)果為0,則ZF=17●方向標(biāo)志DF(DirectionFlag):用于串操作指令中的地址增量修改(DF=0)還是減量修改(DF=1)。

STD,CLD?!窀櫂?biāo)志TF(TrapFlag):若TF=1,則CPU按跟蹤方式(單步方式)執(zhí)行程序,否則將正常執(zhí)行程序?!穹较驑?biāo)志DF(DirectionFlag):用于串操作指18三、引腳信號(hào)和功能40條引腳按功能可分為5類:

(一)地址/數(shù)據(jù)總線AD15~AD0

地址/數(shù)據(jù)復(fù)用引腳。傳送地址時(shí)為三態(tài)輸出,傳送數(shù)據(jù)時(shí)可雙向三態(tài)輸入/輸出。在8088中,只有AD7~AD08條地址/數(shù)據(jù)線,AD15~AD8只用來輸出地址。三、引腳信號(hào)和功能19(二)地址/狀態(tài)總線A19/S6~A16/S3

地址/狀態(tài)復(fù)用引腳,三態(tài)總線,分時(shí)輸出。在T1狀態(tài):輸出高4位地址。訪問存儲(chǔ)器時(shí),A19~A16送到鎖存器8282鎖存,與AD15~AD0組成20位地址;訪問I/O端口時(shí),不使用這4條引線。在T2~T4狀態(tài):輸出狀態(tài)信息。S6=0:表示CPU與總線相連;S5與IF的內(nèi)容相同;S4、S3用來指示當(dāng)前正在使用哪個(gè)段寄存器。(二)地址/狀態(tài)總線A19/S6~A16/S320(三)控制總線1.BHE/S7:高8位數(shù)據(jù)總線允許/狀態(tài)復(fù)用引腳,三態(tài)、輸出

在T1狀態(tài):輸出BHE,若BHE=0,則利用數(shù)據(jù)總線高8位AD15~AD8和奇地址存儲(chǔ)器單元或端口交換數(shù)據(jù)。

在T2~T4狀態(tài):輸出S7(無意義)。2.RD:讀信號(hào),三態(tài)、輸出

RD=0時(shí),表示將要執(zhí)行一個(gè)對(duì)存儲(chǔ)器或I/O端口(取決于M/IO)的讀操作。在讀操作的總線周期的T2、T3和TW為低電平。

3.READY:“準(zhǔn)備好”信號(hào),輸入

實(shí)際上是由所尋址的存儲(chǔ)器或I/O端口發(fā)來的響應(yīng)信號(hào)。CPU在T3采樣READY,若READY=0,則在T3后插入一個(gè)或多個(gè)TW,直至READY=1,進(jìn)入T4。(三)控制總線214.TEST:等待測(cè)試信號(hào),輸入

用于多處理器系統(tǒng)中且只有在執(zhí)行WAIT指令時(shí)才使用,當(dāng)CPU執(zhí)行WAIT指令時(shí),每隔5個(gè)時(shí)鐘周期對(duì)該線的輸入進(jìn)行一次測(cè)試:若TEST=1時(shí),CPU將停止取下條指令而進(jìn)入等待狀態(tài),重復(fù)執(zhí)行WAIT指令,直至TEST=0,CPU才繼續(xù)往下執(zhí)行被暫停的指令。等待期間允許外部中斷。

5.INTR:可屏蔽中斷請(qǐng)求信號(hào),輸入、高電平有效

當(dāng)INTR=1時(shí),表示外設(shè)提出了中斷請(qǐng)求,8086/8088在每個(gè)指令周期的最后一個(gè)T狀態(tài)去采樣此信號(hào)。若IF=1,則CPU響應(yīng)中斷,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。6.NMI:非屏蔽中斷請(qǐng)求信號(hào),輸入、上升沿有效

此請(qǐng)求不受IF的影響。只要此信號(hào)一出現(xiàn),就在現(xiàn)行指令結(jié)束后引起中斷。4.TEST:等待測(cè)試信號(hào),輸入

227.RESET:復(fù)位信號(hào),輸入、高電平有效

至少維持4個(gè)時(shí)鐘周期的高電平。見表2-3。8.CLK:系統(tǒng)時(shí)鐘,輸入(四)電源線VCC和地線GND(五)其他控制線這些控制線的功能將根據(jù)方式控制線MN/MX所處的狀態(tài)而定。7.RESET:復(fù)位信號(hào),輸入、高電平有效

至少維持4個(gè)時(shí)鐘23四、工作模式MN/MX:最小/最大模式控制信號(hào),輸入=1:最小模式

=0:最大模式(一)最小模式系統(tǒng)中只有一個(gè)CPU,所有的總線控制信號(hào)由8086產(chǎn)生。

四、工作模式241.INTA:中斷響應(yīng)信號(hào),輸出

用于對(duì)外設(shè)的中斷請(qǐng)求作出響應(yīng)。連續(xù)周期中的兩個(gè)負(fù)脈沖,第1個(gè)脈沖是通知外設(shè)接口,它的中斷請(qǐng)求已獲允許;外設(shè)接口收到第2個(gè)負(fù)脈沖后,往數(shù)據(jù)總線上放中斷類型碼。2.ALE:地址鎖存允許信號(hào),輸出

提供給地址鎖存器8282的控制信號(hào)。在任何一個(gè)總線周期的T1狀態(tài),ALE輸出有效電平,以表示當(dāng)前總線上輸出的是地址信息。3.DEN:數(shù)據(jù)允許信號(hào),輸出

提供給數(shù)據(jù)總線收發(fā)器8286,表示CPU準(zhǔn)備發(fā)送或接收一個(gè)數(shù)據(jù)。4.DT/R:數(shù)據(jù)收發(fā)信號(hào),輸出

用來控制數(shù)據(jù)總線收發(fā)器8286的數(shù)據(jù)傳送方向。

=1:發(fā)送數(shù)據(jù)

=0:接收數(shù)據(jù)1.INTA:中斷響應(yīng)信號(hào),輸出

用于對(duì)外設(shè)的中斷請(qǐng)求作出響25

5.M/IO:存儲(chǔ)器/輸入輸出控制信號(hào),輸出

=1:訪問存儲(chǔ)器

=0:訪問I/O端口6.WR:寫信號(hào),輸出

WR=0時(shí),表示將要執(zhí)行一個(gè)對(duì)存儲(chǔ)器或I/O端口(取決于M/IO)的寫操作。

在寫操作的總線周期的T2、T3和T4為低電平。

M/IO與RD、WR和讀、寫操作的對(duì)應(yīng)關(guān)系。

5.M/IO:存儲(chǔ)器/輸入輸出控制信號(hào),輸出

26

7.HOLD:總線保持請(qǐng)求信號(hào),輸入

HLDA:總線保持響應(yīng)信號(hào),輸出當(dāng)系統(tǒng)中CPU之外的另一個(gè)主模塊要求占用總線時(shí),通過此引腳向CPU發(fā)一個(gè)高電平的請(qǐng)求信號(hào)。這時(shí),如果CPU允許讓出總線,就在當(dāng)前總線周期完成時(shí),于T4狀態(tài)從HLDA引腳發(fā)出一個(gè)回答信號(hào),對(duì)剛才的HOLD請(qǐng)求作出響應(yīng)。同時(shí),CPU使地址/數(shù)據(jù)總線和控制狀態(tài)線處于浮空狀態(tài)??偩€請(qǐng)求部件收到HLDA信號(hào)后,就獲得了總線控制權(quán),在此后一段時(shí)間,HOLD和HLDA都保持高電平。在總線占有部件用完總線之后,會(huì)把HOLD信號(hào)變?yōu)榈碗娖剑硎痉艞墝?duì)總線的占有。8086/8088收到低電平的HOLD信號(hào)后,也將HLDA變?yōu)榈碗娖剑@樣,CPU又獲得了對(duì)地址/數(shù)據(jù)總線和控制/狀態(tài)線的占有權(quán)。7.HOLD:總線保持請(qǐng)求信號(hào),輸入

HLDA:總27(二)最大模式系統(tǒng)中有一個(gè)主處理器(8086/8088),其他的為協(xié)處理器(數(shù)值運(yùn)算協(xié)處理器8087和輸入/輸出協(xié)處理器8089)。8086在最大模式下的典型配置比最小模式增加了總線控制器8288,解決主、協(xié)處理器之間的協(xié)調(diào)工作問題和對(duì)總線的共享控制問題。見圖2-10。1.S2、S1、S0:總線周期狀態(tài)信號(hào),輸出。

見圖2-10和表2-4。

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

(二)最大模式283.LOCK:總線封鎖信號(hào),輸出當(dāng)LOCK為低電平時(shí),系統(tǒng)中其它總線主部件就不能占用總線。LOCK信號(hào)由指令前綴LOCK產(chǎn)生,而在LOCK后面的一條指令執(zhí)行完后,便撤銷了LOCK信號(hào)。4.RQ/GT1、RQ/GT0:總線請(qǐng)求信號(hào)輸入/總線請(qǐng)求允許信號(hào)輸出,雙向。供協(xié)處理器發(fā)出使用總線的請(qǐng)求信號(hào)和接收CPU對(duì)總線請(qǐng)求的回答信號(hào)。后者比前者的優(yōu)先級(jí)高。3.LOCK:總線封鎖信號(hào),輸出29五、8086/8088的存儲(chǔ)空間1.存儲(chǔ)器組織存儲(chǔ)器按字節(jié)組織,每個(gè)字節(jié)只有唯一的地址。若存放的信息是8位的,將按順序存放;若存放的信息是1個(gè)字時(shí),則將該字的低字節(jié)放在低地址中,高字節(jié)放在高地址中;若存放的信息是雙字時(shí)(一般作為指針),低位字是被尋址地址的偏移量,高位字是被尋址地址所在的段基址。見圖2-11。五、8086/8088的存儲(chǔ)空間30對(duì)存放的字,其低位字節(jié)可以在奇數(shù)地址中開始存放,也可以在偶數(shù)地址中開始存放,前者稱為非規(guī)則存放,這樣存放的字稱為非規(guī)則字;后者稱為規(guī)則存放,這樣存放的字稱為規(guī)則字。見圖2-11。對(duì)規(guī)則字的存取可以在一個(gè)總線周期完成,非規(guī)則字的存取則需兩個(gè)總線周期。在8086/8088程序中,指令僅要求指出對(duì)某個(gè)字節(jié)或字進(jìn)行訪問,而對(duì)存儲(chǔ)器訪問的方式不必說明,由處理器自動(dòng)識(shí)別。見圖2-12。8086的1MB存儲(chǔ)空間實(shí)際上分為兩個(gè)512KB的存儲(chǔ)體(又稱存儲(chǔ)庫),分別叫高位庫和低位庫。低位庫與數(shù)據(jù)總線D7~D0相連,該庫中每個(gè)地址均為偶數(shù)地址;高位庫與數(shù)據(jù)總線D15~D8相連,該庫中每個(gè)地址均為奇數(shù)地址。

見圖2-13和表2-6。對(duì)存放的字,其低位字節(jié)可以在奇數(shù)地址中開始存放,312.存儲(chǔ)器分段在8086/8088系統(tǒng)中,1MB存儲(chǔ)空間被分為若干邏輯段,其實(shí)際存儲(chǔ)器中段的位置如圖2-14所示。每段最多可包含64KB長的連續(xù)存儲(chǔ)單元。每個(gè)段的起始地址又叫基址,它的最后4位為0,是一個(gè)能被16整除的數(shù)。段和段之間可以是連續(xù)的、分開的、部分重疊或完全重疊的。一個(gè)程序所用的具體存儲(chǔ)空間可以為一個(gè)邏輯段,也可以為多個(gè)邏輯段。段的基址存放于段寄存器CS、DS、ES、SS中,所以程序可以從4個(gè)段寄存器給出的邏輯段中存取代碼和數(shù)據(jù)。若要對(duì)別的段而不是當(dāng)前可尋址的段中存取信息,程序必須首先改變對(duì)應(yīng)的段寄存器的內(nèi)容,將其設(shè)置成所要存取的段的基址。2.存儲(chǔ)器分段323.實(shí)際地址和邏輯地址實(shí)際地址(也稱物理地址):CPU和存儲(chǔ)器進(jìn)行數(shù)據(jù)交換時(shí)實(shí)際尋址所使用的地址,20位二進(jìn)制數(shù)或5位十六進(jìn)制數(shù)所表示的地址。邏輯地址:由兩部分組成:段基址和偏移量。前者是由段寄存器給出的段起始地址;后者是指存儲(chǔ)單元所在的位置離段起始地址(即基址)的偏移距離,又稱偏移地址。均用無符號(hào)的16位二進(jìn)制數(shù)或4位十六進(jìn)制數(shù)表示。程序中不使用實(shí)際地址,而使用邏輯地址。當(dāng)CPU訪問主存時(shí),BIU將邏輯地址轉(zhuǎn)換為20位物理地址。

注意:一個(gè)實(shí)際地址可對(duì)應(yīng)多個(gè)邏輯地址。

邏輯地址源見表2-7。3.實(shí)際地址和邏輯地址338086總線周期的概念:為了取得指令或傳送數(shù)據(jù),就需要CPU的總線接口單元執(zhí)行一個(gè)總線周期。一個(gè)最基本的總線周期由4個(gè)時(shí)鐘周期組成,時(shí)鐘周期是CPU的基本時(shí)間計(jì)量單位,它由計(jì)算機(jī)主頻決定。比如,8086的主頻為5MHz,1個(gè)時(shí)鐘周期就是200ns;8086-l的主頻為10MHz,1個(gè)時(shí)鐘周期為100ns。在1個(gè)最基本的總線周期中,習(xí)慣上將4個(gè)時(shí)鐘周期分別稱為4個(gè)狀態(tài),即T1狀態(tài)、T2狀態(tài)、T3狀態(tài)和T4狀態(tài)。在總線周期的T1狀態(tài)用來輸出要尋址的存儲(chǔ)器或I/O端口地址;在T2狀態(tài)浮置成高阻狀態(tài),為傳輸數(shù)據(jù)作準(zhǔn)備;在T3狀態(tài)用于傳輸數(shù)據(jù);T4狀態(tài)結(jié)束總線周期。第二節(jié)8086/8088總線操作第二節(jié)8086/8088總線操作34總線操作可以分為:a)總線讀操作(CPU從存儲(chǔ)器或I/O端口讀取數(shù)據(jù))b)總線寫操作(CPU將數(shù)據(jù)寫入存儲(chǔ)器或I/O端口)1.最小模式下的總線讀操作

2.最小模式下的總線寫操作3.中斷響應(yīng)周期4.最大模式下的總線讀操作5.最大模式下的總線寫操作第二節(jié)8086/8088總線操作總線操作可以分為:第二節(jié)8086/8088總線操作35謝謝大家結(jié)束謝謝大家結(jié)束36《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件37《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件38《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件39《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件40《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件41《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件42《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件43《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件44《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件45《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件46《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件47《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件48《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件49《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件50《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件51《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件52《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件53《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件54《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件55《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件56《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件57《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件58《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件59《微機(jī)原理及應(yīng)用》第二章-8086、88微處理器課件60第二章8086/8088微處理器第二章8086/8088微處理器618086:16位微處理器數(shù)據(jù)總線寬度16位:可以處理8位或16位數(shù)據(jù)地址總線寬度20位:可直接尋址1MB單元和64KB的

I/O端口8088:準(zhǔn)16位處理器內(nèi)部寄存器及內(nèi)部操作均為16位,外部數(shù)據(jù)總線8位8088與8086指令系統(tǒng)完全相同,芯片內(nèi)部邏輯結(jié)構(gòu)、芯片引腳有個(gè)別差異。設(shè)計(jì)8088的目的主要是為了與Intel原有的8位外圍接口芯片直接兼容8086:16位微處理器62第一節(jié)8086/8088微處理器的結(jié)構(gòu)一、內(nèi)部結(jié)構(gòu)(編程結(jié)構(gòu)):見圖2.1

由兩部分組成:總線接口單元BIU(BusInterfaceUnit)執(zhí)行單元EU(ExecutionUnit)(一)總線接口單元BIU

功能:負(fù)責(zé)與內(nèi)存或I/O端口傳送指令或數(shù)據(jù)①BIU從內(nèi)存取指令送到指令隊(duì)列緩沖器②當(dāng)EU執(zhí)行指令時(shí),BIU要配合EU從指定的內(nèi)存單元或I/O端口中讀取數(shù)據(jù),或者把EU的操作結(jié)果送到指定的內(nèi)存單元或I/O端口去。

組成:4個(gè)16位的段寄存器(CS、DS、ES、SS);1個(gè)16位的指令指針寄存器IP;1個(gè)地址加法器;6個(gè)字節(jié)的指令隊(duì)列;總線控制電路

第一節(jié)8086/8088微處理器的結(jié)構(gòu)一、內(nèi)部結(jié)構(gòu)(編程結(jié)631.指令隊(duì)列緩沖器

先進(jìn)先出8086:6個(gè)字節(jié),有2個(gè)空字節(jié)時(shí),自動(dòng)取指令8088:4個(gè)字節(jié),有1個(gè)空字節(jié)時(shí),自動(dòng)取指令說明傳統(tǒng)的CPU執(zhí)行指令的過程是:取指令->執(zhí)行指令->再取指令->……,串行執(zhí)行。

8086是把“取指令”和“執(zhí)行指令”分別由BIU和EU兩個(gè)部件來完成。當(dāng)EU正在執(zhí)行指令時(shí),BIU可以從內(nèi)存中取出指令字節(jié),放在指令隊(duì)列中。這樣,使得“取指令”和“執(zhí)行指令”的操作在時(shí)間上是并行的。

BIU和EU協(xié)調(diào)配合,使EU可以連續(xù)不停一條接一條地執(zhí)行事先已進(jìn)入指令隊(duì)列中的指令。顯然,這種工作方式可以加快程序的執(zhí)行,提高了CPU的效率。體現(xiàn)了“流水線計(jì)算機(jī)”(PipeLineComputer)的初步特點(diǎn)。1.指令隊(duì)列緩沖器642.地址加法器和段寄存器

地址加法器:用來產(chǎn)生20位的物理地址。一個(gè)存儲(chǔ)單元具有兩種地址屬性:物理地址和邏輯地址。物理地址:CPU訪問存儲(chǔ)器時(shí),在地址總線上實(shí)際送出的地址。它的范圍(如8086系統(tǒng))是00000H~FFFFFH,即有220=1MB的地址空間。但8086的內(nèi)部寄存器是16位。顯然,不能用16位的寄存器來實(shí)現(xiàn)對(duì)1MB單元的尋址。為此,引入了存儲(chǔ)器“分段”的概念,即把1MB內(nèi)存空間分成若干段。每段最大可達(dá)64KB--可由16位寄存器進(jìn)行尋址。2.地址加法器和段寄存器

地址加法器:用來產(chǎn)生20位的65段的起始地址成為“段基址”,要訪問的單元距段基址的距離(字節(jié)數(shù))為“偏移量”(Offset)?!蔚钠鹗嫉刂菲屏恳L問的單元段段的起始地址成為“段基址”,要訪問的單元距段基址的距離(字節(jié)66程序設(shè)計(jì)時(shí),使用的是邏輯地址。邏輯地址由“段基址”和“偏移量”構(gòu)成(均為16位)。“段基址”由段寄存器CS、DS、SS和ES提供;“偏移量”由BX、BP、IP、SP、SI、DI或根據(jù)尋址方式計(jì)算出的有效地址EA(EffectiveAddress)提供。注意:①每個(gè)存儲(chǔ)單元有唯一的物理地址,但它卻可由不同的“段基址”和“偏移量”組成。例如: 1200H:0345H12345H 1100H:1345H12345H②除非專門指定,一般情況下,段在存儲(chǔ)器中的分配是由操作系統(tǒng)負(fù)責(zé)的。程序設(shè)計(jì)時(shí),使用的是邏輯地址。邏輯地址由“段基址”和“偏移量67由邏輯地址獲得物理地址的計(jì)算公式:

物理地址=段基值X16+偏移量由邏輯地址獲得物理地址的計(jì)算公式:68例.設(shè)(CS)=4232H,(IP)=66H例.設(shè)(CS)=4232H,(IP)=66H693.16位指令指針寄存器IP

正常運(yùn)行時(shí),IP中含有BIU要取的下一條指令(字節(jié))的偏移地址。IP在程序運(yùn)行中能自動(dòng)加1,指向要執(zhí)行的下一條指令。3.16位指令指針寄存器IP70(二)執(zhí)行單元EU(ExecutionUnit)見圖2.1

功能:負(fù)責(zé)指令的譯碼和執(zhí)行,負(fù)責(zé)向總線接口單元BIU提供偏移地址,對(duì)通用寄存器和標(biāo)志寄存器進(jìn)行管理。

組成:ALU(算術(shù)邏輯單元)通用寄存器組:AX,BX,CX,DX,BP,SP,SI,DI標(biāo)志寄存器FR執(zhí)行單元控制電路(二)執(zhí)行單元EU(ExecutionUnit)見圖2.71二、寄存器結(jié)構(gòu)

共有14個(gè)16位的寄存器。

(一)通用寄存器1.數(shù)據(jù)寄存器AX、BX、CX、DX:16位每個(gè)數(shù)據(jù)寄存器也可分為兩個(gè)8位寄存器使用,如:AX可分為AH(高8位)、AL(低8位)。

數(shù)據(jù)寄存器的隱含使用見表2-1。二、寄存器結(jié)構(gòu)722.指針寄存器和變址寄存器

指針寄存器:

BP:基址指針寄存器SP:堆棧指針寄存器變址寄存器:SI:源變址寄存器DI:目的變址寄存器一般用來存放地址的偏移量。

2.指針寄存器和變址寄存器73(二)段寄存器

CS—代碼段寄存器DS—數(shù)據(jù)段寄存器ES—擴(kuò)展段寄存器SS—堆棧段寄存器(三)標(biāo)志寄存器

16位,只用了其中的9位根據(jù)功能,8086的標(biāo)志分為兩類:狀態(tài)標(biāo)志和控制標(biāo)志(二)段寄存器74標(biāo)志寄存器的格式及各位的含義1514131211109876543210OFDFIFTFSFZFAFPFCF狀態(tài)標(biāo)志方向標(biāo)志中斷標(biāo)志跟蹤標(biāo)志TraceFlag控制標(biāo)志進(jìn)位標(biāo)志奇偶標(biāo)志半進(jìn)位標(biāo)志零標(biāo)志符號(hào)標(biāo)志溢出標(biāo)志標(biāo)志寄存器的格式及各位的含義1514131211109876751.

狀態(tài)標(biāo)志(6位):表示前面的操作執(zhí)行后,算術(shù)邏輯部件處于怎樣一種狀態(tài)。例如,是否產(chǎn)生了進(jìn)位,是否發(fā)生了溢出等等。程序中,可以通過對(duì)某個(gè)狀態(tài)標(biāo)志的測(cè)試,決定后面的走向及操作。

●進(jìn)位標(biāo)志CF(CarryFlag)它反映:加法時(shí),最高位(字節(jié)操作時(shí)的D7位,字操作時(shí)的D15位)是否有進(jìn)位產(chǎn)生。減法時(shí),最高位(字節(jié)操作時(shí)的D7位,字操作時(shí)的D15位)是否有借位產(chǎn)生?!衿媾紭?biāo)志PF(ParityFlag):若運(yùn)算結(jié)果低8位中“1”的個(gè)數(shù)為偶數(shù),則PF=1;否則PF=0。●輔助進(jìn)位標(biāo)志AF(AuxiliarycarrryFlag):也稱“半進(jìn)位標(biāo)志”,它反映:加法時(shí),第3位向第4位有進(jìn)位;減法時(shí),第3位向第4位有借位。1.狀態(tài)標(biāo)志(6位):表示前面的操作執(zhí)行后,算術(shù)邏輯部件76●零標(biāo)志ZF(ZeroFlag):若運(yùn)算結(jié)果為0,則ZF=1;否則ZF=0。●符號(hào)標(biāo)志(SignFlag):它和運(yùn)算結(jié)果的最高位相同。

●溢出標(biāo)志OF(OverflowFlag):若運(yùn)算過程中發(fā)生了“溢出”,則OF=12.控制標(biāo)志(3位):每一位控制標(biāo)志都對(duì)一種特定的功能起控制作用??梢酝ㄟ^專門的指令對(duì)其進(jìn)行“置位”(Set)或“復(fù)位”(Reset)?!裰袛嘣试S標(biāo)志IF(InterruptEnableFlag):如果IF置“1”,則CPU可以接受可屏蔽中斷請(qǐng)求;反之,則CPU不能接受可屏蔽中斷請(qǐng)求。指令系統(tǒng)中有兩條專門的指令可以置“1”或置“0”IF標(biāo)志位:

STI使IF置“1”,即開放中斷。

CLI使IF清“0”,即關(guān)閉中斷●零標(biāo)志ZF(ZeroFlag):若運(yùn)算結(jié)果為0,則ZF=77●方向標(biāo)志DF(DirectionFlag):用于串操作指令中的地址增量修改(DF=0)還是減量修改(DF=1)。

STD,CLD。●跟蹤標(biāo)志TF(TrapFlag):若TF=1,則CPU按跟蹤方式(單步方式)執(zhí)行程序,否則將正常執(zhí)行程序?!穹较驑?biāo)志DF(DirectionFlag):用于串操作指78三、引腳信號(hào)和功能40條引腳按功能可分為5類:

(一)地址/數(shù)據(jù)總線AD15~AD0

地址/數(shù)據(jù)復(fù)用引腳。傳送地址時(shí)為三態(tài)輸出,傳送數(shù)據(jù)時(shí)可雙向三態(tài)輸入/輸出。在8088中,只有AD7~AD08條地址/數(shù)據(jù)線,AD15~AD8只用來輸出地址。三、引腳信號(hào)和功能79(二)地址/狀態(tài)總線A19/S6~A16/S3

地址/狀態(tài)復(fù)用引腳,三態(tài)總線,分時(shí)輸出。在T1狀態(tài):輸出高4位地址。訪問存儲(chǔ)器時(shí),A19~A16送到鎖存器8282鎖存,與AD15~AD0組成20位地址;訪問I/O端口時(shí),不使用這4條引線。在T2~T4狀態(tài):輸出狀態(tài)信息。S6=0:表示CPU與總線相連;S5與IF的內(nèi)容相同;S4、S3用來指示當(dāng)前正在使用哪個(gè)段寄存器。(二)地址/狀態(tài)總線A19/S6~A16/S380(三)控制總線1.BHE/S7:高8位數(shù)據(jù)總線允許/狀態(tài)復(fù)用引腳,三態(tài)、輸出

在T1狀態(tài):輸出BHE,若BHE=0,則利用數(shù)據(jù)總線高8位AD15~AD8和奇地址存儲(chǔ)器單元或端口交換數(shù)據(jù)。

在T2~T4狀態(tài):輸出S7(無意義)。2.RD:讀信號(hào),三態(tài)、輸出

RD=0時(shí),表示將要執(zhí)行一個(gè)對(duì)存儲(chǔ)器或I/O端口(取決于M/IO)的讀操作。在讀操作的總線周期的T2、T3和TW為低電平。

3.READY:“準(zhǔn)備好”信號(hào),輸入

實(shí)際上是由所尋址的存儲(chǔ)器或I/O端口發(fā)來的響應(yīng)信號(hào)。CPU在T3采樣READY,若READY=0,則在T3后插入一個(gè)或多個(gè)TW,直至READY=1,進(jìn)入T4。(三)控制總線814.TEST:等待測(cè)試信號(hào),輸入

用于多處理器系統(tǒng)中且只有在執(zhí)行WAIT指令時(shí)才使用,當(dāng)CPU執(zhí)行WAIT指令時(shí),每隔5個(gè)時(shí)鐘周期對(duì)該線的輸入進(jìn)行一次測(cè)試:若TEST=1時(shí),CPU將停止取下條指令而進(jìn)入等待狀態(tài),重復(fù)執(zhí)行WAIT指令,直至TEST=0,CPU才繼續(xù)往下執(zhí)行被暫停的指令。等待期間允許外部中斷。

5.INTR:可屏蔽中斷請(qǐng)求信號(hào),輸入、高電平有效

當(dāng)INTR=1時(shí),表示外設(shè)提出了中斷請(qǐng)求,8086/8088在每個(gè)指令周期的最后一個(gè)T狀態(tài)去采樣此信號(hào)。若IF=1,則CPU響應(yīng)中斷,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。6.NMI:非屏蔽中斷請(qǐng)求信號(hào),輸入、上升沿有效

此請(qǐng)求不受IF的影響。只要此信號(hào)一出現(xiàn),就在現(xiàn)行指令結(jié)束后引起中斷。4.TEST:等待測(cè)試信號(hào),輸入

827.RESET:復(fù)位信號(hào),輸入、高電平有效

至少維持4個(gè)時(shí)鐘周期的高電平。見表2-3。8.CLK:系統(tǒng)時(shí)鐘,輸入(四)電源線VCC和地線GND(五)其他控制線這些控制線的功能將根據(jù)方式控制線MN/MX所處的狀態(tài)而定。7.RESET:復(fù)位信號(hào),輸入、高電平有效

至少維持4個(gè)時(shí)鐘83四、工作模式MN/MX:最小/最大模式控制信號(hào),輸入=1:最小模式

=0:最大模式(一)最小模式系統(tǒng)中只有一個(gè)CPU,所有的總線控制信號(hào)由8086產(chǎn)生。

四、工作模式841.INTA:中斷響應(yīng)信號(hào),輸出

用于對(duì)外設(shè)的中斷請(qǐng)求作出響應(yīng)。連續(xù)周期中的兩個(gè)負(fù)脈沖,第1個(gè)脈沖是通知外設(shè)接口,它的中斷請(qǐng)求已獲允許;外設(shè)接口收到第2個(gè)負(fù)脈沖后,往數(shù)據(jù)總線上放中斷類型碼。2.ALE:地址鎖存允許信號(hào),輸出

提供給地址鎖存器8282的控制信號(hào)。在任何一個(gè)總線周期的T1狀態(tài),ALE輸出有效電平,以表示當(dāng)前總線上輸出的是地址信息。3.DEN:數(shù)據(jù)允許信號(hào),輸出

提供給數(shù)據(jù)總線收發(fā)器8286,表示CPU準(zhǔn)備發(fā)送或接收一個(gè)數(shù)據(jù)。4.DT/R:數(shù)據(jù)收發(fā)信號(hào),輸出

用來控制數(shù)據(jù)總線收發(fā)器8286的數(shù)據(jù)傳送方向。

=1:發(fā)送數(shù)據(jù)

=0:接收數(shù)據(jù)1.INTA:中斷響應(yīng)信號(hào),輸出

用于對(duì)外設(shè)的中斷請(qǐng)求作出響85

5.M/IO:存儲(chǔ)器/輸入輸出控制信號(hào),輸出

=1:訪問存儲(chǔ)器

=0:訪問I/O端口6.WR:寫信號(hào),輸出

WR=0時(shí),表示將要執(zhí)行一個(gè)對(duì)存儲(chǔ)器或I/O端口(取決于M/IO)的寫操作。

在寫操作的總線周期的T2、T3和T4為低電平。

M/IO與RD、WR和讀、寫操作的對(duì)應(yīng)關(guān)系。

5.M/IO:存儲(chǔ)器/輸入輸出控制信號(hào),輸出

86

7.HOLD:總線保持請(qǐng)求信號(hào),輸入

HLDA:總線保持響應(yīng)信號(hào),輸出當(dāng)系統(tǒng)中CPU之外的另一個(gè)主模塊要求占用總線時(shí),通過此引腳向CPU發(fā)一個(gè)高電平的請(qǐng)求信號(hào)。這時(shí),如果CPU允許讓出總線,就在當(dāng)前總線周期完成時(shí),于T4狀態(tài)從HLDA引腳發(fā)出一個(gè)回答信號(hào),對(duì)剛才的HOLD請(qǐng)求作出響應(yīng)。同時(shí),CPU使地址/數(shù)據(jù)總線和控制狀態(tài)線處于浮空狀態(tài)??偩€請(qǐng)求部件收到HLDA信號(hào)后,就獲得了總線控制權(quán),在此后一段時(shí)間,HOLD和HLDA都保持高電平。在總線占有部件用完總線之后,會(huì)把HOLD信號(hào)變?yōu)榈碗娖剑硎痉艞墝?duì)總線的占有。8086/8088收到低電平的HOLD信號(hào)后,也將HLDA變?yōu)榈碗娖?,這樣,CPU又獲得了對(duì)地址/數(shù)據(jù)總線和控制/狀態(tài)線的占有權(quán)。7.HOLD:總線保持請(qǐng)求信號(hào),輸入

HLDA:總87(二)最大模式系統(tǒng)中有一個(gè)主處理器(8086/8088),其他的為協(xié)處理器(數(shù)值運(yùn)算協(xié)處理器8087和輸入/輸出協(xié)處理器8089)。8086在最大模式下的典型配置比最小模式增加了總線控制器8288,解決主、協(xié)處理器之間的協(xié)調(diào)工作問題和對(duì)總線的共享控制問題。見圖2-10。1.S2、S1、S0:總線周期狀態(tài)信號(hào),輸出。

見圖2-10和表2-4。

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

(二)最大模式883.LOCK:總線封鎖信號(hào),輸出當(dāng)LOCK為低電平時(shí),系統(tǒng)中其它總線主部件就不能占用總線。LOCK信號(hào)由指令前綴LOCK產(chǎn)生,而在LOCK后面的一條指令執(zhí)行完后,便撤銷了LOCK信號(hào)。4.RQ/GT1、RQ/GT0:總線請(qǐng)求信號(hào)輸入/總線請(qǐng)求允許信號(hào)輸出,雙向。供協(xié)處理器發(fā)出使用總線的請(qǐng)求信號(hào)和接收CPU對(duì)總線請(qǐng)求的回答信號(hào)。后者比前者的優(yōu)先級(jí)高。3.LOCK:總線封鎖信號(hào),輸出89五、8086/8088的存儲(chǔ)空間1.存儲(chǔ)器組織存儲(chǔ)器按字節(jié)組織,每個(gè)字節(jié)只有唯一的地址。若存放的信息是8位的,將按順序存放;若存放的信息是1個(gè)字時(shí),則將該字的低字節(jié)放在低地址中,高字節(jié)放在高地址中;若存放的信息是雙字時(shí)(一般作為指針),低位字是被尋址地址的偏移量,高位字是被尋址地址所在的段基址。見圖2-11。五、8086/8088的存儲(chǔ)空間90對(duì)存放的字,其低位字節(jié)可以在奇數(shù)地址中開始存放,也可以在偶數(shù)地址中開始存放,前者稱為非規(guī)則存放,這樣存放的字稱為非規(guī)則字;后者稱為規(guī)則存放,這樣存放的字稱為規(guī)則字。見圖2-11。對(duì)規(guī)則字的存取可以在一個(gè)總線周期完成,非規(guī)則字的存取則需兩個(gè)總線周期。在8086/8088程序中,指令僅要求指出對(duì)某個(gè)字節(jié)或字進(jìn)行訪問,而對(duì)存儲(chǔ)器訪問的方式不必說明,由處理器自動(dòng)識(shí)別。見圖2-12。8086的1MB存儲(chǔ)空間實(shí)際上分為兩個(gè)512KB的存儲(chǔ)體(又稱存儲(chǔ)庫),分別叫高位庫和低位庫。低位庫與數(shù)據(jù)總線D7~D0相連,該庫中每個(gè)地址均為偶數(shù)地址;高位庫與數(shù)據(jù)總線D15~D8相連,該庫中每個(gè)地址均為奇數(shù)地址。

見圖2-13和表2-6。對(duì)存放的字,其低位字節(jié)可以在奇數(shù)地址中開始存放,912.存儲(chǔ)器分段在8086/8088系統(tǒng)中,1MB存儲(chǔ)空間被分為若干邏輯段,其實(shí)際存儲(chǔ)器中

溫馨提示

  • 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)論