2023年完整IBMPC汇编语言程序设计试卷最新版及超详细解析超详细解析超详细解析答案1.pdf

上传人:Q****o 文档编号:91158709 上传时间:2023-05-22 格式:PDF 页数:16 大小:457.64KB
返回 下载 相关 举报
2023年完整IBMPC汇编语言程序设计试卷最新版及超详细解析超详细解析超详细解析答案1.pdf_第1页
第1页 / 共16页
2023年完整IBMPC汇编语言程序设计试卷最新版及超详细解析超详细解析超详细解析答案1.pdf_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《2023年完整IBMPC汇编语言程序设计试卷最新版及超详细解析超详细解析超详细解析答案1.pdf》由会员分享,可在线阅读,更多相关《2023年完整IBMPC汇编语言程序设计试卷最新版及超详细解析超详细解析超详细解析答案1.pdf(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 一、单项选择题(本大题共 20 小题,每小题 1 分,共 20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1下面的数值表示中,和 127 相等的是哪一个(D)(A)11111111B (B)127H(C)80H (D)7FH 2如果(AL)=35H,执行 AND AL,0FFH 指令后,CF=(A)(A)0 (B)1(C)2 (D)和执行 AND AL,0 指令前的取值保持一致 3 如果(SP)=30H,执行 PUSH BX 指令后,(SP)=(B)(A)28H (B)2EH(C)32H (D)31H 4如果(AL)=011

2、11111B,执行 INC AL 指令后,CF=(D)(A)1 (B)0(C)2 (D)和执行 INC AL 指令之前的取值保持一致 5LOOP 指令隐含使用并用作循环记数器的是哪一个寄存器(A)(A)CX (B)BX (C)AL D)SI 6在 DEBUG 中,T 命令的功能是(C)(A)观察某内存单元的当前内容 (B)连续运行被调试的程序(C)单步执行下一条指令 (D)修改指定寄存器的内容 7如果当前(BL)=57H,执行指令 ADD BL,0F0H 后,OF 标志位的取值为(B)(A)1 (B)0(C)不确定 (D)与执行该指令前的取值保持一致(注:若两个操作数的符号相同,而结果的符号与

3、之相反时 OF=1,其他情况 OF=0)8 如果(AL)=01100011B,(AH)=00100010B,执行 ADD AL,AH 指令后,正确的结果为(B)(A)(AL)=01100011B,CF=0 (B)(AL)=10000101B,CF=0(C)(AL)=00100101B,CF=1 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数

4、的(D)(AL)=10000101B,CF=1 9条件转移指令的最大转移范围为(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)(AL)=8DH,OF=0 (D)(AL)=0D1H,OF=1(注:若减数大与被减数,此时有借位,CF=1;否则 CF=0;若减数与被减数的符号相反,而结果的符号与减数相同,则 OF=1;否则 OF=0。)11如果(SP)=80

5、H,执行指令CALL FAR PTR PR1后(SP)=(C)(A)80H (B)84H(C)7CH (D)7EH 12如果数据段中一个内存单元对应的物理地址为 2F724H,(DS)=2F00H,那么使用 DS 段寄存器指明该单元的段基值时,需要使用哪一个偏移量才能正确访问该单元(C)(A)0024H (B)0F724H(C)0724H (D)2724H 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后

6、正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 13 如果要读取 80H 号端口的内容,下面的指令哪一个能够实现该功能(D)(A)IN BL,80H (B)MOV AL,80H(C)INT 80H (D)IN AL,128 14以下描述正确的是(C)(A)偏移量与位移量是同一个概念 (B)段基值与段基址是同一个概念(C)SHL 与 SAL 指令没有任何区别(D)SHR 与 SAR 指令没有任何区别 15如果(AL)=66H,执行如下程序片段后,正确的执行结果为(B)STC OR AL,1 ADC AL,82H (A)(AL)=0E9H,CF=1 (B)(AL)=0E9H,C

7、F=0(C)(AL)=0EAH,CF=0 (D)(AL)=0EAH,CF=1 16以下串操作指令中,哪一条指令会影响标志位?(C)(A)LODS (B)STOS (C)CMPS (D)令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 MOVS 17如果(AL)=03H,(BL)=05H,执行如下程序片段后,正确的执行结果为以下哪一个(C)S

8、UB AL,BL AAS(A)(AL)=0FEH,CF=1 (B)(AL)=0F8H,CF=1(C)(AL)=08H,CF=1 (D)(AL)=08H,CF=0 18 若当前(DL)=48H,执行指令 AND DL,0F0H 后,(DL)=(C)(A)04H (B)08H (C)40H (D)84H 19 如果(SI)=0088H,(DS)=5570H,对于物理地址为 55788H的内存字单元,其内容为 0235H,对于物理地址为 5578AH 的内存字单元,其内容为 0E60H,那么执行指令 LDS SI,SI以后,正确的执行结果为(C)(A)(DS)=5570H,(SI)=0088H (B

9、)(DS)=0235H,(SI)=0E60H(C)(DS)=0E60H,(SI)=0235H (D)(DS)=0088H,(SI)=5570H 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的(P56 页;该指令的作用:1.(REG)(REG);2.把(SEG+2)中的 16为数装入指令指定的段寄从器中)20下列条件转移指令中,哪一个是针对

10、带符号数比较的(B)(A)JB (B)JL (C)JAE (D)JC 二、多项选择题(本大题共 5 小题,每小题 2 分,共 10 分)在每小题列出的五个备选项中有二个至五个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。1 对于各个寄存器的特殊用途,下列描述正确的为(ABCDE)(A)执行 DAA 指令时,被调整的加法结果只能存放在 AL 中(B)LOOP 指令隐含使用 CX 作为计数器(C)串操作指令中的目的变址寄存器只能与 ES 段寄存器搭配使用(P30 页)(D)对于 SAR 指令,如果移位次数大于 1,那么移位次数只能用 CL 来存放(E)POPF 指令

11、隐含使用标志寄存器作为目的操作数 2以下存储器寻址方式中,哪些可以由 BX 寄存器提供偏移量或基址分量(BCD)令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的(A)立即数寻址 (B)基址寻址 (C)基址变址寻址(D)寄存器间接寻址 (E)直接寻址 3对于 END 伪指令,下列功能描述正确的为(ACD)(A)用于结束整个汇编语言源程序(B)

12、用于结束一个逻辑段的定义(C)通常在该伪指令后面需要给出一个标号,用于指出程序中第一条被执行指令的逻辑地址(D)汇编工具软件 MASM.EXE 不会处理 END 伪指令后面的语句(E)可用于结束子程序定义、宏定义 4对于以下关键字搭配,正确的有哪些?(ABD )(A)SEGMENT ENDS (B)MACRO ENDM(C)REPT ENDS (D)PROC ENDP(E)PROC ENDS 5 若当前(DS)=0600H,(BX)=0064H,内存字单元(06064H)=0018H,(06066H)=0700H,(06018H)=0026H,(0601AH)=0800H,并且有如下程序片段:

13、令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 LEA SI,BX MOV BX,BX LDS BX,BX 执行该程序片段后,对于执行结果,下列描述正确的有哪些?(BC )(A)(SI)=0018H (B)(BX)=0026H (C)(SI)=0064H(D)(BX)=0018H (E)(DS)=0700H 三、判断分析题(本大题共 5

14、小题,每小题 3 分,共 15 分)每小题列出的语句在语法上可能是正确的,也可能是错误的,请判断各小题所给语句在语法上是否正确,如果是错误的,则需要分析其错误原因。对于所给语句正确的小题,只要做出正确判断即给 3 分,如果做出错误判断则无分;对于所给语句错误的小题,做出正确判断给 1 分,做出正确的错误分析再给 2 分,如果做出错误判断则无分。1MOV ES,0F98H 错误,不能传递立即数给 DS 寄存器 2POP AH 错误,POP 指令的操作数必须为 16 位 3NOP 正确 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果

15、当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 4SHL AX,BL 错误,移位次数必须使用 CL 寄存器给出 5MUL CL,DL 错误,MUL 指令为单操作数指令 四、名词解释题(本大题共 3 小题,每小题 4 分,共 12 分),解释每小题所给名词的含义,若解释正确则给分,若解释错误则无分,若解释不准确或不全面,则酌情扣分。1 段基值:逻辑地址的一部分,用于指示一个逻辑段的起始地址 2有效地址即偏移量,:用于指示被访问内存单元距离短期地址的字

16、节距离 3BCD 码:在计算机系统内使用二进制表示的一种十进制编码,用于使用二进制运算指令实现十进制运算。1.段基值:逻辑地址的一部分,用于指示一个逻辑段的起始地址 2.有效地址:即偏移量,用于指示被访问内存单元距离段起始地址的字节距离 3.BCD 码:在计算机系统内使用二进制表示的一种十进制编码,用于使用二进制运算指令实现十进制运算。五、程序分析题(本大题共 3 小题,每小题 7 分,共 21 分),令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号

17、相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 每小题给出了一个程序片段,这些程序片段在语法和逻辑上都是正确的,请按照各小题给出的分析要求,分析程序片段的执行结果或总结程序片段的功能,并在空白处填写分析结果,分析正确则按照每空后标注的分值给分,如果分析错误则该空不得分。1阅读下面的程序片段,并分析执行结果。(共 7 分)MOV AX,723AH MOV BX,0C86BH SUB AL,BL SBB AH,BH XOR AL,01H ADC AX,0 执行该程序片段后:(AX)=0A9CEH(3 分)CF=0(2 分)OF=0(

18、2 分)2阅读下面的程序片段,并分析执行结果。(共 7 分)MOV AL,55H MOV CL,2 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 ROL AL,CL OR AL,1 RCL AL,CL 执行该程序片段后:(AL)=54H (3 分)CF=1 (2 分)(CL)=2 (2 分)3阅读下面的程序片段,并分析执行结果。(共 7

19、 分)DATA SEGMENT STR1 DB AABBCCDDEEFF LEN EQU$-STR1 DATA ENDS CODE SEGMENT MOV BX,OFFSET STR1 MOV CX,LEN L1:CMP BX,A LAHF 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 INC BX SAHF LOOPE L1 CODE

20、 ENDS 执行上面程序片段后,执行结果为:(BX)=2 (3 分)ZF=0 (2 分)(CX)=9 (2 分)六、程序设计题(本大题共 2 小题,第 1 小题 10 分,第 2 小题 12 分,共 22 分),每小题给出了一个程序设计要求,请按照要求写出源程序代码,如果源程序代码中出现语法错误或逻辑错误,则酌情扣分。1请设计一个子程序,其功能如下:(1)主程序向它提供一个字节类型的待处理数据,并指明要处理的二进制数位(2)该子程序将待处理数据的指定二进制位变反,并将处理结果返回给主程序。例:如果主程序要求将 11001001B 的第 3 位变反,则处理后结令前的取如果执行指令后如果执行指令后

21、一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 果为 11000001B 仅要求写出与子程序相关的源程序代码,并用文字说明参数传递方式。(10 分)1)入口参数:主程序将待处理数据传递到 AL 寄存器,待处理的位编号传递到 CL 寄存器 2)出口参数:子程序将处理后的数据传递到 AL 寄存器返回到主程序 BITPROC PROC ;子程序定义 2 分 PUSH BX ;现场

