下载此文档

第4章汇编语言程序设计2.ppt


文档分类:IT计算机 | 页数:约38页 举报非法文档有奖
1/ 38
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/ 38 下载此文档
文档列表 文档介绍
过程定义伪指令PROC、ENDP
过程就是子程序。一个过程可以被其它程序所调用(用CALL指令),过程的最后一条指令一般是返回指令(RET)。
过程定义伪指令的格式为
<过程名> PROC [类型]


RET
<过程名> ENDP
注意:PROC和ENDP必须成对出现。
1
过程的类型有两种:
NEAR——(默认类型)表示段内调用
FAR——表示段间调用

调用一个过程的格式为:
CALL <过程名>
2
宏定义伪指令
如果需要多次使用同一个程序段,可以将这个程序段定义为一个”宏指令”,然后在需要时,可简单地用宏指令名来代替这个程序段。
指令的格式为:
<宏指令名> MACRO [形参表]
<宏定义体>
ENDM
3
例:两个数之和的宏定义和宏调用。
宏定义为:
DADD MACRO X,Y,Z
MOV AX,X
ADD AX,Y
MOV Z,AX
ENDM
X、Y、Z是形式参数。调用宏DADD时可写为:
DADD DATA1,DATA2,SUM
DATA1,DATA2,SUM是实际参数,由它们替换定义中的X、Y、Z。
4
宏调用与过程(子程序)调用都是一次定义,多次调用。它们之间的差别是:
①执行形式:宏命令伪指令由宏汇编程序在汇编过理中进行处理,而CALL、RET则是由CPU执行的指令。
②汇编结果:宏命令伪指令汇编后被展开。
③执行速度:宏命令执行速度较快(因无调用转移)
④占用内存:宏指令简化了源程序,但不能简化目标程序,并不节省内存单元。使用过程可以节省代码占用的内存空间。
5
宏展开:汇编程序会把宏调用按宏定义展开。
例如:宏定义为:
Display MACRO string
LEA DX,string
MOV AH,9
INT 21H
ENDM
程序中宏调用:
……
DISPLAY ERROR_MESSAGE
DISPLAY EXIT_MESSAGE
……
汇编后的结果:(带有+号的指令为宏展开后的结果)
……
+ LEA DX,ERROR_MESSAGE
+ MOV AH,9
+ INT 21H
+ LEA DX,EXIT_MESSAGE
+ MOV AH,9
+ INT 21H
……
6
汇编结束伪指令END
汇编语言源程序的最后,要加汇编结束伪指令END,以使汇编程序结束汇编。
格式: END [表达式]
END后跟的表达式通常就是程序第一条指令的标号,指示程序的启动地址(要执行的第一条指令的地址)。
7
汇编语言的一个实例:

8
DOS系统功能调用介绍
系统功能调用——由OS提供的一组实现特殊功能的子程序供程序员在程序中调用,以减轻编程工作量。
系统功能调用有两种,一种称为DOS功能调用,另一种称为BIOS功能调用。
用户程序在调用这些系统服务程序时,不是用CALL命令,而是采用软中断指令INT n来实现。
在DOS系统中,功能调用都是用软中断指令INT 21H来实现的。
9
INT 2lH功能大致可以分为四个方面:
设备管理、目录管理、文件管理和其它。

D0S系统功能调用的使用方法如下:
① AH←功能号;
② 设置该功能所要求的其他入口参数;
③ 执行INT 21H指令;
分析出口参数。
以下介绍INT 21H的几个最常用的功能。
10

第4章汇编语言程序设计2 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数 38
  • 收藏数 0 收藏
  • 顶次数 0
  • 上传人 中国课件站
  • 文件大小 0 KB
  • 时间2011-10-11
最近更新