汇编语言程序设计(第四版)第5篇【课后答案】.doc

汇编语言程序设计(第四版)第5篇【课后答案】.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计 第四版 【课后习题答案】 --囮裑為檤 第五章 高级汇编语言程序设计 5.1 条件表达式中逻辑与“”表示两者都为真,整个条件才为真,对于程序段: .if (X==5) (ax!=bx) inc ax .endif 请用转移指令实现上述分支结构,并比较汇编程序生成的代码序列。 cmp X, 5 ?????? je??? abc ?????? jmp?? done abc: cmp ax, bx ?????? jne?? cde ?????? jmp?? done cde: inc ax done:.... 5.2条件表达式中逻辑与“||”表示两者之一为真,整个条件就为真,对于程序段: .if (X==5) || (ax!=bx) inc ax .endif 请用转移指令实现上述分支结构,并比较汇编程序生成的代码序列。 cmp X, 5 ???????? je??? abc ???????? jmp?? done ???????? cmp ax, bx ???????? jne?? abc ???????? jmp?? done abc:??? inc ax done:?? .... 5.3、对于程序段: .while ax!=10 mov [bx],ax inc bx inc bx inc ax .endw 请用处理器指令实现上述循环结构,并比较汇编程序生成的代码序列。 5.4、对于程序段: .repeat mov [bx],ax inc bx inc bx inc ax .until ax==10 请用处理器指令实现上述循环结构,并比较汇编程序生成的代码序列。 5.5、宏是如何定义、调用和展开的? 宏名??? macro?? [形参表] ??????宏定义体 ?????? endm 宏调用时,利用宏名带上实参即可,格式如下: ??????宏名 [实参表] 5.6、宏定义中的形式参数有什么特点,它是如何进行形参和实参结合的? ??宏展开时的形参与实参结合是用位置匹配的实参对形参进行取代。实参个数与形参个数不同时,多余的实参没有作用,缺少的实参则用空格代替。取代时,不进行有效性等检查。 5.7、宏结构和子程序在应用中有什么不同,如何选择采用何种结构? ???子程序在执行阶段需要由主程序执行调用指令CALL进行调用,进而转入子程序执行,子程序执行结束执行返回指令RET返回主程序。子程序如果被多次使用,则会减少目标程序代码;主程序与子程序之间主要采用寄存器、存储单元、堆栈等传递参数。子程序适合于程序段较长或为减少目标代码的场合 5.8 没有。。。 5.9、对于例题5.5b的宏定义shrot,对应如下宏指令的宏展开是什么? shrot word ptr [bx],4,rorshrot word ptr [bx],4,ror 1???? push cx 1??? mov cl,4 1???? ror word ptr [bx],cl 1???? pop cx 5.10、定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test,注意需要利用3个形式参数,并给一个宏调用以及对应宏展开的例子。 logical???? macro lcode,dopd,sopd ??????????? lcode dopd,sopd ??????????? endm 例如,如果使用“and ax,[bx]”指令,可以利用该宏定义,写出宏指令如下: ???? logical and,ax,[bx] 初看起来,这个问题似乎比较难解决。实际上,这4条逻辑指令都具有相同的指令操作数格式,所以可以归纳为如上宏定义。 5.11 没有。。 5.12、编写一个宏指令move doprnd,soprnd,它实现任意寻址方式的字量源操作数送到目的操作数,包括存储单元到存储单元的传送功能。 move???? MACRO doprnd,soprnd ???? push ax ???? mov ax,soprnd ???? mov doprnd,ax ???? pop ax ???? ENDM 5.13; movstr?? strN,dstr,sstr ???????? lea si, sstr ???????? lea di, dstr ???????? mov cx, strN ???????? cld ???????? rep m

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档