2022年2022年汇编语言复习题 3.pdf
1 1、循环控制指令LoopNZ/LoopNE 控制循环继续执行的条件是(CX 0且 ZF=0) DX 2、循环指令LOOPNZ 终止循环的条件是( CX=0,或 ZF=1 )。 DX 3、检查 BUF的内容是否为正偶数,如是正偶数,则0TAL。下面程序段正确的是( C )。DXA、MOV AL ,BUF JS K1 SHR AL ,1 JNC K1 MOV AL ,0 K1:B、MOV AL ,BUF AND AL ,11 JNZ K2 MOV AL ,0 K2:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - 2 C、MOV AL ,BUF TEST AL,81H JNZ K3 MOV AL ,0 K3:4、下列描述中,执行循环的次数最多的情况是( A ) 。 DX A MOV CX ,0 BMOV CX ,1 LOP:LOOP LOP LOP:LOOP LOP C MOV CX ,0FFFFH DMOV CX ,256 LOP:LOOP LOP LOP:LOOP LOP 5、DATA SEGMENT S9 DB0,1,2,3,4,5,6, 7,8,9 DATA ENDS LEA SI ,S9 LEA ,DI ,S9+1 MOV CX ,5 LOP : MOV AL,SI XCHG AL ,DI MOV SI ,AL ADD SI,2 ADD DI,2 LOOP LOP 上述程序段运行后,S9开始的 10 个字节存储单元内容是什么? CXFX S9 DB 1 ,0, 3,2,5,4,7,6,9, 8 6、实现将DX :AX中存放的32 位数扩大四倍,正确的程序段是() 。 DX SHL AX,2 ROL DX,2 RCL AX,2 SHL DX,2 MOV CX ,2 LOP:SHL AX,1 RCL DX,1 LOOP LOP SHL AX,1 SHL AX,1 RCL DX,1 RCL DX,1 7、在下列指令中, D 指令的执行会影响条件码中的CF位。 DX A JMP NEXT BJC NEXT CINC BX DSHL AX,1 8、下列指令执行时出错的是(A) 。 DX A ADD BUF1 ,BUF2 BJMP DWORD PTR DAT BX C MOV AX ,BX+DI NUM D、MOV AL ,BUF JNP K4 TEST AL ,80H JNZ K4 MOV AL ,0 K4:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - 3 DTEST AL,08H 9、在下列指令的表示中,不正确的是(C) 。 DX AMOV AL ,BX+SI BJMP SHORT DONI CDEC BX DMUL CL 10、在进行二重循环程序设计时,下列描述正确的是(A) 。 DX A外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B外循环初值应置外循环之内;内循环初值应置内循环之内C内、外循环初值都应置外循环之外D内、外循环初值都应置内循环之外,外循环之内11、条件转移指令JNE的测试条件为(ZF=0) 。 DX 12、执行如下程序:MOV AX ,0 MOV BX ,1 MOV CX ,100 A:ADD AX , BX INC BX LOOP A HLT 执行后( BX )= (101) 。 DX 13、上题的程序执行后(AX ) = (5050) 。 DX 14、对于下列程序段:AGAIN :MOV AL ,SI MOV ES :DI ,AL INC SI INC DI LOOP AGAIN 也可用 _ REP MOVSB _ 指令完成同样的功能。 DX 15、DA1 DB ABCDEFGHI DA2 DB 9 DUP(0) LEA SI, DA1 LEA DI, DA2 MOV CX , 9 CLD LOP: LODSB SUB AL, 10H STOSB LOOP LOP . . . 试问:写出程序执行后DA2各字节中的数据。 CXFX 保持程序功能情况下,程序中可否改写为123456789;不能更改名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - 4 16、程序段如下: CXFX BLK1 DB 46 ,84,34, 5,20,122,73 : MOV CX ,7 LEA S1 ,BLK1 NEXT: MOV AL,SI INC SI TEST AL ,81H LOOPZ NEXT MOV BL,SI : 请回答程序段运行后: ( AL) 5 或 0FBH ( BL) 14H或 2017、下面程序的功能是什么? CXFX STRING DB 100 DUP(?) MOV AX,SEG STRING MOV DS,AX LEA SI,STRING MOV CX,100 LAB: MOV AL,SI CMP AL, a JB LAB1 CMP AL, z JA LAB1 SUB AL,32 MOV SI,A LAB1: INC SI LOOP LAB 将 STRING里的小写字母a - z转成相应的大写字母A- Z18、现有下列数据段: CXTK DATA SEGMENT STR1 DB ABCDEFGHIJKL COUNT EQU STR1 BUF DB COUNT DUP (0) DATA ENDS 下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元) 。试把程序中所空缺的指令填上。 MOV SI ,OFFSET BUF 1 MOV DI,OFFSET BUF MOV CX ,COUNT CLD 或 STD LOOP:MOVSB 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - 5 _ SUB SI ,2_或_ ADD DI ,2_ LOOP LOP 19、下述程序段完成计算220 之间的偶数的和,并存于AX中。试把空白处填上适当的指令。 CXTK XOR AX,AX MOV BX,0 MOV CX, 10 或 MOV CX,0AH CONT : ADD AX ,BX ADD BX, 2 LOOP CONT 20、BEG为起始地址的存储区域中存放有100 个字节数据,现将其首、尾颠倒过来,重新排放这100 个字节数据。请在程序中的空格处填入适当的指令使其完整。CXTK MOV CX ,32H LEA SI ,BEG MOV DI,SI (1) DON :MOV AL ,SI (2) MOV SI ,AL (3) DEC DI LOOP DON HLT 答: (1) ADD DI, 99 (2) XCHG AL, DI (3) INC SI 21、试编制一源程序,统计DA1字单元中含0 的个数,如统计的个数为奇数,则将进位位置1,否则进位位清0。 BC DATA SEGMENT DA1 DW XXXX DATA ENDS 答:CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,DA1 MOV CX,16 XOR BL,BL AGAIN: MOV AL,SI HL AL,1 JC NEXT 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - 6 INC BL NEXT:INC SI LOOP AGAIN TEST BL,01H JNE L1 CLC JMP DONE L1: STC DONE: MOV AH,4CH INT 21H CODE ENDS END START 22、下述程序段完成计算220 之间的偶数的和,并存于AX中。试把空白处填上适当的指令。 CXTK XOR AX,AX MOV BX,0 MOV CX,10 或 MOV CX ,0AH CONT : ADD AX ,BX ADD BX,2 LOOP CONT 23、如下程序应用冒泡法对一个无符号数组排序(由小到大排序),请完成该程序。(注:为该程序分配100 字的堆栈存储空间。 ) CXTK SSEG SEGMENT STACK DW 100 DUP (?) SSEG ENDS DSEG SEGMENT SWAP DB ? ARRAY DW 32760, 127 , 0 , 65000 , 230 , 100 DSEG ENDS CSEG SEGMENT ASSUME CSCSEG ,DS DSEG ,SS SSEG START : MOV AX,DSEG MOV DS,AX SORT : MOV CX ,5 MOV SI,0 MOV SWAP,0 INNER: MOV AX,ARRAYSI CMP AX,ARRAYSI+2 JBE NOSWAP XCHG AX,ARRAYSI+2 MOV ARRAYSI, AX MOV SWAP,1 NOSWAP: ADD SI,2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - 7 LOOP INNER CMP SWAP,1 JNZ SORT MOV AH,4CH INT 21H CSEG ENDS END START 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -