1、8如果(AL)=01100011B,(AH)=00100010B,执行ADD AL,AH指令后,正确的结果为(B )(A)(AL)=01100011B,CF=0 (B)(AL)=10000101B,CF=0(C)(AL)=00100101B,CF=1 (D)(AL)=10000101B,CF=19条件转移指令的最大转移范围为(B)(A)没有转移范围的限制 (B)-128到127个字节(C)-32768到32767个字节 (D)0到255个字节10如果(AL)=0DH,执行SUB AL,80H 指令后,正确的结果为哪一个(A)(A)(AL)=8DH,OF=1 (B)(AL)=0DH,OF=0(C
2、)(AL)=8DH,OF=0 (D)(AL)=0D1H,OF=1若减数大与被减数,此时有借位,CF=1;否则CF=0;若减数与被减数的符号相反,而结果的符号与减数相同,则OF=1;否则OF=0。)11如果(SP)=80H,执行指令CALL FAR PTR PR1后(SP)=(C)(A)80H (B)84H(C)7CH (D)7EH12如果数据段中一个内存单元对应的物理地址为2F724H,(DS)=2F00H,那么使用DS段寄存器指明该单元的段基值时,需要使用哪一个偏移量才能正确访问该单元(C)(A)0024H (B)0F724H(C)0724H (D)2724H13如果要读取80H号端口的内容
3、,下面的指令哪一个能够实现该功能(D)(A)IN BL, 80H (B)MOV AL,80H(C)INT 80H (D)IN AL,12814以下描述正确的是(C)(A)偏移量与位移量是同一个概念 (B)段基值与段基址是同一个概念(C)SHL与SAL指令没有任何区别 (D)SHR与SAR指令没有任何区别15如果(AL)=66H,执行如下程序片段后,正确的执行结果为( B)STCOR AL,1ADC AL,82H(A)(AL)=0E9H,CF=1 (B)(AL)=0E9H,CF=0(C)(AL)=0EAH,CF=0 (D)(AL)=0EAH,CF=116以下串操作指令中,哪一条指令会影响标志位?
4、(C )(A)LODS (B)STOS (C)CMPS (D)MOVS17如果(AL)=03H,(BL)=05H,执行如下程序片段后,正确的执行结果为以下哪一个(C)SUB AL,BLAAS(A)(AL)=0FEH,CF=1 (B)(AL)=0F8H,CF=1(C)(AL)=08H,CF=1 (D)(AL)=08H,CF=018若当前(DL)= 48H,执行指令AND DL,0F0H后,(DL)=(C)(A)04H (B)08H (C) 40H (D)84H19如果(SI)=0088H,(DS)=5570H,对于物理地址为55788H的内存字单元,其内容为0235H,对于物理地址为5578AH
5、的内存字单元,其内容为0E60H,那么执行指令LDS SI,SI以后,正确的执行结果为( C)(A)(DS)=5570H,(SI)=0088H (B)(DS)=0235H,(SI)=0E60H(C)(DS)=0E60H,(SI)=0235H (D)(DS)=0088H,(SI)=5570H(P56页;该指令的作用:1.(REG) (REG);2.把(SEG+2)中的16为数装入指令指定的段寄从器中)20下列条件转移指令中,哪一个是针对带符号数比较的( B)(A)JB (B)JL (C)JAE (D)JC 二、多项选择题(本大题共5小题,每小题2分,共10分 )在每小题列出的五个备选项中有二个至
6、五个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。1对于各个寄存器的特殊用途,下列描述正确的为(ABCDE)(A)执行DAA指令时,被调整的加法结果只能存放在AL中(B)LOOP指令隐含使用CX作为计数器(C)串操作指令中的目的变址寄存器只能与ES段寄存器搭配使用(P30页)(D)对于SAR指令,如果移位次数大于1,那么移位次数只能用CL来存放(E)POPF指令隐含使用标志寄存器作为目的操作数2以下存储器寻址方式中,哪些可以由BX寄存器提供偏移量或基址分量(BCD)(A)立即数寻址 (B)基址寻址 (C)基址变址寻址(D)寄存器间接寻址 (E)直接寻址3对于EN
7、D伪指令,下列功能描述正确的为(ACD )(A)用于结束整个汇编语言源程序(B)用于结束一个逻辑段的定义(C)通常在该伪指令后面需要给出一个标号,用于指出程序中第一条被执行指令的逻辑地址(D)汇编工具软件MASM.EXE不会处理END伪指令后面的语句(E)可用于结束子程序定义、宏定义4对于以下关键字搭配,正确的有哪些?( ABD )(A)SEGMENT ENDS (B)MACRO ENDM(C)REPT ENDS (D)PROC ENDP(E)PROC ENDS5若当前(DS)=0600H,(BX)=0064H,内存字单元(06064H)=0018H,(06066H)=0700H,(06018
8、H)=0026H,(0601AH)=0800H,并且有如下程序片段:LEA SI,BXMOV BX,BXLDS BX,BX执行该程序片段后,对于执行结果,下列描述正确的有哪些?( BC )(A)(SI)=0018H (B)(BX)=0026H (C)(SI)=0064H(D)(BX)=0018H (E)(DS)=0700H 三、判断分析题(本大题共5小题,每小题3分,共15分 )每小题列出的语句在语法上可能是正确的,也可能是错误的,请判断各小题所给语句在语法上是否正确,如果是错误的,则需要分析其错误原因。对于所给语句正确的小题,只要做出正确判断即给3分,如果做出错误判断则无分;对于所给语句错误
9、的小题,做出正确判断给1分,做出正确的错误分析再给2分,如果做出错误判断则无分。1MOV ES,0F98H 错误,不能传递立即数给DS寄存器2POP AH错误,POP指令的操作数必须为16位3NOP 正确 4SHL AX,BL错误,移位次数必须使用CL寄存器给出5MUL CL,DL 错误,MUL指令为单操作数指令四、名词解释题(本大题共3小题,每小题4分,共12分),解释每小题所给名词的含义,若解释正确则给分,若解释错误则无分,若解释不准确或不全面,则酌情扣分。1段基值:逻辑地址的一部分,用于指示一个逻辑段的起始地址 2有效地址即偏移量,:用于指示被访问内存单元距离短期地址的字节距离3BCD码
10、:在计算机系统内使用二进制表示的一种十进制编码,用于使用二进制运算指令实现十进制运算。1. 段基值:逻辑地址的一部分,用于指示一个逻辑段的起始地址2. 有效地址:即偏移量,用于指示被访问内存单元距离段起始地址的字节距离3. BCD码:五、程序分析题(本大题共3小题,每小题7分,共21分 ),每小题给出了一个程序片段,这些程序片段在语法和逻辑上都是正确的,请按照各小题给出的分析要求,分析程序片段的执行结果或总结程序片段的功能,并在空白处填写分析结果,分析正确则按照每空后标注的分值给分,如果分析错误则该空不得分。1阅读下面的程序片段,并分析执行结果。(共7分)MOV AX,723AHMOV BX,
11、0C86BH SBB AH,BHXOR AL,01HADC AX,0执行该程序片段后:(AX)= 0A9CEH (3分)CF = 0(2分)OF = 0(2分)2阅读下面的程序片段,并分析执行结果。MOV AL,55HMOV CL,2ROL AL,CLRCL AL,CL(AL)= 54H (3分)CF = 1 (2分)(CL)= 2 (2分)3阅读下面的程序片段,并分析执行结果。DATA SEGMENTSTR1 DB AABBCCDDEEFFLEN EQU $-STR1DATA ENDSCODE SEGMENT MOV BX,OFFSET STR1 MOV CX,LENL1: CMP BX,A
12、 LAHF INC BX SAHF LOOPE L1CODE ENDS执行上面程序片段后,执行结果为:(BX)= 2 (3分) ZF = 0 (2分)(CX)= 9 (2分)六、程序设计题(本大题共2小题,第1小题10分,第2小题12分,共22分 ),每小题给出了一个程序设计要求,请按照要求写出源程序代码,如果源程序代码中出现语法错误或逻辑错误,则酌情扣分。1请设计一个子程序,其功能如下:(1)主程序向它提供一个字节类型的待处理数据,并指明要处理的二进制数位(2)该子程序将待处理数据的指定二进制位变反,并将处理结果返回给主程序。例:如果主程序要求将11001001B的第3位变反,则处理后结果为
13、11000001B仅要求写出与子程序相关的源程序代码,并用文字说明参数传递方式。(10分)1) 入口参数:主程序将待处理数据传递到AL寄存器,待处理的位编号传递到CL寄存器2) 出口参数:子程序将处理后的数据传递到AL寄存器返回到主程序BITPROC PROC ;子程序定义 2分PUSH BX ;现场保护与恢复 2分MOV BL,1SHL BL,CL ;变反模板定义 1分XOR AL,BL ;位变反 2分POP BXRET ;返回 1分BITPROC ENDP2请设计一个完整程序,该程序的功能如下:(1)从键盘接收一个字符串输入,把接收到的字符串存放于一个缓冲区中,最大允许输入20个字符,输入
14、字符数不够20个时可以回车键结束字符串的输入。(2)将所输入字符串中的小写字母转换为大写字母(3)在新的一行上显示处理后的字符串。例如:输入aBcD,则在新的一行输出ABCD要求写出完整的源程序代码。(12分)DATA SEGMENT ;数据段及变量定义,2分MAXLEN DB 20ACTLEN DB ?STR1 DB 21 DUP(?CODE SEGMENT ;代码段定义,1分ASSUME CS:CODE,DS:DATA ;ASSUME,1分BEGIN:MOV AX,DATA ;DS初始化,1分 MOV DS,AX MOV DX,OFFSET MAXLEN ;字符串输入,1分 MOV AH,0AH INT 21H MOV DL,0DH ;回车换行显示,1分 MOV AH,02H MOV DL,0AH LEA BX,STR1 ;添加字符串结束标志,1分 PUSH BX MOV CL,STR1+1 XOR CH,CH ADD BX,CX MOV BX,$ POP BXLOP1: CMP BX,a ;循环主体,2分 JB L1 CMP BX,z JA L1 SUB BX,20H INC BX LOOP LOP1字符串显示,1分 MOV AH,09H MOV AH,4CH ;程序框架,1分END BEGIN
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1