微機原理及接口技術復習總結_第1頁
微機原理及接口技術復習總結_第2頁
微機原理及接口技術復習總結_第3頁
微機原理及接口技術復習總結_第4頁
微機原理及接口技術復習總結_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

微機原理及接口技術復習總結思考題:1.簡述微型計算機的組成。微型計算機是由微處理器、存儲器、輸入/輸出接口電路和系統(tǒng)總線構成的裸機系統(tǒng)。2.總線分為哪幾種類型?微型計算機采用總線結構有什么優(yōu)點?(1)分為地址總線,數(shù)據(jù)總線與控制總線三類,又稱三總線。(2)微型計算機的三總線結構是一個獨特的結構。采用總線結構,系統(tǒng)中各功能部件之間的相互關系,變成了各功能部件面向總線的單一關系。一個部件只要符合總線標準,就可以連接到采用這種總線標準的系統(tǒng)中,使系統(tǒng)功能得到擴展。2023/2/2微型計算機硬件系統(tǒng)組成微處理器:進行算數(shù)運算和邏輯運算。存儲器:存儲程序、數(shù)據(jù)、符號等I/O接口:使外設與微機相連。2023/2/2Intel8086微處理器結構(重點)8086的內部結構-分兩部分:總線接口部件BIU:總線接口單元BIU,負責控制存貯器與I/O讀寫。執(zhí)行部件EU:執(zhí)行單元EU從指令隊列中取出指令并執(zhí)行。特點:BIU與EU兩個單元相互獨立,分別完成各自操作,可以并行執(zhí)行,實現(xiàn)指令預?。ㄖ噶钭x取和執(zhí)行的流水線操作)取指令和執(zhí)行指令分開進行,提高了速度。2023/2/22023/2/28086執(zhí)行部件EU8個16位通用寄存器:AX、BX、CX、DX,這4個16位寄存器可作8位寄存器。

SP:堆棧指針,其內容與堆棧段寄存器SS的內容相加,提供堆棧操作地址。

BP:基址指針,構成段內偏移地址的一部分.SI:源變址寄存器。

DI:目的變址寄存器。16位算術邏輯單元ALU:主要是加法器。大部分指令的執(zhí)行由加法器完成。16位標志寄存器標志(Flag)用于反映指令執(zhí)行結果。16位字利用了9位。標志分兩類:狀態(tài)標志(6位):反映剛剛完成的操作結果情況??刂茦酥荆?位:IF/TF/DF):在某些指令操作中起控制作用。2023/2/28086CPU總線接口部件段寄存器CS:16位的代碼段寄存器,管理程序段。8086復位后,CS置位=FFFFH;DS:16位的數(shù)據(jù)段寄存器,管理數(shù)據(jù)段。ES:16位的附加段寄存器,管理附加(擴展)段。SS:16位的堆棧段寄存器,管理堆棧段。16位的指令指針寄存器IP:IP中的內容是下一條指令對現(xiàn)行代碼段基地址的偏移量8086復位后,CPU執(zhí)行的第一條指令的地址為FFFF0H。20位地址加法器6字節(jié)的指令隊列總線接口部件BIU從內存取指令,取來的總是放在指令隊列2023/2/2思考題:3、8086CPU在內部結構上由哪幾部分組成?其功能是什么?【答】8086的內部結構分成兩部分??偩€接口部件BIU,負責控制存儲器與I/O端口的信息讀寫,包括指令獲取與排隊、操作數(shù)存取等。執(zhí)行部件EU負責從指令隊列中取出指令,完成指令譯碼與指令的執(zhí)行。4、8086的總線接口部件由那幾部分組成?其功能是什么?【答】8086的總線接口部件主要由下面幾部分組成:4個段寄存器CS/DS/ES/SS,用于保存各段地址;一個16位的指令指針寄存器IP,用于保存當前指令的偏移地址;一個20位地址加法器,用于形成20位物理地址;指令流字節(jié)隊列,用于保存指令;存儲器接口,用于內總線與外總線的連接。5、8086的執(zhí)行單元(部件)由那幾部分組成?有什么功能?【答】8086的執(zhí)行單元部件主要由下面幾部分組成:控制器、算數(shù)邏輯單元、標志寄存器、通用寄存器組。(1)控制器,控制指令譯碼,完成指令的執(zhí)行等。(2)算數(shù)邏輯單元ALU,完成算數(shù)與邏輯運算。(3)標志寄存器,其中狀態(tài)標志6位,存放算數(shù)邏輯單元ALU運算結果特征;控制標志3位,控制8086的3種特定操作。(4)通用寄存器組,用于暫存數(shù)據(jù)或指針的寄存器陣列。6、簡述8086CPU的流水線思想,與傳統(tǒng)計算機有何不同。8086CPU執(zhí)行轉移指令時,指令隊列寄存器內容如何變化?【答】(1)傳統(tǒng)的計算機一般按照取指令、指令譯碼與執(zhí)行指令的串行步驟工作。(2)在8086CPU中,指令的提取與執(zhí)行分別由總線接口部件BIU與執(zhí)行部件EU完成,兩個單元重疊并行工作,這種機制稱為流水線,這種工作方式有力的提高了CPU的工作效率。(3)8086CPU執(zhí)行轉移指令時,首先清空當前指令隊列寄存器,然后從新地址取指令重新填滿指令隊列。7、8086和8088是怎樣解決地址線和數(shù)據(jù)線的復用問題的?ALE信號何時處于有效電平?【答】(1)8086/8088采用時間分隔技術與地址鎖存技術,通過地址鎖存允許信號ALE鎖存CPU送出的地址,有效解決地址線和數(shù)據(jù)線的復用問題。

