欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    最新汇编语言程序设计第四版课后答案.doc

    • 资源ID:12284172       资源大小:49KB        全文页数:7页
    • 资源格式: DOC        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    最新汇编语言程序设计第四版课后答案.doc

    精品文档精品文档-囮裑爲檤对于程序对于程序段:汇编语言程序设计第四版【课后习题答案】第五章高级汇编语言程序设计5. 1条件表达式中逻辑与 “ &&表示两者都为真,整个条件才为真,段:.if (X=5) && (ax!=bx)inc ax.endif请用转移指令实现上述分支结构,并比较汇编程序生成的代码序列。解:cmp X, 5je abcjmp doneabc: cmp ax, bxjne cdejmp donecde: inc axdone:.5. 2条件表达式中逻辑与“|表示两者之一为真,整个条件就为真,.if (X=5) | (ax!=bx)inc ax.endif请用转移指令实现上述分支结构,并比较汇编程序生成的代码序列。 解:cmp X, 5je abcjmp donecmp ax, bxjne abcjmp doneabc: inc axdone: .5.3、对于程序段:.while ax!=10mov bx,axinc bxinc bxinc ax.endw请用处理器指令实现上述循环结构,并比较汇编程序生成的代码序列。5.4、对于程序段:.repeatmov bx,axinc bxinc bxinc axuntil ax=10请用处理器指令实现上述循环结构,并比较汇编程序生成的代码序列。5.5、宏是如何定义、调用和展开的?解:宏定义采用一对伪指令实现,格式如下(其中方括号表示可选):宏名 macro 形参表宏定义体endm宏调用时,利用宏名带上实参即可,格式如下: 宏名实参表5.6、宏定义中的形式参数有什么特点,它是如何进行形参和实参结合的?解:宏的参数功能非常强大,即可以没有参数,也可以带有一个或多个参数;而且 参数的形式非常灵活,可以是常量、变量、存储单元、指令或它们的一部分, 还可以是表达式等。宏展开时的形参与实参结合是用位置匹配的实参对形参进行取代。实参个数与 形参个数不同时,多余的实参没有作用,缺少的实参则用空格代替。取代时, 不进行有效性等检查。5.7、宏结构和子程序在应用中有什么不同,如何选择采用何种结构?解:宏汇编的特点是在汇编阶段进行语句展开,无需返回,不减少目标程序代 码,执行速度没有改变;通过形参、实参结合传递参数。宏汇编适合于程序段 较短或要求执行速度快的场合。子程序在执行阶段需要由主程序执行调用指令CALL进行调用,进而转入子程序执行,子程序执行结束执行返回指令 RET返回主程序。子程序如果被多次 使用,则会减少目标程序代码;主程序与子程序之间主要采用寄存器、存储单 元、堆栈等传递参数。子程序适合于程序段较长或为减少目标代码的场合5.8 没有。5.9、对于例题5.5b的宏定义shrot,对应如下宏指令的宏展开是什么?shrot word ptr bx,4,ror解: shrot word ptr bx,4,ror1 push cx1 mov cl,41 ror word ptr bx,cl1 pop cx5.10、 定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test,注意需 要利用3个形式参数,并给一个宏调用以及对应宏展开的例子。解: logical macro lcode,dopd,sopdlcode dopd,sopdendm例如,如果使用“ and ax,bx指令,可以利用该宏定义,写出宏指令如下:logical and,ax,bx初看起来,这个问题似乎比较难解决。实际上,这4条逻辑指令都具有相同的指令操作数格式,所以可以归纳为如上宏定义。5.11没有。5.12、编写一个宏指令move doprnd,soprnd它实现任意寻址方式的字量源操作 数送到目的操作数,包括存储单元到存储单元的传送功能。解:move MACRO doprnd,soprndpush axmov ax,soprndmov doprnd,axpop axENDM5.13;movstr strN, dstr,sstrlea si, sstrlea di, dstrmov cx, strNcldrep movsbendm5.14;ABSDIF Pl ,P2, DISTANCE ABSDIF BX , SI, DI1 push ax1 mov ax,P11 sub ax,P21 cmp ax,01 jge ? 00001 neg ax1 ? 0000答:1 push ax1 mov ax,bx1 sub ax,si1 cmp ax,01 jge ? 00001 neg ax1 ? 00001 mov DISTANCE, ax1 mov di,ax1 pop ax1 pop ax5.15; wtemp =2 repeat 100 dw 0dw wtemp wtemp =wtemp+2endm5.18; DOS21H MACRO callnum,calladdress mov ah,callnumifnbmov dx,calladdressendif int 21hENDM5.22; 1.编写主程序,并进行汇编产生 OBJ模块;2. 编写独立的子程序,也进行汇编产生 OBJ模块;3. 分别编写主程序与子程序时,需要处理好共用变量、过程、逻辑段属性、参 数传递等问题;4. 利用连接程序将主程序模块和子程序模块连接起来,形成完整的可执行程序 5.28;数据段 table dw 2277,2138,1808,1709,1522,1356,1208,1139;对应中音1 7和高音i的定时器记数值;代码段;设置定时器2工作方式;等待按键;判断是否为数字18mov al,0b6hout 43h,alaga in: mov ah,1int 21hcmp al, ' 1'jb n extcmp al, ' 8' ja n extsub al,30h;18的ASCII码转换为二进制数sub al,1;再减1,将数字18变为07,以便查表xor ah,ahshl ax,1;乘以 2mov bx,ax;记数值表是16位数据,无法采用xlat指令mov ax,tablebx;取出对应的记数值out 42h,almov al,ah;设置定时器2的记数值out 42h,alin al,61h;打开扬声器声音or al,03h;使D1D0= PB1PB4 11b,其他位不变out 61h,aljmp aga in;连续发声,直到按下另一个键n ext: push axin al,61h;不是数字18,则关闭扬声器声音and al,Ofch;使 D1DB PB1PB4 00b,其他位不变out 61h,alpop axcmp al,1bh;判断是否为ESC键(对应ASCII码1bh)jne again;不是ESC继续;否则程序执行结束如果其中没有,表示没有答案出来。00

    注意事项

    本文(最新汇编语言程序设计第四版课后答案.doc)为本站会员(scccc)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开