教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

2014汇编复习题答案

来源:网络收集 时间:2026-08-27
导读: 一.填空题 1.设段地址DS=2000H, 指令MOV [600H],AX的目的操作数物理地址是( 20600h ),如果段地址是2020H,指令MOV [400H],AX的目的操作数物理地址是( 20600h )。 2.汇编源程序中出现的数值,默认采用( 十进制 );汇编程序在DEBUG调试状态下出现

一.填空题

1.设段地址DS=2000H, 指令MOV [600H],AX的目的操作数物理地址是( 20600h ),如果段地址是2020H,指令MOV [400H],AX的目的操作数物理地址是( 20600h )。

2.汇编源程序中出现的数值,默认采用( 十进制 );汇编程序在DEBUG调试状态下出现的数值,默认采用( 十六进制 )。

3.循环指令LOOP OPR执行的操作是( 先执行cx-1, 再执行opr ),LOOPNE指令循环得以继续的条件是( cx不等于0且zf=0 )。

4.带符号数比较大小,当AX> BX时程序转向标号L1,若前导指令为CMP AX,BX,后续指令应为( jg l1 ),若视为二个无符号数比较大小,后续指令应为( ja l1 )。

5.16位加法6FA7+9F20H=( 0EC7h ),标志位SF,ZF,CF,OF的值分别为( 0,0,1,0 )。

6.设SS=2000H,SP=0100H,执行 CALL FAR PTR SUBPRO 后,SP=( 00FFCh )。

7.可以用一条指令(xor bl,0fh )使BL中的低四位变反,高四位不变。

8.宏指令与子程序相比,子程序调用的执行速度比宏指令的( 慢 ),在多次调用时,宏指令调用的目标程序长度比子程序调用的( 长 )。

9.执行DIV BX指令后,( dx )寄存器中存放余数,( ax )寄存器中存放商。

10.在串操作中,如果地址变化是自动增量,则应将DF标志位设置为( 0 ),如果地址变化是自动减量,则应将DF标志位设置为( 1 )。

第 1 页 共 5 页

二.简答题

1.请指出下列各条指令的源操作数的寻址方式是什么? (1) MOV AX,53H 立即寻址 (2) TEST AL,[BP] 寄存器间接寻址 (3) MOV BX,ARRY 直接寻址 (4) CMP DX,CX 寄存器寻址

(5) LEA AX,-32H[BX][DI] 相对基址变质寻址 (6) ADC AH,ARRY[SI] 寄存器相对寻址 (7) SUB AX,[BX+SI] 基址变址寻址

2.分析以下指令是否有错,请指出错误原因。

(1) MOV DL,AX 错,两个操作数长度不一致 (2) MOV [BX],9 错,没有确定内存单元类型 (3) MOV BX,[DX] 错,dx不能作为寄存器间接寻址 (4) MOV CS,BX 错,代码段寄存器不能赋值 (5) MOV DS,DATA 错,不能将符号地址送到段寄存器 (6) ADD AX,[SI+DI] 错,非法寻址方式 (7) SUB [BX],[SI] 错,不能同时为内存单元 (8) MUL BX,CX 错,格式错误

3.设 DS=2000H, BX=0100H, SI=0002H, (20100H)=12H, (20101H)=34H,(20102H)= 56H, (20103H)= 78H, (21200H)= 2AH, (21201H)= 4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器中的内容是多少? (1)MOV AX,1200H 1200 (2)MOV AX,BX 0100 (3)MOV AX,[1200H] 2ah (4)MOV AX,[BX] 12h (5)MOV AX,[BX+1100H] 2a (6)MOV AX,[BX+SI] 56

第 2 页 共 5 页

(7)MOV AX,[BX+SI+1100H] b7

4.用十六进制按字节标出以上数据在内存中的存放,并回答寄存器的值。

ORG 0

ARRAY LABEL BYTE

DA1 DW 2,9,14,3,315H,-6 DA2 DB 7,‘ABCDEDFG’

LEN = $-DA2 ORG 100H DA3 DW DA4

DA4 DB 4 DUP(2 DUP(1,2,3),4) 。。。。。。

MOV AL,ARRAY+2 AL=( 09 )H ADD AL,DA2+1 AL=( 41 )H MOV AX,DA2-DA1 AX=( 000C )H MOV BL,LEN BL=( 09 )H MOV AX,DA3 AX=( 0102 )H MOV BX, TYPE DA4 BX=( 0001 )H MOV BX, OFFSET DA4 BX=( 0102 )H MOV CX, SIZE DA4 CX=( 0004 )H MOV DX, LENGTH DA4 DX=( 0004 )H MOV BX, WORD PTR DA4 BX=( 0201 )H MOV BL, LEN AND 0FH BL=( )H MOV BL, LEN GT 5 BL=( 0FF )H MOV AX, LEN MOD 5 AX=( 0004 )H

5.MOV AX,99H MOV BL,88H ADD AL,BL JNC LP1

第 3 页 共 5 页

JO LP2 JMP LP3

程序段执行后,AX=( 0021 )H,CF=( 1 ),OF=(1 ),转向标号( lp2 )。

6.现有程序段如下:

MOV BL,AL MOV CL,4 SHR BL,CL MOV A,BL AND AL,0FH MOV B,AL

请回答:(1) 该程序段完成的功能是( 将al中前四位数值放进A里后四位放进B里 )。

(2) 如果AL的初值为56H,则执行完该程序段后,A=( 5 ), B=( 6 )。

三、程序实验题

用DEBUG调入PROG.EXE后,若程序列出如下:

1234:0100 MOV BX,[4000] 1234:0104 MOV AX,[BP] 1234:0106 MOV AH,1 1234:0108 INT 21 1234:010A MOV DL,AL 1234:010C MOV AH,2 1234:010E INT 21 1234:0110 RET

用DEBUG调入PROG.EXE后,列出上面程序的DEBUG命令是( u100 )。 寄存器CS的值为( 1234H )。

如果要修改寄存器BX为1200H,应键入DEBUG命令( r bx )。 若要修改第二条指令中的BP为BX,应键入DEBUG命令( a104 )。 若要查看DS:[4000]中的数据,应键入DEBUG命令( d ds:400 )。

第 4 页 共 5 页

如果从头运行程序使其停在RET指令处,应键入DEBUG命令( g=0 110 )。 如果执行DEBUG命令T=100后,寄存器IP=( 104 )。

如果执行DEBUG命令T=108后,寄存器 IP=( 21h中断入口地址 )。 从偏移地址为0106H处开始程序功能是( 键盘输入一个字符并回显 )。

四、程序设计题

1.编程实现计算下式:(X,Y均为数据段中的字节变量)。

Y=X ;X>=0时 Y=|X| ;X<0时

2.编写程序,从键盘输入一个字符串到BUFF缓冲区(缓冲区长度小于10),再输入一个字符到AL,在BUFF中查找是否存在该字符,如果找到,在屏幕上显示首次发现的字符位置,否则输出“NOT FOUND”。

答案:(课本例题6.8)

第 5 页 共 5 页

…… 此处隐藏:1202字,全部文档内容请下载后查看。喜欢就下载吧 ……
2014汇编复习题答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/606238.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)