(2)ALE在T1狀態(tài)有效,將CPU送出的20位地址鎖存。2023/2/28086/8088CPU有20條地址線最大可尋址空間為220=1MB物理地址范圍從00000H~FFFFFH8086/8088CPU將1MB空間分成許多邏輯段每個段最大限制為64KB一個存儲單元有一個唯一的物理地址,邏輯地址有多個2.2.1Intel8086微處理器結構:存儲器的分段管理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工作在最小模式和最大模式的主要特點是什么?有何區(qū)別?2.2.1Intel8086微處理器結構:如何分配各個邏輯段2023/2/2提問:8088CPU最大可尋址空間為多少?1MB一個段最大尋址空間為多少?64KB代碼段物理地址由CPU的哪兩個寄存器確定?堆棧段物理地址由CPU的哪兩個寄存器確定?復位:CS=FFFFH,其余清除為0,IP=0000H2023/2/2習題2.18.8086的IO讀/寫周期與存儲器讀/寫周期的主要差異是什么?2.20.8086怎樣解決地址線和數(shù)據(jù)線的復用問題?ALE信號何時處于有效電平?2.24.8086讀/寫總線周期各包含多少個時鐘周期?什么情況下需要插入TWAIT等待周期?應插入多少個TWAIT,取決于什么因素?什么情況下會出現(xiàn)空閑狀態(tài)TIDLE?IO讀/寫周期:控制信號M/IO=0存儲器讀/寫周期:控制信號M/IO=1采用分時復用技術。T1狀態(tài),送地址;T3狀態(tài)送數(shù)據(jù)。ALE在T1狀態(tài)有效,將地址鎖存。第4章匯編程序設計[基本要求]1.識與記熟悉常用8086指令(2)熟悉常用偽指令的格式:DB、DW、DD、ASSUME、DUP、EQU、ORG、OFFSET、SEG等。(3)熟悉DOS、BIOS基本I/O調用格式。2、領會:完整程序設計思路;實現(xiàn)分支程序設計、循環(huán)程序設計、子程序設計的方法。3、簡單應用:編程完成加減乘除運算、累加和運算、求平均值、最大值與最小值、查表處理、對數(shù)據(jù)按位處理。4、綜合應用:完整功能的程序設計。例如查找一個字符串中的關鍵字、排序程序設計。1.編程計算((X+Y)*10)+Z)/X,X、Y、Z都是16位無符號數(shù),結果存在RESULT開始的單元。算法:1)算數(shù)和擴展為2個字,4字節(jié),用DX,AX暫存結果;2)加法考慮進位,用ADC;減法考慮借位用SBB。3)除法DIV,乘法MUL指令數(shù)據(jù)段定義:

