(完整)匯編語言期末考試試題及答案,推薦文檔_第1頁
(完整)匯編語言期末考試試題及答案,推薦文檔_第2頁
(完整)匯編語言期末考試試題及答案,推薦文檔_第3頁
(完整)匯編語言期末考試試題及答案,推薦文檔_第4頁
(完整)匯編語言期末考試試題及答案,推薦文檔_第5頁
免費預覽已結(jié)束,剩余10頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、匯編語言模擬試題及答案并將其號碼填一,單項選擇題(在每小題的四個備選答案中,選出一個正確的答案,在題干后的括號內(nèi),每小題1 分,共 20 分)1指令 JMP FAR PTR DONE 屬于參考答案為:CA 段內(nèi)轉(zhuǎn)移直接尋址B 段內(nèi)轉(zhuǎn)移間接尋址C.段間轉(zhuǎn)移直接尋址D 段間轉(zhuǎn)移間接尋址解析略2下列敘述正確的是參考答案為:CA 對兩個無符號數(shù)進行比較采用CMP 指令,對兩個有符號數(shù)比較用CMPS 指令B 對兩個無符號數(shù)進行比較采用CMPS 指令,對兩個有符號數(shù)比較用CMP 指令C.對無符號數(shù)條件轉(zhuǎn)移采用JAE/JNB指令,對有符號數(shù)條件轉(zhuǎn)移用JGE/JNL指令D 對無符號數(shù)條件轉(zhuǎn)移采用JGE/JNL

2、 指令,對有符號數(shù)條件轉(zhuǎn)移用JAE/JNB指令解析對于無符號數(shù)和有符號數(shù)的比較都采用CMP 指令;CMPS 指令是串比較指令;對兩個無符號數(shù)的條件轉(zhuǎn)移指令應是:JAE、JNB、JBE、JNA;對兩個有符號數(shù)的條件轉(zhuǎn)移指令應是:JGE、JNL、JLE、JNG。3一個有128 個字的數(shù)據(jù)區(qū),它的起始地址為12ABH : 00ABH ,請給出這個數(shù)據(jù)區(qū)最末一個字單元的物理地址是參考答案為:CA 12CSBHB 12B6BHC 12C59HD 12BFEH解析末字與首字相隔(128 1 =) 127個字,且每個字占用 2個字節(jié),因此末 字單元的物理地址應為:首字單元的物理地址+ (1281) X2即

3、12ABHX 10H + 00ABH + (128 1) X2=12C59H。4在下列指令的表示中,不正確的是參考答案為:CA MOV AL , BX+SIB JMP SHORT DONIC DEC BXD MUL CL解析當只有一個存儲器操作數(shù)時,這個操作數(shù)的類型不明確,例如選項C 中的BX ,沒有明確的說明訪問該存儲單元的類型,此時存儲器操作數(shù)就必須需用類型 說明,如DEC BYTE PTR BX 或 DEC WORD PTR BX但是在題目的選項C 中,沒有指出存儲器操作數(shù)類型,所以該指令是不正確的;而其它選項中的指令均是正確的。5在進行二重循環(huán)程序設計時,下列描述正確的是參考答案為:A

4、A 外循環(huán)初值應置外循環(huán)之外;內(nèi)循環(huán)初值應置內(nèi)循環(huán)之外,外循環(huán)之內(nèi)B 外循環(huán)初值應置外循環(huán)之內(nèi);內(nèi)循環(huán)初值應置內(nèi)循環(huán)之內(nèi)C.內(nèi)、外循環(huán)初值都應置外循環(huán)之外D 內(nèi)、外循環(huán)初值都應置內(nèi)循環(huán)之外,外循環(huán)之內(nèi)解析循環(huán)參數(shù)置初值,應在進入循環(huán)以前給出。6條件轉(zhuǎn)移指令JNE 的測試條件為參考答案為:AA ZF=0B. CF=0C ZF=1D CF=1解析略。7 8086CPU 在基址加變址的尋址方式中,變址寄存器可以為參考答案為 :DA BX 或 CX8 CX 或 SIC DX 或 SID SI 或 DI解析 略8已知BX=2000H , SI=1234H ,則指令MOV AX , BX+SI+2 的源操

