歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

微機(jī)原理與接口技術(shù) 顧暉 習(xí)題參考答案.doc

  • 資源ID:1556766       資源大?。?span id="utnugx5" class="font-tahoma">189.50KB        全文頁數(shù):42頁
  • 資源格式: DOC        下載積分:32積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要32積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

微機(jī)原理與接口技術(shù) 顧暉 習(xí)題參考答案.doc

微機(jī)原理與接口技術(shù) 答案目錄第1章 習(xí)題答案1第2章 習(xí)題答案2第3章 習(xí)題答案4第4章 習(xí)題答案7第5章 習(xí)題答案19第6章 習(xí)題答案28第7章 習(xí)題答案29第8章 習(xí)題答案29第9章 習(xí)題答案32第10章 習(xí)題答案37第11章 習(xí)題答案39第1章 習(xí)題答案1.計(jì)算機(jī)硬件的基本組成部分有哪些?簡述各部分的功能答:計(jì)算機(jī)硬件的基本組成部分有:運(yùn)算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五大組成部分;運(yùn)算器功能:完成各種算術(shù)運(yùn)算或邏輯運(yùn)算;控制器功能:發(fā)出各種控制信息,使計(jì)算機(jī)各部件協(xié)調(diào)工作;存儲器功能:存儲程序和數(shù)據(jù);輸入設(shè)備:將程序和數(shù)據(jù)輸入的部件;輸出設(shè)備:將結(jié)果數(shù)據(jù)輸出的部件。2.簡述微型計(jì)算機(jī)系統(tǒng)的組成。4分答:以微型計(jì)算機(jī)為核心,配以鼠標(biāo)、鍵盤等外圍設(shè)備、電源、接口電路,以及控制計(jì)算機(jī)工作的軟件構(gòu)成微型計(jì)算機(jī)系統(tǒng)。3.簡述總線控制邏輯的任務(wù)。答:主板與外部設(shè)備之間的數(shù)據(jù)傳輸必須通過系統(tǒng)總線,所以系統(tǒng)總線包含的信號線必須滿足下列各種輸入/輸出操作的需要: 訪問分布于主板之外的存儲器; 訪問I/O接口; 適應(yīng)外部中斷方式; 適應(yīng)存儲器直接與外部設(shè)備交換信息??偩€控制邏輯的任務(wù)就是產(chǎn)生和接受這些操作所需要的信號。4.簡述馮·諾依曼的“程序存儲和程序控制”原理。答:計(jì)算機(jī)有運(yùn)算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五大部分組成,計(jì)算機(jī)內(nèi)部采用二進(jìn)制數(shù)據(jù)的格式表示數(shù)據(jù)和指令。程序?qū)⑹孪缺4嬖趦?nèi)存儲器中,計(jì)算機(jī)在工作時(shí),不需要操作人員干預(yù),自動(dòng)逐條取出指令并執(zhí)行。5.簡述微型計(jì)算機(jī)系統(tǒng)的啟動(dòng)過程。4分答:CPU首先執(zhí)行主板上BIOS中的自檢程序;執(zhí)行引導(dǎo)裝入程序,依次搜尋硬盤、光盤等;讀出引導(dǎo)記錄,裝入引導(dǎo)程序;由引導(dǎo)程序?qū)⒉僮飨到y(tǒng)裝入內(nèi)存;執(zhí)行操作系統(tǒng)。6. BIOS是什么?簡述系統(tǒng)BIOS代碼完成的工作。答:BIOS是Basic Input Output System的縮寫,指的是基本輸入輸出系統(tǒng)"。它是一組固化到計(jì)算機(jī)ROM芯片上的程序,保存著計(jì)算機(jī)最重要的基本輸入輸出的程序、系統(tǒng)設(shè)置信息、開機(jī)后自檢程序和系統(tǒng)自啟動(dòng)程序。7.答:略。2第2章 習(xí)題答案1.答:為了區(qū)別所使用的數(shù)制,一般用以下兩種書寫格式表示: 用括號將數(shù)字括起,后面加數(shù)制區(qū)分,數(shù)制用下標(biāo)的形式給出; 用后綴區(qū)分,二進(jìn)制數(shù)、十進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)的后綴分別為字母B(或b)、D(或d)、O(或o)或Q(或q)、H(或h)。例如:十六進(jìn)制數(shù)56.78可以表示成(56.78)16或56.78H;十進(jìn)制數(shù)56.78可以表示成(56.78)10或56.78D。2.答:123D采用十進(jìn)制,0AFH采用十六進(jìn)制,77Q采用八進(jìn)制,1001110B采用二進(jìn)制。3.答:字長為8位的二進(jìn)制數(shù)原碼表示的最大值:127,最小值:-127;補(bǔ)碼表示的最大值:127,最小值:-128。字長為16位的二進(jìn)制數(shù)原碼表示的最大值:32767,最小值:-32767;補(bǔ)碼表示的最大值:32767,最小值:-32768。4.把下列十進(jìn)制數(shù)分別轉(zhuǎn)換為二進(jìn)制數(shù)和十六進(jìn)制數(shù)。2分1)125 2)255 3)72 4)5090答:(1)125D=0111 1101B=7DH(2) 255D=1111 1111B=FFH(3)72D=0100 1000B=48H(4)5090D=0001 0011 1110 0010B=13E2H5.答:(1)1111 0000B=240D=F0H(2) 1000 0000 B =128D =80H(3)1111 1111 B =255 D =FFH(4)0101 0101B=85D=55H6.答:(1)FFH=255D=1111 1111B(2) ABCDH=43981D=1010 1011 1100 1101B(3) 123H=291D=0000 0001 0010 0011B(4) FFFFH=65535D=1111 1111 1111 1111B7.答:(1)8位時(shí)(16)原=0001 0000 ; (16)補(bǔ)=0001 0000;16位時(shí)(16)原=0000 0000 0001 0000 ; (16)補(bǔ)=0000 0000 0001 0000;(2) 8位時(shí)(-16)原=1001 0000 ; (-16)補(bǔ)=1111 0000;16位時(shí)(-16)原=1000 0000 0001 0000 ; (-16)補(bǔ)=1111 1111 1111 0000;(3) 8位時(shí)(+0)原=0000 0000; (+0)補(bǔ)=0000 0000;16位時(shí)(+0)原=0000 0000 0000 0000; (+0)補(bǔ)=0000 0000 0000 0000;3(4) 8位時(shí)(-0)原=1000 0000 ; (-0)補(bǔ)=0000 0000;16位時(shí)(-0)原=1000 0000 0000 0000; (-0)補(bǔ)=0000 0000 0000 0000;(5) 8位時(shí)(127)原=0111 1111; (127)補(bǔ)=0111 1111;16位時(shí)(127)原=0000 0000 0111 1111; (127)補(bǔ)=0000 0000 0111 1111;(6) 8位時(shí)-128超過原碼表示的范圍; (-128)補(bǔ)=1000 0000;16位時(shí)(-128)原=1000 0000 1000 0000; (-128)補(bǔ)=1111 1111 1000 0000;(7) 8位時(shí)(121)原=0111 1001 ; (121)補(bǔ)=0111 1001;16位時(shí)(121)原=0000 0000 0111 1001; (121)補(bǔ)=0000 0000 0111 1001;(8) 8位時(shí)(-9)原=1000 1001 ; (-9)補(bǔ)=1111 0111;16位時(shí)(-9)原=1000 0000 0000 1001; (-9)補(bǔ)=1111 1111 1111 0111;8.實(shí)現(xiàn)下列轉(zhuǎn)換 2分1)X原=10111110,求X補(bǔ) 2)X補(bǔ)=11110011,求-X補(bǔ)3)X補(bǔ)=10111110,求X原 4)X補(bǔ)=10111110,求X反答:(1) x補(bǔ)=1100 0010;(2)-x補(bǔ)=0000 1101;(3)x原=1100 0010;(4)x反=1011 1101。9.答:(1)AB;(2)AB10.答:(1)溢出;(2)13H;(3)溢出;(4)EDH;(5)EDH。11.完成下列8位二進(jìn)制數(shù)的邏輯運(yùn)算 1分1)1100110010101010 2)11001100101010103)1100110010101010 4)10101100101011005)10101100 10101100 6)10101100101011007)10101100答:(1)1000 1000;(2)1110 1110;(3)0110 0110;(4)1010 1100;(5)0000 0000;(6)1010 1100;(7)=0101 0011。12.答:(1)30H=48,字符為0;(2)39H=57,字符為9;(3)42H=66,字符為B;(4)62H=98,字符為b;(5)20H=32,字符為空格;(6)7H=7,字符為報(bào)警符;13、答:十進(jìn)制49123762壓縮BCD碼0100 1001B0001 0010 0011B0000 0111B0110 0010B非壓縮BCD碼0000 0100 0000 1001B0000 0001 0000 0010 0000 0011B0000 0111B0000 0110 0000 0010BASCII碼3439H313233H37H3632H4第3章 習(xí)題答案1.(1)答:物理地址:物理地址(PA)是20位無符號二進(jìn)制數(shù),是CPU訪問存儲器的實(shí)際地址。每個(gè)存儲單元對應(yīng)一個(gè)物理地址。8086存儲空間的物理地址范圍是:00000HFFFFFH。邏輯地址:采用分段結(jié)構(gòu)的存儲器中,把通過段地址和偏移地址來表示的存儲單元的地址稱為邏輯地址,記為:段地址:偏移地址。段地址:8086規(guī)定各邏輯段從節(jié)的整數(shù)邊界開始,即段首地址二進(jìn)制值的低4位是0000,把段首地址的高16位稱為段基址或段地址。偏移地址:把某一存儲單元相對于段地址的段內(nèi)偏移量稱為偏移地址(也稱有效地址EA)。段地址和偏移地址都是是16位無符號二進(jìn)制數(shù)。(2)答:時(shí)鐘周期:計(jì)算機(jī)的“時(shí)鐘”是由振蕩源產(chǎn)生的、幅度和周期不變的節(jié)拍脈沖,每個(gè)脈沖周期稱為時(shí)鐘周期,又稱為T狀態(tài)或T周期,時(shí)鐘周期是微機(jī)系統(tǒng)工作的最小時(shí)間單元??偩€周期:當(dāng)CPU訪問存儲器或輸入/輸出端口時(shí),需要通過總線進(jìn)行讀或?qū)懖僮?,這個(gè)過程稱為總線周期(Bus Cycle)??偩€周期是利用總線完成一次讀/寫所需要的時(shí)間。指令周期:執(zhí)行一條指令所需要的時(shí)間稱為指令周期(Instruction Cycle)。指令周期由1個(gè)或多個(gè)總線周期組成。解釋下邊名詞:(3)最小模式、最大模式 1分答:最小模式:也稱為單處理器模式,是指系統(tǒng)中只有一片8086微處理器,所連接的存儲器容量不大、片子不多,所要連接的I/O端口也不多,系統(tǒng)的控制總線就直接由CPU的控制線供給,從而使得系統(tǒng)中的總線控制電路減到最少。最小模式適用于較小規(guī)模的系統(tǒng)。最大模式:相對于最小模式而言,適用于中、大型規(guī)模的系統(tǒng)。系統(tǒng)中有多個(gè)微處理器,其中一個(gè)是主處理器8086,其他的處理器稱為協(xié)處理器,承擔(dān)某方面專門的工作。需要增加一片8288來對8086CPU發(fā)出的控制信號進(jìn)行變換和組合,以得到對存儲器或I/O端口的讀/寫信號和對鎖存器、總線收發(fā)器的控制信號。2.答:EU:負(fù)責(zé)指令的執(zhí)行,即從總線接口部件BIU的指令隊(duì)列取指令,指令執(zhí)行后向BIU送回運(yùn)算結(jié)果,同時(shí)把運(yùn)算結(jié)果的狀態(tài)特征保存到標(biāo)志寄存器中。BIU:負(fù)責(zé)CPU與存儲器、I/O設(shè)備之間的數(shù)據(jù)傳送。BIU完成以下操作:取指令送給指令隊(duì)列、配合執(zhí)行部件從指定的內(nèi)存單元或者外設(shè)端口中取數(shù)據(jù)、將數(shù)據(jù)傳送給執(zhí)行部件或者把執(zhí)行部件的操作結(jié)果傳送到指定的內(nèi)存單元或外設(shè)端口中。8086的BIU和EU在很多時(shí)候可以并行工作,使得取指令、指令譯碼和執(zhí)行指令這些操作構(gòu)成操作流水線。 當(dāng)指令隊(duì)列中有兩個(gè)空字節(jié),且EU沒有訪問存儲器和I/O接口的要求時(shí),BIU會自動(dòng)把指令取到指令隊(duì)列中。 當(dāng)EU準(zhǔn)備執(zhí)行一條指令時(shí),它會從指令隊(duì)列前部取出指令執(zhí)行。在執(zhí)行指令的過程中,如果需要訪問存儲器或者I/O設(shè)備,那么EU會向BIU發(fā)出訪問總線的請求,以完成訪問存儲器或者I/O接口的操作。如果此時(shí)BIU正好處于空閑狀態(tài),那么,會立即響應(yīng)EU的總線請求;但如果BIU正在將某個(gè)指令字節(jié)取到指令隊(duì)列中,那么,BIU將首先完成這個(gè)取指令操作,然后再去響應(yīng)EU發(fā)出的訪問總線的請求。 當(dāng)指令隊(duì)列已滿,而且EU又沒有總線訪問時(shí),BIU便進(jìn)入空閑狀態(tài)。5 在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),下面要執(zhí)行的指令就不是在程序中緊接著的那條指令了,而BIU 往指令隊(duì)列裝入指令時(shí),總是按順序進(jìn)行的。在這種情況下,指令隊(duì)列中已經(jīng)裝入的指令就沒有用了,會被自動(dòng)消除。隨后,BIU 會往指令隊(duì)列中裝入另一個(gè)程序段中的指令。3.答:地址信號是CPU 發(fā)送給內(nèi)存或I/O 設(shè)備的,所以地址線是單向的;數(shù)據(jù)信號可以從CPU 發(fā)送給內(nèi)存或I/O 設(shè)備,也可以從內(nèi)存或I/O 設(shè)備發(fā)送給CPU,故而數(shù)據(jù)線是雙向的。4.答:8086CPU 中有14 個(gè)寄存器。它們是:4 個(gè)16 位的通用寄存器:AX、BX、CX、DX 和8 個(gè)8 位的通用寄存器:AH、AL、BH、BL、CH、CL、DH、DL;指針和變址寄存器SP、BP、 SI、DI;4 個(gè)16 位的段寄存器CS、DS、SS 和ES;標(biāo)志寄存器FR;指令指針寄存器IP。功能略。5.將十六進(jìn)制數(shù)5678H和以下各數(shù)相加,試求叫法運(yùn)算的結(jié)果及進(jìn)算后標(biāo)志寄存器中6個(gè)狀態(tài)標(biāo)志的值,用十六進(jìn)制數(shù)表示運(yùn)算結(jié)果。 2分1)7834H 2)1234H 3)8765H答:(1)加法運(yùn)算的結(jié)果為:CEACH;CF=0,PF=1,AF=0,ZF=0,SF=1,OF=1;(2)加法運(yùn)算的結(jié)果為:68ACH;CF=0,PF=1,AF=0,ZF=0,SF=0,OF=0;(3)加法運(yùn)算的結(jié)果為:DDDDH;CF=0,PF=1,AF=0,ZF=0,SF=1,OF=0。6.8086CPU可尋址的存儲器地址范圍是多少?可尋址的I/O端口地址范圍是多少?2分答:8086CPU 可尋址的存儲器地址范圍是00000HFFFFFH;可尋址的I/O 端口地址范圍是0000HFFFFH。7.答:由于8086CPU 提供20 位地址,但8086 中可用來存放地址的寄存器,如IP、SP、BX、SI 等都是16 位的,只能直接尋址64KB。為了尋址1MB 存儲空間,8086CPU 采用了典型的存儲器分段技術(shù),即將整個(gè)存儲器空間分為許多邏輯段,每個(gè)邏輯段的容量小于或等于64KB。分段后,對存儲器的尋址操作不再直接用20 位的物理地址,而是采用段地址加段內(nèi)偏移地址的二級尋址方式。8.答:將AH的內(nèi)容送存儲單元的操作過程中:M / IO =1,WR = 0,RD =1,DT / R =1;將I/O 端口的內(nèi)容送AL的操作過程中:M / IO = 0,WR =1,RD = 0,DT / R = 0。9.答:BHE A0 有效的數(shù)據(jù)引腳 操 作0 0AD15AD0(一個(gè)總線周期同時(shí)訪問奇體和偶體,從奇地址單元讀/寫字?jǐn)?shù)據(jù)的高8 位,從偶地址單元讀/寫字?jǐn)?shù)據(jù)的低8 位)從偶地址讀/寫一個(gè)字61 0 AD7AD0從偶地址讀/寫一個(gè)字節(jié)0 1 AD15AD8從奇地址讀/寫一個(gè)字節(jié)0 11 0AD15AD8(第一個(gè)總線周期從奇字?jǐn)?shù)據(jù)的低8位)AD7AD0(第二個(gè)總線周期從偶地址單元讀/寫字?jǐn)?shù)據(jù)的高8 位)從奇地址讀/寫一個(gè)字10.簡述8086系統(tǒng)復(fù)位后各寄存器的狀態(tài)。 2分答:8086 系統(tǒng)復(fù)位后,指令指針(IP)為0000H;CS 寄存器為FFFFH,其他寄存器為0000H;指令隊(duì)列清空。11. 簡述8086系統(tǒng)中為什么一定要有地址鎖存器?需要所存哪些信息? 2分答:8086 的A19/S6A16/S3 和AD15AD0 是復(fù)用信號,需要地址鎖存器將地址信息保存起來,為外接存儲器或外設(shè)提供地址信息。需要鎖存的信號是:地址信號及BHE 信號。12.8086CPU基本的總線周期包括幾個(gè)時(shí)鐘周期? 1分答:8086CPU 一個(gè)基本的總線周期包含4 個(gè)時(shí)鐘周期:T1、T2、T3 和T4 。在T1 狀態(tài),M/ IO有效,指示CPU 訪問的是存儲器還是外設(shè),之后CPU 往多路復(fù)用總線上發(fā)出地址信息,以指出要尋址的存儲單元或外設(shè)端口的地址。在T1 狀態(tài),CPU 還必須在ALE 引腳上輸出一個(gè)正脈沖作為地址鎖存信號。BHE信號也在T1 狀態(tài)送出,它用來表示數(shù)據(jù)傳送的字寬。在T2 狀態(tài),CPU 從總線上撤銷地址,使總線的低16 位浮空,置成高阻狀態(tài),為傳輸數(shù)據(jù)作準(zhǔn)備。總線的最高4 位(A1916)用來輸出本總線周期的狀態(tài)信息。讀信號RD或?qū)懶盘朩R在T2 狀態(tài)變?yōu)橛行В甘綜PU 將進(jìn)行哪種操作(讀或?qū)懀?。在T3 狀態(tài),多路總線的高4 位繼續(xù)提供狀態(tài)信息,而多路總線的低16 位上出現(xiàn)由CPU讀出的數(shù)據(jù)或者CPU 從存儲器或端口寫入的數(shù)據(jù)。在T4 狀態(tài)和前一個(gè)狀態(tài)的交界處,CPU 對數(shù)據(jù)總線進(jìn)行采樣,獲得數(shù)據(jù),總線周期結(jié)束。13.什么情況下需要插入TW周期?應(yīng)該插入多少個(gè)TW取決于什么因素? 2分答:在有些情況下,外設(shè)或存儲器速度較慢,不能及時(shí)地配合CPU 傳送數(shù)據(jù)。這時(shí),外設(shè)或存儲器會通過“READY”信號線在T3 狀態(tài)啟動(dòng)之前向CPU 發(fā)一個(gè)“數(shù)據(jù)未準(zhǔn)備好”信號,于是CPU 會在T3 之后插入1 個(gè)或多個(gè)附加的時(shí)鐘周期TW。取決與外設(shè)或存儲器速度。14.答:兩種操作時(shí)序的不同之處發(fā)生在T1 和T2 狀態(tài)。 在T1狀態(tài),讀周期:DT/R應(yīng)輸出低電平;寫周期:DT/R應(yīng)輸出高電平。 在T2 狀態(tài),讀周期:RD有效,而WR無效,AD15AD0 為高阻態(tài);寫周期:RD變?yōu)闊o效,而寫信號WR變?yōu)橛行?,AD15AD0 在地址撤銷之后立即送出要寫入存儲器或外設(shè)端口的數(shù)據(jù)。715.答:在最小模式下,讀信號RD、ALE 和DT/R、DEN等信號直接由CPU 給出;在最大模式下,總線控制器8288 根據(jù)2 1 S ,S 和0 S 狀態(tài)信號產(chǎn)生讀信號MRDC和IORC,ALE 和DT/R、DEN 也是由8288 發(fā)出的,而且DEN 信號的極性與CPU 在最小模式下發(fā)出的DEN信號正好相反。8第4章 習(xí)題答案1.什么叫尋址方式?8086CPU支持哪幾種尋址方式? 2分答:指令中關(guān)于如何求出操作數(shù)有效地址的方法稱為尋址方式。8086CPU支持多種尋址方式,根據(jù)操作數(shù)的類型及來源大致分為3類:數(shù)據(jù)尋址、轉(zhuǎn)移地址尋址和I/O尋址。2.答:8086匯編指令可以采用7種基本的數(shù)據(jù)尋址方式:立即尋址;寄存器尋址;直接尋址;寄存器間接尋址;寄存器相對尋址;基址變址尋址;相對基址變址尋址。與存儲器尋址方式(后5種)相比,寄存器尋址方式最快。3.內(nèi)存尋址方式中,一般只指出操作數(shù)的偏移地址,那么,段地址如何確定?如果要用某個(gè)段寄存器指出段地址,指令中應(yīng)該如何表示? 2分答:如果指令中沒有用前綴說明操作數(shù)存放在哪個(gè)段,則操作數(shù)默認(rèn)存放在數(shù)據(jù)段。8086系統(tǒng)允許操作數(shù)存放在代碼段、堆棧段或附加段。此時(shí),就需要在指令中利用前綴指明段超越。例如:MOV ES:1225H,AX4.在8086系統(tǒng)中,設(shè)DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量為0600H,請指出下列指令的目標(biāo)操作數(shù)的尋址方式,若目標(biāo)操作數(shù)為存儲器操作數(shù),請計(jì)算它們的物理地址是多少? 2分1)MOV BX,12 2)MOV BX,12 3)MOV ES:SI,AX 4)MOV VAR,8 5)MOV BXSI,AX 6)MOV 6BPSI,AL 7)MOV 100H,DX 8)MOV 6BX,CX 9)MOV VAR+5,AX答:(1)寄存器尋址方式(2)寄存器間接尋址方式,PA=10300H(3)寄存器間接尋址方式,PA=20200H(4)直接尋址方式,PA=10060H(5)基址變址尋址方式,PA=10500H(6)相對基址變址尋址方式,PA=12300H(7)直接尋址方式,PA=11000H(8)_寄存器相對尋址方式,PA=10306H(9)直接尋址方式,PA=10065H5.判斷指令對錯(cuò)。如果是錯(cuò)誤的,請說明原因答。 2分1)XCHG CS,AX ×2)MOV BX,1000H ×3)XCHG BX,IP ×4)PUSH CS 5)POP CS ×6)IN BX,DX 7)MOV BYTEBX,1000 ×8)MOV CS,1000H ×9)MOV BX,OFFSET VARSI 10)MOV AX,SIDI ×11)MOV COUNTBXSI,ES:AX ×6.試述以下指令的區(qū)別。 2分1)MOV AX,3000H 與 MOV AX,3000H2)MOV AX,MEM 與 MOV AX,OFFSET MEM3)MOV AX,MEM 與 LEA AX,MEM4)JMP SHORT L1 與 JMP NEAR PTR L15)CMP DX,CX 與 SUB DX,CX6)MOV BPSI,CL 與 MOV DS:BPSI,CL答:(1)源操作數(shù)的尋址方式不同。MOV AX,3000H指令的源操作數(shù)采用的是立即數(shù)尋址方式,MOV AX,3000H指令的源操作數(shù)采用的是直接尋址方式。(2)指令執(zhí)行后,AX的值不同。MOV AX,MEM指令執(zhí)行后,AX得到的是MEM單元的內(nèi)容,而MOV AX,OFFSET MEM指令執(zhí)行后,AX得到的是MEM單元的地址。(3)指令不同。MOV AX,MEMMOV AX,MEM指令執(zhí)行后,AX得到的是MEM單元的內(nèi)容,而LEA AX,MEM指令執(zhí)行后,AX得到的是MEM單元的地址。(4)轉(zhuǎn)移的類型不同。JMP SHORT L1指令實(shí)現(xiàn)的是段內(nèi)轉(zhuǎn)移,而JMP NEAR PTR L1指令實(shí)現(xiàn)的是段間轉(zhuǎn)移。(5)指令的執(zhí)行結(jié)果不同。CMP DX,CX指令執(zhí)行后,DX的值不變,而SUB DX,CX指令執(zhí)行后,DX的值是兩寄存器值的差。(6)操作數(shù)所在段不同。MOV BPSI,CL指令訪問的是堆棧段的存儲單元,而MOV DS:BPSI,CL指令訪問的是數(shù)據(jù)段的存儲單元。7.答:(1)MOV BYTE PTR BP,200指令執(zhí)行后,(58200H)=200H(2)MOV WORD PTR BX,2000指令執(zhí)行后,(22400H)=2000H8.答:當(dāng)前棧頂?shù)刂肥牵篎E00H:2010H;執(zhí)行PUSH BX指令后,棧頂?shù)刂纷優(yōu)椋篎E00H:200EH,棧頂2字節(jié)內(nèi)容是:3457H。9.答:(1)(DX)=3C62H,CF=1(2)(DX)=03C6H,CF=0(3)(DX)=18A0H,CF=1(4)(DX)=2BC6H,CF=0(5)(DX)=18B7H,CF=1(6)(DX)=BCC5H,CF=010.答:(AX)CFZFOFSFPF(1)134EH00001(2)0821H00001(3)F142H10011(4)0A6910011(5)F596-(6)0A690000111.設(shè)AX和BX是符號數(shù),CX和DX是無符號數(shù),若轉(zhuǎn)移目標(biāo)指令的標(biāo)號是NEXT,請分別為下列各項(xiàng)確定CMP和條件轉(zhuǎn)移指令。 5分1)CX值超過DX轉(zhuǎn)移 2)AX值未超過BX轉(zhuǎn)移3)DX為0轉(zhuǎn)移 4)CX值等于小于DX轉(zhuǎn)移答:(1) CMP CX,DXJA NEXT(2)CMP AX,BXJNA NEXT(3)CMP DX,0JZ NEXT(4)CMP CX,DXJBE NEXT12.閱讀分析下列指令序列ADD AX,BXJNO L1JNC L2SUB AX,BXJNC L3JNO L4JMP L5若AX和BX的初值分別為以下5種情況,則執(zhí)行該指令序列后,程序?qū)⒎謩e轉(zhuǎn)向何處(L1-L5中的哪一個(gè))?1)AX=14C6H, BX=80DCH2)AX=0B568H,BX=54B7H3)AX=42C8H, BX=608DH4)AX=0D023H,BX=9FD0H5)AX=9FD0H, BX=0D023H答:(1) 程序轉(zhuǎn)向L1。(2) 程序轉(zhuǎn)向L1。(3) 程序轉(zhuǎn)向L2。(4) 程序轉(zhuǎn)向L5。(5) 程序轉(zhuǎn)向L5。13.答:因?yàn)槠胀ㄟ\(yùn)算指令執(zhí)行的是二進(jìn)制數(shù)的運(yùn)算,而BCD碼是十進(jìn)制數(shù),所以,需要對運(yùn)算結(jié)果進(jìn)行十進(jìn)制調(diào)整。在做BCD碼的加、減和乘法運(yùn)算時(shí),十進(jìn)制調(diào)整指令放在運(yùn)算指令之后;而作BCD碼的除法運(yùn)算時(shí),在運(yùn)算指令之前用十進(jìn)制調(diào)整指令對被除數(shù)進(jìn)行調(diào)整。14.答:MOV Cl,310SHR bx,cl15.答:(略)16.答:17.答:DATA SEGMENTCOUNT=100HORG 1000HD_DATA DB COUNT DUP(?)ORG 2170HS_DATA DB COUNT/5 DUP(1,2,3,4,5)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART:MOV AX,DATAMOV DS,AXMOV ES,AXLEA SI,S_DATALEA DI,D_DATAMOV CX,COUNTREP MOVSBMOV AL,1MOV CX,COUNTLEA DI,D_DATAAGAIN:CMP BYTE PTR DI,ALJNZ NEXTMOV BYTE PTR DI,' 'NEXT:INC DILOOP AGAINEXIT: MOV AH,4CHINT 21HCODE ENDSEND START1118. 答:19. 答:CODE SEGMENTASSUME CS:CODESTART:MOV AX,5678HMOV DX,1234HNOT AXNOT DXADD AX,1ADC DX,0EXIT:MOV AH,4CHINT 21HCODE ENDSEND START;本程序未考慮溢出的情況。DATA SEGMENTA1 DW 5050HA2 DW ? ;存A1的反碼A3 DW ? ;存A1的補(bǔ)碼DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AX,A1NOT AXMOV A2,AXINC AXMOV A3,AXEXIT:MOV AH,4CHINT 21HCODE ENDSEND START1220. 答:21. 答:DATA SEGMENT ;AT 5000HORG 3481HDAT DB 12HDB ?,?,?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,DATNEG ALMOV DAT+1,ALMOV AL,DATXOR AL,00001111BMOV DAT+2,ALMOV AL,DATOR AL,11110000BMOV DAT+3,ALEXIT:MOV AH,4CHINT 21HCODE ENDSEND STARTCOUNT=1000DATA SEGMENTORG 1000HDAT DB 10 DUP (12H,-5,-3,0,-128,56H,98H,4,128,200)ORG 2000HMINDAT DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA SI,DATMOV CX,COUNTDEC CXMOV AL,SINEXT: INC SICMP AL,SIJLE ISMINMOV AL,SIISMIN:LOOP NEXTMOV MINDAT,ALEXIT:MOV AH,4CHINT 21HCODE ENDSEND START1322. 答:DATA SEGMENTSTRING1 DB 'hELLO!'COUNT1=$-STRING1STRING2 DB 'hEL1O!'COUNT2=$-STRING2IM DB 'MATCH$'NM DB 'NOT MATCH$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA SI,STRING1LEA DI,STRING2MOV CX,COUNT1MOV BX,COUNT2CMP CX,BXJNZ DISPNOTMATCHNEXT:MOV AL,SIMOV AH,DICMP AL,AHJNZ DISPNOTMATCHINC SIINC DILOOP NEXTISMATCH:MOV DX,OFFSET IMMOV AH,9INT 21HJMP EXITDISPNOTMATCH:MOV DX,OFFSET NMMOV AH,9INT 21HEXIT:MOV AH,4CHINT 21HCODE ENDSEND START1423. 答:24. 答:DSEG SEGMENTDATA DB 5,6,7,8DW ?DATA2 DB 1,10,100,20DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV DX,0MOV CX,4LEA SI,DATALEA DI,DATA2NEXT:MOV AL,DIMOV BL,SICALL DOMULADD DX,AXINC DIINC SILOOP NEXTMOV WORD PTR DATA+4,DXEXIT:MOV AH,4CHINT 21HDOMUL PROCMUL BLRETDOMUL ENDPCODE ENDSEND STARTMOV CX,100MOV AX,SEG LISTMOV DS,AXMOV AX,SEG BLKMOV ES,AXLEA SI,LISTADD SI,CXLEA DI,BLKADD DI,CXSTDREP MOVSB1525. 答:JMP SHORT LAB指令是一條雙字節(jié)指令。這條指令取出后,(IP)=0102H,轉(zhuǎn)移目標(biāo)的偏移地址=(IP)+位移量。所以,轉(zhuǎn)移目標(biāo)的物理地址=(CS)16+(IP)+位移量。(1)轉(zhuǎn)移目標(biāo)的物理地址=(CS)16+0158H(2)轉(zhuǎn)移目標(biāo)的物理地址=(CS)16+0182H(3)轉(zhuǎn)移目標(biāo)的物理地址=(CS)16+017AH(4)轉(zhuǎn)移目標(biāo)的物理地址=(CS)16+01E2H26. 答:DSEG SEGMENTBUFFER DW 8DB '12345678'DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV CX,BUFFERSAR CX,1LEA SI,BUFFERMOV DI,SIADD DI,2AGAIN:ADD SI,2MOV AL,SIAND AL,0FHSAL BYTE PTR SI+1,1SAL BYTE PTR SI+1,1SAL BYTE PTR SI+1,1SAL BYTE PTR SI+1,1OR AL,BYTE PTR SI+1MOV DI,ALINC DILOOP AGAINEXIT:MOV AH,4CHINT 21HCODE ENDSEND STARTDSEG SEGMENTORG 10HDAT DB 10DB ?DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV AL,DATMOV BL,ALSAL BL,1ADD AL,BLMOV CL,2SAL BL,CLADD AL,BLMOV DAT+1,ALEXIT:MOV AH,4CHINT 21HCODE ENDSEND START1627. 答:28. 答:29. 答:DSEG SEGMENTORG 10HDAT DB 10H,20HDB ?,?DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV AL,DATMOV AH,DAT+1MOV CL,3SAR AX,CLMOV DAT+2,ALMOV DAT+3,AHEXIT:MOV AH,4CHINT 21HCODE ENDSEND STARTDSEG SEGMENTBLOCK DW 8 DUP (10H,20H,-3,-9)DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA SI,BLOCKMOV CX,32AGAIN:MOV AX,SICMP AX,0JNS NEXTNEG AXMOV SI,AXNEXT:INC SIINC SILOOP AGAINEXIT:MOV AH,4CHINT 21HCODE ENDSEND START17DSEG SEGMENTORG 3030HDAT DW 1234H,-1234H,?,?DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV AX,DATMOV BX,DAT+2IMUL BXMOV DAT+4,AXMOV DAT+6,DXEXIT:MOV AH,4CHINT 21HCODE ENDSEND START18第5章 習(xí)題答案1. 答:標(biāo)號是指令的符號地址,可用作控制轉(zhuǎn)移指令的操作數(shù)。標(biāo)號具有3種屬性:段屬性、偏移屬性和類型屬性。2. 答:變量是存儲單元的符號地址。變量具有3種屬性:段屬性、偏移屬性和類型屬性。3. 答:偽指令語句,也稱指示性語句,是不可執(zhí)行語句,匯編后不產(chǎn)生目標(biāo)代碼,它僅僅在匯編過程中告訴匯編程序如何匯編源程序。宏是一個(gè)以宏名定義的指令序列。一旦把某程序段定義成宏,則可以用宏名代替那段程序。在匯編時(shí),要對宏進(jìn)行宏展開,即把以宏名表示的地方替換為該宏對應(yīng)的指令序列的目標(biāo)代碼。宏指令可以看成指令語句的擴(kuò)展,相當(dāng)于多條指令語句的集合。4. 答:匯編語言表達(dá)式中有如下運(yùn)算符:算術(shù)操作符、邏輯操作符、移位操作符、關(guān)系操作符、數(shù)值回送操作符和屬性操作符。操作符所完成的運(yùn)算在匯編階段進(jìn)行。5. 答:略。6. 按下列要求,寫出各數(shù)據(jù)定義語句 2分1)DB1為10H個(gè)重復(fù)的字節(jié)數(shù)據(jù)序列:1,2,5個(gè)3,4。2)DB2為字符串STUDENTS。3)DB3為十六進(jìn)制數(shù)序列:12H,ABCDH。4)用等值語言給符號COUNT賦值DB1數(shù)據(jù)區(qū)所占字節(jié)數(shù),該語句寫在最后。答:(1)DB1 DB 10H DUP(1,2, 5 DUP(3),4)(2)DB2 DB 'STUDENT'(3)BD3 DW 12H,0ABCDH(4)COUNT EQU DB2-DB17. 答:第一個(gè)OR表示該指令是OR指令,在程序運(yùn)行時(shí),該OR操作被執(zhí)行。第二個(gè)OR是邏輯操作符OR,在匯編時(shí),OR運(yùn)算被執(zhí)行。8.對于下面的數(shù)據(jù)定義,各條MOV指令單獨(dú)執(zhí)行后,有關(guān)寄存器的內(nèi)容是什么? 4分PREP DB ?TABA DW 5 DUP(?)TABB DB NEXTTABC DD 12345678H1)MOV AX,TYPE PREP 2)MOV AX,TYPE TABA3)MOV CX,LENGTH TABA 4)MOV DX,SIZE TABA5)MOV CX,LENGTH TABB 6)MOV DX,SIZE TABC 答:(1)(AX)=1(2)(AX)=2(3)(CX)=5(4)(DX)=0AH(5)(CX)=1(6)(DX)=49.設(shè)數(shù)據(jù)段DSEG中符號及數(shù)據(jù)定義如下,試畫出數(shù)據(jù)在內(nèi)存中的存儲示意圖。4分 DSEG SEGMENTDSP=100SAM=DSP+20DAB DB /GOTO/,0DH,0AHDBB DB 101B,19,a.RADIX 16CCB DB 10 DUP(?)EVENDDW DW 12,100D,333,SAM.RADIX 10EDW DW 100LEN EQU $-DABDSEG ENDS答:略。10. 答:1911. 答:12. 答:DSEG SEGMENTSTRING DB 'NEXT123DF$'DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA SI,STRINGMOV CX,0AGAIN:MOV AL,SICMP AL,'$'JZ NEXTINC CXINC SIJMP AGAINNEXT:MOV DX,CXMVDAT:MOV SI+2,ALDEC SIMOV AL,SILOOP MVDATMOV SI+2,ALMOV WORD PTR SI,DXEXIT:MOV AH,4CHINT 21HCODE ENDSEND STARTDSEG SEGMENTSTRING DB 'It is FEB&03'COUNT=$-STRINGDSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA SI,STRINGMOV CX,COUNTAGAIN:MOV AL,SICMP AL,'&'JNZ NEXTMOV AL,' 'MOV SI,ALNEXT:INC SILOOP AGAINEXIT:MOV AH,4CHINT 21HCODE ENDSEND STARTDSEG SEGMENTBLOCK DB 4,5,-2,7,8,9,2,1,0AH,1BH,87H,23H,44H,33H,45H,28H,0DH,8EH,66H,22HCOUNT=$-BLOCKDSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AX2013. 答:(3)(4)(2) (5)(1)(6)1B50H1000H1A70H150BH上表左側(cè)的序號,表示對應(yīng)操作完成后SP指向的棧頂?shù)奈恢谩?4.設(shè)計(jì)以下子程序:1)將AX中的4位BCD碼轉(zhuǎn)換為二進(jìn)制碼,放在AX中返回。2)將AX中無符號二進(jìn)制數(shù)(<9999D)轉(zhuǎn)換為4位BCD碼串,放在AX中返回。3)將AX中有符號二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)ASCII碼字符串,DX和CX返回串的偏移地址和長度。(4分)答:SUB1 PROCMOV BX,AXMOV CL,4ROL BX,CLMOV AX,BXAND AX,000FHMOV CX,1000MUL CX ;千位在DX,AX,有效值在AX中PUSH AXMOV CL,4ROL BX,CLMOV AX,BXAND AL,0FHMOV CL,100MUL CL ;百位在AXPOP CXADD AX,CX ;千百位在AXPUSH AXMOV CL,4ROL BX,CLMOV AX,BXAND AL,0FHMOV CL,10MUL CL ;十位在AXPOP CXADD AX,CX ;千百十位在AXMOV CL,4ROL BX,CLAND BX,0FHADD AX,BXRETSUB1 ENDPSUB2 PROCMOV DX,0MOV CX,1000DIV CX ;千位數(shù)字在AX中MOV BX,AXMOV CL,4ROR BX,CL ;千位數(shù)字移至BX的高4位MOV AX,DXMOV CL,100DIV CL ;百位數(shù)字在AL中OR BH,AL ;千百位置BHMOV AL,AHMOV AH,0MOV CL,10DIV CL ;十位數(shù)字在AL中,個(gè)位在AH中MOV CL,4SAL AL,CLMOV BL,AL ;十位數(shù)字置BL高4位OR BL,AH ;十位個(gè)位置BLMOV AX,BXRETSUB2 ENDPSUB3 PROCPUSH BXMOV BX,0LEA DI,ASCNUMCMP AX,0JNS CHGNEG AXMOV BYTE PTR DI,'-'JMP NEXTCHG:N5:MOV AL,AHMOV AH,0MOV CL,10DIV CLCMP BX,0JNZ N6CMP AL,0JZ N7MOV BX,215. 答:16. 答:17. 答:略。18. 答:略。CODE SEGMENTASSUME CS:CODESTART:MOV AH,1INT 21HCMP AL,'a'JB NOCHGCMP AL,'z'JA NOCHGSUB AL,20HNOCHG:MOV DL,ALMOV AH,2INT 21HEXIT:MOV AH,4CHINT 21HCODE ENDSEND START;鍵盤輸入的成績以逗號分割;輸入完畢按回車結(jié)束DSEG SEGMENTSTRING DB 40,?,40 DUP(?)CJ DB 10 DUP(?)S6 DB ?S7 DB ?S8 DB ?S9 DB ?S10 DB ?DSEG ENDSCODE SEGMENTASSUME CS:CODE,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXLEA DX,STRINGMOV AH,10INT 21HLEA DI,CJLEA SI,STRING+2MOV BH,0MOV AL,0AGAIN:MOV BL,SICMP BL,','JZ NEXTCMP BL,0DHJZ NEXTSUB BL,30HMOV CL,10MUL CLADD AL,BLINC SIJMP AGAINNEXT:MOV DI,ALINC DIMOV AL,0INC BHINC SICMP BL,0DHJNZ AGAINTJ:LEA DI,CJTJ1:MOV AL,DICMP AL,100JZ ADDS10CMP AL,90JAE ADDS9CMP AL,80JAE ADDS8CMP AL,70JAE ADDS7CMP AL,60JAE ADDS6ADDS10:INC S10JMP TJNEXTADDS9:INC S9JMP TJNEXTADDS8:INC S8JMP TJNEXTADDS7:INC S7JMP TJNEXTADDS6:INC S6TJNEXT:INC DIDEC BHJNZ TJ1EXIT:MOV AH,4CHINT 21HCODE ENDSEND START2419. 答:20. 答:21. 答:22. 答:MOV BX,XCMP BX,YJG SET1JZ SET0MOV AL,-1JMP EXITSET1: MOV AL,1JMP EXITSET0: MOV AL,0EXIT: LEA SI,STR1LEA DI,STR2MOV CX,COUNTNEXT: MOV BX,SICMP BX,DIJNZ NOEQINC SIINC DILOOP NEXTMOV AX,0FFFFHJMP EXITNOEQ: MOV AX,SIEXIT: DATA SEGMENTLINTAB DW 12,-5,33,21,9COUNT DW ($-LINTAB)/2KEYBUF DW 21ADDR DW ?DATA ENDSCODE SEGMENT

注意事項(xiàng)

本文(微機(jī)原理與接口技術(shù) 顧暉 習(xí)題參考答案.doc)為本站會員(最***)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!