XDW8234HYDW8988HZDWC999HWDW0,0參考代碼片段:MOVAX,XMOVDX,0ADDAX,YADCDX,0MOVBX,10MOUBXADDAX,ZADCDX,0DIVXMOVW,AXMOVW+2,DX四、程序設計:1.(習題4.11)試編程序,統(tǒng)計由40000H開始的16K個單元中所存放的字符“A”的個數(shù),并將結果存放在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;程序陷阱,方便調試CODE ENDSEND BEGIN2.(習題4.12)統(tǒng)計數(shù)據(jù)塊中正數(shù)與負數(shù)的個數(shù),并將正數(shù)與負數(shù)分別送到兩個緩沖區(qū)。

分析:1.測試二進制數(shù)最高位,即符號位,若為1,負數(shù);若為0,正數(shù)2.指令可用:TEST,或SHLBLOCK DB-1,-3,5,6,-2,0,20,10NEQU$-BLOCK PLUS_D DB8DUP(?) ;正數(shù)緩沖區(qū)

MINUS_D DB8DUP(?) ;負數(shù)緩沖區(qū)

PLUS DB0 MINUS DB0…………….. MOV SI,OFFSETBLOCK MOV DI,OFFSETPLUS_D MOV BX,OFFSETMINUS_D MOV CX,N ;數(shù)據(jù)個數(shù)送CXMOVSI,OFFSETBLOCK MOVDI,OFFSETPLUS_D MOVBX,OFFSETMINUS_D MOVCX,8 ;數(shù)據(jù)個數(shù)送CXGOON:MOVAL,[SI]TESTAL,80H JNZJMIUS ;為負數(shù),轉

INCPLUS ;正數(shù)個數(shù)加一

MOV[DI],AL ;傳正數(shù)

INCDI JMPAGAINJMIUS:INCMINUS ;負數(shù)個數(shù)加一