5、作在()中。參考答案為:AA 數(shù)據(jù)段中偏移量為3236H 的字節(jié)B 附加段中偏移量為3234H 的字節(jié)C.數(shù)據(jù)段中偏移量為 3234H的字節(jié)D 附加段中偏移量為3236H 的字節(jié)解析指令中的源操作數(shù)的尋址方式是相對基址變址尋址,且由于其中的基址寄存器采用的是BX,所以源操作數(shù)是在數(shù)據(jù)段中,其偏移量為:BX+SI+2=2000H+1234H+2=3236H9執(zhí)行如下程序:MOV AX , 0MOV BX , 1MOV CX , 100A: ADD AX , BXINC BXLOOP AHLT執(zhí)行后(BX) = 參考答案為:CA 99B 100C 101D 102解析 1 )在進入循環(huán)之前,有三條

6、指令分別初始化寄存器:AX 為 0、 BX 為 1 、CX 為 100;2)由于循環(huán)的控制部分采用的是LOOP 指令,該指令有使CX 減 1,并判斷其是否為0 的功能,所以可知該循環(huán)的執(zhí)行次數(shù)為100 次;3) 循環(huán)體的主要功能是每次循環(huán)使AX 中的內(nèi)容累加BX 的內(nèi)容, 并使 BX的內(nèi)容加1。4)直到最后一次(即第100 次)循環(huán)時,加到AX 中的 BX 的內(nèi)容為100,且使 BX 加 1,即變?yōu)?01 后退出循環(huán)體。所以當執(zhí)行完該段程序后,BX 的內(nèi)容為101。5)該段程序的功能是(AX) =1 + 2+ 100 = 505010上題的程序執(zhí)行后(AX ) = 參考答案為:BA 5000B

7、 5050C 5100D 5150解析請參看上題中的分析。正確答案:B。11 對于下列程序段:AGAIN : MOV AL , SIMOV ES: DI , ALINC SIINC DILOOP AGAIN也可用 指令完成同樣的功能。參考答案為:AA REP MOVSBB REP LODSBC REP STOSBD REPE SCASB解析該段程序的功能是將SI 所指向的數(shù)據(jù)段中的數(shù)據(jù)順序傳送給DI 所指向的附加段的一段數(shù)據(jù)區(qū)中,并且每次傳送一個字節(jié),即實現(xiàn)了字節(jié)串傳送的功能,所以也可以使用REP MOVSB 指令來完成同樣的功能。12下面指令序列執(zhí)行后完成的運算,正確的算術(shù)表達式應是MOV

8、AL , BYTE PTR XSHL AL , 1DEC ALMOV BYTE PTR Y , AL 參考答案為:DA y=x2+1B x=y2+1C x=y2-1D y=x2-1解析該段程序的第一條指令的功能是將X 傳送給 AL ;第二條指令的功能是將AL 的內(nèi)容左移1 位,即使得AL 的內(nèi)容擴大2 倍;第三條指令的功能是使AL 的內(nèi)容減1 ;第四條指令的功能是將AL 傳送給 Y;綜上所述該程序完成的運算是Y=2X-1 。13 在一段匯編程序中多次調(diào)用另一段程序,用宏指令比用子程序?qū)崿F(xiàn)起來。參考答案為:BA.占內(nèi)存空間小,但速度慢B 占內(nèi)存空間大,但速度快C.占內(nèi)存空間相同,速度快D 占內(nèi)存

