ITEEDU

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

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

OPTION PROLOGUE : MacroName1

OPTION EPILOGUE : MacroName2

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

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

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

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

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

OPTION PROLOGUE : PrologueDef

OPTION EPILOGUE : EpilogueDef

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

OPTION PROLOGUE : NONE

OPTION EPILOGUE : NONE