MOV[BX],ALINCBX AGAIN:INCSIDECCX JNZGOON2.(習題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、(習題4.8)編寫一段程序,比較兩個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;串不相等轉 INCSIINCDILOOPDONOUTPT:MOVAL,0JMPOUTPUTNOEQU:MOVAL,0FFHOUTPUT:MOV

RESULT,ALSTOP:

MOVAH,4CHINT21HCODEENDSENDSTART4.(習題4.9)編求和Y=A1+A2+…+A100,Ai為字節(jié)。分析:1)字節(jié)累加,算法為si=si+ai。和擴展為2個字節(jié),其中部分和低位存AL,高位擴展到AH,用于處理累加和產生的進位。2)用ADD計算字節(jié)累加和,用ADC將進位加到高位,用LOOP完成循環(huán)。LEABX,TABLE MOVCX,NLP:ADDAL,[BX] ;求和ADCAH,0INCBX;指向下一個數(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)計被累加的自然數(shù)的個數(shù)送CN單元,累加和送SUM?!痉治觥?)算法: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轉LP MOVSUM,AX MOVCN,BX ;送結果 MOVAH,4CH INT21H;返回DOSCODEENDS ENDSTART6.(習題4.18)從給定串中尋找最大的值,并放到MAX單元.元素放在BUFFER開始的單元中。解:分析:(AX)=amax>ai,不交換;否則交換。CX:比較次數(shù):循環(huán)次數(shù)=數(shù)據(jù)項數(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;指向下一個數(shù)INCBXCMPAX,[BX];AL-[BX]JAP1;大于轉MOVAX,[BX];交換P1:LOOPDONMOVMAX,AXMOVAH,4CHINT21HCODE ENDSENDSTART第5章

IO輸入輸出的控制方式程序傳送方式中斷傳送方式DMA方式I/O接口是CPU與“外部世界”的中轉站,位于CPU與外設間,用來協(xié)助完成數(shù)據(jù)傳送和控制的邏輯電路.I/O端口:是接口電路中CPU能訪問的寄存器。I/O操作:CPU對與設備相關I/O接口電路的操作,不是訪問I/O設備。概念什么是I/O接口?什么是I/O端口?2023/2/2思考題:CPU和輸入/輸出設備之間傳送的信息有哪幾類?一般的IO接口電路安排有哪三類寄存器?它們各自的作用是什么?在8086/8088系統(tǒng)中,用哪種方法對I/O端口進行編址?8086CPU如何控制I/O設備的數(shù)據(jù)傳輸?2023/2/2提問:1、查詢(條件)式傳送方式的包含哪三個環(huán)節(jié)?【答】查詢狀態(tài)環(huán)節(jié)CPU尋址狀態(tài)口,讀取狀態(tài)字檢測是否滿足“就緒”條件如果不滿足,回到第一步讀取狀態(tài)字;數(shù)據(jù)傳送環(huán)節(jié)2、查詢式傳送方式有什么優(yōu)缺點?【答】查詢式(條件)傳送方式用于聯(lián)絡信號,外設較少的情形,接口簡單,但CPU效率低。2023/2/2第5章自測題1、CPU和輸入/輸出設備之間傳送的信息類型有()。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是()位計算機。A.8 B.16 C.32 D.645、8086CPU采用I/O接口()編址方式。6、CPU和輸入/輸出設備之間傳送方式(、、)。7、查詢(條件)式傳送方式的包含()三個環(huán)節(jié)。2023/2/216、8088可直接尋址的空間最大為()。

A)640KB B)1MB C)512MB D、2MB17、8086是()位計算機。

A)8 B)16 C)32 D)6418、CPU和輸入/輸出設備之間傳送的信息類型有()。

A)地址信息B)模擬量

C)控制信息,狀態(tài)信息和數(shù)據(jù)信息D)數(shù)字量19、以下關于中斷控制器8259描述錯誤的是()。 A)一片8259可以管理8級中斷 B)不能設置中斷優(yōu)先級 C)在中斷響應周期,8259可以提供中斷類型碼 D)用兩片8259構成級聯(lián),以便管理15級中斷2023/2/2三、問答題(看書中習題)8086CPU響應中斷的條件?簡述8086CPU響應中斷處理過程。計算機對I/O端口編址時通常采用哪兩種方法?在8086/8088系統(tǒng)中,用哪種方法對I/O端口進行編址?一般的IO接口電路安排有哪三類寄存器?它們各自的作用是什么?簡述CPU與外設進行數(shù)據(jù)交換的幾種常用方式與特點。簡述條件傳送方式的工作過程,主要適用的場合。8086CPU響應中斷的條件?8086CPU響應中斷后自動完成的任務是什么?軟件中斷有哪些特點?硬件中斷有那些特點?什么是中斷向量?它放在哪里?對應于類型號1CH的中斷向量在哪里?如1CH中斷程序從5110H:2030H開始,則中斷向量應怎樣存放?2023/2/22013/11/16第6章中斷控制技術1.為什么要用中斷?中斷:外設向CPU發(fā)中斷請求,CPU接收到中斷請求并在一定條件下,暫時停止執(zhí)行原來的程序而轉去處理中斷,處理好中斷服務再返回繼續(xù)執(zhí)行原來的程序,就稱為一個中斷過程。中斷是CPU被動的響應外設要求服務。2013/11/162.中斷系統(tǒng)組成(1)需要中斷請求——中斷請求觸發(fā)器(2)可以屏蔽某些外設需分別處理——中斷屏蔽觸發(fā)器(3)多個外設需分別處理-中斷優(yōu)先權(4)多個外設需允許嵌套-中斷嵌套(5)CPU與外設的數(shù)據(jù)中轉——數(shù)據(jù)緩沖器(6)選擇外設的端口號——端口地址譯碼器2013/11/163.CPU響應中斷要自動完成的任務