9、空間相同,速度慢解析1 )宏指令簡化程序的書寫,不節(jié)省程序存儲空間,但執(zhí)行時間比子程序短。2)子程序簡化程序的書寫,也節(jié)省程序的存儲空間,但執(zhí)行時間比宏指令長。14在程序執(zhí)行過程中,IP 寄存器中始終保存的是參考答案為:BA.上一條指令的首地址B 下一條指令的首地址C.正在執(zhí)行指令的首地址D 需計算有效地址后才能確定地址解析在程序運行過程中,它始終指向下一條指令的首地址,它與CS 代碼段寄存器聯(lián)合確定下一條指令的物理地址。15 PSW 寄存器中共有位條件狀態(tài)位,有位控制狀態(tài)位。參考答案為 :AA 6、 38 3、 6C 8、 4D 4、 8解析PSW 有 6 位條件狀態(tài)位:AF、 CF、 ZF

10、、 PF、 SF、 OF;PSW 有 3 位控制狀態(tài)位:IF、 TF、 DF16下列指令執(zhí)行時出錯的是參考答案為:AA ADD BUF1 , BUF28 JMP DWORD PTR DA T BXC MOV AX , BX+DI NUMD TEST AL , 08H解析ADD 指令的兩個操作數(shù)不能同時是存儲器操作數(shù),所以選項A 中的指令是錯誤的。17已知(AX ) =1234H ,執(zhí)行下述三條指令后,( AX ) = 參考答案為:DMOV BX , AXNEG BXADD AX,BXA 1234HB 0EDCCHC 6DCCHD 0000H解析第一條指令的功能是將 AX>BX ,即BX中

11、的內(nèi)容為1234H;第二條指令的功能是對 BX求補,即BX中的內(nèi)容變?yōu)橐?234H;第三條指令的功能是 AX+BX>AX ,即1234H+(-1234H)=gAX ;所以執(zhí)行三條指令后,AX 的內(nèi)容為0。18在下列指令中,指令的執(zhí)行會影響條件碼中的CF 位。參考答案為:DA JMP NEXTB JC NEXTC INC BXD SHL AX , 1解析JMP、JC指令不任何影響狀態(tài)標志位;INC指令執(zhí)行結(jié)果除不影響 CF外,其余狀態(tài)標志位(AF、OF、PF、SF、ZF)都受 影響。SHL指令使 CF=O, OF=O,影響ZF、SF、PF標志位,AF無定義。19串指令中的目的操作數(shù)地址是由

12、提供。參考答案為:CA SS: BPB DS: SIC ES: DID CS: IP解析略20將DX 的內(nèi)容除以2,正確的指令是參考答案為:CA DIV 2B DIV DX , 2C SAR DX , 1D SHL DX , 1解析選項A 中的的指令執(zhí)行的操作是:AX/2 ;選項 B 中的的指令書寫格式不正確;選項 C 中的的指令執(zhí)行的操作是:將 DX 的內(nèi)容右移一位,將使DX 的內(nèi)容縮小為原先的 1/2,即將 DX 的內(nèi)容除以2;選項 D 中的的指令執(zhí)行的操作是:將 DX 的內(nèi)容左移一位,將使DX 的內(nèi)容擴大為原先的 2 倍,即將DX 的內(nèi)容乘以2。解析(1)指令: SHR DX, 1 使

13、DX 的內(nèi)容向右移動了一位,因此DX 的內(nèi)容變?yōu)?000' 0000' 0101' 110OBD05CH。(2)指令:RCR DL, 1 使 DL 的內(nèi)容向右循環(huán)帶進位移動了一位,DH 的內(nèi)容不變,因此 DX 的內(nèi)容變?yōu)?000 0000 1101 110,即 0B 00DCH 。(3)指令:RCL DX, CL 使 DX 的內(nèi)容向左循環(huán)帶進位移動了3 位,因此DX 的內(nèi)容變?yōu)?0000 0101 1100 110,即 0B 05CCH。2寫出完成下述功能的程序段:( 1 )傳送25H 到 AL 寄存器( 2)將AL 的內(nèi)容乘以2( 3)傳送15H 到 BL 寄存器(

