




已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
習(xí)題五1匯編程序和匯編語言源程序有什么區(qū)別?兩者的作用是什么?答:匯編程序是對匯編源程序進(jìn)行編譯的系統(tǒng)程序;匯編源程序是編程人員利用匯編語言為解決某些問題而編寫的程序。匯編程序用來對匯編源程序進(jìn)行編譯,從而產(chǎn)生目標(biāo)代碼的;而匯編源程序是用來執(zhí)行程序動作的語句。2匯編語言源程序的語句有哪幾種?各自的作用是什么?答:匯編語言源程序是由指令語句、偽指令語句、宏指令語句組成。指令語句:產(chǎn)生目標(biāo)代碼,是CPU可以執(zhí)行的能夠完成特定功能的語句。偽指令語句:在匯編程序?qū)υ闯绦騾R編期間由匯編程序處理的操作,它可以完成如處理器選擇、定義數(shù)據(jù)、分配存儲區(qū)、指示程序結(jié)束等功能,但不產(chǎn)生目標(biāo)代碼。宏指令語句:宏指令語句的目的在于簡化匯編語言源程序的書寫,不能縮小目標(biāo)代碼文件。3標(biāo)號和變量都有什么屬性?各屬性的作用是什么?答:有段屬性、偏移地址屬性和類型屬性。 段屬性:段屬性定義了標(biāo)號和變量的段起始地址,其值是在某一段寄存器中。 偏移地址屬性:該屬性表示標(biāo)號和變量相距段起始地址的字節(jié)數(shù),是一個16位無符號數(shù)。 類型屬性:對于標(biāo)號而言:用于指出該標(biāo)號是在本段內(nèi)引用還是在其它段中引用。標(biāo)號的類型有NEAR(段內(nèi)引用)和FAR(段間引用)兩種;對變量而言:其類型屬性由定義變量的偽指令DB(定義字節(jié)型)、DW(定義字型)、DD(定義雙字型)等確定。4試敘述匯編語言源程序的上機(jī)過程。答:分四步進(jìn)行 編輯、匯編、 連接、 調(diào)試。編輯:用編輯程序(例如EDIT.COM)建立擴(kuò)展名為.ASM的匯編語言源程序文件。匯編:用匯編程序(例如MASM.EXE)將匯編語言源程序文件匯編成目標(biāo)程序文件,其擴(kuò)展名為.OBJ。如果在匯編過程中出現(xiàn)語法錯誤,根據(jù)錯誤信息提示(如錯誤位置、錯誤類型、錯誤說明),用編輯軟件重新調(diào)入源程序文件進(jìn)行修改,直至沒有出現(xiàn)語法錯誤,再進(jìn)行連接程序。連接:用連接程序(例如LINK.EXE)把目標(biāo)程序文件轉(zhuǎn)化成可執(zhí)行文件,其擴(kuò)展名為.EXE。調(diào)試:用調(diào)試程(例如 DEBUG.EXE)序?qū)蓤?zhí)行文件進(jìn)行調(diào)試,直到無錯誤為止。此時的可執(zhí)行文件在DOS命令下直接執(zhí)行。5已知數(shù)據(jù)段DATA從存儲器02000H單元開始,DATA段的定義如下: DATA SEGMENT VAR1 DB 2 DUP(0,1,?) VAR2 DW 50 DUP(?) VAR3 DB 10 DUP(0,1,2 DUP(3),4) DATA ENDS試求出三個變量經(jīng)SEG、OFFSET、TYPE、LENGTH、SIZE運(yùn)算的結(jié)果。答:運(yùn)算結(jié)果如下表所示:回送符變量SEGOFFSETTYPELENGTHSIZEVAR10200H0000H1H2H2HVAR20200H0006H2H32H64HVAR30200H006AH1H0AH0AH6已知數(shù)據(jù)段定義如下,試采用圖示說明各變量在內(nèi)存的分配情況以及數(shù)據(jù)的預(yù)置情況。 DATA SEGMENT A1 DB 50,100,2 DUP(0,1) A2 DB 2 DUP(2,3 DUP(?),10H) A3 DB happy new year! A4 DW 0,2000H A5 DW ?,ABA300H00H00H20HHH42H41HA1A2A4A50000H32H64H00H01H00H01H02HHHH10H02HHHH10H68H 61H70H70H79H20H6EH65H77H20H79H65H61H72H21H001FH0010H DATA ENDS答:B3H64H00H00H00H00H00H00H01H00H01H00H01H00H01H00H01H32H31H34H33H36H35H0100HB1B2B4B57試采用圖示說明各變量在內(nèi)存的分配情況以及數(shù)據(jù)的預(yù)置情況。 DATA SEGMENT ORG 0100H B1 DB ? B2 DW 100 B3 DW 2 DUP (0) COUNT EQU 5 B4 DB COUNT DUP(0,1) B5 DW 12,34,56 DATA ENDS答:內(nèi)存的分配情況以及數(shù)據(jù)的預(yù)置情況見右圖8已知變量VAR1、VAR2、VAR3定義如下,試分析下面的指令是否正確,若有錯誤,請進(jìn)行改正。 DATA SEGMENT VAR1 DB ? VAR2 DB 10 VAR3 EQU 100 DATA ENDS(1) MOV VAR1,AX(2) MOV VAR3,AX(3) MOV BX,VAR1 MOV BX,10(4) CMP VAR1,VAR2(5) VAR3 EQU 50答:(1)類型不匹配,該為:MOV VAR1,AL (2)立即數(shù)不能作為目的操作數(shù),該為:MOV AX,VAR3 (3)第一句類型不匹配,改為:MOV BL,VAR1 第二句未指明存儲器操作數(shù)的類型,改為:MOV BYTE PTRBX,10 (4)兩個存儲器操作數(shù)之間不能直接作比較,改為:MOV AL,VAR1CMP AL,VAR2 (5)符號VAR3 已被定義,不能重復(fù)定義,應(yīng)去掉。9假設(shè)VAR1和VAR2為字變量,LAB為標(biāo)號,試指出下面指令的錯誤之處,并加以改正。(1)ADD VAR1,VAR2答:兩存儲器操作數(shù)之間不能直接相加,改為:MOV AX,VAR1 ADD AX,VAR2(2)SUB AL,VAR2答:兩操作數(shù)類型不匹配,改為:SUB AX,VAR2(3)MOV CL,VAR1答:兩操作數(shù)類型不匹配,改為:MOV CX,VAR1(4)JMP LABSI答:相對寄存器尋址,相對位移量不能為標(biāo)號,因為數(shù)據(jù)值。改為:JMP 5SI(5)JNZ VAR1答:條件轉(zhuǎn)移指令轉(zhuǎn)移的目標(biāo)地址,只能是標(biāo)號或8位位移量。改為:JNZ LAB10試說明下面指令中哪些需要進(jìn)行PTR說明。VAR1 DB 10H,100VAR2 DW 1000(1)MOV AL,VAR1(2)MOV DH,BX(3)ADD BX,2(4)MOV CL,VAR2(5)SUB AL,VAR1+1答:(3)、(4)條指令需要進(jìn)行PTR說明11選擇題(1)在順序結(jié)構(gòu)的流程圖中,不包含有( C )。A)起始框 B)終止框 C)判斷框 D)處理框(2)設(shè)AL0A8H,CX2,CF1,執(zhí)行RCL AL,CL指令后,AL(無正確選項)。A)51H B)46H C)47H D)0C5H注:正確的結(jié)果為:AL0A3H(3)下述指令的執(zhí)行結(jié)果是( C )MOV AL,0FFHXOR AL,3FHA)AL40H B)AL20H C)AL0C0H D)AL0E0H12在AX和DX中存有一個32位帶符號數(shù)(DX中存放高16位),試編寫程序求出它的相反數(shù)。答:程序設(shè)計如下: CODE SEGMENT ASSUME CS:CODESTART:MOV CX,0CLCSBB CX,AXMOV AX,CXMOV CX,0SBB CX,DXMOV DX,CXMOV AH,4CHINT 21HCODE ENDSEND START13編程實現(xiàn)求S(X2Y2)/ Z的值,并將結(jié)果放入RESULT單元。(設(shè):X、Y、Z均為字節(jié)數(shù),且Z為無符號數(shù))答:程序設(shè)計如下: DATA SEGMENT X DB 20H Y DB 35H Z DB 12H RESULT DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,XMUL ALMOV DX,AXMOV AL,YMUL ALADD AX,DXMOV DX,0MOV BL,ZMOV BX,0DIV BXMOV RESULT,AXMOV AH,4CHINT 21HCODE ENDSEND START14試編程實現(xiàn)將鍵盤輸入的小寫字母用大寫字母顯示出來。答:程序設(shè)計如下:CLRF MACRO ;宏匯編命令,定義宏MOV DL,0DHMOV AH,02HINT 21H ;回車,使光標(biāo)回到起始位置MOV DL,0AHMOV AH,02HINT 21H ;光標(biāo)換行ENDM ;宏定義結(jié)束DATA SEGMENT STRING DB 50,?,50 DUP(?)DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATAMOV DS,AXLEA DX,STRINGMOV AH,0AHINT 21HCLRF ;宏指令MOV BL,STRING1MOV BH,0LEA SI,STRING2ADD BX,SIMOV BYTE PTRBX,$NEXT:MOV DL,SICMP DL,aJB NEXT1CMP DL,zJA NEXT1SUB DL,20HMOV SI,DLNEXT1:INC SIDEC BLJNZ NEXTLEA DX,STRING2MOV AH,09HINT 21HMOV AH,4CHINT 21HCODE ENDSEND START15若在數(shù)組字變量SQTAB平方表中有十進(jìn)制數(shù)0100的平方值,用查表法找出35這個數(shù)的平方值放入字變量NUM中,寫出程序段和有關(guān)的偽指令。答:程序設(shè)計如下DATA SEGMENT SQTAB DW 0,1,4,9,16,25,36, 10000TAB DB 35 NUM DW ?DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATAMOV DS,AXMOV BX,OFFSET SQTABMOV AL,TABSAL AL,1MOV AH,0ADD BX,AXMOV AX,WORD PTRBXMOV NUM,AXMOV AH,4CHINT 21HCODE ENDS END START16試指出下列無條件轉(zhuǎn)移指令的轉(zhuǎn)移地址中的轉(zhuǎn)移地址? (1)JMP BX答:轉(zhuǎn)移地址為BX寄存器中的值。屬段內(nèi)間接轉(zhuǎn)移,IP BX (2)JMP WORD PTRBX答:轉(zhuǎn)移地址為BX中的值指明的存儲器字單元中的值。屬段內(nèi)間接轉(zhuǎn)移,IP (MEM)(3)JMP NEAR PTR FOR答:轉(zhuǎn)移地址為當(dāng)前IP16位位移量。標(biāo)號FOR表示16位位移量,屬段內(nèi)近轉(zhuǎn)移。(4)JMP FAR PTR FAR_PRO答:轉(zhuǎn)移地址為標(biāo)號FAR_PRO表示的16位段基址和16位偏移量。屬段間直接轉(zhuǎn)移。(5)JMP SHORT AGAIN答:轉(zhuǎn)移地址為當(dāng)前IP8位位移量。標(biāo)號AGAIN表示8位位移量,屬段內(nèi)短轉(zhuǎn)移。(6)JMP DWORD PTRBXDI答:轉(zhuǎn)移地址為由基址變址尋址方式提供的存儲器操作數(shù)(兩個字)17試分析下列程序段,如果AX和BX的內(nèi)容分別給出如下5種情況,試問程序分別轉(zhuǎn)向何處?(1)AX1478H,BX80DCH(2)AX0B568H,BX54B5H(3)AX42C8H,BX608DH(4)AX0D023H,BX9FD0H(5)AX94B7H,BX0B568HADD AX,BXJNO L1JNC L2SUB AX,BXJNC L3JNO L4JMP L5答:(1)轉(zhuǎn)向L1(2)轉(zhuǎn)向L1(3)轉(zhuǎn)向L2(4)轉(zhuǎn)向L5(5)轉(zhuǎn)向L518編寫程序,計算下面函數(shù)的值。 2X (X 0)S 3X (0 X 10) 4X (X 10)答:程序設(shè)計如下DATA SEGMENT X DB 17S DB ?DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,XCMP AL,0JGE LOOP1 ADD AL,ALMOV S,AL MOV AH,4CHINT 21H LOOP1:CMP AL,0AHJG LOOP2MUL 3MOV S,AL MOV AH,4CHINT 21H LOOP2:MUL 4MOV WORD PTR S,AXMOV AH,4CHINT 21H CODE ENDS END START19設(shè)內(nèi)存中有三個互不相等的無符號字?jǐn)?shù)據(jù)X、Y和Z,存放在X開始的字單元中,編程實現(xiàn)將三個數(shù)據(jù)從小到大排序后放到X、Y和Z中。答:程序設(shè)計如下DATA SEGMENTX DW 25H,27H,18HY DW ?Z DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AX,XCMP AX,X2JBE LOOP1XCHG AX,X2LOOP1:CMP AX,X4JBE LOOP2 XCHG AX,X4LOOP2:MOV X,AXMOV AX,X2CMP AX,X4JBE LOOP3 MOV Z,AXMOV AX,X4MOV Y,AXJMP LOOP4LOOP3:MOV Y,AXMOV AX,X4MOV Z,AXLOOP4:MOV AH,4CHINT 21HCODE ENDS END START20分析下面程序功能,并指出程序執(zhí)行后,DAT2數(shù)據(jù)區(qū)中的內(nèi)容是什么? DAT1 DB 0,1,2,3,4,5,6,7,8,9 DAT2 DB 5 DUP(?) MOV CX,5 MOV BX,5 MOV SI,0 MOV DI,0NEXT:MOV AL,DAT1BX+SI MOV DAT2 DI,AL INC SI INC DI LOOP NEXT HLT答:DAT2數(shù)據(jù)區(qū)中的內(nèi)容為:5,6,7,8,921編寫程序求出首地址為DAT的100個有符號字?jǐn)?shù)據(jù)中的最小偶數(shù),并將這個數(shù)存放到DAT1字單元中。答:程序設(shè)計如下(提示:偶數(shù)的最末為是零)DATA SEGMENTDAT DB 02H,0A8H,34H,23H,23H,34H,26H,0A2H NUM EQU 64HDAT1 DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA SI,DATMOV CX,NUMMOV AL,0NEXT:MOV DL,SISHR DL,1JNC NNINC SIDEC CXJNZ NEXTJMP MMNN:MOV AL,SINN1:INC SIDEC CXJZ MMMOV BL,SISHR BL,1JC NN1MOV BL,SICMP AL,BLJLE NN1MOV AL,BLJMP NN1MM:MOV DATI,AL MOV AH,4CHINT 21HCODE ENDS END START22試編寫一個程序段,要求比較兩個字符串STR1和STR2是否完全相等。若完全相等,則置AL=1;若不完全相等,則置AL1。答:程序設(shè)計如下DATA SEGMENT STR1 DB FDASFDFDSA,$NUM1 EQU $STR1STR2 DB FDASFDFDSA,$NUM2 EQU $STR2DATA ENDSCODE SEGME
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外專局外籍教師協(xié)議
- 電視廣告制作協(xié)議
- 離職手續(xù)完成證明及勞動關(guān)系終止書(6篇)
- 互聯(lián)網(wǎng)科技產(chǎn)業(yè)融資狀況表格
- 電力系統(tǒng)運(yùn)行與維護(hù)專業(yè)試題
- 授權(quán)啤酒銷售合同
- 軟件著作權(quán)申請流程及實例解析
- 在職員工基本信息一覽表
- 地理學(xué)創(chuàng)新人才培養(yǎng)中的自主學(xué)習(xí)與終身教育機(jī)制
- 員工收入及獎金詳細(xì)證明(5篇)
- 地理:(網(wǎng)絡(luò)參考版)黑吉遼蒙2025年高考真題地理試卷含答案
- 2025年動漫IP產(chǎn)業(yè)鏈構(gòu)建與動漫產(chǎn)業(yè)產(chǎn)業(yè)鏈協(xié)同效應(yīng)研究報告
- 2025年安全員之A證企業(yè)負(fù)責(zé)人模擬題庫及答案(附答案)
- 食管癌全程管理專家共識(2025)解讀
- 山東省濰坊安丘市等三縣2024-2025學(xué)年高一下學(xué)期期中考試英語試題(原卷版+解析版)
- 美團(tuán)入駐協(xié)議書
- 電力故障應(yīng)急演練改進(jìn)預(yù)案
- 胃腸間質(zhì)瘤規(guī)范化外科治療中國專家共識(2025版)解讀
- 公路水運(yùn)工程生產(chǎn)安全重大事故隱患判定標(biāo)準(zhǔn)2025
- (高清版)DG∕TJ 08-2093-2019 電動汽車充電基礎(chǔ)設(shè)施建設(shè)技術(shù)標(biāo)準(zhǔn) 含2021年局部修訂
- 專利技術(shù)成果轉(zhuǎn)讓證明書(7篇)
評論
0/150
提交評論