(1)關中斷(2)保護斷點(IP,CS,FLAG入棧) (3)給中斷服務程序的入口地址4.CPU響應外中斷的條件(1)有中斷源發(fā)出的中斷請求信號(2)開放總中斷:IF=1(3)在現(xiàn)行指令結束后響應中斷2013/11/165.8086微機中斷系統(tǒng)8088的中斷系統(tǒng)采用向量中斷機制能夠處理256個中斷用中斷向量號0~255區(qū)別可屏蔽中斷還需要借助專用中斷控制器Intel8259A實現(xiàn)優(yōu)先權管理2013/11/16中斷的分類:兩類軟件(內部)中斷是由CPU內部事件引起的中斷;與硬件無關,不執(zhí)行中斷響應周期,除單步中斷外,內部中斷不可屏蔽,優(yōu)先級高于外部中斷。硬件中斷:8086/8088CPU有兩條引腳1、NMI非屏蔽中斷由正跳變NMI引入,CPU立即響應,不受中斷標志位IF的控制。優(yōu)先級最高,處理2、可屏蔽中斷由INTR引入,受中斷標志位IF的控制當IF=1時,CPU將響應這一中斷請求6.2:中斷的分類2013/11/16提問:軟件中斷有哪些特點?軟件中斷和硬件中斷有什么不同之處?【答】軟件中斷是由CPU內部事件引起的中斷;與硬件無關,不執(zhí)行中斷響應周期,除單步中斷外,內部中斷不可屏蔽,優(yōu)先級高于外部中斷。軟件中斷其中斷的發(fā)生是確定的。硬件中斷的發(fā)生是隨機的,主程序中無調用點。6.2:硬件中斷與軟件中斷的比較1.各種中斷源的優(yōu)先權次序是什么?軟件中斷>非屏蔽中斷>可屏蔽中斷>單步中斷課堂提問:2.CPU響應外中斷的條件是什么?3.CPU響應中斷要自動完成的任務是什么?(1)關中斷(2)保護斷點(IP,CS,FLAG入棧)(3)給中斷服務程序的入口地址(1)有中斷源發(fā)出的中斷請求信號(2)開放總中斷:IF=1(3)在現(xiàn)行指令結束后響應中斷

6.2:硬件中斷6.中斷向量表中斷類型碼:8086中斷源共分256級中斷,每個中斷源對應一個0~255編號,稱為中斷類型碼或中斷向量號。中斷向量:中斷服務程序的入口地址(cs,ip)中斷向量表:將所有中斷向量集中放在一起.中斷向量表:放在內存地址0單元開始的單元:00000H~03FFFH中斷向量指針:

中斷類型號*4=中斷向量最低字節(jié)指針例:中斷類型號為20H:中斷向量放在0000:0080H開始的4個單元中。中斷向量指針=20H*4=80H

假設20H號中斷服務程序的入口地址:4030H:2010H問題:那么,在80~83H中依次存放的是?

0000:008010203040CS=4030HIP=2010H0000:00810000:00830000:00826.2:中斷舉例例題:類型號為20H的中斷服務程序入口符號地址為INT-5,試寫出中斷向量的裝入程序片斷?!敬稹恐袛嘞蛄康牡刂罚?0H×4=10000000=80H

中斷向量的裝入參考程序: 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.設SP=8FFEH,8086CPU執(zhí)行段間返回指令RET后,SP的值為

