汇编语言程序设计83条件汇编伪指令.PPT

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计83条件汇编伪指令

第8章 高级语言汇编技术 ◆ 宏汇编 ◆ 重复汇编 ◆ 条件汇编伪指令    8.1 宏汇编 在编写汇编语言程序的过程中,有时某个程序段要出现许多次,有时只是参数不同,但功能完全一样,则这样的程序段可以定义成一个指令,并且称它为宏指令。 8.1.1 宏定义 若想在汇编语言中使用宏指令,就要定义一个宏。按照是否使用参数,可以将宏指令分为如下两种格式。 1.?不带参数的宏定义 宏指令名 MACRO ┇ 宏体 ENDM 8.1.4 宏嵌套 宏指令定义中还含有宏定义或者是宏指令的定义中含有宏调用,这两种情况都称为宏嵌套。 1. 宏定义中嵌套宏定义 ABCD_1 MACRO ┇ ABCD_2 MACRO ┇ ENDM ┇ ENDM 【例8.4】宏指令定义中嵌套宏定义实例 INIT_1 MACRO X,Y,Z SHIFT_Y MACRO MOV CL,X SZ Y,CL ENDM ENDM 如采用下面的宏调用: INIT_1 2,BX,AR ;即将BX算术右移2位的宏指令 则相应的宏展开为: + SHIFT_BX MACRO + MOV CL,2 + SAR BX,CL + ENDM 8.1.5 宏汇编中的伪指令 1. MACRO和ENDM 在前面的宏指令的定义中已经介绍过,这是宏操作时必不可少的指令,而且成对出现。 2.PURGE PURGE的功能是取消多个宏定义,即一个宏指令定义可以用伪指令PURGE来取消,然后就再重新定义。 格式: PURGE 宏指令名1 ,宏指令名2…… 取消宏定义的含义是使该宏定义成为空,程序中如果出现一个已被取消宏定义的宏调 用,则汇编程序将不会指示出错,但它将忽略该宏调用,当然也不会予以展开。 3.LOCAL 某些宏定义中存在变量或标号,这些宏定义在同一程序中被多次调用且展开后,就会出现变量或标号重复定义的错误。LOCAL伪指令的使用可以避免此类错误。在宏展开时,让宏汇编程序自动为其后的形参顺序生成特殊符号(范围为??0000—??FFFFH),并用这些特殊符号来取代宏体中的形参,避免了符号重复定义的错误。 格式: LOCAL 形参1,形参2 8.1.6 宏库 有些宏指令在应用过程中效果较好,因此在以后的汇编语言编程时就不必每次在源程序中重复编制一个宏指令定义,这样也可减少重复编写时的错误,可以把几个宏定义组成一个宏库,以文件形式供其它源程序调用。 8.2 重复汇编 8.2.1 使用REPT伪指令的重复汇编结构 指令格式: REPT 表达式 ┇ 重复语句序列 ENDM 指令以REPT开始,ENDM结束。其中,表达式是REPT与ENDM中间的语句序列需要重复的次数,可以是具体数值,表达式中不能包含有任何外部的或没有定义的项,否则产生错误。 例 REPT重复汇编结构举例 Y=20 REPT 5 Y=Y+10 DB Y ENDM 经汇编后结果如下: DB 30 DB 40 DB 50 DB 60 DB 70 8.2.2 使用IRP伪指令的重复汇编结构 8.2.3 使用IRPC伪指令的重复汇编结构 指令格式: IRPC 形参,字符串 ┇ 重复语句序列 ENDM 每当汇编重复语句序列时,汇编程序将依次用字符串中的一个字符替代形参,直到字符串中的字符替代完毕。重复次数由字符串中字符个数来确定。IIRPC伪指令的形参也只能有一个。 【例8.9】 IRPC重复汇编结构举例 IRP

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档