2014汇编复习题答案
一.填空题
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字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高等教育]公司协助某村精准扶贫工作总结.doc
- [高等教育]高二生物知识点总结(全)
- [高等教育]苏教版数学三年级下册《解决问题的策略
- [高等教育]仪器分析课程学习心得
- [高等教育]2017年五邑大学数学与计算科学学院333
- [高等教育]人教版七年级下册语文第四单元测试题(
- [高等教育]2018年秋七年级英语上册Unit7Howmuchar
- [高等教育]2017年八年级下数学教学工作小结
- [高等教育]湖南省怀化市2019届高三统一模拟考试(
- [高等教育]四年级下册科学_基础训练及答案教材
- [高等教育]城郊煤矿西风井管路伸缩器更换施工安全
- [高等教育]昆八中20182019学年度上学期期末考试
- [高等教育]项目部各类人员任命书
- [高等教育]上市公司经营水务产业的模式
- [高等教育]人教版高二化学第一学期第三章水溶液中
- [高等教育]【中考物理第一轮复习资料】四.压强与
- [高等教育]金坑水电站报废改建工程机电设备更新改
- [高等教育]高中生物教学工作计划简易版
- [高等教育]2017年西华大学攀枝花学院(联合办学)44
- [高等教育]最新整理超短爆笑英文小笑话大全
- 优秀教师继续教育学习心得体会
- 阳历到阴历的转换
- 留守儿童教育案例分析
- 华师17春秋学期《玩教具制作与环境布置
- 测速传感器新型安装装置的现场应用
- 人教版小学数学三年级下册第四单元
- 创业个人意向书
- 山东省潍坊市2012年高考仿真试题(三)
- [恒心][好卷速递]四川省成都外国语学校
- 多少人错把好转反应当成了病情加重处理
- 中外广播电视史复习资料整理
- 江苏省扬州市江都区宜陵镇中学2014-201
- 工程造价专业毕业实习报告
- 广西师范学院心理与教育统计
- aympkrq基于 - asp的博客网站设计与开
- 建筑业外出经营相关流程操作(营改增后
- 人治 德治 法治
- [精华篇]常识判断专项训练题库
- 中国共产党为什么要实行民主集中
- 小学数学第三册第一单元试卷(A、B、C