SP-4。2.當SP=6000H時,執(zhí)行IRET指令后,SP的值為

SP-6。3.要使中斷服務完成后,能正確返回,應怎樣作?(IRET)6.5:中斷概念舉例第6章思考題一、問答題8086CPU響應中斷的條件?簡述8086CPU響應中斷處理過程。8086CPU響應中斷的條件?8086CPU響應中斷后自動完成的任務是什么?軟件中斷有哪些特點?硬件中斷有那些特點?什么是中斷向量?它放在哪里?對應于類型號1CH的中斷向量在哪里?如1CH中斷程序從5110H:2030H開始,則中斷向量應怎樣存放?二、概念題8086中斷源有()個。中斷服務程序入口地址由()組成。中斷類型號為20H,其中斷向量為()。一片8259A可以管理()級中斷;3片8259A可以管理()級中斷。軟件中斷優(yōu)先級與硬件中斷優(yōu)先級相比,()的級別高。在中斷服務程序結束前,為正確返回,必須設置一條指令()。在子程序調用結束前,為正確返回,必須設置一條指令()。硬件中斷是(外部引發(fā)?隨機的?執(zhí)行總線周期?中斷類型碼由?提供),軟件中斷是(內部引發(fā)?確定的?不執(zhí)行總線周期?中斷類型確定?)軟件中斷優(yōu)先級與硬件中斷優(yōu)先級相比,()的級別高。2023/2/27.以下對硬件中斷傳送方式描述錯誤的是()。

A).不需要增加額外硬件

B).中斷傳送是一種效率更高的程序傳送方式

C).進行傳送的中斷服務程序是預先設計好的

D).中斷請求是外設隨機向CPU提出的8.8086CPU允許的I/O地址線最多可達()條。

A).8B).10C).16D).209.下面關于軟件中斷說法錯誤的是()。 A.中斷類型碼已知 B. INTn C.不執(zhí)行中斷響應周期 D.中斷是隨機的2023/2/2第7章定時/計數(shù)器82538253的工作模式方式0——計數(shù)結束產生中斷一次定時或計數(shù),重寫初值,啟動新一輪的計數(shù)方式1——可編程的單脈沖(單穩(wěn))觸發(fā)器

GATE邊沿觸發(fā),啟動新一輪計數(shù)方式2——分頻器(速度波發(fā)生器)具有計數(shù)初值重裝能力方式3——方波發(fā)生器具有計數(shù)初值重裝能力方式4——軟件觸發(fā)的選通信號發(fā)生器一次定時,重寫初值,啟動新一輪的計數(shù)方式5——硬件觸發(fā)的選通信號發(fā)生器

GATE邊沿觸發(fā)新一輪計數(shù)1.計數(shù)初值計數(shù)初值n=時鐘頻率fc/輸出頻率fout=定時時間Tout/時鐘脈沖周期Tc2.編程命令方式命令字對8253初始化方式命令字的格式

7.2.28253控制字格式7.2:8253控制字格式SC1SC0RW1RW0M2M1M0BCD1--計數(shù)值為BCD碼格式0--計數(shù)值為二進制格式M2M1M0模式選擇

000模式0001模式1/10模式2/11模式3100模式4101模式500----對計數(shù)器進行鎖存01----只讀/寫低8位字節(jié)10----只讀/寫高8位字節(jié)11----先讀/寫低8位字節(jié),再讀/寫高8位字節(jié).00----選計數(shù)器001----選計數(shù)器110----選計數(shù)器211----無意義一、概念與原理8253有()個獨立定時通道。8253每個計數(shù)通道與外設接口有()()(),用途是()。可編程定時器8253的地址有()個。假設8253的端口地址為330H~333H,那么控制端口地址為(),通道0、1、2的地址為()8253的門控信號GATE作用是(),CLK端的作用是(),OUT端作用是()。8253有(種工作方式初始化定時器8253需要先寫(),后寫()。第7章自測題1、以下對8253門脈沖控制信號描述正確的是()

A.門脈沖控制時鐘輸入;

B.用門脈沖啟動計數(shù);

C.用門脈沖停止計數(shù);

D.用門脈沖來重新啟動計數(shù);

E.A,B,C,D,均是2、以下關于可編程計數(shù)/定時器8253說法錯誤的是()。

A).有3個獨立的16位計數(shù)/定時器

