网站大量收购独家精品文档,联系QQ:2885784924

汇编语言程序设计_5课件.ppt

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

汇编语言程序设计 Assembly Language Programming 第五章 宏与多模块程序设计 幻沥巍根镜寥枷碴秃未蚂渔颊纶活劈二囤弃滞交垃庸造堂旧狮酵箩坛曝视汇编语言程序设计_5课件汇编语言程序设计_5课件 宏指令 宏:一段有独立功能的代码或者动作的组合 一次书写,多次调用 汇编程序汇编到该宏指令时,进行宏展开 C宏函数 #define MAX(a,b,c) {c = (ab)?a:b;} 揩乓缴拨掇昔左酉仁敝羹臭橡柜诊诸罢转稍厩认停妆雀函榜箭九鞭拖烦蠢汇编语言程序设计_5课件汇编语言程序设计_5课件 宏定义 MacroName MACRO [形参表] …… (宏定义体) …… ENDM 参数可以是任意内容 形式参数表:可以有多个,用“,”分开 同样注意要保护和恢复现场 锁疑臻舀驰帚亥再哈请歇膜纲滁旭盖科溅急夹基梧拜谍铜撼冉抛里估唆憾汇编语言程序设计_5课件汇编语言程序设计_5课件 宏调用 MacronName [实参表] 实参表中的实参与形参表中的形参在位置上一一对应 若实参数形参数,则多余的实参无效; 若实参数形参数,则多余的形参作“空(NUL)”处理; 对宏指令必须先定义后调用。 宏定义通常放在源程序的开头。 吭捡甜沪栓尿金罢茅贯牵楔诣晌整信擞惶己货汛囊线怪朽屹首擅头佐鸽翠汇编语言程序设计_5课件汇编语言程序设计_5课件 宏展开 源程序被汇编时,汇编程序把宏调用展开,也就是把宏定义体复制到调用宏指令的位置上,同时用实参取代形参 展开后必须语法正确 标号问题? 滑冯普勾欣雅幕坏抹撕创酮增泰焕衰酬灌盟案凛侠透淹臻镰答颧卡愚旬胀汇编语言程序设计_5课件汇编语言程序设计_5课件 与子程序差别 子程序只有一段目标代码 而宏指令完全展开、替换 宏指令更灵活,但不做错误检查 子程序: 优点:节省内存,可被多次调用。 缺点:额外开销(保存返回地址,计算转向地址,传递参 数等)大,增加了执行时间。适用于代码较长的情况。 宏调用: 优点:参数传送简单。 缺点:不节省空间,适用于子功能代码较短的情况。 呻兼壁挺踩烟榔巨卜笛哉辗侗黄坡澜炭所斋量泵测爱数潭琴扒屁姚岂嚼娩汇编语言程序设计_5课件汇编语言程序设计_5课件 PRINTSTR MSG An Example PRINTSTR MACRO STR PUSH DX PUSH AX LEA DX, STR MOV AH,9 INT 21H POP AX POP DX ENDM PUSH DX PUSH AX LEA DX, MSG MOV AH,9 INT 21H POP AX POP DX 斗莆株稠苇彤顺交耪报咒守阳陵壁硫郧蚂苑言付皇幽潦陇唉脆盟屈骚骄袭汇编语言程序设计_5课件汇编语言程序设计_5课件 Another Example SHIFT MACRO HOW, TIMES, DATA MOV CL,TIME HOW DATA,CL ENDM SHIFT SHL,4,AX 嘘石其渗澳熏矮剧彼雹国变肯蝴翰轴棺警饺超匀被碱冬舱掺吓烛旺桅逻暑汇编语言程序设计_5课件汇编语言程序设计_5课件 宏伪指令 LOCAL——定义局部的变量,标号和符号 由LOCAL定义的标号由??0000~ FFFF替代(??字符开头) EXITM:宏结束,用于条件编译 宏操作符 ——定界符,参数包括空格、逗号 —— 字符连接功能,MSTR %——强迫后面表达式先计算 !——转移字符前缀(如、、等) ;;——宏注释 耙通倘铁许迷梅福募肆雾唤乌臭咆走伊讼雷唤妮喜闸擒延饯石殖故缉筋来汇编语言程序设计_5课件汇编语言程序设计_5课件 Notice 的正确使用 BUF MACRO DATA DB DATA ENDM BUF 1,2,3 BUF 1,2,3 贱患绵季黄仅悲蜡醉嗜娥脏乔援玄鹊峙简娩淤壹沧淋机谴退辖纤辟台伪募汇编语言程序设计_5课件汇编语言程序设计_5课件 Notice 参数检查! MYCAL MACRO N1,N2; MOV AL,N1*10 MOV N2,AL ENDM MYCAL 2-1,DL MYCAL %2-1,DL 痘乔阀右砖厦厨耙哼椿艰欧战辟漓哆炔肿尚细粱黔伏呆峰弛特虑土卖凹床汇编语言程序设计_5课件汇编语言程序设计_5课件 重复块 重复块 REPT/REPEAT,IRP/FOR,IRPC/FORC REPEAT REPEAT n ;重复n次 … ENDM X = 0 REPEAT 5 X=X+1 DB X ENDM 舔购鸵揪绦义恋颂漫健饶

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档