14、4) AL 的內(nèi)容乘以BL 的內(nèi)容并請寫出最后(AX ) =?答: ( 1) MOV AL, 25H( 5) SHL AL, 1( 6) MOV BL, 15H( 7) MUL BL最后, ( AX) =612H =1554解析1 ) 將 AL 的內(nèi)容左移1 位, 將使它的內(nèi)容擴大2 倍, 即使 AL 的內(nèi)容乘以2。2)最后,AX 的內(nèi)容應為25H*2*15H=612H=15543.寫一程序段,求雙字長數(shù) DX : bX的相反數(shù)。答 :NEG DXNEG AXSBB DX, 0解析求雙字長數(shù)DX:AX 相反數(shù),即對其求補,所以應實現(xiàn)的操作是:(DX:AX) - 0-(DX:AX)即 0 : 0

15、-) DX : AX將上面的算式分解后,即為對DX 求補,對AX 求補,并從DX 中減去將AX 求補時產(chǎn)生的借位。所以相應的指令就是:NEG DXNEG AXSBB DX, 0三,程序分析題(每小題6 分,共36 分)DA3 EQU 1234HDA4 EQU -DA2 DA5 DB 31H , 32HDATA ENDS1現(xiàn)有如下程序段:DATA SEGMENTORG 0020HDA1 DW 12H , 23HDA2 DB 11H , 21H注意: 程序是從左到右看,先把左邊的程序段看完了再看右邊的程序段。下面的程序段以相同的方法進行讀解。請回答: ( 1)該程序段已占有的存儲字節(jié)數(shù)是多少?(

16、2)符號名DA4 的值是多少?符號名DA5 的值是多少?答: (1) 該程序段已占有的存儲字節(jié)數(shù)是8 個字節(jié)。(2) 符號名 DA4 的值為2,符號名DA5 的值是 0026H。解析1 )偽指令ORG 0020H ,設置存儲單元起始偏移地址為2)符號名DA1 的值(即所對應存儲單元的偏移地址)是為字,有2 個字數(shù)據(jù),所以共占用4 個字節(jié);3)符號名DA2 的值(即所對應存儲單元的偏移地址)是為字節(jié),有2 個字節(jié)數(shù)據(jù),所以共占用2 個字節(jié);4)經(jīng)EQU 定義的符號名DA3 、 DA4 不占用存儲空間,數(shù)器的值(0026H ) ,可它們的值分別為DA3=1234H, DA4=2 。5)符號名DA5

17、 的值(即所對應存儲單元的偏移地址)是0020H ;0020H ,該數(shù)據(jù)區(qū)的類型0024H ,該數(shù)據(jù)區(qū)的類型$”用來表示當前地址計0026H ,該數(shù)據(jù)區(qū)的類型為字節(jié),有2 個字節(jié)數(shù)據(jù),所以共占用2 個字節(jié);8 個字節(jié)。OFFSET NUM6)綜上所述,該程序段共占有的存儲字節(jié)數(shù)2執(zhí)行下列程序段后,回答問題。ORG 1221H MOV BX ,NUM DW 12HMOV CL,BYTE PTR NUM+1MOV CH,TYPE NUMMOV AX , NUMHLT請問: ( AX ) =, ( BX) =, ( CX) =。答: (AX)=0012H (BX)=1221H (CX)=0200H解

18、析1 )指令 MOV AX, NUM 的功能是將NUM 單元的字內(nèi)容12H 傳送給 AX,使得 (AX)=0012H ;2) 指令 MOV BX, OFFSET NUM 的功能是將NUM 單元的偏移地址1221H 傳送給BX ,使得(BX)=1221H ;3) 指令 MOV CL, BYTE PTR NUM+1 的功能是將NUM+1(1222H) 單元的字節(jié)內(nèi)容(即NUM字單元的高字節(jié))00H傳送給CL ,使得(CL)=00H ;4) 指令MOV CL, TYTE NUM 的功能是將NUM 字單元的類型字節(jié)數(shù)2傳送給CH,使得 (CH)=02H ;5)綜合第4 和第 5 點,可知CX 寄存器的