B).每個計數(shù)/定時器都有6中工作方式

C).每個定時/計數(shù)器都有時鐘輸入CLK、定時輸出OUT和門控信號GATA D).每個定時/計數(shù)器都用二進制計數(shù),不能用BCD碼計數(shù)3、可編程計數(shù)/定時器8253的OUT端用于()。

A).輸出定時信號B).輸入門控信號

C).輸入計數(shù)信號C).輸出門控信號

已知某8253占用I/O空間地址為340H~343H,設定時器0、定時器1工作于方式3,外部提供一個時鐘,頻率f=2MHZ。(1)定時器1連續(xù)產生5ms的定時信號,(2)定時器0連續(xù)產生300us的定時信號。8.3:8253應用舉例二、編程題8253初始化程序:MOVAL,00110110B;0號定時器,方式3MOVDX,343HOUTDX,ALMOVAX,600MOVDX,340HOUTDX,ALMOVAL,AHOUTDX,AL7.3:8253應用舉例MOVAL,01110110B;1號定時器,方式3MOVDX,343HOUTDX,ALMOVAX,10000MOVDX,341HOUTDX,ALMOVAL,AHOUTDX,AL第8章可編程并行接口8255A8.1可編程并行接口8255A8.28255A的控制字8.3方式0-基本的輸入/輸出方式8.4方式1—選通的輸入輸出方式8.5方式2—雙向傳輸方式本章小結本章習題8.1:8255A的內部結構片選信號地址總線8位端口A8位端口B8位端口C圖10-18255A的內部結構1.方式控制字1D6D5D4D3D2D1D0方式選擇標志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控制字標志1=置10=置0000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC7圖5、端口C置1/0控制字8.2:端口C置1/0控制字

PA0PA1PA28255AA0A1

PB0CS+5V200+5V2K譯碼器D7~D0地址線8088CPUA0A1【例8-5】用8255A控制三個發(fā)光二極管依秩序循環(huán)顯示。假設開關閉合時,點亮發(fā)光二極管,開關斷開時息滅二極管。8.3:工作方式0例題圖10-6用8255A控制三個發(fā)光二極管顯示。8255A的端口地址為:

A端口:340HB端口:341HC端口:342H

控制口:343H

試編寫8255初始化程序段和控制三個發(fā)光二極管顯示程序段。8.3:工作方式0例題1、程序框圖:8.3:工作方式0例題2、軟件設計1)設A口為輸出口,方式0。B口輸入,方式0,則方式選擇控制字為82H。2)A口輸出代碼:

11111110,1號發(fā)光二極管亮

11111101,2號發(fā)光二極管亮

11111011,3號發(fā)光二極管亮3)軟件延時子程序: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工作方式設定MOVDX,COTRMOVAL,82H;方式0OUTDX,AL;A口為輸出,B口為輸入3、查詢開關狀態(tài)WAITFOR: MOVDX,PORT_B;B口開關掃描循環(huán)

INAL,DX TESTAL,00000001B;查詢連接在PB0的開關S狀態(tài)

JZ CLOSE;開關S閉合,LED1~3依次發(fā)光CALL DARK;開關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口開關掃描循環(huán)

INAL,DX TESTAL,00000001B;查詢連接在PB0的開關S狀態(tài)

JZ CLOSE;開關S閉合,LED1~3依次發(fā)光完整程序:

CALL DARK;開關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等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論