- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课题
综合应用举例(二)
目的任务
掌握过程的定义及调用方法;
掌握堆栈的使用方法; 掌握延时程序的编写方法。
重点难点
堆栈操作;延时程序的编写方法。
教学方法
讲授
使用教具
传统教学法(粉笔和黑板)
提问作业
备课时间 年 月 日 上课时间 年 月曰
审
批
教研室主任(签字)
年 月 日
抽 查
系主任(签字):
4.9.2过程定义调用
过程是一个具有确定功能的独立程序段,它可以被其它程序调用,在完成确定功能后, 又能自动地返回原来的程序。
过程定义的定义
方法定义过程
过程名
程序段
RET
过程名的命名规则与标变量的命名规则一样过程完成的功能由程序段实现,过程 以RET指令结束。
这里,我们给出的过程定义方法舉縮 但却是非常有效的,对于一般性的应用足 胜任。对初学者来说,在定义过程时应癡
过程与其它程序同在一个逻辑段里(通常是代码段) ;
一个程序中可以有多个过程;
过程之间不能交叉、重叠
建议将过程放在代码段的最、 END伪指令之前;
过程的调用
由于过程是一个相对独立的部分因此过程的调用戟離只要在需要的位置放一条 调用指令即可。
格式CALL 过程名
由于过程与其它程序同在一个代码段中,因此应避免非调用性的执行,即不是通过
CALL指令执行到过程,这一点在编写程序吋磁療湖意
例4-45在字节WAB中存按顺序放着“ 0”?“9”的七段码,字节M Buff中存
随机存放着10个一位十进制数(0?9),编程将Buff中的10个数在共阴极七段数码管上 显示出来。假定实现数码显示的过程名为 Disp,入口参数为ALo
核心代码为
TAB DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FH
LEA SI, Buff
MOV CX, 10
Again:
MOV BH, 0 ;高8位清零
MOV BL, [SI] ;低8位放数字值
MOV AL, [BX+TAB] ;高8位、低8位合并后,产生七段码位置
CALL Disp ;调用七段码显示过程
INC SI
LOOP Again
Buff DB 9, 1,4, 6,0,9, 1, 2, 3, 8
随机 10数
Disp:
Disp:
RET
取得表头地址
在表中儁移地址
表头+價移
(结東〕
图4-20 查表程序流程图
注本例中,我们只是给出了过程调用的示例,并未编写过程。
堆栈操作
堆栈的定义堆栈是一块特殊的存储区域, 它的所有操作只能在该区域的一端进行, 并
且是严格按顺序进行的。它具有先进后出的特点如果我们先将一个数 X放入堆栈,然后再 将另一个数Y也放入堆栈,当我们想访问 X时,必须先访问 Y,然后才能访问到 X。常用的 堆栈指令有两条
格式PUSH SRC
POP DST
操作PUSH是将由SRC指定的数据放入到堆栈中(压栈、压入);POP是将堆栈里的 一个数据取到(出栈、弹出) DST指定的位置。
这里SRC和DST必须是一个16位的数据,它们可以是除了立即数之外的其它所有寻址 方式。习惯上以寄存器寻址方式为主。
例4一46编写一个回车换行过程
CRLF: PUSH AX
PUSH DX
MOV AH, 2
MOV DL, 13
INT 21H
MOV AH, 2
MOV DL, 10
INT 21H
POP DX
POP AX
RET
例4 — 47编写延时过程
Delay2: PUSH CX
MOV CX, 8000H
Time: PUSH CX
MOV CX, 8000H
LOOP $
POP CX
LOOP Time
POP CX
RET
例4 — 48分析以下程序的功能和作用。代码略。 例4 — 49分析以下程序的功能和作用。代码略。
文档评论(0)