19、內(nèi)容為0200H 。3閱讀如下程序:ADRR DB XXH , XXH ,XXHCMP ADRRBX , 0NUM EQU -ADRRLOOPZ DONRETT DB ?JNZ NEXTMOV BL , OFFHMOV CX , NUMNEXT : MOV RETT , BLMOV BX , -1HLTDON: INC BX請問: ( 1 )該程序完成的功能是什么?( 2)程序執(zhí)行后指出RETT 字節(jié)單元中的內(nèi)容是什么?答: (1) 在以 ADRR 為起始地址的數(shù)組中,查找第一個非0 數(shù)據(jù)。(2) 若找到則將第一個非0 數(shù)據(jù)在數(shù)組中的偏移量送入RETT 單元中;若無非0 數(shù)據(jù),則將OFFH 送

20、入 RETT 單元中。解析 1)程序的前3 條指令,用于定義數(shù)據(jù):以 ADRR 為起始地址的數(shù)組;NUM 的值為ADRR 數(shù)組的數(shù)據(jù)個數(shù);RETT 是一個空的字節(jié)單元2)該程序的主體是一個循環(huán),該循環(huán)的主要功能是在數(shù)組ADRR 中第一個非0 數(shù)據(jù)。如果是由于找到,則將第一個非0 數(shù)據(jù)在數(shù)組中的偏移量送入RETT 單元中;若沒找到非0數(shù)據(jù),則將OFFH 送入 RETT 單元中。4現(xiàn)有一子程序:SUB1 PROCPLUS: TEST BL, 80HTEST AL , 80H (檢測 AL 中的數(shù)值最高位)JE EXITOJE PLUSXCHANGE : XCHG AL , BLTEST BL ,

21、80HEXITO : RETJNE EXITOSUB1 ENDPJMP XCHANGE 試回答: ( 1)子程序的功能是什么?( 2) 若調(diào)用子程序前AL=9AH , BL=77H , 則返回主程序時,AL= ,BL= 。答: (1) 子程序的功能是判別AL 和 BL 中的數(shù)是否為異號數(shù),當為異號時交換,否則不變。 (2) AL=77H, BL=9AH 解析1 )數(shù)據(jù)是以二進制的形式存儲在計算機中的。數(shù)據(jù)對應的二進制數(shù)的最高位是數(shù)據(jù)的符號位:若為0 表示該數(shù)為正數(shù),若為1 表示該數(shù)為負數(shù);2) TEST AL, 80H 和 TEST BL,80H 指令是在測試AL 和 BL 的最高位(即符號位

22、)的狀態(tài)是1 還是0。3)若兩個數(shù)的最高位(即符號位)的狀態(tài)不同的時候(即兩數(shù)為異號),則執(zhí)行XCHANGE 標號所對應語句,即交換AL 和 BL 中的內(nèi)容。4)否則若兩個數(shù)的最高位(即符號位)的狀態(tài)相同的時候(即兩數(shù)為同號)行 EXIT0 標號所對應語句,程序結(jié)束,即AL 和 BL 中的內(nèi)容不被。5)所以第二問中,AL=9AH,BL=77H : AL 中的數(shù)據(jù)的最高位為1, BL 中的數(shù)據(jù)的最高位為0,即兩個數(shù)為異號,所以要交換AL 和 BL 中的內(nèi)容,即AL=77H,BL=9AH 。5閱讀程序段:OFFH-LOP1 : CMP AL , SI+1JNG NEXTMOV AL , SI+1N

