第5章作业答案(2)
(1)MOV AL,[0200H] 执行该程序片段后,(AL)=?
答:源操作数地址为(DS)*16+0200H=10000H+0200H=10200H, 因此执行该程序片段后,(AL)=70H (逆序存放,低地址对应低数据位)
(2)MOV BP,0871H MOV BL,[BP] 执行该程序片段后,(BL)=?
答:第二条指令的源操作数地址为(SS)*16+(BP)=20871H,执行该程序片段后,(BL)=02H (逆序存放,高地址对应高数据位)
(3)LEA SI,[0200H] 执行该程序片段后,(SI)=?
答:LEA指令将源操作数的EA传送到目的操作数保存,(SI)=0200H
(4)MOV SI,[0200H] LEA SI,[SI] 执行该程序片段后,(SI)=?
答:MOV指令中源操作数地址为(DS)*16+0200H=10200H,执行后(SI)=0870H,第二条指令源操作数的EA直接为(SI)=0870H,执行后仍有(SI)=0870H。
(5)LDS BX,[0200H] MOV AL,[BX]0002H 执行该程序片段后,(AL)=?
答:LDS指令中源操作数地址为(DS)*16+0200H=10200H,将(10200H)字单元内容传
递到BX保存,将(10202H)字单元内容传递到DS保存,执行后(BX)=0870H,(DS)=2000H;MOV指令中源操作数地址为(DS)*16+(BX)+0002H=20872H,执行后(AL)=05H。
8.按要求分析下面程序片段的执行结果。 MOV AX,651CH SHL AL,1 RCL AH,1
执行该程序片段后,(AX)=?,该程序片段的功能是什么?如果将(AX)解释为无符号数,那么运算是否溢出?为什么?如果将(AX)解释为补码,运算是否溢出?为什么?SHL与SAL指令间有什么关联和区别?
答:执行该程序片段后,(AX)=0CA38H,该程序片段的功能为将AX中的16位编码左移1位,等价于乘以2(也可理解为自加一次)。如果将(AX)解释为无符号数,那么运算没有溢出,因为最后一次移位操作后,最高移出位为0,即CF=0(自加完成后最高位无进位);如果将(AX)解释为补码,运算溢出,因为移位前后(AX)的最高位发生了变化(由0变为1),符号位在运算中丢失,可以理解为自加运算结果超出了16位补码表示范围。
SHL与SAL指令本质上对应同一条机器指令,在功能上并无区别,因为无符号数与补码的左移操作是完全相同的,但为了指令系统设计的规整性,在汇编指令中将它们区分开,SHL针对无符号数左移,SAL针对补码左移。
9.按要求分析下面程序片段的执行结果。 MOV AL,35H AND AL,0FH
执行该程序片段后,(AL)=?CF、OF、AF、ZF、SF、PF标志取值是什么?该程序片段的功能是什么?
答:执行该程序片段后,(AL)=05H,CF=0;OF=0;AF不确定;ZF=0;SF=0;PF=1;该程序片段的功能是将(AL)中的低4位数据分离出来,屏蔽高4位。
10.假设一个48位的补码按照由低位到高位的顺序保存在字类型的内存单元VA1、VA1+2、VA1+4中,试按下列要求完成程序片段设计。(红字部分请在教材中纠正)
(1)设计程序片段,实现将该48位补码除以4的功能,运算结果仍然保存在原内存单元中。 解:
SAR VA1+4, 1 RCR VA1+2, 1 RCR VA1, 1 SAR VA1+4, 1 RCR VA1+2, 1 RCR VA1, 1
(2)设计程序片段,求该48位补码的相反数补码,运算结果仍然保存在原内存单元中。 解: NOT VA1 NOT VA1+2 NOT VA1+4 ADD VA1, 1 ADC VA1+2, 0 ADC VA1+4, 0
11.试说明如何使用CMP指令提供的标志位判断两个补码操作数大小关系的原理。
答:请参考本章关于比较指令(CMP)中的详细介绍加以说明。
12.假设(SP)=0060H,执行两次PUSH指令后,(SP)=?假设(SP)=0038H,执行三次POP指令后,(SP)=?
答:执行两次PUSH指令后,(SP)= 005CH;执行三次POP指令后(SP)
=0038H+0002H*3=0038H+0006H=003EH
13.按要求分析下面程序片段的执行结果。 MOV AL,01H NEG AL INC AL
执行该程序片段后(AL)=?,CF、OF标志的状态是什么?
答:执行该程序片段后(AL)=0,CF=1,注意,这是受NEG指令影响的结果,INC指令不影响CF标志;OF=0,加法运算并无溢出,因为0FFH为-1的补码,加1后等于0是正确的。
14.按要求分析下面程序片段的执行结果。 MOV BL,51H AND BL,0FEH XOR BL,50H DEC BL
执行该程序片段后(BL)=?,CF、OF标志的状态是什么?
答:执行该程序片段后(BL)=0FFH,CF=0,注意,这是受XOR指令的影响,XOR指令将CF强置为0,而DEC指令不影响CF;OF=0,此标志是受DEC指令影响的结果。此题中应注意,逻辑运算指令会将CF、OF强置为0,而DEC指令不影响CF标志。
15.按照各小题的要求分别设计程序片段。
(因存在多种设计方式,程序设计题目的答案仅作为参考)
(1)将AL寄存器的高4位与低4位交换
MOV CL, 4 ROL AL, CL
(2)将TF标志位置1 PUSHF POP AX OR AX, 0100H PUSH AX POPF
(3)将AL寄存器的第7位清0,但不影响其它数据位
AND AL, 7FH
(4)分离AL寄存器的最低两位,其它数据位清0。
AND AL, 03H
(5)分离AL寄存器的高4位与低4位,并分别保存在BL、BH的低4位
PUSH AX AND AL, 0FH MOV BL, AL POP AX AND AL, 0F0H MOV CL, 4 ROL AL, CL MOV BH, AL
…… 此处隐藏:710字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




