- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机]汇编课件
第7章 高级汇编语言技术 7.1 宏汇编 7.2 重复汇编 7.3 条件汇编 7.1 宏汇编 7.1.1 宏定义、宏调用和宏展开 7.1.2 宏定义中的参数 7.1.3 LOCAL伪操作 7.1.4 在宏定义中使用宏 7.1.5 列表伪操作 7.1.6 宏库的建立与调用 7.1.7 PURGE伪操作 7.1.1 宏定义、宏调用和宏展开 宏是源程序中一段有独立功能的程序代码。 宏定义是用一组伪操作来实现的,定义后的指令叫宏指令,其格式为: macro name MACRO [dummy parameter list] ┆ ENDM 其中dummy parameter list称为哑元表。 宏调用与宏展开 定义后的宏指令就可以在源程序中调用,称为宏调用。宏调用的格式为: macro name [actual parameter list] 其中actual parameter list称为实元表。 当源程序被汇编时,汇编程序将对每个宏调用做宏展开。宏展开就是用宏定义体取代源程序中的宏指令名,而且用实元取代宏定义中的哑元。 【例7.1】用宏指令定义2个字操作数相乘,得到一个字作为结果 宏定义: MULTIPLY MACRO OPR1,OPR2,RESULT PUSH DX PUSH AX MOV AX,OPR1 IMUL OPR2 MOV RESULT,AX POP AX POP DX ENDM 宏调用: MULTIPLY CX,VAR,XYZ[BX] MULTIPLY 240,BX,SAVE 7.1.2 宏定义中的参数 【例7.2】宏定义可以无变元 【例7.3】变元可以是操作码 【例7.4】【例7.5】变元可以是操作码的一部分,为分隔符 【例7.6】变元可以是ASCII串 【例7.7】%的使用 【例7.2】宏定义可以无变元 宏定义: SAVEREG MACRO PUSH AX PUSH BX PUSH CX PUSH DX PUSH SI PUSH DI ENDM 宏调用: SAVEREG 【例7.3】变元可以是操作码 宏定义: FOO MACRO P1,P2,P3 MOV AX,P1 P2 P3 ENDM 宏调用: FOO WORD_VAR,INC,AX 宏展开: 1 MOV AX,WORD_VAR 1 INC AX 【例7.4】变元可以是操作码的一部分,但在宏定义体中必须用作为分隔符. 宏定义: LEAP MACRO COND,LAB JCOND LAB ENDM 宏调用: LEAP Z,THERE LEAP NZ,HERE 宏展开: 1 JZ THERE 1 JNZ HERE 【例7.5】 宏定义: FO MACRO P1 JMP TAP1 ;这里不能写成JMP TAP1 ENDM 宏调用: FO WORD_VAR 宏展开: 1 JMP TAWORD_VAR 【例7.6】变元可以是ASCII串 宏定义: MSGGEN MACRO LAB,NUM,XYZ LABNUM DB ‘HELLO MR.XYZ’ ENDM 宏调用: MSGGEN MSG,1,TAYLOR 宏展开: 1 MSG1 DB ‘HELLO MR.TAYLOR’ 7.1.3 LOCAL伪操作 【例7.8】宏定义体中允许使用标号 ABSOL MACRO OPER CMP OPER,0 JGE NEXT NEG OPER NEXT: ENDM 如果程序中多次调用该宏定义,则展开时会出现标号的重复定义,这是不允许的。为此系统提供了LOCAL伪操作,其格式为: LOCAL list of local labels 本例应定义为: ABSOL MACRO OPER LOCAL NEXT CMP OPER,0 JGE NEXT
您可能关注的文档
- [计算机]建立中国炼化行业的本质安全设计管理框架.pdf
- [计算机]广西交通运输学校积极探索职业教育新路子.pdf
- [计算机]当代O+智能家居整合平台系统功能架构图B版.doc
- [计算机]广联达40实用教程.doc
- [计算机]微软CRM最好实施方法.pdf
- [计算机]微机原理实验一 汇编语言编程及调试1 PPT.ppt
- [计算机]怎样保养延长电脑硬盘的寿命.doc
- [计算机]性能测试工具对比.doc
- [计算机]性能测试人员面试经典技术问题.pdf
- [计算机]性能测试模型.doc
- 中国国家标准 GB/T 5211.9-2025颜料和体质颜料通用试验方法 第9部分:相同类型着色颜料耐光性的比较.pdf
- 《GB/T 5211.9-2025颜料和体质颜料通用试验方法 第9部分:相同类型着色颜料耐光性的比较》.pdf
- 《GB/T 37228-2025安全与韧性 应急管理 突发事件管理指南》.pdf
- GB/T 23724.3-2025起重机 检查 第3部分:塔式起重机.pdf
- 中国国家标准 GB/T 25163-2025防止儿童开启包装 可重新盖紧包装的要求与试验方法.pdf
- 《GB/T 25163-2025防止儿童开启包装 可重新盖紧包装的要求与试验方法》.pdf
- GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射.pdf
- 中国国家标准 GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射.pdf
- 《GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射》.pdf
- GB/T 11349.2-2025机械振动与冲击 机械导纳的试验确定 第2部分:用激振器作单点平动激励测量.pdf
最近下载
- 宾馆装修改造项目立项建议书.doc VIP
- 悬臂法挂篮施工监测方案.docx VIP
- 财税大楼装修项目建议书.doc VIP
- XXX教学楼装修改造项目建议书.pdf VIP
- 提高胸外科患者肺功能锻炼的依从性品管圈汇报书ppt.pptx
- 2025广西百色工业投资发展集团有限公司招聘27人笔试参考题库附答案解析.docx VIP
- 2025国内短剧行业市场规模、出海短剧市场机遇及未来短剧制作方向分析报告.pptx VIP
- 2025广西百色工业投资发展集团有限公司招聘27人考试备考题库及答案解析.docx VIP
- 2025广西百色工业投资发展集团有限公司招聘27人笔试备考试题及答案解析.docx VIP
- 小升初语文成语错别字专项练习.pdf VIP
文档评论(0)