最新高级汇编语言技术教学课件.ppt

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

* 比较 仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变 通过形参、实参结合实现参数传递,简捷直观、灵活多变 还是目标程序级的简化:子程序调用在执行时由CALL指令转向、RET指令返回;形成的目标代码较短,执行速度减慢 需要利用寄存器、存储单元或堆栈等传递参数 宏 子程序 7.1 宏汇编 * 7.2 重复汇编 重复汇编指在汇编过程中,重复展开一段(基本) 相同的语句 重复汇编没有名字,不能被调用 重复汇编常用在宏定义体中,也可以在一般汇编语句中使用 重复汇编伪指令有三个: REPT——按参数值重复 IRP——按参数个数重复 IRPC——按参数的字符个数重复 最后,用ENDM结束 7.2 重复汇编 * REPT格式: REPT 表达式 …… ; 重复块 ENDM 例7.13 X=0 REPT 10 X=X+1 DB X ENDM 1 DB 1 1 DB 2 1 DB 3 …… 1 DB 10 汇编后: 7.2.1 重复伪操作REPT 7.2 重复汇编 * CHAR=‘a’ TABLE LABEL BYTE REPT 26 DB CHAR CHAR=CHAR+1 ENDM 1 DB 61H 1 DB 62H 1 DB 63H …… 1 DB 7AH 汇编后: 例7.14 把字符‘A’到‘Z’的 ASCII 码填入数组TABLE * IRP格式: IRP 哑元,自变量表 …… ; 重复块 ENDM 每次重复用自变量表中的一项取代哑元,重复次数由自变量的个数决定。 例7.15 IRP REG, AX,BX,CX,DX PUSH REG ENDM 1 PUSH AX 1 PUSH BX 1 PUSH CX 1 PUSH DX 汇编后: 7.2.2 不定重复伪操作 IRP * data segment array label byte IRP K, 1,2,3,4,5 db ‘NO.K’ ENDM data ends data segment array label byte 1 db ‘NO.1’ 1 db ‘NO.2’ 1 db ‘NO.3’ 1 db ‘NO.4’ 1 db ‘NO.5’ data ends 汇编后: 例7.16:在数据段产生字符区array,包括5个字符串‘NO.K’ * IRPC格式: IRPC 哑元,字符串 …… ; 重复块 ENDM 每次重复用字符串中的一个字符取代哑元,重复次数等于字符串中的字符数。 例:在数据段产生字符区array,包括5个字符串‘NO.K’ 7.2.3 不定重复伪操作 IRPC * 按参数字符个数重复 IRPC regad,dcba pop regadx ENDM 1 pop dx 1 pop cx 1 pop bx 1 pop ax * data segment array label byte IRPC K, 12345 db ‘NO.K’ ENDM data ends data segment array label byte 1 db ‘NO.1’ 1 db ‘NO.2’ 1 db ‘NO.3’ 1 db ‘NO.4’ 1 db ‘NO.5’ data ends 汇编后: 例7.17:在数据段产生字符区array,包

文档评论(0)

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

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

1亿VIP精品文档

相关文档