《微機原理與接口技術》中科大版部分習題解答_第1頁
《微機原理與接口技術》中科大版部分習題解答_第2頁
《微機原理與接口技術》中科大版部分習題解答_第3頁
《微機原理與接口技術》中科大版部分習題解答_第4頁
《微機原理與接口技術》中科大版部分習題解答_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章習題及答案:P20 9、將下列二進制數(shù)轉換為十進制數(shù)。 (1 1101.01B 13.25 (3 101011.0101B 43.3125 (2 111001.0011B 57.1875 (4 111.0001B 7.0625 10、將下列十六 進制數(shù)轉換為十進制。 (1 A3.3H 163.1875 (3 AC.DCH 172.859375 (2 129.CH 297.75 (4 FAB.3H 4011.1875 11、 將下列十進制數(shù)轉換為二進制、 八進制、 十六進制。 (1 23 10111B 27Q 17H (2 107 1101011B 153Q 6BH (3 1238 100

2、11010110 2326Q 4D6H (4 92 1011100B 134Q 5CH 12、將下列十進制數(shù)轉換為 8 位有符號二進制數(shù) (原碼,可以是補碼 (1 +32 00100000B (00100000B (2 -12 10001100B (11110100B (3 +100 01100100B (01100100B (4 -92 11011100B (10100100B 13、將下列十進制數(shù)轉換為壓縮 BCD 碼和非壓縮 BCD 碼。 (1 102 000100000010 0000 0001 0000 0000 0000 0010 (2 44 01000100 0000 0100

3、0000 0100 (3 301 001100000001 0000 0011 0000 0000 0000 0001 (4 1000 0001000000000000 0000 0001 0000 0000 0000 0000 0000 0000 14、將下列二進制數(shù)轉換 為有符號的十進制數(shù)。 (原碼, 可以是補碼 (1 10000000B 0 (補碼:-128 (2 00110011B +51 (+51 (3 10010010B -18 (-110 (4 10001001B -9 (-119 15、將下列十進 制數(shù)轉換為單精度浮點數(shù)。 (1 +1.5 0 01111111 10000000

4、000000000000000 (2 -10.625 1 10000010 0101010000000000000000 (3 +100.25 0 10000101 1001000100000000000000 (4 -1200 1 10001001 00101100000000000000000 16、 將下列單精度浮點數(shù)轉換為十進制數(shù)。 (1 0 10000000 11000000000000000000000 3.5 (2 1 01111111 00000000000000000000000 -1 (3 0 10000000 10010000000000000000000 3.125 第

5、二章習題及答案:必做習題:1, 5, 9, 11, 12, 14, 16, 18, 20 1 答:CPU 內部由執(zhí)行單元 EU 和總線接口單元 BIU 組成。主要功 能為:執(zhí)行單元 EU 負責執(zhí)行指令。它由算術 邏輯單元 (ALU、通用寄存器組、 16 位標 志寄存器 (FLAGS、 EU 控制電路等組成。 EU 在工作時直接從指令流隊 列中取指令代碼, 對其譯碼后產生完成指令所需要的控制信息。數(shù)據在 ALU 中進行運算,運算結果的特征 保留 在標志寄存器 FLAGS 中。 總線接口單元 BIU 負責 CPU 與存儲器和 I /O 接口之 間的信息傳送。它由段寄存器、指令指針寄存器、指令流隊

6、列、地址加法器以及總線控制 邏輯組成。 8086 的指令隊列長度為 6B 。 5 答:(1 ZF , 兩數(shù)相減如 ZF=1, 則相等 (2 SF , SF=1 為負 (3 對有符號數(shù):OF , OF=1 為溢出; 對無符號數(shù):CF , CF=1 為溢出 (4 PF , PF=1, 不補 1 (5 對有符號數(shù):無溢出時 (OF=0 , 如 ZF=1, 則兩數(shù)相等; 如 ZF=0 且 SF=0,則被減數(shù)大;如 ZF=0 且 SF=1, 則減數(shù)大;有溢出時(OF=1 ,如 SF=1, 則被減數(shù)大;如 SF=0,則減數(shù)大;對無符號數(shù):如 ZF=1,則兩數(shù)相等; 如 CF=0,則被 減數(shù)大; 如 CF=

7、1, 則減數(shù)大 (6 IF , IF=1, 允許中斷 9 答:(1 10000H1FFFFH (4 E0000HEFFFFH (2 12340H2233FH (5 AB000HBAFFFH (3 23000H32FFFH 10 答:(1 12000H (3 25000H (2 21000H (4 3F069H 11 答:(1 12000H (3 A1000H (2 26200H (4 2CA00H 12 答:物理地址:35000H 35800H 。入棧 10 個字 節(jié)后 SP 為 7F6H 。再出棧 6 個字節(jié)后 SP 為 7FCH 。 14 答:代碼段首地址:31FF0H ; 當前指令地址:

8、320F0H 數(shù)據段首地址:10E40H 堆棧段棧底地址:21F00H ;堆棧段棧頂?shù)?址:31EEEH 附加段首地址:10F40H 狀態(tài)標志均為 0。 15 8086 的最小工作模式和最大 工作模式有什么區(qū)別 ? 答:最小模式又稱為單微處理器模式,在這種模式下, CPU 僅支持 由少量設備組成的單微處理器系統(tǒng)而不支持多 處理器結構,小系統(tǒng)所需要的全部控制信號 都由 CPU 直接提供。對應地,最大模式又稱為多微處理機模式。在最 大模式下,系統(tǒng)中 除了有 8086 CPU 之外, 還可以接另外的處理器 (如 8087 數(shù)學協(xié)處理器 , 構成多微處理器 系統(tǒng)。 此時 CPU 不直接提供讀/寫命令等

9、控制信號, 而是將當前要執(zhí)行的傳送操作類型 編碼成 3 個狀態(tài)位輸出, 由總線 控制器對狀態(tài)信號進行譯碼后產生相應控制信號。其他 的控制引腳則直接提供最大模式系統(tǒng)所需要的控制信號。 16 答:因為 8086 的地址和數(shù)據 引腳分時復用, 要保證穩(wěn)定輸出地址信號, 必須使用地址鎖存器。 使用三片 8282, 其中 接地, STB 與 CPU 的 ALE 相連;前 2 片 8282 的 DI0DI7 分別與 CPU 的 AD0AD15 相連,第三片 8282 的 DI0DI3 分別與 CPU 的 AD16AD19 相連, DI4 與 CPU 的 相 連。 18 答:CPU 完成一次存儲器訪問或 I

10、/O 端口操作所需要的時間稱為一個總線周期。 在 T2T4 時 鐘 周 期 內 數(shù) 據 出 現(xiàn) 在 總 線 上 。 20 答 :FFFF0H 第 三 章 2,3,6,10,11,12,13,15,17,18 2. DS=1000H,BX=0200H,SI=2,內存 10200H-10205H 單元的內容 分別是 10H, 2AH, 3CH, 46H, 59H, 6BH 下列指令 執(zhí)行后, AX=? (1MOV AX,0200H (2 MOV AX,200H (3MOV AX,BX (4 MOV AX,3BX (5MOV AX,BX+SI (6 MOV AX,2BX+SI 答 :(10200H

11、(22A10H (30200H (45946H (5463CH (66B59H 3.DS=1000H,ES=2000H,SS=3500H,SI=00A0H,DI=0024H,BX=0100H,BP=0200H, 數(shù)據段中 變量名為 V AL 的偏移地 址值為 0030H ,說明下列源操作數(shù)的尋址方式和物理地址? (1MOV AX,100H (2 MOV AX,V AL (3MOV AX,BX (4 MOV AX,ES:BX (5MOV AX,SI (6 MOV AX,BX+10H (7MOV AX,BP (8 MOV AX,V ALBPSI (9MOV AX,V ALBXDI (10 MOV

12、AX,BPDI 答:(1直接 ,10100H (2直接, 10030H (3寄存器間 接 ,10100H (5寄存器間接 ,100A0H (7寄存器間接 ,35200H (9相對基址變址 ,10154H (4寄存 器間接, 20100H (6寄存器相對, 10110H (8相對基址變址, 352D0H (10基址變址, 35224H 6. 指出下列指令哪些是錯誤的,錯在哪里 (1 MOV DL,AX (2 MOV 8650H,AX (3 MOV DS,0200H (4 MOV BX,1200H (5 MOV IP ,0FFH (6 MOV BX+SI+3,IP (7 MOV AX,BXBP (

13、8 MOV AL,ES:BP (9 MOV DL,SIDI (10 MOV AX,OFFSET 0A20H (11 MOV AL,OFFSET TABLE (12XCHG AL,50H (13 IN BL,05H (14 OUT AL,0FFEH 答:(1 長度不匹配 (2立即數(shù)不能做目的操作數(shù) (3段寄存器不能用立即數(shù)賦值 (4不能兩 個內存 (5 IP 不能用指令直接修改 (6 指令中不能出現(xiàn) IP (7 BX/BP 應與 SI/DI 搭 配 (8 對 (9 SI/DI 應與 BX/BP 搭配 (10 OFFSET 后應該內存 (11 應用 AX (12 不能立即數(shù) (13 IN 必須用

14、AL/AX (14操作數(shù)反;地址應為 8 位 10. 某班有 7 個 同學英語成績低于 80 分, 分數(shù)存在字節(jié)類型 ARRAY 數(shù)組中, 編程完成:(1給每 人加 5 分,結果存到 NEW 數(shù)組中 (2把加分后的總分存到字類型 SUM 單元中 (3 把加分后的平均分存到字節(jié)類型 A VERAGE 單元中 答:ARRAY DB 79,78,77,76,77,78,79 MOV CX,7 NEW DB 7 DUP(? MOV AX,0 SUM DW 1 DUP(? LEA SI,NEW AVERAGE DB 1 DUP(? ADD5: ADD BYTE PTRSI,5 ADD AL,SI MOV

15、 DS, AX ADC AH,0 MOV ES, AX INC SI LEA SI,ARRAY LOOP ADD5 LEA DI,NEW MOV CX,7 MOV SUM,AX CLD MOV BL,7 REP MOVSB DIV BL MOV A VERAGE,AL 11.AX=2508H,BX=0F36H,CX=0004H,DX=1864H,下列指令執(zhí)行后結果是多少, 標志位 CF=? (1 AND AH,CL (2 OR BL,30H (3 NOT AX (4 XOR CX,0FFF0H (5 TEST DH,0FH (6 CMP CX,00H (7 SHR DX,CL (8 SAR A

16、L,1 (9 SHL BH,CL (10 SAL AX,1 (11 RCL BX,1 (12 ROR DX,CL 答 :(1AX=0408H,CF=0 (2BX=0F36H,CF=0 (3AX=0DAF7H,CF 不 變 (4CX=0FFF4H,CF=0 (5 DX=01864H,CF=0 (6CX=0004H,CF=0 (7DX=0186H,CF=0 (8AX=2504H,CF=0 (9BX=0F036H,CF=0 (10AX=4A10H,CF=0 (11BX=1E6C/1E6DH,CF=0 (12DX=4186H,CF=0 12. 數(shù)據段定義如下:DA TA SEGMENT STRING

17、DB The Personal Computer& TV DA TA ENDS 用字符串操作等指令完成以下功能:(1把該字符串傳送 到附加段中偏移量為 GET_CHAR 開始的內存單元中 (2比較該字符串是否與 The computer 相同, 若相同則將 AL 寄存器的內容置 1, 否則置 0, 并將比較次數(shù) 送到 BL 寄 存器 (3檢查該字符串是否有 &符,若有則用空格符替換 (4把大寫字母傳送到附 加段中以 CAPS 開始的單元中,其余字符傳送到以 CHART 開始的單元,然后將數(shù)據 段 中存儲上述字符串的單元清零。 答:(1CLD NEXT: REPNE SCASB

18、LEA SI,STRING JCXZ SKIP LEA DI,GET_CHAR MOV BYTE PTR DI-1,' ' MOV CX,26 LOOP NEXT REP MOVSBSKIP: (4 LEA SI,STRING (2補充在附加數(shù)據段定義 STRING1 DB The computer LEA DI,CAPS MOV AL,1 LEA BX,CHART CLD MOV CX,26 LEA SI,STRING NEXT: MOV AL, SI LEA DI,STRING1 CMP AL, A MOV CX,12 JB OTHER REPZ CMPSB CMP AL,

19、 Z JA OTHER JCXZ SKIP MOV ES:DI,AL MOV AL,0 INC DI SKIP: MOV BX,12 JMP SKIP SUB BX,CX OTHER: MOV ES:BX,AL (3 CLD INC BX MOV AL,'&' SKIP: MOV BYTE PTRSI,0 LEA DI,STRING INC SI MOV CX,26 LOOP NEXT 13. 編程將 AX 寄存器的內容 以相反的次序傳送到 DX 寄存器中, 并要求 AX 中的內容不被 破壞, 然后統(tǒng)計 DX 寄存 器中 1的個數(shù) 答:MOV BL,0 JNC SKIP

20、 PUSH AX INC BL MOV DX,0 SKIP:RCR DX,1 MOV CX,16 LOOP NEXT NEXT: SHL AX,1 STOP:POP AX 15.在下列程序段中分別填入以 下 指 令 (1LOOP NEXT (2 LOOPE NEXT (3 LOOPNE NEXT 程 序 執(zhí) 行 完 后 ,AX,BX,CX,DX 的內容分別是多少? START: MOV AX,01H MOV BX,02H MOV CX,04H ( MOV DX,03H 答:(1 AX=5 BX=16 CX=0 DX=0 NEXT: INC AX (2 AX=2 BX=4 CX=3 DX=1 A

21、DD BX,AX (3 AX=3 BX=7 CX=2 DX=0 SHR DX,1 17.類型 2 的中斷服務程序的起 始地址為 0485:0016H,它在中斷向量表中如何存放? 答:物理地址 內容 00008H 16H 00009H 00H 0000AH 85H 0000BH 04H 18. 中 斷 向 量 表 中 地 址 為 0040H 中 存 放 240BH,0042H 單元存放 D169H ,問:(1 這些單元對應的中斷類型是什么? (2 該 中斷服務程序的起始地址是什么? 答:(110H (2D169H:240BH 第四章習題參考答案 p205 1 解:A1 - 4 字節(jié), A2 -

22、6 字節(jié), A3 - 40 字節(jié), A4 - 60 字節(jié) 4 解:PAR 偏移地址 為 0, PLENTH 當前偏移地址 $=2+16+4=22, $-PAR=22,故 PLENTH 的值為 22 5 解: AX=1,BX=20,CX=1 6 解:應討論最高位為 1 和 0 的情況。如輸入最高位為 1,AH=0;輸 入最高位為 0,AH=0FFH。 IN AL , 5FH ;假如輸入后 AL=45H TEST AL , 80H ;執(zhí)行 01000101 AND 10000000 后 ZF=1, AL=00H JZ L1 ; ZF=1, 轉到 L1 MOV AH, 0 JMP STOP L1:M

23、OV AH, 0FFH ; 結果 AH=0FFH STOP:HALT 補充題 閱讀程序并完成填空 (1 ADDR1 開始的單元中連續(xù)存放兩個雙字數(shù)據,求其和,并將和存放在 ADDR2 開始 的單 元 (假 定和 不 超 過雙 字 MOV CX,2 NEXT XOR BX,BX CLC 解 :NEXT: MOV AX,ADDR1+BX ADDR1+BX+4 ADC AX, INC BX MOV ADDR2+BX,AX LOOP INC BX (2 在數(shù)據段 ADDR1 地址處有 200 個字節(jié)數(shù)據, 要傳送到數(shù)據段地址 ADDR2 處。 MOV AX, SEG ADDR1 REP MOV DS,

24、 AX 解:MOV ES, AX MOV SI, OFFSET ADDR1 MOV DI, OFFSET ADDR2 CX MOV ,200 MOVSB CLD (3 已知有某字串 BUF1 的首地址 為 2000H, 數(shù)據段與附加段重合。欲從 BUF1 處開始將 20 個字數(shù)據順序 傳送至 BUF2 處。 (假設 BUF1 和 BUF2 有地址重疊 LEA SI, BUF1 REP MOVSW ADD SI, 解:LEA DI, BUF2 38 STD ADD DI, 38 MOV CX, 20 (4 設有一個首地址為 ARRAY , 有 N 個字數(shù) 據的數(shù)組, 要求求出該數(shù)組之和, 并把結

25、果 存入 TOTAL 地址中。 (假設和不超過兩個字節(jié) MOV CX, JNZ START MOV AX,0 MOV ,AX MOV SI,0 解:START: ADD AX, N ADD SI, 2 ARRAYSI DEC CX TOTAL (5將段地址為 1000H 、偏移地址為 STR 的 5 個字節(jié)的內 容逐一裝入累加器中, 加 1 后, 再送入 STR 為首地址的存儲單元。 MOV AX, 1000H ADD AL, 1 MOV ES, AX LOOP NEXT MOV DS, AX MOV DI, SI 解:MOV CX,5 LEA SI, STR CLD STOSB NEXT:

26、LODSB (6下列子程序統(tǒng)計字符串的長度,入口參數(shù) DI 為字符串 首地址, 字符串以 0DH 結束; 返回參數(shù) CX 中為統(tǒng)計得到的字符串長度。 STRLEN PROC RET PUSH AX STRLEN ENDP PUSH DI 解:MOV CX,0 CMP AL, 0DH REPEA T: MOV AL,DI INC CX JE EXIT JMP REPEAT INC DI POP AX EXIT: POP DI 第五章必做:1、 2、 3、 5、 9、 12 1.靜態(tài) RAM 內存儲的信息只要電源存在就能一直保持,而動態(tài) RAM 的信息 需要定時刷新才能保持; 同時靜 態(tài) RAM

27、的集成度比較低, 運行速度快, 而動態(tài) RAM 的 集成度高, 運行相對較慢。 2.ROM 是只讀存儲器, 根據寫入方式的不同可以分為四類:掩膜型 ROM 、 PROM 、 EPROM 和 EEPROM 。 PROM 是可編程只讀存儲器,只允許編程 一次,價格與生產批量無關,造價比較高; EPROM 為可擦除可編程 ROM ,能夠通過特 殊方式對它進行編程; EEPROM 為電可擦除可編程 ROM , 能夠通過一定的通電方式對內 容進行擦除并寫入新的信息。 3.CAS#為列地址選通信號,用于指示地址總線上的有效數(shù)據 為列地址; RAS#為行地址選通信號,用于指示地址 總線上的有效數(shù)據為列地址。

28、 5. 直接 映象 Cache 是將主存儲器中每一頁大小分成和 Cache 存儲器大小一致, Cache 中每一塊 分配一個索引字 段以確定字段,這樣可以通過一次地址比較即可確定是否命中,但如果頻 繁訪問不同頁號主存儲器時需要做頻繁 的轉換, 降低系統(tǒng)性能; 成組相聯(lián) Cache 內部有多 組直接映象的 Cache ,組間采用全關聯(lián)結構,并行地起著高速 緩存的作用。訪問時需要進 行兩次比較才能確定是否命中。 9. 組成 4K ×8 的存儲器,那么需要 4 片這樣的芯片:將 A15 取反后分配芯片 1 的 CS #;將 A14 取反后分配 給芯片 2 的 CS #;將 A13 取反 后

29、分配芯片 3 的 CS #; 將 A12 取反后分配給芯片 4 的 CS #。 那么芯片 1 的 地 址 范 圍 可 以 是 (0x80000x83FF (0x84000x87FF (0x88000x8BFF (0x8C000x8FFF ? 、 、 、 、 、 (0xF4000xF7FF (0xF8000xFBFF (0xFC000xFFFF , 芯 片 2 的 地 址 范 圍 可 以 是 (0x40000x43FF 、 、 、 (0x44000x47FF (0x48000x4BFF (0x4C000x4FFF 、 、 、 ? 、 (0xF4000xF7FF (0xF8000xFBFF 、 、

30、 (0xFC000xFFFF ,這樣會造成地址的重復。 12. 因為 EPROM2764 是 8K*8 的 ROM , 所 以 要 構 成 64K*8 的 存 儲器 系 統(tǒng) , 需 要 8 片 EPROM2764。 其中 CPU 的 A12A0 直接與 8 片 EPROM 的 A12A0 相連 (沒有考 慮驅動能力問題 A15、 , A14 和 A13 與 138 的 A 、 B 、 C 三個端口相連,其他地 址線 (A19A16 和 M/IO#組合連到 G1、 G2A 和 G2B 上, 確保 A19=0、 A18=1、 A17=0 和 A16=0 即可。 第六章 3、什么叫 I/O 端口?一

31、般的接口電路中可以設置哪些端口? 計算機對 I/O 端口編址時采用哪兩種方法?在 8086/8088CPU 中一般采用哪種編址方 法? 答:在 CPU 與外設通信時,傳送的信息主要包括數(shù)據信息、狀態(tài)信息和控制信息。 在接口電路中,這些信息分 別進入不同的寄存器,通常將這些寄存器和它們的控制邏輯統(tǒng) 稱為 I/O 端口。 一般的接口電路中可以設置數(shù)據端 口、狀態(tài)端口和命令端口。計算機對 I/O 端口編址時采用兩種方法:存儲器映像尋址方式、 I/O 單獨編址方式。 在 8086/8088CPU 中一般采用 I/O 單獨編址方式。 4、 CPU 與外設間傳送數(shù)據主要有哪幾種方式? 答:CPU 與外設間

32、的數(shù)據傳送方式主要有:程序控制方式、中斷方式、 DMA 方式。 7、某一個微機 系統(tǒng)中, 有 8 塊 I/O 接口芯片, 每個芯片占有 8 個端口地址, 若起始地址為 300H , 8 塊 芯片的地 址連續(xù)分布,用 74LS138 作譯碼器,試畫出端口譯碼電路,并說明每個芯片的 端口地址范圍。 8、什么叫總線?總線分哪幾類?在微型計算機中采用總線結構有什么好 處? 答:在微型計算機系統(tǒng)中, 將用于各部件之間傳送信息的公共通路稱為總線 (BUS 。 總線分三類:片級總線、系統(tǒng)總線、外部總線。 在微型計算機中采用總線的好處有:? 總 線具有通用性,只要按統(tǒng)一的總線標準進行設計或連接,不同廠家生產的

33、插件板可以互換, 不同系統(tǒng)之間 可以互連和通信,很適合于大批量生產、組裝和調試,也便于更新和擴充系 統(tǒng)。對于用戶來說,可以根據自身需 要,靈活地選購接口板和存儲器插件,還可以根據總 線標準的要求,自行設計接口電路板,來組裝成適合自己的 應用需要的系統(tǒng)或更新原有系 統(tǒng)。 第七章習題及答案:P302 習題 4、 8、 10、 14、 15 4. CPU 響應中斷的條件是什么, 簡述中斷處理過程。 答:CPU 響應外部中斷的條件:(1接收到外設提出的有效中斷請 求信號; (2 CPU 開放中斷,即中斷標志 IF 是“ 1” ; (3 CPU 執(zhí)行完當前指令。 中斷處理過程包含五個步驟:中斷請求、 中

34、斷判優(yōu)、 中斷響應、 中斷處理和中斷返回。 (1 中斷請求:中斷源發(fā)出中斷請求信號,送到 CPU 的 INTR 或 NMI 引腳; (2中斷判 優(yōu):根據中斷優(yōu)先權, 找出中斷請求中級別最高的中斷源, 允許中斷嵌套; (3 中斷響應:在每條指令的最后一個時鐘周期, CPU 檢測 INTR 或 NMI 信號, 在滿足一定條件下, CPU 進入 中斷響應周期,自動完成:向中斷源發(fā)出 INTA 中斷響應信號、關中斷(清 IF 、 斷點保護(CS 、 IP 及 PSW 自動 壓棧 、形成并轉向中斷入口地址; (4中斷處理:由中斷服務程序完成,包括保護現(xiàn)場;開放中斷;中斷服務程序;關中斷;恢復現(xiàn)場;開放

35、中斷; 中斷返回 IRET 等; (5中斷返回:執(zhí)行中斷返回指令 IRET , CPU 自動返回到 斷點地址(彈出堆棧內保存的斷點信息到 IP 、 CS 和 FLAG 中 ,繼續(xù)執(zhí)行被中斷的程 序。 8.假定中斷類型號 15 的中斷處理程序的首地址為 ROUT15,編寫主程序為其建立 一個中斷向量。 答 1:答 2:PUSH ES PUSH DS MOV AX, 0 MOV AX, SEG OUT15 ; 中斷處理程序的段地址 MOV ES, AX AX MOV DI, 54H ; 15H*4 MOV DS, AX MOV AX , OFFSET OUT15;中斷處理程序的偏移 MOV AX,

36、 OFFSET OUT15;中斷處理程序的 偏移 AX AX CLD MOV AL, 15H ;中斷類型號 STOSW MOV AH, 25H ;設中斷向 量 INT 21H MOV AX, SEG OUT15 ;中斷處理程序的段 POP DS 地址 AX STOSW POP ES 10. 給 定 SP=0100H, SS=0500H, PSW=0240H, 在 存 儲 單 元 中 已 有 內 容 為 (00024H=0060H, (00026H=1000H, 在段地址為 0800H 及偏移地址為 00A0H 的單元中 有一條中斷指令 INT 9,試問執(zhí)行 INT 9 指令后, SP 、 SS

37、 、 IP 、 PSW 的內容是什么?棧 頂?shù)娜齻€字是什么? 答:執(zhí)行 INT 9 指令, 標志寄存器 PSW 、 下一條指令的段地址 CS 和 指令指針 IP 的值分別入棧, PSW 中的中斷 允許標志 IF 和單步標志 TF 清 0, 中斷向量 表的中斷入口地址送 CS 和 IP , 轉入中斷服務子程序。 所以此時 SP =0FAH , SS =0500H , CS =1000H , IP =0060H , PSW =0040H 。 棧頂?shù)娜齻€字是:(0500H:0FAH=00A2H 、 (0500H:0FCH =0800H 、 (0500H:0FEH=0240H 14.系統(tǒng)中有 3 個中

38、斷源,從 8259A 的 IR0、 IR2、 IR4 端引入中斷,以邊沿觸發(fā),中斷類型號分別為 50H 、 52H 、 54H ,中斷入 口地址分別為 5020H 、 6100H 、 3250H , 段地址為 1000H 。 使用完全嵌套方式, 普通 EOI 結 束,試編 寫初始化程序, CPU 能正確響應任何一級中斷; 使 并編寫一段中斷服務子程 序, 保證中斷嵌套的實現(xiàn)和正確返回。 答:; 初始化程序 MOV DX, 3250H ; 偏移地址 ; 設置中斷向量表 MOV AL, 54H ; 中斷類型號 MOV AX, 1000H ; 段地址 INT 21H ; 寫 54H 的中斷入口地址

39、MOV DS, AX MOV DX, 5020H ;偏移地址 ;8259A 初始化命令字 MOV AL, 50H ;中斷類型號 MOV AL, 13H ;定義 ICW1, 單片, 邊沿觸發(fā) MOV AH, 25H OUT 20H, AL INT 21H ;寫 50H 的中斷入口地址 MOV AL, 50H ;定義 ICW2, 中斷號 50H57H OUT 21H, AL MOV DX, 6100H ;偏移地址 MOV AL, 52H ;中斷類型號 MOV AL, 01H ;定義 ICW4, 完 全嵌套 , 非緩沖 , INT 21H ;寫 52H 的中斷入口地址 普通 EOI OUT MOV

40、OUT 21H, AL AL, 0E6H 21H, AL ;定義 OCW1,屏蔽 IR1,3,5,6,7 CLI EOI POP POP POP POP IRET ;執(zhí)行 中斷處理程序 ;關中斷 ;中斷結束命令 ;恢復現(xiàn)場 ; 中斷服務子程序 DX CX PUSH DS ;保護現(xiàn)場 PUSH AX AX PUSH CX DS PUSH DX ;中斷返回 STI ;開中斷,允許中斷嵌套 15.如外設 A1、 A2、 A3、 A4、 A5 按完全嵌套優(yōu)先級排列規(guī)則,外設 A1 的優(yōu)先級最高, A5 最低。若中斷請求 的次序如下所示,試給出各外設的中斷處理程序的次序。 (假設所 有的中斷處理程序開始

41、后就有 STI 指令 (1 外設 A3 和 A4 同時發(fā)出中斷請求; (2 在外設 A3 的中斷處理中,外設 A1 發(fā)出中斷請求; (3在外設 A1 的中斷處理未完成 前,發(fā)出 EOI 結束命令,外設 A5 發(fā)出中斷請求 答:外設的中斷處理程序的次序為:A3 A1 A3 A4 A5 第八章習題及答案:3 答:8253 的初始化步驟:1寫入控制字 2 寫入計數(shù)初值 4 解:(1通道 0 工作于方式 3,計數(shù)器初始值為 2M/1.5k=1333.33,取 1333 (2通道 1 工作于方式 2,用通道 0 得輸出端連接 CLK1,計數(shù)器初始值為 1.5k/300=5 (3 通道 2 工作于方式 3

42、, 用通道 0 得輸出端連接 CLK2, 其計數(shù)脈沖 接 1.5k 方波, 計數(shù)器初始值為 1.5k ×(2/50=60 初始化程序:低字節(jié) OUT DX, AL ;初始 化通道 0 MOV DX, 306H MOV DX, 302H MOV AL, 5 MOV AL, 00111111B ;方式 3, BCD碼計數(shù),先寫低 OUT DX,AL 字節(jié),后寫高字節(jié) OUT DX, AL ;初始化通道 2 MOV DX, 306H MOV DX, 300H ;寫低字節(jié) MOV AL, 33H MOV AL, 10010111B ; 方式 3, BCD 碼計 數(shù),只寫 OUT DX,AL

43、低字節(jié) MOV AL, 13H OUT DX, AL OUT DX,AL MOV DX, 304H MOV AL, 60H ;初始化通道 1 MOV DX, 306H OUT DX,AL MOV AL, 01010101B ;方式 2, BCD 碼計數(shù),只寫 5 解:8253 的最高工作頻率為 2MHz,根據要求進行 8 分頻。 (1) 通道 0 工作于方式 3, 計數(shù)器初始值為 625k/18.2=34341, 十六進制為 8625H (2) 通道 1 工作于方式 2,計數(shù)器初始值為 1.25× 15=18.75,取 19 (3)通道 2 工作于方式 3,計 數(shù)器初始值為 1.25

44、M/2000=625 OUT 40H,AL ; 初始化通道 0 OUT 40H,AH MOV AL, 00111110B ;方式 3, 二進制碼計數(shù), 先寫 低字節(jié), 后寫高字節(jié) ;初始化通道 1 OUT 43H, AL MOV AL, 01010101B ;方式 2, BCD 碼計數(shù), 只寫 MOV AX, 8625H ;寫低字節(jié) 低字節(jié) OUT 43H, AL OUT 42H,AL MOV AL, 19H MOV AL, 6H OUT 41H, AL OUT 42H,AL ; 初始化通道 2 第九章 MOV AL, 10110111B ;方式 3,BCD 碼計數(shù),先寫 5 解:初始化程序為

45、 MOV AL, 10001010B 低字節(jié),后寫高字節(jié) OUT 43H, AL OUT 86H, AL MOV AL, 25H 7 解:A 口工 作在方式 0 輸入, B 口工作在方式 1 輸出, C 口的作用為: PC0: 中斷請求信號 INTRB, 輸出,高電平有效; PC1:輸入緩沖器滿信號 IBFB,輸出,高電平有效; PC2:選通信 號 STBB,輸入,低電平有效; C 口的其它位根據控制字可設置為輸入或輸出位。 控制 字為:1001× B 10× A 口工作在方式 1 輸入,B 口工作在方式 0 輸出,C 口的作用為: PC3:中斷請求信號 INTRA,輸出,

46、高電平有效; PC6:外設應答信號 ACKA,輸入,低 電平有效; PC7:輸出緩沖器滿信號 OBFA,輸出,低電平有效; C 口的其它位根據控制 字可設置為輸入或輸出位。 控制字為:1011× B 00× 8 解:A 口工作在方式 2,B 口工 作在方式 1 輸入, C 口的作用為: PC0: 中斷請求信號 INTRB, 輸出, 高電平有效; PC1: 輸入緩沖器滿信號 IBFB,輸出,高電平有效; PC2:選通信號 STBB,輸入,低電平有效; PC3:中斷請求信號 INTRA,輸出,高電平有效; PC4:選通信號 STBA,輸入,低電平 有效; PC5:輸入緩沖器滿信

47、號 IBFA,輸出,高電平有效; PC6:外設應答信號 ACKA, 輸入,低電平有效; PC7:輸出緩沖器滿信號 OBFA,輸出,低電平有效; A 口工作在方 式 2,B 口工作在方式 0 輸出,C 口的作用同上,其中 PC02 可根據控制字設置為輸入 或輸出位。 11 解:基本原理為:通過使 8253 通道 2 工作于方式 3,產生方波信號驅動 揚聲器發(fā)聲,其中 8255 的 PB0 位控制 發(fā)聲與否,高電平發(fā)聲。8253 通道 2 的初始計 數(shù)值為 1193180/1000=1193。 程序為 MOV AL, 10110111B OUT 43H, AL MOV AL, 93H OUT 42

48、H, AL MOV AL, 11H OUT 42H, AL IN AL, 61H MOV AH, AL OR AL, 03H OUT 61H, AL 第九章作業(yè)習題課 P373 2.【答】8255A 具有 3 種基本的工作方式,在對 8255A 進行 初始化編程時,應向控制字寄存器寫入方式選擇控制 字,用來規(guī)定 8255A 各端口的工作 方式。這 3 種基本工作方式是: 方式 0基本輸入輸出方式:適用于不需要用應答信號 的簡單輸入輸出場合。 這種方式 A 口和 B 口可 作為 8 位的端口, C 口的高 4 位和低 4 位可作為兩個 4 位的端口。 方式 1選通輸入輸出方式:A 口和 B 口作

49、為數(shù)據口,均 可工作于輸入或輸出方式。端口 C 的 6 根線 用來產生或接受聯(lián)絡信號。 方式 2雙 向總線 I/O 方式:只有 A 口可以工作于這種方式。端口 A 工作于方式 2 時,端口 C 的 5 位 (PC3PC7)作 A 口的聯(lián)絡控制信號。 9. 硬件系統(tǒng)如圖所示 D7D0 7 0 RESE T RD WR A1 1 A6 6 M/IO A7 7 A5 5 A4 4 A3 3 A2 2 8255A 7 D7D0 PA7 7 0 +5V RESE T RD WR A1 1 A0 0 CS K7 7 PA0 0 K0 0 PB7 7 LED7 7 LED0 0 +5V 74LS138 G1

50、 1 G2A 2A G2B 2B C B A Y0 0 Y1 1 A0 0 PB0 0 8253 A1 1 A0 0 RD WR D7D0 7 0 CS A1 1 A0 0 RD GA TE0 0 GA TE1 1 CLK0 0 OUT0 0 CLK1 1 11:48:15 11:48:15 WR D7D0 OUT1 7 0 1 8255A: A 口輸入, B 口輸出 8253:2MHz/2Hz1000000 通道 0 工作于方式 2,取 N0 1000 通道 1 工作于方式 0, 取 N1999, 即得 OUT1 每 0.5 秒中斷一次。本題用 8253 定時中斷,中斷處理時檢測開關狀態(tài),并

51、點亮相應得 LED。 假設 8259A 已初始化,主程 序如下: MOV AX, SEG INTR ;形成中斷矢量表 MOV DS, AX MOV DX, OFFSET INTR MOV AL, N MOV AH, 25H INT 21H MOV AL, 10010000B ;8255 初始化 OUT 83H,AL MOV AL, 00110101B ;通道 0 方式 2,BCD 計數(shù) OUT 87H,AL MOV AL, 00H ;置初值 1000 OUT 84H,AL MOV AL, 10H 2MHz 8259A IRii 3 3 OUT 84H, AL MOV AL, 01110001B ;通道 1 方式 0,BCD 計數(shù) OUT 87H,AL MOV AL, 99H ;置初值 999 OUT 85H, AL MOV AL, 09H OUT 85H,AL STI AGAIN:HLT JMP AGAIN 中斷服務程序: INTR: PUSH AX STI IN AL, 80H ;檢測開關,合上為 0 NOT AL ;取反 OUT 81H,AL ;點亮相 應 LED (合上) MOV AL, 01110001B ; 通道 1 方式 0, BCD 計數(shù)

溫馨提示

  • 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

提交評論