23、EXT : INC SILOOP LOP1MOV RESULT , ALHLT20H( 32)個有符號數(shù)中找出最小的數(shù)送入BLOCK DB 20H , 1FH, 08H, 81H,RESULT DB? START: LEA SI , BLOCKMOV CX , SIINC SIMOV AL , SI請問: ( 1 )該程序完成的功能是什么?( 2)該程序循環(huán)的次數(shù)是多少?答: (1) 該程序完成的功能是從RESULT 單元中。(2) 該程序的循環(huán)次數(shù)是1FH( 31) 。解析 1 )指令 LEA SI, BLOCK 的功能是使SI 指向了 BLOCK 數(shù)組的首單元;2) 指令MOV CX, S

24、I 的功能是將SI 指向單元的內(nèi)容20H 傳送給CX, 即 (CX)=20H ;其后又有指令 DEC CX,使得CX的內(nèi)容變?yōu)?FH;再看循環(huán)體的控制部分采用的指令是LOOP,可知,該循環(huán)的執(zhí)行次數(shù)為1FH次;3)循環(huán)體的主要功能是將 AL中的內(nèi)容與SI所指向數(shù)組的每一個數(shù)據(jù)進行比較, 從數(shù)組中選出最小數(shù)保存在AL 中。4)由于比較后采用的轉(zhuǎn)移指令是JNG,所以該程序處理的顯然是一組有符號的數(shù)據(jù)。6閱讀如下程序段,回答所提出的問題,假定X1 , X2, XN 為無符號數(shù)。ORG 100HBLOK DW X1 , X2 ,,XNCOUNT EQU ( -BLOLOK ) /2RESULT DW

25、COUNT ,?LEA BX , BLOK-2MOV CX , RESULTXOR AX , AXGOON : ADD BX , 2CMP AX, BXJAE NEXTMOV AX , BXNEXT : LOOP GOONMOV RESULT+2 , AX程序段執(zhí)行完,回答下述問題RESULT+2 字存儲單元的內(nèi)容=BX=程序循環(huán)次數(shù)=答:RESULT+2字存儲單元的內(nèi)容是 MAX(X1, X2, XN)BX= 100H + 2 X (COUNT-1)程序循環(huán)次數(shù)=COUNT解析1 )該程序段的開始4 條指令定義了以下數(shù)據(jù):以 BLOK 為起始地址的字數(shù)組,該數(shù)組首單元的偏移地址(即BLOK

26、)為100H;COUNT 的值為 BLOK 字數(shù)組的數(shù)據(jù)個數(shù);RESULT 存儲區(qū)的第一個字的內(nèi)容為COUNT , 即 BLOK 字數(shù)組的數(shù)據(jù)個數(shù);第二個字的內(nèi)容為空。2) 循環(huán)體的主要功能是從BLOK 字數(shù)組中找出最大數(shù)送入RESULT 的第二個字單元中;3)循環(huán)次數(shù)為數(shù)組中數(shù)據(jù)的個數(shù),即COUNT 個。4)當循環(huán)結(jié)束后,BX 中將存放最后一個字數(shù)據(jù)的偏移地址:首字偏移地址末字與首字的相隔的字節(jié)數(shù),即100H + 2 XCOUNT-1)。四,程序填空題(注意:下列各小題中,每空只能填一條指令!每小題6 分,共 12 分)1在表TABLE 處存放著N 個無符號字節(jié)數(shù),求表中前10 個字節(jié)數(shù)的總

27、和并保存在AX 寄存器中。如果總和值超過AX 寄存器的容量,則置AX 寄存器內(nèi)容不變。請在程序中的空格處填入適當指令使其完整。( 2)JC END0DON : INC BX3)ENDO: HLTLEA BX , TABLEMOV CX , 10MOV SUM , AXMEXT : ( 1)ADC AH , 0JNC DON答: (1) ADD AL, BX(2) MOV AX, SUM(3) LOOP NEXT解析1 )程序的前三條指令的功能分別是:將表 TABLE 的首址傳送給BX;將循環(huán)次數(shù)傳送給計數(shù)器CX;將 AX 的原值保存在SUM 單元中;以上指令實現(xiàn)了設置循環(huán)初始參數(shù)的功能。2)標

