经典汇编语言教程:7.5.4 子程序的可见性和首尾宏操作

7.5.4 子程序的可见性和首尾宏操作

子程序的可见性(Visibility)决定该子程序对其它模块是否可用。它共有三个属性值:PRIVATE、PUBLIC和EXPORT。

PUBLIC属性是子程序标准的缺省属性,但该缺省属性可以用伪指令OPTION PROC来修改。EXPORT属性意味着该子程序是一个“远”的、具有PUBLIC属性的子程序,并要求连接程序在生成可执行文件时把其入口地址放入导出入口地址表中。

例如:

OPTIONPROC : PRIVATE ;说明子程序的可见性为:PRIVATE
OPTIONPROC : EXPORT ;说明子程序的可见性为:EXPORT

7.5.5 子程序的起始和结束操作

当程序员想用自己定义的宏来替代缺省的“起始”和“结束”的代码段时,可用下列说明语句来实现:

OPTIONPROLOGUE : MacroName1
OPTIONEPILOGUE : MacroName2

PROLOGUE和EPILOGUE分别指定MacroName1和MacroName2为“起始”和“结束”代码段的宏名。

汇编程序对用户定义的宏MacroName1和MacroName2的形式有较严格的规定,要求宏的定义形式如下:

MacroName MACRO ProcName, flags, argbytes, localbytes, <reglist>,userparms:VARARG

该宏定义的每个参数都有详细的说明,感兴趣的读者可看有关技术资料或MASM6.11中的帮助,详细的说明在此从略,但建议使用缺省的宏。

如果想取消当前指定的宏名,而恢复使用缺省的“起始”和“结束”代码段的宏名,那么,可用下列说明语句,即指定二个缺省的宏名PrologueDef和EpilogueDef。

OPTIONPROLOGUE : PrologueDef
OPTIONEPILOGUE : EpilogueDef

若程序员不要汇编程序自动产生“起始”和“结束”代码,则可用NONE来代替说明语句中的宏名,即:

OPTIONPROLOGUE : NONE
OPTIONEPILOGUE : NONE

上页:上一课 下页:下一课

经典汇编语言教程·相关目录

第1章 汇编语言的由来,数据类型第2章 CPU资源和存储器
第3章 操作数的寻址方式第4章 标识符和表达式
第5章 微机CPU的指令系统第6章 程序的基本结构
第7章 子程序和库第8章 输入输出和中断
第9章 宏第10章 应用程序设计
第11章 数值运算协处理器第12章 汇编语言和C语言
汇编语言重要附录Windows API函数大全
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号