22、保护与恢复 2 分 MOV BL,1 SHL BL,CL ;变反模板定义 1 分 XOR AL,BL ;位变反 2 分 POP BX RET ;返回 1 分 BITPROC ENDP 2请设计一个完整程序,该程序的功能如下:(1)从键盘接收一个字符串输入,把接收到的字符串存放于一个缓冲区中,最大允许输入 20 个字符,输入字符数不够 20令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注

23、若减数大与被减数此时有借位否则若减数与被减数的 个时可以回车键结束字符串的输入。(2)将所输入字符串中的小写字母转换为大写字母(3)在新的一行上显示处理后的字符串。例如:输入 aBcD,则在新的一行输出 ABCD 要求写出完整的源程序代码。(12 分)DATA SEGMENT ;数据段及变量定义,2 分 MAXLEN DB 20 ACTLEN DB?STR1 DB 21 DUP(?)DATA ENDS CODE SEGMENT ;代码段定义,1 分 ASSUME CS:CODE,DS:DATA ;ASSUME,1 分 BEGIN:MOV AX,DATA ;DS 初始化,1 分 MOV DS,A

24、X MOV DX,OFFSET MAXLEN ;字符串输入,1 分 MOV AH,0AH INT 21H MOV DL,0DH ;回车换行显示,1令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 分 MOV AH,02H INT 21H MOV DL,0AH MOV AH,02H INT 21H LEA BX,STR1 ;添加字符串结束标志

25、,1 分 PUSH BX MOV CL,STR1+1 XOR CH,CH ADD BX,CX MOV BX,$POP BX LOP1:CMP BX,a ;循环主体,2 分 JB L1 CMP BX,z JA L1 SUB BX,20H L1:INC BX LOOP LOP1 LEA BX,STR1 ;字符串显示,1 分 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的 MOV AH,09H INT 21H MOV AH,4CH ;程序框架,1 分 INT 21H CODE ENDS END BEGIN 令前的取如果执行指令后如果执行指令后一致和执行指令之前的取值保持指令隐含使用并用作循环记数器的是哪一个的内容如果当前执行指令后标志位的取值为不确定与执行该指令前的取值保持一致注若两个操作数的符号相同而结果个字节到个字节到个字节如果执行指令后正确的结果为哪一个注若减数大与被减数此时有借位否则若减数与被减数的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