




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
微機(jī)原理及接口技術(shù)復(fù)習(xí)總結(jié)思考題:1.簡述微型計(jì)算機(jī)的組成。微型計(jì)算機(jī)是由微處理器、存儲(chǔ)器、輸入/輸出接口電路和系統(tǒng)總線構(gòu)成的裸機(jī)系統(tǒng)。2.總線分為哪幾種類型?微型計(jì)算機(jī)采用總線結(jié)構(gòu)有什么優(yōu)點(diǎn)?(1)分為地址總線,數(shù)據(jù)總線與控制總線三類,又稱三總線。(2)微型計(jì)算機(jī)的三總線結(jié)構(gòu)是一個(gè)獨(dú)特的結(jié)構(gòu)。采用總線結(jié)構(gòu),系統(tǒng)中各功能部件之間的相互關(guān)系,變成了各功能部件面向總線的單一關(guān)系。一個(gè)部件只要符合總線標(biāo)準(zhǔn),就可以連接到采用這種總線標(biāo)準(zhǔn)的系統(tǒng)中,使系統(tǒng)功能得到擴(kuò)展。2023/2/2微型計(jì)算機(jī)硬件系統(tǒng)組成微處理器:進(jìn)行算數(shù)運(yùn)算和邏輯運(yùn)算。存儲(chǔ)器:存儲(chǔ)程序、數(shù)據(jù)、符號(hào)等I/O接口:使外設(shè)與微機(jī)相連。2023/2/2Intel8086微處理器結(jié)構(gòu)(重點(diǎn))8086的內(nèi)部結(jié)構(gòu)-分兩部分:總線接口部件BIU:總線接口單元BIU,負(fù)責(zé)控制存貯器與I/O讀寫。執(zhí)行部件EU:執(zhí)行單元EU從指令隊(duì)列中取出指令并執(zhí)行。特點(diǎn):BIU與EU兩個(gè)單元相互獨(dú)立,分別完成各自操作,可以并行執(zhí)行,實(shí)現(xiàn)指令預(yù)?。ㄖ噶钭x取和執(zhí)行的流水線操作)取指令和執(zhí)行指令分開進(jìn)行,提高了速度。2023/2/22023/2/28086執(zhí)行部件EU8個(gè)16位通用寄存器:AX、BX、CX、DX,這4個(gè)16位寄存器可作8位寄存器。
SP:堆棧指針,其內(nèi)容與堆棧段寄存器SS的內(nèi)容相加,提供堆棧操作地址。
BP:基址指針,構(gòu)成段內(nèi)偏移地址的一部分.SI:源變址寄存器。
DI:目的變址寄存器。16位算術(shù)邏輯單元ALU:主要是加法器。大部分指令的執(zhí)行由加法器完成。16位標(biāo)志寄存器標(biāo)志(Flag)用于反映指令執(zhí)行結(jié)果。16位字利用了9位。標(biāo)志分兩類:狀態(tài)標(biāo)志(6位):反映剛剛完成的操作結(jié)果情況??刂茦?biāo)志(3位:IF/TF/DF):在某些指令操作中起控制作用。2023/2/28086CPU總線接口部件段寄存器CS:16位的代碼段寄存器,管理程序段。8086復(fù)位后,CS置位=FFFFH;DS:16位的數(shù)據(jù)段寄存器,管理數(shù)據(jù)段。ES:16位的附加段寄存器,管理附加(擴(kuò)展)段。SS:16位的堆棧段寄存器,管理堆棧段。16位的指令指針寄存器IP:IP中的內(nèi)容是下一條指令對(duì)現(xiàn)行代碼段基地址的偏移量8086復(fù)位后,CPU執(zhí)行的第一條指令的地址為FFFF0H。20位地址加法器6字節(jié)的指令隊(duì)列總線接口部件BIU從內(nèi)存取指令,取來的總是放在指令隊(duì)列2023/2/2思考題:3、8086CPU在內(nèi)部結(jié)構(gòu)上由哪幾部分組成?其功能是什么?【答】8086的內(nèi)部結(jié)構(gòu)分成兩部分。總線接口部件BIU,負(fù)責(zé)控制存儲(chǔ)器與I/O端口的信息讀寫,包括指令獲取與排隊(duì)、操作數(shù)存取等。執(zhí)行部件EU負(fù)責(zé)從指令隊(duì)列中取出指令,完成指令譯碼與指令的執(zhí)行。4、8086的總線接口部件由那幾部分組成?其功能是什么?【答】8086的總線接口部件主要由下面幾部分組成:4個(gè)段寄存器CS/DS/ES/SS,用于保存各段地址;一個(gè)16位的指令指針寄存器IP,用于保存當(dāng)前指令的偏移地址;一個(gè)20位地址加法器,用于形成20位物理地址;指令流字節(jié)隊(duì)列,用于保存指令;存儲(chǔ)器接口,用于內(nèi)總線與外總線的連接。5、8086的執(zhí)行單元(部件)由那幾部分組成?有什么功能?【答】8086的執(zhí)行單元部件主要由下面幾部分組成:控制器、算數(shù)邏輯單元、標(biāo)志寄存器、通用寄存器組。(1)控制器,控制指令譯碼,完成指令的執(zhí)行等。(2)算數(shù)邏輯單元ALU,完成算數(shù)與邏輯運(yùn)算。(3)標(biāo)志寄存器,其中狀態(tài)標(biāo)志6位,存放算數(shù)邏輯單元ALU運(yùn)算結(jié)果特征;控制標(biāo)志3位,控制8086的3種特定操作。(4)通用寄存器組,用于暫存數(shù)據(jù)或指針的寄存器陣列。6、簡述8086CPU的流水線思想,與傳統(tǒng)計(jì)算機(jī)有何不同。8086CPU執(zhí)行轉(zhuǎn)移指令時(shí),指令隊(duì)列寄存器內(nèi)容如何變化?【答】(1)傳統(tǒng)的計(jì)算機(jī)一般按照取指令、指令譯碼與執(zhí)行指令的串行步驟工作。(2)在8086CPU中,指令的提取與執(zhí)行分別由總線接口部件BIU與執(zhí)行部件EU完成,兩個(gè)單元重疊并行工作,這種機(jī)制稱為流水線,這種工作方式有力的提高了CPU的工作效率。(3)8086CPU執(zhí)行轉(zhuǎn)移指令時(shí),首先清空當(dāng)前指令隊(duì)列寄存器,然后從新地址取指令重新填滿指令隊(duì)列。7、8086和8088是怎樣解決地址線和數(shù)據(jù)線的復(fù)用問題的?ALE信號(hào)何時(shí)處于有效電平?【答】(1)8086/8088采用時(shí)間分隔技術(shù)與地址鎖存技術(shù),通過地址鎖存允許信號(hào)ALE鎖存CPU送出的地址,有效解決地址線和數(shù)據(jù)線的復(fù)用問題。
(2)ALE在T1狀態(tài)有效,將CPU送出的20位地址鎖存。2023/2/28086/8088CPU有20條地址線最大可尋址空間為220=1MB物理地址范圍從00000H~FFFFFH8086/8088CPU將1MB空間分成許多邏輯段每個(gè)段最大限制為64KB一個(gè)存儲(chǔ)單元有一個(gè)唯一的物理地址,邏輯地址有多個(gè)2.2.1Intel8086微處理器結(jié)構(gòu):存儲(chǔ)器的分段管理2023/2/22.12.在8086中,邏輯地址FFFFH:0001H、00A2H:37F0H和B800H:173FH的物理地址分別是多少?(1)FFFFH:0001H的物理地址: PA=FFFFH*16+0001=FFFF1H(2)00A2H:37F0H的物理地址: PA=00A20H+37F0H=4210H(3)B800H:173FH的物理地址: PA=B8000H+173FH=B973FH2.15.8086的地址總線有多少位?其尋址范圍是多少?(1)8086/8088CPU有20條地址線,最大可尋址空間為220=1MB;(2)物理地址范圍從00000H~FFFFFH2.17.8086工作在最小模式和最大模式的主要特點(diǎn)是什么?有何區(qū)別?2.2.1Intel8086微處理器結(jié)構(gòu):如何分配各個(gè)邏輯段2023/2/2提問:8088CPU最大可尋址空間為多少?1MB一個(gè)段最大尋址空間為多少?64KB代碼段物理地址由CPU的哪兩個(gè)寄存器確定?堆棧段物理地址由CPU的哪兩個(gè)寄存器確定?復(fù)位:CS=FFFFH,其余清除為0,IP=0000H2023/2/2習(xí)題2.18.8086的IO讀/寫周期與存儲(chǔ)器讀/寫周期的主要差異是什么?2.20.8086怎樣解決地址線和數(shù)據(jù)線的復(fù)用問題?ALE信號(hào)何時(shí)處于有效電平?2.24.8086讀/寫總線周期各包含多少個(gè)時(shí)鐘周期?什么情況下需要插入TWAIT等待周期?應(yīng)插入多少個(gè)TWAIT,取決于什么因素?什么情況下會(huì)出現(xiàn)空閑狀態(tài)TIDLE?IO讀/寫周期:控制信號(hào)M/IO=0存儲(chǔ)器讀/寫周期:控制信號(hào)M/IO=1采用分時(shí)復(fù)用技術(shù)。T1狀態(tài),送地址;T3狀態(tài)送數(shù)據(jù)。ALE在T1狀態(tài)有效,將地址鎖存。第4章匯編程序設(shè)計(jì)[基本要求]1.識(shí)與記熟悉常用8086指令(2)熟悉常用偽指令的格式:DB、DW、DD、ASSUME、DUP、EQU、ORG、OFFSET、SEG等。(3)熟悉DOS、BIOS基本I/O調(diào)用格式。2、領(lǐng)會(huì):完整程序設(shè)計(jì)思路;實(shí)現(xiàn)分支程序設(shè)計(jì)、循環(huán)程序設(shè)計(jì)、子程序設(shè)計(jì)的方法。3、簡單應(yīng)用:編程完成加減乘除運(yùn)算、累加和運(yùn)算、求平均值、最大值與最小值、查表處理、對(duì)數(shù)據(jù)按位處理。4、綜合應(yīng)用:完整功能的程序設(shè)計(jì)。例如查找一個(gè)字符串中的關(guān)鍵字、排序程序設(shè)計(jì)。1.編程計(jì)算((X+Y)*10)+Z)/X,X、Y、Z都是16位無符號(hào)數(shù),結(jié)果存在RESULT開始的單元。算法:1)算數(shù)和擴(kuò)展為2個(gè)字,4字節(jié),用DX,AX暫存結(jié)果;2)加法考慮進(jìn)位,用ADC;減法考慮借位用SBB。3)除法DIV,乘法MUL指令數(shù)據(jù)段定義:
XDW8234HYDW8988HZDWC999HWDW0,0參考代碼片段:MOVAX,XMOVDX,0ADDAX,YADCDX,0MOVBX,10MOUBXADDAX,ZADCDX,0DIVXMOVW,AXMOVW+2,DX四、程序設(shè)計(jì):1.(習(xí)題4.11)試編程序,統(tǒng)計(jì)由40000H開始的16K個(gè)單元中所存放的字符“A”的個(gè)數(shù),并將結(jié)果存放在DX中。分析:1)需要循環(huán)控制,循環(huán)次數(shù)已知,數(shù)據(jù)指針可以用SI,數(shù)據(jù)段初始化為(DS)=4000H,(SI)=0000H;2)查找到“A”,可以用比較指令CMP,配合JE/JNE,LOOP(或用串操作指令SCASB)DATASEGMENTBUF DB'DFASFAAAFDFAAFFFA'COUNT EQU$-BUFNUMDW?DATA ENDSCODE SEGMENT ASSUMECS:CODE,DS:DATABEGIN: MOV AX,DATA MOV DS,AX MOV CX,COUNT;COUNT=16*1024 MOV DX,0 LEA SI,BUF MOV BL,'A'NEXT: CMP [SI],BL JNE OTHER INC DXOTHER: INC SI LOOP NEXTLP:JMPLP;程序陷阱,方便調(diào)試CODE ENDSEND BEGIN2.(習(xí)題4.12)統(tǒng)計(jì)數(shù)據(jù)塊中正數(shù)與負(fù)數(shù)的個(gè)數(shù),并將正數(shù)與負(fù)數(shù)分別送到兩個(gè)緩沖區(qū)。
分析:1.測試二進(jìn)制數(shù)最高位,即符號(hào)位,若為1,負(fù)數(shù);若為0,正數(shù)2.指令可用:TEST,或SHLBLOCK DB-1,-3,5,6,-2,0,20,10NEQU$-BLOCK PLUS_D DB8DUP(?) ;正數(shù)緩沖區(qū)
MINUS_D DB8DUP(?) ;負(fù)數(shù)緩沖區(qū)
PLUS DB0 MINUS DB0…………….. MOV SI,OFFSETBLOCK MOV DI,OFFSETPLUS_D MOV BX,OFFSETMINUS_D MOV CX,N ;數(shù)據(jù)個(gè)數(shù)送CXMOVSI,OFFSETBLOCK MOVDI,OFFSETPLUS_D MOVBX,OFFSETMINUS_D MOVCX,8 ;數(shù)據(jù)個(gè)數(shù)送CXGOON:MOVAL,[SI]TESTAL,80H JNZJMIUS ;為負(fù)數(shù),轉(zhuǎn)
INCPLUS ;正數(shù)個(gè)數(shù)加一
MOV[DI],AL ;傳正數(shù)
INCDI JMPAGAINJMIUS:INCMINUS ;負(fù)數(shù)個(gè)數(shù)加一
MOV[BX],ALINCBX AGAIN:INCSIDECCX JNZGOON2.(習(xí)題4.17)將BUF1開始的100字節(jié)傳送到BUF2開始的單元,然后從中檢索字符“#”,并將此單元換成空格字符。程序片段:DATAsegmentORG2170HBUF1DB1,2,3,4,'$',6,'$',7NEQU$-BUF1ORG1000HBUF2DB15DUP(0)DATA ENDSSTACK SEGMENTBUFFDW100DUP(0)M EQU$-BUFFSTACK ENDSCODE SEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVES,AXMOVAX,STACKMOVSS,AXMOVAX,MMOVSP,AXLEASI,BUF1 LEADI,BUF2 MOVCX,NDON1:MOVAL,[SI] MOV[DI],AL INCSI INCDI LOOPDON1 MOVAL,‘#' LEADI,BUF2 MOVCX,NDON2:CMPAL,[DI]JNZDON3MOVBYTEPTR[DI],20H;空格:20HINCDIDON3:LOOPDON2MOVAH,4CHINT21HCODE ENDSENDSTART3、(習(xí)題4.8)編寫一段程序,比較兩個(gè)5字節(jié)的字符串OLDS和NEWS,若相同,在RESULT置0,否則置0FFH。DATASEGMENTOLDSDB1,2,3,4,5NEWSDB1,2,3,4,ARESULTDB?DATAENDSCODESEGMENT ASSUMECS:CODE,DS:DATASTART:MOVAX,DATA MOVDS,AX MOVSI,OFFSETOLDS MOVDI,OFFSETNEWS MOVCX,5DON:MOVAL,[SI] CMPAL,[DI]
JNZNOEQU;串不相等轉(zhuǎn) INCSIINCDILOOPDONOUTPT:MOVAL,0JMPOUTPUTNOEQU:MOVAL,0FFHOUTPUT:MOV
RESULT,ALSTOP:
MOVAH,4CHINT21HCODEENDSENDSTART4.(習(xí)題4.9)編求和Y=A1+A2+…+A100,Ai為字節(jié)。分析:1)字節(jié)累加,算法為si=si+ai。和擴(kuò)展為2個(gè)字節(jié),其中部分和低位存AL,高位擴(kuò)展到AH,用于處理累加和產(chǎn)生的進(jìn)位。2)用ADD計(jì)算字節(jié)累加和,用ADC將進(jìn)位加到高位,用LOOP完成循環(huán)。LEABX,TABLE MOVCX,NLP:ADDAL,[BX] ;求和ADCAH,0INCBX;指向下一個(gè)數(shù)LOOPLP;未加完,繼續(xù)MOVSUM,AX;存和
MOV
AH,4CH INT
21H
;返回DOSCODEENDSENDMAINDATA SEGMENTTABLEDB11H,22H,33H,22HNEQU$-TABLESUMDW 0DATAENDSSTACK SEGMENTBUFFDW100DUP(0)M EQU$-BUFFSTACKENDSCODE SEGMENTASUMMECS:CODE,DS:DATA,SS:STACKMIAN:MOVAX,DATAMOVDS,AXMOV AX,STACKMOV SS,AXMOVAX,MMOVSP,AX
5.(例4-7)編寫程序完成求1+2+3+……N的累加和,直到累加和超過1000為止。統(tǒng)計(jì)被累加的自然數(shù)的個(gè)數(shù)送CN單元,累加和送SUM。【分析】1)算法:SUM=1+2+3+…用S表示部分和,即:Si=Si-1+i;i=1,2,3,…2)可用AX求累加和S,BX存自然數(shù)i。DATA SEGMENT SUMDW? CNDW?DATA ENDSCODE SEGMENT ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX ;初始化 MOVAX,0 ;0送AX MOVBX,0 ;0送BXLP: INCBXADDAX,BX ;求累加和 CMPAX,1000;條件控制 JBELP ;≤1000轉(zhuǎn)LP MOVSUM,AX MOVCN,BX ;送結(jié)果 MOVAH,4CH INT21H;返回DOSCODEENDS ENDSTART6.(習(xí)題4.18)從給定串中尋找最大的值,并放到MAX單元.元素放在BUFFER開始的單元中。解:分析:(AX)=amax>ai,不交換;否則交換。CX:比較次數(shù):循環(huán)次數(shù)=數(shù)據(jù)項(xiàng)數(shù)-1BX:數(shù)據(jù)指針指令選?。篊MP,JA完成比較LOOP完成循環(huán)控制程序框圖:(BX)元素表首地址(CX)N-1(BX)(BX)+1(CX)(CX)-1AX、[BX]中的數(shù)交換NN(CX)=0?開始Y暫停Y(AX)=[BX]?參考程序:DATAsegmentBUFFERDW21H,33H,45H,67H,098CH,10HCOUNTEQU($-BUFFER)/2MAXDW?DATA ENDS
STACK SEGMENTBUFFDW100DUP(0)M EQU$-BUFFSTACK ENDSCODE SEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVES,AXMOV AX,STACKMOV SS,AXMOVCX,COUNT-1LEABX,BUFFERMOVAX,[BX]DON:INCBX;指向下一個(gè)數(shù)INCBXCMPAX,[BX];AL-[BX]JAP1;大于轉(zhuǎn)MOVAX,[BX];交換P1:LOOPDONMOVMAX,AXMOVAH,4CHINT21HCODE ENDSENDSTART第5章
IO輸入輸出的控制方式程序傳送方式中斷傳送方式DMA方式I/O接口是CPU與“外部世界”的中轉(zhuǎn)站,位于CPU與外設(shè)間,用來協(xié)助完成數(shù)據(jù)傳送和控制的邏輯電路.I/O端口:是接口電路中CPU能訪問的寄存器。I/O操作:CPU對(duì)與設(shè)備相關(guān)I/O接口電路的操作,不是訪問I/O設(shè)備。概念什么是I/O接口?什么是I/O端口?2023/2/2思考題:CPU和輸入/輸出設(shè)備之間傳送的信息有哪幾類?一般的IO接口電路安排有哪三類寄存器?它們各自的作用是什么?在8086/8088系統(tǒng)中,用哪種方法對(duì)I/O端口進(jìn)行編址?8086CPU如何控制I/O設(shè)備的數(shù)據(jù)傳輸?2023/2/2提問:1、查詢(條件)式傳送方式的包含哪三個(gè)環(huán)節(jié)?【答】查詢狀態(tài)環(huán)節(jié)CPU尋址狀態(tài)口,讀取狀態(tài)字檢測是否滿足“就緒”條件如果不滿足,回到第一步讀取狀態(tài)字;數(shù)據(jù)傳送環(huán)節(jié)2、查詢式傳送方式有什么優(yōu)缺點(diǎn)?【答】查詢式(條件)傳送方式用于聯(lián)絡(luò)信號(hào),外設(shè)較少的情形,接口簡單,但CPU效率低。2023/2/2第5章自測題1、CPU和輸入/輸出設(shè)備之間傳送的信息類型有()。A.地址信息和數(shù)據(jù)信息
B.模擬量和數(shù)字量C.控制信息,狀態(tài)信息和數(shù)據(jù)信息D.A和B2、CPU連接與I/O接口的三種總線是()、()和()。3、8088可直接尋址的空間最大為()。 A、640KB B、1MB C、512MB D、2MB4、8086是()位計(jì)算機(jī)。A.8 B.16 C.32 D.645、8086CPU采用I/O接口()編址方式。6、CPU和輸入/輸出設(shè)備之間傳送方式(、、)。7、查詢(條件)式傳送方式的包含()三個(gè)環(huán)節(jié)。2023/2/216、8088可直接尋址的空間最大為()。
A)640KB B)1MB C)512MB D、2MB17、8086是()位計(jì)算機(jī)。
A)8 B)16 C)32 D)6418、CPU和輸入/輸出設(shè)備之間傳送的信息類型有()。
A)地址信息B)模擬量
C)控制信息,狀態(tài)信息和數(shù)據(jù)信息D)數(shù)字量19、以下關(guān)于中斷控制器8259描述錯(cuò)誤的是()。 A)一片8259可以管理8級(jí)中斷 B)不能設(shè)置中斷優(yōu)先級(jí) C)在中斷響應(yīng)周期,8259可以提供中斷類型碼 D)用兩片8259構(gòu)成級(jí)聯(lián),以便管理15級(jí)中斷2023/2/2三、問答題(看書中習(xí)題)8086CPU響應(yīng)中斷的條件?簡述8086CPU響應(yīng)中斷處理過程。計(jì)算機(jī)對(duì)I/O端口編址時(shí)通常采用哪兩種方法?在8086/8088系統(tǒng)中,用哪種方法對(duì)I/O端口進(jìn)行編址?一般的IO接口電路安排有哪三類寄存器?它們各自的作用是什么?簡述CPU與外設(shè)進(jìn)行數(shù)據(jù)交換的幾種常用方式與特點(diǎn)。簡述條件傳送方式的工作過程,主要適用的場合。8086CPU響應(yīng)中斷的條件?8086CPU響應(yīng)中斷后自動(dòng)完成的任務(wù)是什么?軟件中斷有哪些特點(diǎn)?硬件中斷有那些特點(diǎn)?什么是中斷向量?它放在哪里?對(duì)應(yīng)于類型號(hào)1CH的中斷向量在哪里?如1CH中斷程序從5110H:2030H開始,則中斷向量應(yīng)怎樣存放?2023/2/22013/11/16第6章中斷控制技術(shù)1.為什么要用中斷?中斷:外設(shè)向CPU發(fā)中斷請(qǐng)求,CPU接收到中斷請(qǐng)求并在一定條件下,暫時(shí)停止執(zhí)行原來的程序而轉(zhuǎn)去處理中斷,處理好中斷服務(wù)再返回繼續(xù)執(zhí)行原來的程序,就稱為一個(gè)中斷過程。中斷是CPU被動(dòng)的響應(yīng)外設(shè)要求服務(wù)。2013/11/162.中斷系統(tǒng)組成(1)需要中斷請(qǐng)求——中斷請(qǐng)求觸發(fā)器(2)可以屏蔽某些外設(shè)需分別處理——中斷屏蔽觸發(fā)器(3)多個(gè)外設(shè)需分別處理-中斷優(yōu)先權(quán)(4)多個(gè)外設(shè)需允許嵌套-中斷嵌套(5)CPU與外設(shè)的數(shù)據(jù)中轉(zhuǎn)——數(shù)據(jù)緩沖器(6)選擇外設(shè)的端口號(hào)——端口地址譯碼器2013/11/163.CPU響應(yīng)中斷要自動(dòng)完成的任務(wù)
(1)關(guān)中斷(2)保護(hù)斷點(diǎn)(IP,CS,FLAG入棧) (3)給中斷服務(wù)程序的入口地址4.CPU響應(yīng)外中斷的條件(1)有中斷源發(fā)出的中斷請(qǐng)求信號(hào)(2)開放總中斷:IF=1(3)在現(xiàn)行指令結(jié)束后響應(yīng)中斷2013/11/165.8086微機(jī)中斷系統(tǒng)8088的中斷系統(tǒng)采用向量中斷機(jī)制能夠處理256個(gè)中斷用中斷向量號(hào)0~255區(qū)別可屏蔽中斷還需要借助專用中斷控制器Intel8259A實(shí)現(xiàn)優(yōu)先權(quán)管理2013/11/16中斷的分類:兩類軟件(內(nèi)部)中斷是由CPU內(nèi)部事件引起的中斷;與硬件無關(guān),不執(zhí)行中斷響應(yīng)周期,除單步中斷外,內(nèi)部中斷不可屏蔽,優(yōu)先級(jí)高于外部中斷。硬件中斷:8086/8088CPU有兩條引腳1、NMI非屏蔽中斷由正跳變NMI引入,CPU立即響應(yīng),不受中斷標(biāo)志位IF的控制。優(yōu)先級(jí)最高,處理2、可屏蔽中斷由INTR引入,受中斷標(biāo)志位IF的控制當(dāng)IF=1時(shí),CPU將響應(yīng)這一中斷請(qǐng)求6.2:中斷的分類2013/11/16提問:軟件中斷有哪些特點(diǎn)?軟件中斷和硬件中斷有什么不同之處?【答】軟件中斷是由CPU內(nèi)部事件引起的中斷;與硬件無關(guān),不執(zhí)行中斷響應(yīng)周期,除單步中斷外,內(nèi)部中斷不可屏蔽,優(yōu)先級(jí)高于外部中斷。軟件中斷其中斷的發(fā)生是確定的。硬件中斷的發(fā)生是隨機(jī)的,主程序中無調(diào)用點(diǎn)。6.2:硬件中斷與軟件中斷的比較1.各種中斷源的優(yōu)先權(quán)次序是什么?軟件中斷>非屏蔽中斷>可屏蔽中斷>單步中斷課堂提問:2.CPU響應(yīng)外中斷的條件是什么?3.CPU響應(yīng)中斷要自動(dòng)完成的任務(wù)是什么?(1)關(guān)中斷(2)保護(hù)斷點(diǎn)(IP,CS,FLAG入棧)(3)給中斷服務(wù)程序的入口地址(1)有中斷源發(fā)出的中斷請(qǐng)求信號(hào)(2)開放總中斷:IF=1(3)在現(xiàn)行指令結(jié)束后響應(yīng)中斷
6.2:硬件中斷6.中斷向量表中斷類型碼:8086中斷源共分256級(jí)中斷,每個(gè)中斷源對(duì)應(yīng)一個(gè)0~255編號(hào),稱為中斷類型碼或中斷向量號(hào)。中斷向量:中斷服務(wù)程序的入口地址(cs,ip)中斷向量表:將所有中斷向量集中放在一起.中斷向量表:放在內(nèi)存地址0單元開始的單元:00000H~03FFFH中斷向量指針:
中斷類型號(hào)*4=中斷向量最低字節(jié)指針例:中斷類型號(hào)為20H:中斷向量放在0000:0080H開始的4個(gè)單元中。中斷向量指針=20H*4=80H
假設(shè)20H號(hào)中斷服務(wù)程序的入口地址:4030H:2010H問題:那么,在80~83H中依次存放的是?
0000:008010203040CS=4030HIP=2010H0000:00810000:00830000:00826.2:中斷舉例例題:類型號(hào)為20H的中斷服務(wù)程序入口符號(hào)地址為INT-5,試寫出中斷向量的裝入程序片斷?!敬稹恐袛嘞蛄康牡刂罚?0H×4=10000000=80H
中斷向量的裝入?yún)⒖汲绦? CLI PUSH DS XOR AX,AX MOV DS,AX MOV AX,OFFSETINT-5 MOV WORDPTR[080H],AX MOV AX,SEGINT-5 MOV WORDPTR[082H],AX POP DS STI…… INT-5 PROC NEAR…….IRET INT-5 ENDP2013/11/16課堂問答:1.設(shè)SP=8FFEH,8086CPU執(zhí)行段間返回指令RET后,SP的值為
SP-4。2.當(dāng)SP=6000H時(shí),執(zhí)行IRET指令后,SP的值為
SP-6。3.要使中斷服務(wù)完成后,能正確返回,應(yīng)怎樣作?(IRET)6.5:中斷概念舉例第6章思考題一、問答題8086CPU響應(yīng)中斷的條件?簡述8086CPU響應(yīng)中斷處理過程。8086CPU響應(yīng)中斷的條件?8086CPU響應(yīng)中斷后自動(dòng)完成的任務(wù)是什么?軟件中斷有哪些特點(diǎn)?硬件中斷有那些特點(diǎn)?什么是中斷向量?它放在哪里?對(duì)應(yīng)于類型號(hào)1CH的中斷向量在哪里?如1CH中斷程序從5110H:2030H開始,則中斷向量應(yīng)怎樣存放?二、概念題8086中斷源有()個(gè)。中斷服務(wù)程序入口地址由()組成。中斷類型號(hào)為20H,其中斷向量為()。一片8259A可以管理()級(jí)中斷;3片8259A可以管理()級(jí)中斷。軟件中斷優(yōu)先級(jí)與硬件中斷優(yōu)先級(jí)相比,()的級(jí)別高。在中斷服務(wù)程序結(jié)束前,為正確返回,必須設(shè)置一條指令()。在子程序調(diào)用結(jié)束前,為正確返回,必須設(shè)置一條指令()。硬件中斷是(外部引發(fā)?隨機(jī)的?執(zhí)行總線周期?中斷類型碼由?提供),軟件中斷是(內(nèi)部引發(fā)?確定的?不執(zhí)行總線周期?中斷類型確定?)軟件中斷優(yōu)先級(jí)與硬件中斷優(yōu)先級(jí)相比,()的級(jí)別高。2023/2/27.以下對(duì)硬件中斷傳送方式描述錯(cuò)誤的是()。
A).不需要增加額外硬件
B).中斷傳送是一種效率更高的程序傳送方式
C).進(jìn)行傳送的中斷服務(wù)程序是預(yù)先設(shè)計(jì)好的
D).中斷請(qǐng)求是外設(shè)隨機(jī)向CPU提出的8.8086CPU允許的I/O地址線最多可達(dá)()條。
A).8B).10C).16D).209.下面關(guān)于軟件中斷說法錯(cuò)誤的是()。 A.中斷類型碼已知 B. INTn C.不執(zhí)行中斷響應(yīng)周期 D.中斷是隨機(jī)的2023/2/2第7章定時(shí)/計(jì)數(shù)器82538253的工作模式方式0——計(jì)數(shù)結(jié)束產(chǎn)生中斷一次定時(shí)或計(jì)數(shù),重寫初值,啟動(dòng)新一輪的計(jì)數(shù)方式1——可編程的單脈沖(單穩(wěn))觸發(fā)器
GATE邊沿觸發(fā),啟動(dòng)新一輪計(jì)數(shù)方式2——分頻器(速度波發(fā)生器)具有計(jì)數(shù)初值重裝能力方式3——方波發(fā)生器具有計(jì)數(shù)初值重裝能力方式4——軟件觸發(fā)的選通信號(hào)發(fā)生器一次定時(shí),重寫初值,啟動(dòng)新一輪的計(jì)數(shù)方式5——硬件觸發(fā)的選通信號(hào)發(fā)生器
GATE邊沿觸發(fā)新一輪計(jì)數(shù)1.計(jì)數(shù)初值計(jì)數(shù)初值n=時(shí)鐘頻率fc/輸出頻率fout=定時(shí)時(shí)間Tout/時(shí)鐘脈沖周期Tc2.編程命令方式命令字對(duì)8253初始化方式命令字的格式
7.2.28253控制字格式7.2:8253控制字格式SC1SC0RW1RW0M2M1M0BCD1--計(jì)數(shù)值為BCD碼格式0--計(jì)數(shù)值為二進(jìn)制格式M2M1M0模式選擇
000模式0001模式1/10模式2/11模式3100模式4101模式500----對(duì)計(jì)數(shù)器進(jìn)行鎖存01----只讀/寫低8位字節(jié)10----只讀/寫高8位字節(jié)11----先讀/寫低8位字節(jié),再讀/寫高8位字節(jié).00----選計(jì)數(shù)器001----選計(jì)數(shù)器110----選計(jì)數(shù)器211----無意義一、概念與原理8253有()個(gè)獨(dú)立定時(shí)通道。8253每個(gè)計(jì)數(shù)通道與外設(shè)接口有()()(),用途是()。可編程定時(shí)器8253的地址有()個(gè)。假設(shè)8253的端口地址為330H~333H,那么控制端口地址為(),通道0、1、2的地址為()8253的門控信號(hào)GATE作用是(),CLK端的作用是(),OUT端作用是()。8253有(種工作方式初始化定時(shí)器8253需要先寫(),后寫()。第7章自測題1、以下對(duì)8253門脈沖控制信號(hào)描述正確的是()
A.門脈沖控制時(shí)鐘輸入;
B.用門脈沖啟動(dòng)計(jì)數(shù);
C.用門脈沖停止計(jì)數(shù);
D.用門脈沖來重新啟動(dòng)計(jì)數(shù);
E.A,B,C,D,均是2、以下關(guān)于可編程計(jì)數(shù)/定時(shí)器8253說法錯(cuò)誤的是()。
A).有3個(gè)獨(dú)立的16位計(jì)數(shù)/定時(shí)器
B).每個(gè)計(jì)數(shù)/定時(shí)器都有6中工作方式
C).每個(gè)定時(shí)/計(jì)數(shù)器都有時(shí)鐘輸入CLK、定時(shí)輸出OUT和門控信號(hào)GATA D).每個(gè)定時(shí)/計(jì)數(shù)器都用二進(jìn)制計(jì)數(shù),不能用BCD碼計(jì)數(shù)3、可編程計(jì)數(shù)/定時(shí)器8253的OUT端用于()。
A).輸出定時(shí)信號(hào)B).輸入門控信號(hào)
C).輸入計(jì)數(shù)信號(hào)C).輸出門控信號(hào)
已知某8253占用I/O空間地址為340H~343H,設(shè)定時(shí)器0、定時(shí)器1工作于方式3,外部提供一個(gè)時(shí)鐘,頻率f=2MHZ。(1)定時(shí)器1連續(xù)產(chǎn)生5ms的定時(shí)信號(hào),(2)定時(shí)器0連續(xù)產(chǎn)生300us的定時(shí)信號(hào)。8.3:8253應(yīng)用舉例二、編程題8253初始化程序:MOVAL,00110110B;0號(hào)定時(shí)器,方式3MOVDX,343HOUTDX,ALMOVAX,600MOVDX,340HOUTDX,ALMOVAL,AHOUTDX,AL7.3:8253應(yīng)用舉例MOVAL,01110110B;1號(hào)定時(shí)器,方式3MOVDX,343HOUTDX,ALMOVAX,10000MOVDX,341HOUTDX,ALMOVAL,AHOUTDX,AL第8章可編程并行接口8255A8.1可編程并行接口8255A8.28255A的控制字8.3方式0-基本的輸入/輸出方式8.4方式1—選通的輸入輸出方式8.5方式2—雙向傳輸方式本章小結(jié)本章習(xí)題8.1:8255A的內(nèi)部結(jié)構(gòu)片選信號(hào)地址總線8位端口A8位端口B8位端口C圖10-18255A的內(nèi)部結(jié)構(gòu)1.方式控制字1D6D5D4D3D2D1D0方式選擇標(biāo)志A組方式:00:方式001:方式110:方式2端口A:1:輸入0:輸出PC7~PC4:1:輸入0:輸出B組方式0:方式01:方式1端口B:1:輸入0:輸出PC3~PC0:1:輸入0:輸出8.2:方式控制字
例8-1:A組方式0,A口輸入,PC7-PC4輸出;B組方式1,PB口輸出,PC3-PC0輸入。地址:80H~83H。
方式選擇控制字:
10010101=95H方式選擇A組方式0A口輸入C口高位輸出B組方式1B口輸出C口低Ss輸入8.2:方式控制字例題MOV AL,10010101BOUT 83H,AL2.端口C置1/0控制字0D7D6D5D4D3D2D1D0端口C置1/0控制字標(biāo)志1=置10=置0000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC7圖5、端口C置1/0控制字8.2:端口C置1/0控制字
PA0PA1PA28255AA0A1
PB0CS+5V200+5V2K譯碼器D7~D0地址線8088CPUA0A1【例8-5】用8255A控制三個(gè)發(fā)光二極管依秩序循環(huán)顯示。假設(shè)開關(guān)閉合時(shí),點(diǎn)亮發(fā)光二極管,開關(guān)斷開時(shí)息滅二極管。8.3:工作方式0例題圖10-6用8255A控制三個(gè)發(fā)光二極管顯示。8255A的端口地址為:
A端口:340HB端口:341HC端口:342H
控制口:343H
試編寫8255初始化程序段和控制三個(gè)發(fā)光二極管顯示程序段。8.3:工作方式0例題1、程序框圖:8.3:工作方式0例題2、軟件設(shè)計(jì)1)設(shè)A口為輸出口,方式0。B口輸入,方式0,則方式選擇控制字為82H。2)A口輸出代碼:
11111110,1號(hào)發(fā)光二極管亮
11111101,2號(hào)發(fā)光二極管亮
11111011,3號(hào)發(fā)光二極管亮3)軟件延時(shí)子程序:DELAY
8.3:工作方式0例題1、寫出段定義:DATASEGMENTCOTREQU343H ;8255A控制口地址PORT_AEQU340H ;8255A的A口地址PORT_BEQU341HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX……………..CODEENDSEND START8.3:工作方式0例題2、8255工作方式設(shè)定MOVDX,COTRMOVAL,82H;方式0OUTDX,AL;A口為輸出,B口為輸入3、查詢開關(guān)狀態(tài)WAITFOR: MOVDX,PORT_B;B口開關(guān)掃描循環(huán)
INAL,DX TESTAL,00000001B;查詢連接在PB0的開關(guān)S狀態(tài)
JZ CLOSE;開關(guān)S閉合,LED1~3依次發(fā)光CALL DARK;開關(guān)S斷開則LED1~3熄滅
JMP WAITFORCLOSE:CALL FLASH JMP WAITFOR參考程序:DATASEGMENTCOTREQU343H ;8255A控制口地址PORT_AEQU340H ;8255A的A口地址PORT_BEQU341HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,COTRMOVAL,82H;8255方式0OUTDX,AL;A口為輸出,B口為輸入WAITFOR:MOVDX,PORT_B;B口開關(guān)掃描循環(huán)
INAL,DX TESTAL,00000001B;查詢連接在PB0的開關(guān)S狀態(tài)
JZ CLOSE;開關(guān)S閉合,LED1~3依次發(fā)光完整程序:
CALL DARK;開關(guān)S斷開則LED1~3熄滅
JMP WAITFORCLOSE:CALL FLASH JMP WAITFORFLASH PROC MOV DX,PORT_A MOV AL,11111110B ;PA0輸出低電平,LED1發(fā)光
OUT DX,AL CALL DELAY MOV A
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家電公司設(shè)備報(bào)廢管理細(xì)則
- 天津叉車?yán)碚摽荚囋囶}及答案
- 五級(jí)驗(yàn)光員考試試題及答案
- 邢臺(tái)一模語文試題及答案
- 體育項(xiàng)目應(yīng)試題及答案
- 模擬暴雨考試題及答案
- 醫(yī)生看診面試題及答案
- 商場服裝銷售工作總結(jié)
- 家電公司招標(biāo)公告管理辦法
- 2020-2025年監(jiān)理工程師之交通工程目標(biāo)控制能力檢測試卷A卷附答案
- 語言接觸與混合語現(xiàn)象-洞察及研究
- 義務(wù)教育科學(xué)課程標(biāo)準(zhǔn)(2022年版)
- 咨詢行業(yè)流程管理制度
- JG/T 210-2018建筑內(nèi)外墻用底漆
- 2025叉車?yán)碚摽荚囋囶}及答案
- 2024-2025年度建筑施工項(xiàng)目管理評(píng)審計(jì)劃
- 2025年中國不銹鋼寬幅網(wǎng)市場調(diào)查研究報(bào)告
- 《支氣管鏡檢查技術(shù)》課件
- 解讀2025年金融行業(yè)的重要事件試題及答案
- 建筑吊籃培訓(xùn)課件
- 企業(yè)差旅費(fèi)管理制度
評(píng)論
0/150
提交評(píng)論