资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
汇编语言试卷一、选择题 (每小题 1 分,共 20 分) 设 A=186 ,B=273Q ,C=0BBH ,它们之间的关系是(d ) 。A) A.BC B)ABC C) A=B=C D)AB=C 8086/8088 的存储器组织是将存储器划分为段,可以作为段的起始地址是(B ) 。A)185A2H B)00020H C)01004H D)0AB568H 堆栈中当前出栈的存储单元地址是(A ) 。A) SS*10H+SP B)SS*10H+BP C)SS*10+SP D)SS*10+BP 设 DL=55H 。执行指令后能使DL 中的数据为0AAH 的指令是(D ) 。A)TEST DL ,0AAH B)OR DL, 0AAH C )NEG DL D)XOR DL,0FFH 当 SS=9876H, SP=4328H,执行 POPF 指令后,堆栈顶部的物理地址是(A) 。A)9CA8AH B)9CA90H C) 9CA86H D)0DB00H DW 10H DUP (2 DUP (3) ,300H)上述定义的数据单元中,能构成0303H 字存储单元的个数是(D) 。A) 10H B)20H C)1EH D)0FH 用一条指令实现将寄存器BX 和 SI 的内容相加,结果并送入AX 中,这条指令是(D ) 。A)ADD AX ,BXSI B)MOV AX , BXSI C)AND AX ,BXSI D) LEA AX ,BXSI 设 AX 中有一带符号数8520H,执行 SAR AX , 1 指令后, AX 中的值是( C ) 。A)4290H B)0A40H C) 0C290H D)0C260H 下列中指令执行后。能影响标志位的指令是(B) 。A) PUSHF B)POPF C)JNLE OPR D)LOOPZ LOP 10循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是(B ) 。A)CX 0 且 ZF=1 B)CX 0 且 ZF=0 C)CX 0 或 ZF=1 D)CX 0 或 ZF=0 11下面两个传送指令语句中操作数寻址方式是(C) 。VAR1 DW 32H VAR2 EQU 32H MOV AX ,VAR1 MOV BX,VAR2 A)都是立即数寻址B)前一条指令是立即数寻址,后一条指令是直接寻址C)前一条指令是直接寻址,后一条指令是立即数寻址D)都是直接寻址12ARRAY DW 6,9,$, 10H,1,$MOV AX ,ARRAY 设变量 ARRAY 的偏移量是0084H,上述指令执行后AX 的内容是(B ) 。A)0009 B)008CH C)0090H D)0010H 13设 AX=0CCBBH ,CF=1 AND AX ,7FFEH RCR AX ,1 上述两条指令执行后,AX 和 CF 中的内容分别是(A) 。A)AX=265DH ,B)AX=265DH C) AX=0A65DH D)AX=0A65DH CF=0 CF=1 CF=0 CF=1 14DA B EQU BYTE PTR DA W DA W DW AB , CD , EF , GHMOV BX, DA WMOV BH, DA 执行上述两条指令后,中的内容是(C) 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 6 页) ) ) ) 15指令语句中标号的错误定义是(D ) 。A)在代码段中的名字项定义,后面紧跟冒号B)用 EQU 伪指令定义C)用 LABLE伪指令定义D)由“ JMP 标号”指令定义16设 VAR1 和 VAR2 是已定义的变量名,非法的表达式是(C ) 。A)VAR1VAR2 B)VAR1VAR2BX C)VAR1+V AR2 D)VAR1BX 17为在一连续的存储器单元中依次存放数据41H,42H, 48H,下面的数据定义语句中有语法错误的是(B ) 。A)DB 41H,42H,43H,44H,45H, 46H,47H,48H B)DW 4142H,4344H, 4546H,4748H C)DB ABCDEFGH D)DW BA , DC , FE , HG18设 NUM=11011011B ,指令“ MOV AX ,NUM SHL ,3”执行后的AX 的值是(A ) 。A)11011011000B B)11011000B C)0011011B D)00011011011B 19XOR AX ,AX MOV CX,5 NEXT :ADD AL ,6 AAA LOOP NEXT 上述程序段执行的结果是(B) 。A) AX=0030H B) AX=0300H C) AX=30 D) AX=001EH 20如某循环程序是对两个数组进行某种运算处理,当数组处理完毕或运算处理的结果不为某一指定值时(每次循环时,对运算结果已进行了测试),就结束循环。如要求一定使用循环控制指令,这时应选用的指令是(B ) 。A)LOOP B)LOOPE/LOOPZ C)LOOPNE/LOOPNZ D)JCXZ 二、填空题(本大题共5 小题,每小题1 分,共 5 分)1 假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么该字的字地址是20H 。2 “SHL OPR,CNT ”指令中OPR 不允许使用立即数和段寄存器操作数。3 “VAR DB 5 DUP(8,2 DUP(5) )语句汇编应分配15 或 0FH个字节单元。4 指 令 “ MOV AX ,20HSI “ 中 操 作 数 的 物 理 地 址 表 达 式 是DS*16 S1 20 H。5乘法指令语句“MUL CL“, 16 位的乘积存放在AX中。三、简答题(本大题共3 小题,每小题2 分,共 6 分)1设 DS=3A00H ,ES=4A00H ,在段地址:偏移地址=4A00H : 9000H 字单元中有数据3C50H 。请用一条指令将数据3C50H 装入 AX 寄存器。(不得使用立即数)MOV AX ,ES: 9000H2 BX=0FFFFH ,DI=20H ,DS=2000H ,CL=8 , (20020H)=4567H,下列各条指令分别执行后BX 中的内容各为多少?A) ROL BX ,CL ; BX= 0FFFHB) MOV BX ,DI ; BX= 4567H3DAT1 DB 1,2,3,4 DAT2 DW 3412H,5678H MOV AX ,DAT1+1 ;将 DAT1+1 字单元内容送入AX 中MOV BL ,DAT2+1 ;将 DAT2+1 字节单元内容送入AX 中已知上述两条MOV 语句有语法错误,请根据注释字段的要求将其改正(分别用一条语句改正)MOV AX ,WORD PTR DAT1 l MOV BL BYTE PTR DAT21 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 6 页四、程序分析题(本大题共7 小题,每小题5 分,共 35 分)1DA1 DW 1F28H DA2 DB ?XOR BL,BL MOV AX ,DA1 LOP: AND AX ,AX JZ KK SHL AX ,1 JNC LOP ADD BL ,1 JMP LOP KK : MOV DA2 ,BL 试问:程序段执行后,DA2 字节单元内容是什么?(DA2 ) 7在程序段功能不变情况下,是否可用SHR 指令代替 SHL 指令? 可以2DA1 DB 87H DA2 DB ?MOV AH ,0 MOV AL ,DA1 MOV CL,4 SHR AL ,CL MOV DL,10 MUL DL MOV BL ,DA1 AND AL ,0FH ADD AL ,BL MOV DA2 ,AL 试回答:程序段执行后,( DA2 )= 57H ;在程序段功能不变情况下,是否可用SAR 指令代替SHR 指令? 不可以3MOV AL ,BL NOT AL XOR AL ,BL OR BL,AL 程序段执行后,AL= 0FFH, BL= 0FFH。4CTC MOV CX,0403H MOV AX ,0A433H SAR AX ,CL XCHG CH,CL SHL AX ,CL 程序段执行后,AX= 4860H, CF= CF l。5BYTE1 DB XX ;任意数精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 6 页BYTE2 EQU 0FEH MOV DL,BYTE1 OR DL,BYTE2 程序段执行后,DL= OFEH 或 OFFH6DA B DB 0CH,9,8,0FH,0EH,0AH ,2,3,7,4 XOR AX , AX XOR CL,CL XOR BX ,BX LOP: TEST DA BBX ,01H JE NEXT ADD AL , DA BBX INC AH NEXT :INC BX INC CL CMP CL,10 JNE LOP 上述程序段运行结束后,AH= 4 (奇数个数), AL= AL 34 或 22H (奇数之和)。如果把“ JE NEXT ”指令改为“ JNE NEXT ”指令,那么AH= 6 (偶数个数, AL= 50 或 32H (偶数之和)。7VAR B DB 10 DUP(3,5, 7,9)LEA BX,VAR B MOV CX,10 XOR AX ,AX LOP:ADD AL ,BX CMP AL ,10 JB NEXT INC AH SUB AL ,10 NEXT :INC BX LOOP LOP 上述程序段运行结束后,AH 05 , AL= 06。五、程序填空题(本大题共2 小题,每小题6 分,共 12 分)1 某程序段欲用单个字符显示的2 号 DOS功能调用去显示一字符串“STRING ” 。试在下面空白处填上适当的指令(每一空白处仅填一条指令)。STR1 DB STRING , $MOV BX ,OFFSET STR1 LOP: MOV DL,BX MOV AH ,02H INT 21H INC BX精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 6 页CMP BX , JNE LOP 2 程序段的功能是依次产生的09 的 10 个 ASC码, 并存入 BUF1 数据区, 请在空白处填上指令(每一空白处仅填一条指令)。BUF1 DB 10 DUP(?)LEA BX ,BUF1 MOV CX ,10 XOR AL ,AL LOP:MOV AH ,AL ADD AL ,30H MOV BX ,AL INC BX MOV AL ,AHINC AL LOOP LOP 六、编制程序(本大题共3 小题,共22 分)1 ( 5 分)把 2 个非压缩BCD 码组合为有个压缩BCD 码,并存入DA3 中。DA1 DB XX ;高位非压缩BCD 码DA2 DB XX ;低位非压缩BCD 码DA3 DB ?MOV AL ,DAl MOV CL ,4 SHL AL ,CL OR AL ,DA2 MOV DA3 AL2 (5 分)已知 DAT1 字节单元有一个数据,试编制一程序段将该数据的低4 位变为 1010B,最高位(第7 位)置 1,其余 3位不变,结果送DAT2 字节单元。MOV AL ,DAT1 AND AL , 70H OR AL ,8AH MOV DAT2 ,AL3 ( 12 分)在 N1 和 N2 两数据区中,分别有10H 个带符号数。试编制一源程序,找出对应项目中较小的数据,并将这些较小的数据存入N3 数据区中(要求:对应项比较时必须用CMPS 指令) 。DATA SEGMENT N1 DB XX ,XX , XX ,N2 DB XX ,XX , XX ,N3 DB 10H DUP(0)DATA ENDS DATA SEGMENT N1 DB ,N2 DB ,。N3 DB l0H DUP ( 0)DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP ( 0)STACKI ENDS 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 6 页CODE SEGMENT ASSUME CS :CODE ,DS:DATA ,ES:DATA START :MOV AX DATA MOV DS ,AX MOV ES AX LEA SI ,Nl LEA DI ,N2 LEA BX ,N3 MOV CX ,10H CLD LOP :CMPSB JLE LL MOV AL , DI lJMP NEXT LL :MOV AL , SI 1NEXT :MOV BX , AL INC BX LOOP LOP MOV AH ,4CH INT 21H CODE ENDS END START 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 6 页
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号