宏汇编汇编语言第5章.ppt

宏汇编汇编语言第5章.ppt

ID:52307286

大小:290.51 KB

页数:34页

时间:2020-04-04

宏汇编汇编语言第5章.ppt_第1页
宏汇编汇编语言第5章.ppt_第2页
宏汇编汇编语言第5章.ppt_第3页
宏汇编汇编语言第5章.ppt_第4页
宏汇编汇编语言第5章.ppt_第5页
资源描述:

《宏汇编汇编语言第5章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章 结构化程序设计教学要求:•理解宏汇编的概念和作用。•掌握宏汇编的编程技术。教学要求:•理解宏汇编的概念和作用。•掌握宏汇编的编程技术。教学要求:•理解宏汇编的概念和作用。•掌握宏汇编的编程技术。教学要求:•理解宏汇编的概念和作用。•掌握宏汇编的编程技术。教学要求:•理解宏汇编的概念和作用。•掌握宏汇编的编程技术。5.1子程序的概念5.2子程序的定义、调用和返回**5.3子程序的现场保护与参数传递**5.4子程序设计*5.5子程序的嵌套与递归调用5.6宏汇编程序设计教学基本内容什么是宏?宏是源程序中一段有独立功能的程序代码。它只需在

2、源程序中定义一次就可以多次调用它,调用时,只需要用一个宏指令语句就可以了宏(Macro)是汇编语言的一个特点,它是与子程序类似又独具特色的另一种简化源程序的方法5.6宏结构程序设计宏汇编重复汇编条件汇编宏结构一、宏汇编内容宏定义宏调用宏展开1、宏定义宏名macro[形参表]┇;宏指令体(宏体)endm(1)宏名(宏指令名):给出该宏定义的名称(第一个符号必须是字母)。(2)macro/endm系统提供的定义宏的伪指令。(3)形参表:给出宏定义中所用到的形式参数,参数可以没   有,或带有一个或是多个,当是多个参数时,每个形参之间需用逗号隔

3、开。具体参数可以是常数、变量、指令或它们的一部分,也可以是表达式。(4)宏指令体:一组有独立功能的汇编程序代码。其中可以包括指令、伪指令及宏指令等。1、宏定义(续)fillsegmacroDsegname;带有形参Dsegnamemovax,Dsegname;宏定义中使用参数movds,axendm;宏定义结束举例:思考:此处的形参Dsegname是什么?Dsegname是数据段的段名2、宏调用宏名[实参表];调用时,只需使用宏指令名来调用该宏定义例如:对上面的宏定义的调用形式为:┆FILLSEGDATA;DATA为数据段的段名┆说明:(

4、1)汇编时,汇编程序对每个宏调用作宏展开–––用宏定义体取代源程序中的宏指令名,用实参代替宏定义中的形参。取代时,实参和形参是一一对应的。若实参个数>形参个数,则多余实参不考虑,若实参个数<形参个数,则多余形参作“空”处理。(2)取代后,所得到的语句应该是有效的,否则汇编程序将会指示出错。(3)每调用一次就把宏定义体展开一次,因而它占有的存储空间与调用次数有关。3、宏展开宏调用的实质是在汇编过程中进行宏展开宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用时,即用相应的宏定义体取代源程序的宏指令,同时用位置匹配的实参对形参进行取

5、代。1MOV AX,DATA1MOV DS,AX例如:上面的宏调用,其展开形式为:宏汇编应用举例 例5-9datasegmentbuf1db0dh,0ah,'whatareyourname?$'buf2db0dh,0ah,'mynameisliyang!$'dataendscodesegmentassumeds:data,cs:codestart:movax,datamovds,axdispmacromleadx,mmovah,9int21hendmdispbuf1dispbuf2movah,4chint21hcodeendsendsta

6、rt宏汇编应用举例 例5-17P148multiplymacroopr1,opr2,result;定义宏pushdxpushaxmoval,opr1imulopr2movresult,axpopaxpopdxendmdatasegmentadb3bdw?dataendsstacksegmentstackdb200dup(0)stackendscodesegmentassumeds:data,cs:code,ss:stackstart:movax,datamovds,axmovcl,2movbx,0multiplycl,a,b[bx];宏调

7、用movdx,b[bx]adddl,30hmovah,2int21hmovah,4chint21hcodeendsendstart宏——具有宏名的一段汇编语句序列——宏定义时书写宏指令——这段汇编语句序列的缩写——宏调用时书写宏展开——宏指令处用这段宏代替的过程——宏汇编时实现宏的参数功能强大,颇具特色思考:在汇编语言程序设计过程中,可以将具有一定功能,需多次重复使用,且比较短的程序段定义成一条宏指令。使用宏指令语句可以减少程序书写错误,缩短源程序长度,使源程序编写像高级语言一样清晰、简洁。特别是使用宏库后,可以提高编程效率。在什么情况下

8、使用宏?为什么要使用宏?比较仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变通过形参、实参结合实现参数传递,简捷直观、灵活多变还是目标程序级的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。