- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 汇编语言程序设计基本方法
第五节 子程序的设计及其使用
1.教学目的:掌握微型汇编语言程序分析和设计方法
2.教学要求:
熟悉汇编语言程序设计的基本步骤。
掌握程序流程图的使用,会利用其分析问题。
掌握汇编语言的顺序、分支、循环程序的设计。
了解实模式下80386及其后继机型的汇编语言的程序设计
3.教学重点:
①利用流程图分析问题。
②顺序、分支、循环程序的设计。
4.掌握难点:
①分支程序设计
②循环程序设计
5.教学进程安排:P169~185
6.教学方法:
课堂讲授
7.教学内容摘要:
7.5.1 子程序的概念
一、子程序概念
图1 主程序与子程序间的关系
把可以多次调用、能够完成特定操作功能的程序段编写成独立的程序模块称为子程序,又称其为过程。主程序与子程序之间的关系如图1所示。
二、 子程序特性
1.重复性
2.通用性
3.可浮动性
4.可递归和可重入性
7.5.2 子程序结构形式与操作
一、 子程序定义
格式:
PROCEDURE NAME PROC ATTRIBUTE
┇
PROCEDURE NAME ENDP
1.子程序名
2.属性
NEAR
FAR。
二、 子程序的调用和返回
1.CALL指令
2.RET指令
三、 现场保护与现场恢复
1.现场保护与现场恢复的原因
2.现场保护与现场恢复的实现
(1)PUSH/POP
(2)PUSHA/POPA
(3)PUSHAD/POPAD
7.5.3 子程序的参数传送
一、 通过寄存器传送参数
【例7-3】十进制到十六进制数转换程序。程序要求从键盘取得一个十进制数,然后把该数以十六进制形式在屏幕上显示出来。
二、 直接参数传递
若子程序和调用程序在同一源文件(同一程序模块)中,则子程序可直接访问模块中的变量,进行参数传递。
【例7-4】主程序MAIN和子程序PROADD在同一源文件中,要求用子程序PROADD累加数组中的所有元素,并把和(不考虑溢出的可能性)送到指定的存储单元中去。在这里,子程序PROADD直接访问模块的数据区。
三、 通过地址表传递参数地址
这种方法是在主程序中建立一个地址表,把要传送给子程序的参数都存放在地址表中,然后把地址表的首地址通过寄存器BX传送到子程序中去。子程序通过地址表取得所需参数,并把结果存入指定的存储单元中去。
例7-4 采用通过地址表传送参数方法的程序实现
四、 通过堆栈传送参数或参数地址
此方法是在主程序里把参数地址保存到堆栈中,在子程序里从堆栈中取出参数以达到传送参数的目的。
五、 增强功能的子程序定义伪操作
从MASM5.1版开始为用户提供了增强功能的子程序定义伪操作,其格式为:
PROCNAME PROC [ATTRIBUTES FIELD][USES REGISTER LIST][,PARAMETER FIELD]
┇
PROCNAME ENDP
1.属性字段
2.USES字段
3.参数字段
【例7-5】用增强功能的子程序定义伪操作的程序实现例7-4
7.5.4 子程序的嵌套与递归
一、 子程序的嵌套
1.子程序的嵌套
2.嵌套深度。
图2表示了嵌套深度为2时的子程序嵌套情况。
图2 子程序的嵌套
【例7-7】设从BUF开始存放若干无符号字节数据,找出其中的最小值并以16进制形式输出。
子程序的调用
1.递归的概念
2.递归的特点
【例7-8】求自然数N(N=1)的阶乘
8.本章小结:
本部分要求理解性学习和应用,不要死记硬背,重点掌握子程序结构的应用环境和具体用法,以达到对汇编程序设计的优化。
主程序 子程序A 子程序B
PROC_A PRO_B
CALL PROC_A
CALL PROC_B
RET RET
您可能关注的文档
- 第一章 餐饮服务概述.ppt
- 教师专业化成长若干思考.ppt
- 交换机的基本配置.ppt
- 教学分析与设计.ppt
- 进度规划和控制基本理论进度规划和控制软件介绍典型案例分析 .ppt
- 教学过程目标化实现师生“双赢” 策略—谈如何上好一节英语课.ppt
- 经营决策常用的成本概念及基本方法.ppt
- 教学设计思路.ppt
- 点火正时的检查与调整.ppt
- 课程名称《电算化会计》.ppt
- 多边形的内角和(分层作业)(原卷版).pdf
- 三角形全等的判定㈠SSS(分层作业)(原卷版).pdf
- 等边三角形的性质与判定(分层作业)(原卷版).pdf
- 期末模拟卷-【单元测试】七年级数学下册分层训练AB卷(湘教版)(原卷版).pdf
- 线段垂直平分线的性质和判定(分层作业)(原卷版).pdf
- 轴对称(导学案)八年级数学上册同步备课系列.pdf
- 角的平分线的判定(分层作业)(解析版).pdf
- 第6章 数据的分析(B卷·能力提升练)-【单元测试】七年级数学下册分层训练AB卷(湘教版)(解析版).pdf
- 第2章 整式的乘法(A卷·) -【单元测试】七年级数学下册分层训练AB卷(湘教版)(原卷版).pdf
- 第5章 轴对称与旋转(A卷·) -【单元测试】七年级数学下册分层训练AB卷(湘教版)(解析版).pdf
最近下载
- 地聚物胶凝材料制备及应用研究现状.docx VIP
- 2024高考试题评析及教学启示第9讲-水溶液中的离子反应平衡图像题 课件 (共65张PPT).pptx VIP
- TSG_D00012023年_压力管道安全技术监察规程——工业管道(高清晰版).docx
- “四舍五入”试商(教学设计)-2024-2025学年四年级上册数学苏教版.docx
- 门禁系统施工组织方案【弱电方案】.docx VIP
- 内蒙古版综合实践活动三下 第四单元 主题活动三《小小会计师》课件.pptx
- 统编版(2024)七年级语文上册第三单元整本书阅读 《朝花夕拾》精读、略读、浏览 教学设计.doc
- 班委会组织结构优秀课件.ppt
- 广东省珠海市香洲十中2023-2024学年九年级上学期语文期中试卷.docx VIP
- 物业管理师 实务试题..doc VIP
文档评论(0)