- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编语言第5章作业答案
习题5
1.试说明以下指令中各操作数的寻址方式,如果是存储器寻址,请给出其EA计算公式,并说明所使用的段寄存器。
(1)MOV AL,08H 源操作数:立即数寻址 目的操作数:寄存器寻址
(2)MOV [0120H],BL 源操作数:寄存器寻址 目的操作数:直接寻址,
EA=0120H,使用DS段寄存器
(3)ADD [BX],AL 源操作数:寄存器寻址 目的操作数:寄存器间接寻址,
EA=(BX),使用DS段寄存器
(4)PUSH [SI]0200H 源操作数:变址寻址,EA=(SI)+0200H,使用DS段寄存器
目的操作数:隐含寻址(指令中未直接体现)
(5)SUB AX,[BP] 源操作数:寄存器间接寻址,EA=(BP),使用SS段寄存器
目的操作数:寄存器寻址
(6)AND VAR1+4,DL 源操作数:寄存器寻址
目的操作数:直接寻址,EA=VAR1+4,使用DS段寄存器
(7)PUSHF 源操作数、目的操作数均为隐含寻址
(8)MOV ES : [BX]0100H, AL 源操作数:寄存器寻址
目的操作数:基址寻址,EA=(BX)+0100H,用ES段寄存器
(9)ADC BYTE PTR [BP][SI]0210H,45H
源操作数:立即数寻址
目的操作数:基址变址寻址,EA=(BP)+(SI)+0210H,使用SS段寄存器
(10)OR ARRY[BX][DI],CL
源操作数:寄存器寻址
目的操作数:基址变址寻址,EA=(BX)+(DI)+ARRY,使用DS段寄存器
2.试分析下列汇编指令是否存在语法错误,如果有语法错误存在,请说明是怎样的错误。
(1)PUSH 8243H
错误,单操作数指令不能使用立即数
(2)POP AL
错误,进栈、出栈指令的操作数应为16位
(3)MOV AL,6543H
错误,源、目的操作数类型不匹配
(4)ADD [0100H],64H
错误,目的操作数应使用PTR运算符指出类型,否则具有二义性
正确的写法:ADD BYTE PTR [0100H],64H,(或使用WORD PTR)
(5)ADC VAR1,VAR2
错误,8086指令系统的双操作数指令中,必须有一个是寄存器,不能两个操作数同为内存单元
(6)MOV DS,ES
错误,段寄存器间不能使用MOV指令直接传递数据,必须通过通用寄存器作为中转
(7)MOV DS,0620H
错误,使用MOV指令向段寄存器传递数据时,不能使用立即数
(8)LEA BX,AX
错误,LEA指令的源操作数必须为内存单元
(9)DEC AL,AH
错误,DEC指令为单操作数指令
(10)SHR BL,3
错误,当移位次数大于1时,在移位指令中特定使用CL寄存器给出移位次数
正确的写法:MOV CL, 3
SHR BL, CL
3.试说明分别执行下列各组指令后,CF、OF、AF、ZF、SF、PF这六个状态标志分别是怎样的取值。
(1)MOV AL,08H
ADD AL,0F9H
CF=1; OF=0; AF=1; ZF=0; SF=0; PF=0
(2)MOV AL,0E1H
ADD AL,0F4H
CF=1; OF=0; AF=0; ZF=0; SF=1; PF=0
(3)MOV AL,01H
SUB AL,02H
CF=1; OF=0; AF=1; ZF=0; SF=1; PF=1
(4)MOV AL,02H
INC AL
CF维持MOV指令前的取值 (INC指令不影响CF);OF=0; AF=0; ZF=0; SF=0; PF=1
(5)MOV AL,01H
AND AL,02H
CF=OF=0; AF不确定; ZF=1; SF=0; PF=1
4.按要求分析下面程序片段的执行结果。
MOV AL,0C2H
MOV AH,0E4H
ADD AL,AH
执行该程序片段后,(AL)=?,(AH)=?,如果将ADD指令的两个操作数解释为无符号数,运算有没有溢出?为什么?如果将ADD指令的两个操作数解释为补码,运算有没有溢出?为什么?
答:执行该程序片段后,(AL)=0A6H,(AH)=0E4H,如果操作数解释为无符号数,运算溢出,因为加法运算后最高位产生了进位,CF=1,需使用9个二进制位才能表达完整运算结果;如果将操作数解释为补码,则运算没有溢出,因为从操作数与运算结果的符号位观察,两个操作数均为负数补码,相加后所得结果仍然为负数补码,符号位正确,表明加法结果未超出补码表示范围(这里是8位补码的表示范围),加法运算后OF=0。
5.按要求分析下面程序片段的执行结果。
MOV AL,9
您可能关注的文档
最近下载
- 高级日语(三)第08課 携帯上司 8課内容理解1.ppt VIP
- 全麻术后导尿管相关膀胱刺激征的管理.pptx VIP
- 精选洗车场租赁协议2024年通用.docx VIP
- 国家中小学智慧教育平台的应用培训(OCR).pdf VIP
- 鲁宾逊漂流记:英汉对照版-英DanielDefoe.pdf VIP
- 伤口造口护理.pptx VIP
- UFDEV_PHASE_1_5_5_项目客户化开发推进计划.xls VIP
- 2024-2025学年高一数学必修一《第一章 集合与常用逻辑用语》测试卷附答案解析.pdf VIP
- 某电厂引风机拆除安装实施方案.doc VIP
- 口语交际--有趣的动物及口语交际《有趣的动物》教案.doc VIP
文档评论(0)