28、號NEXT 所對應的第一個空白處就是循環(huán)體的第一條指令。根據(jù)題目的要求 求表中前10 個字節(jié)數(shù)的總和,可知循環(huán)每次應實現(xiàn)將表TABLE 中的數(shù)據(jù)按字節(jié)加法的方式進行累加到AL 中,并且將字節(jié)加法產(chǎn)生的進位加到AH 中。所以第一個空白處應填入指令:ADD AL, BX3)程序的第五條指令實現(xiàn)的是判斷求得的和是否超過AX 寄存器的容量。4)如果有進位(即已超過AX 寄存器的容量),則執(zhí)行第二個空白處的指令,根據(jù)題目當出現(xiàn)此種情況時,使AX 內(nèi)容不變,即恢復其原值,因此第二個空白處應填入指令:MOV AX, SUM 。5)如果沒有進位(即未超過AX 寄存器的容量),則轉(zhuǎn) DON 。程序?qū)⑹笲X 的內(nèi)

29、容加 1 ,即使其指向下一個表中的字節(jié)數(shù)據(jù)。接下來就應該將計數(shù)器CX 減 1 ,并判斷是否繼續(xù)下一次循環(huán)。因此,第三個空白處應填入指令:LOOP NEXT 。2 BEG 為起始地址的存儲區(qū)域中存放有100個字節(jié)數(shù)據(jù),現(xiàn)將其首、尾顛倒過來,重新排放這100 個字節(jié)數(shù)據(jù)。請在程序中的空格處填入適當?shù)闹噶钍蛊渫暾?。MOV CX , 32HLEA SI, BEGMOV DI , SI(1)DON : MOV AL , SI(2)MOV SI , AL(3)DEC DILOOP DONHLT答 :(1) ADD DI, 99(4) XCHG AL, DI(5) INC SI解析1) 題目要求:將以BEG

30、 為起始地址的區(qū)域中的100 個字節(jié)數(shù)據(jù)首尾顛倒存放。例如,如果原先為 X1,X2, X3,,X98, X99, X100 ,則首尾顛倒后將變?yōu)閄100, X99, X98, ,X3, X2,X1 。2)顛倒的方法是:將 X1與X100對調(diào)、X2與X99對調(diào)、X3與X98對調(diào)、,即將前一半的數(shù)據(jù)與后一半相應位置的數(shù)據(jù)對調(diào)。這個過程每次處理兩個數(shù)據(jù),所以共有( 100/2= ) 50 對數(shù)據(jù)對調(diào)。3)根據(jù)以上分析可知,這個循環(huán)將進行50 (32H)次,每次將相應的兩個數(shù)據(jù)對調(diào),這兩個數(shù)據(jù)可分別由兩個寄存器來指向。(6) 閱讀程序可知,SI 寄存器指向前一半中的某個數(shù)據(jù),DI 寄存器指向后一半中對

31、應的數(shù)據(jù)。在循環(huán)的初始化部分,使應計數(shù)器CX 的值為50(或32H) , SI 指向第一個數(shù),DI 指向最后一個數(shù),所以第一個空白處應填入指令:ADD DI, 99 。(7) 在循環(huán)體中,應首先交換SI 和 DI 所指向單元的內(nèi)容,然后使指針SI 加 1、 DI減 1,所以第二、三個空白處應填入指令: XCHG AL, DI INC SI五,編制程序題(第1 小題 6 分,第 2 小題 14 分,共 20 分)1試編寫一個匯編語言程序,要求對鍵盤輸入的小寫字母用大寫字母顯示出來。答: 1 BEGIN : MOV AH , 1INT 21HCMP AL , aJB STOPCMP AL , zJA STOPSUB AL , 20HMOV DL , ALMOV AH , 2I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論