计算机科学和技术系ppt课件.ppt

计算机科学和技术系ppt课件.ppt

ID:59268524

大小:152.00 KB

页数:39页

时间:2020-09-27

计算机科学和技术系ppt课件.ppt_第1页
计算机科学和技术系ppt课件.ppt_第2页
计算机科学和技术系ppt课件.ppt_第3页
计算机科学和技术系ppt课件.ppt_第4页
计算机科学和技术系ppt课件.ppt_第5页
资源描述:

《计算机科学和技术系ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、8086/8088和ARM核汇编语言程序设计第11章高级汇编语言技术8/24/20211贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉11.1宏汇编11.3条件汇编11.2重复汇编第11章高级汇编语言技术11.4库的使用8/24/20212贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉什么是宏?宏(或宏指令)是源程序中一段有独立功能的程序代码,只需定义一次,可以多次调用。为什么使用宏汇编?在编制汇编语言程序过程中,有些功能程序段需要多次重复使用,所不同的只是参与操作的操作数。使用宏指令语句可以减少程序书写错误,缩短源程序长度,使源程序编

2、写像高级语言一样清晰、简洁。特别是使用宏库后,可以提高编程效率。为了减少编程的工作量,通常采用两种方法:①将程序段编写为独立的子程序②将程序段定义成宏11.1宏汇编由此引出宏定义、调用、参数传递、嵌套等问题8/24/20213贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉宏定义的格式由伪指令MACRO与ENDM实现。形式如下:宏指令名MACRO[形式参数表]...;宏体ENDM11.1.1宏定义11.1宏汇编说明:(1)宏指令名由编程序者自定,但必须符合标号的命名规则。(2)MACRO和ENDM是一对伪指令,分别表示宏定义的开始和结束。(3)宏

3、体必须是指令、伪指令及宏指令构成的程序段。(4)形参表可根据需要作取舍。当需要设置多个形参时,各形参之间要用逗号分隔。8/24/20214贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉宏定义的功能将宏体定义为一条宏指令,以便在其后的程序中通过对宏指令的调用(宏调用)来使用对应的宏体。11.1宏汇编11.1.1宏定义注意:宏应该先定义,再调用.8/24/20215贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉例11.1以下宏定义所定义的宏指令AX10可以实现寄存器AX内容乘以10的功能。AX10MACRO;宏名AX10PUSHDXSALA

4、X,1MOVDX,AXSALAX,1SALAX,1ADDAX,DXPOPDXENDM11.1宏汇编11.1.1宏定义8/24/20216贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉11.1宏汇编11.1.2宏调用和宏扩展宏调用的格式宏调用的格式为:宏指令名[实参表]说明:宏指令名所指定的宏指令的定义必须放在该宏调用之前。实参表通常与宏定义中形参表相对应。当需要使用多个实参时,各实参之间要用逗号分隔。实参可以是常数、寄存器、存储单元、地址表达式、指令的操作码或者是操作码的一部分。8/24/20217贵有恒何必三更眠五更起,最无益只怕一日曝十日寒

5、与君共勉宏扩展在汇编源程序时自动用宏指令的内容(宏体)代替宏指令,叫宏扩展。11.1宏汇编11.1.2宏调用和宏扩展宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用(宏指令)时,即用相应的宏定义体取代源程序的宏指令,同时用位置匹配的实参对形参进行取代这样,在程序的目标代码中,每个宏指令语句位置上都包含有相应宏体的目标代码,因此宏指令的使用不会减少程序的目标代码长度。注意:它与子程序的差别。前者在翻译阶段,后者在执行阶段起作用。8/24/20218贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉11.1宏汇编11.1.2宏调用和宏扩展C

6、allQCallQCallQQ:RET子程序QQA,BQC,DQE,FQMACROX,YENDM主程序主程序主程序展开子程序调用和宏调用的工作方式8/24/20219贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉两个字操作数相乘宏定义:MULTIPLYMACROOPR1,OPR2,RESULTPUSHDXPUSHAXMOVAX,OPR1IMULOPR2MOVRESULT,AXMOVRESULT+2,DXPOPAXPOPDXENDM宏调用:…MULTIPLYCX,VAR,XYZ[BX]…MULTIPLY240,BX,SAVE11.1宏汇编11.1

7、.2宏调用和宏扩展8/24/202110贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉宏展开:…1PUSHDX1PUSHAX1MOVAX,CX1IMULVAR1MOVXYZ[BX],AX1MOVXYZ[BX]+2,DX1POPAX1POPDX…1PUSHDX1PUSHAX1MOVAX,2401IMULBX1MOVSAVE,AX1MOVSAVE,DX1POPAX1POPDX…11.1宏汇编11.1.2宏调用和宏扩展8/24/202111贵有恒何必三更眠五更起,最无益只怕一日曝十日寒与君共勉11.1宏汇编11.1.3宏定义和宏调用中参数的使用实参和

8、形参是一一对应的,若实参的个数多于形参,则忽略多余的实参;若实参的个数少于形参,则多余的形参为

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。