- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 高级汇编语言技术 主讲人:××× 10.1 宏汇编 在编写汇编语言程序的过程中,有的某个程序段要出现许多次,有的只是参数不同,但功能完全一样,则这样的程序段可以定义成一个指令,并且称它为宏指令。 10.1.1宏定义 宏是源程序中一段有独立功能的程序代码。它只需要在源程序中定义一次,就可以多次定义它,调用时只需用一个宏指令语句就可以了。 若想在汇编语言中使用宏指令,就要定义一个宏。宏定义是用一组伪操作来实现的。宏定义格式为: 宏指令名 MACRO 形参1,形参2,… ┇ 宏体 ENDM 宏指令名:宏定义的名字,不可缺省,宏调用时需要用它,第一个符号必须是字母,其后可以是字母或数字。 MACRO…ENDM:宏定义伪指令助记符,不可缺省。它们成对出现,表示宏定义的开始和结束,ENDM前不带宏指令名。 宏体:一段有独立功能的程序代码段。 形式参数:又称哑元、虚参,是可选项,带参数时候,各个形参之间用逗号隔开。 10.1.2 宏调用和宏展开 1、宏调用 在汇编语言中使用已定义过的宏指令,称为宏调用。宏调用格式为: 宏指令名 实参1,实参2,… 宏调用只需要有宏指令名,如果宏定义中有形参,则宏调用时须带有实参来代替形参,实参的个数,顺序,类型要与形参一一对应,各个实参之间用逗号分开。原则上实参的个数与形参的个数相等,但汇编程序不要求它们必须相等,如果实参个数大于形参个数,那么多余的实参不予考虑,若实参个数小于形参,则多余的形参作“空”处理。 2、宏展开 汇编程序在对源程序汇编时,对每个宏调用作宏展开,即用宏定义中的宏体取代宏指令名,并用实参一一对应代替形参。 10.1.3 宏调用中的参数使用 为了宏定义和引用的某些特殊需要,有的实参是由字符、空格等特殊符号组成的,因此汇编程序支持几个具有特定含义的操作符。 1、连接操作符 在宏定义中,如果形式参数与其它字符连接在一起,或形式参数出现在字符串之中,使用连接操作符。在宏指令定义的具体使用时,连接操作符可以在形参的前面,也可在形参的后面。在宏指令展开时,对应形参的实参就与它前面或后面的符号连接在一起构成一个新的符号。 2、文本操作符 文本操作符是一对尖括号,用它括起来的内容将作为一个字符串来进行形式参数的整体替换。在宏引用时,如果实参内包含逗号、空格等间隔符,则需要使用该操作符,以保证实参的完整性。如果实参是某个具有特殊含义的字符,为了使它只表示该字符本身,也需要用该操作符括起来。 3、表达式操作符% 进行宏调用时,如要在实参中使用“%”,则在宏指令调用时汇编程序将获取“%”后常数表达式的值作为参数,而非表达式本身。 4、字符操作符! 字符操作符!的作用说明,“!”后的字符不是特殊字符,而是普通字符。对于包含在“”、“”、“!”、“%”之间的文本串,汇编程序将以普通字符处理。如将“!”作为普通字符,则使用!!。 10.1.4 宏嵌套 宏指令定义中含有宏定义或者是宏指令定义中含有宏调用,这两种情况都称为宏嵌套。 宏定义中嵌套宏定义形式如下: ABCD_1 MACRO ┇ ABCD_2 MACRO ┇ ENDM ┇ ENDM ENDM 10.1.5 宏汇编中的伪指令 1、MACRO和ENDM 在前面的宏指令的定义中已经介绍过,这是宏操作时必不可少的指令,而且成对出现。 2、PURGE PURGE的功能是取消多个宏定义,即一个宏指令定义可以用伪指令PURGE来取消,然后可以再重新定义。经过定义的宏指令名,不允许重新定义,必须用PURGE语句将其取消后,才能重新定义,此语句可以取消多个宏指令名。 格式: PURGE 宏指令名1,宏指令名2,… 取消宏定义的含义是使该宏定义成为空,程序中如果出现一个已被取消宏定义的宏调 用,则汇编程序将不会指示出错,但它将忽略该宏调用,当然也不会予以展开。 3、LOCAL 某些宏定义中存在变量或标号,这些宏定义在同一程序中被多次调用且展开后,就会出现变量或标号重复定义的错误。LOCAL伪指令的使用可以避免此类错误。在宏展开时,让宏汇编程序自动为其后的形参顺序生成特殊符号(范围为??000
您可能关注的文档
- 汇编语言第1章 基础知识.ppt
- 汇编语言第2章 Intel 80x86汇编语言编程结构.ppt
- 汇编语言第3章 寻址方式.ppt
- 汇编语言第4章 DEBUG调试.ppt
- 汇编语言第5章 8086 CPU指令系统.ppt
- 汇编语言第6章 汇编语言程序格式和上机调试.ppt
- 汇编语言第7章 汇编语言基本结构与程序设计.ppt
- 汇编语言第8章 子程序及模块化程序设计.ppt
- 机电控制技术第八章.ppt
- 机电控制技术第九章.ppt
- XX T 1149.11-2010 内燃机 活塞环 第11部分:楔形铸铁环正式版.doc
- XX T 1149.13-2008 内燃机 活塞环 第13部分:油环正式版.doc
- XX T 1149.12-2013 活塞环楔形钢环正式版.doc
- 人教版高中生物必修2全册教学课件.pptx
- 2025年春新北师大版8年级物理下册全册课件.pptx
- 2024年新人教版8年级上册物理全册课件.pptx
- (新统编版)语文三年级下册 第一单元 大单元教学 课件(共9课时).pptx
- 八年级语文下册第六单元24醉翁亭记课件省公开课一等奖新课获奖课件.pptx
- 八年级物理上册第六章质量与密度章末整理与复习习题省公开课一等奖新课获奖课件.pptx
- 外研版三年级英语下册期末复习单词专项.pptx
最近下载
- 2025年湖南科技职业学院单招职业适应性测试题库及参考答案一套.docx VIP
- 2025年苏州工业园区服务外包职业学院高职单招职业技能测验历年参考题库频考版含答案解析.docx
- 2024年长沙电力职业技术学院单招职业技能测试题库及答案解析.docx VIP
- 2024-2025人教版部编版小学语文1一年级下册全册课件.ppt
- ASTM B488-18_工程用电镀金层标准指南(中文).pdf
- 广东省2025届高三高考化学模拟卷2(附答案解析).pdf VIP
- 2.15 GB_T 12241-2005 安全阀一般要求.pdf
- 职业技能大赛:中式烹调师(二级)理论知识考核要素细目表(征求意见稿).docx VIP
- 2025年中国干散货船行业市场全景评估及发展战略规划报告.docx
- 生涯发展报告书.pdf
文档评论(0)