您的位置:首页 > 其它

精通COBOL--11.4.3 被调用程序中的入口地址

2008-04-29 10:26 337 查看

  使用COBOL语言编写的程序调用通常只用提供被调用程序的程序名以及所传递的参数。然而,真正在系统内部实现的程序调用,则按以下步骤执行。
q 保护现场
q 访问被调用程序的入口地址
q 进入并执行被调用程序
q 退出被调用程序
q 恢复现场
由此可见,被调用程序的入口地址在程序调用中是十分重要的。该入口地址决定了在何处能够访问到被调用程序。通常,在COBOL高级语言中,被调用程序的入口地址是通过程序名反映出来的。例如,下面为一段被调用程序代码。
IDENTIFICATION DIVISION.
PROGRAM-ID CALLED-PGM.
AUTHER XXX.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING STORAGE SECTION.
……
LINKAGE SECTION.
77 CALLED-PARM PIC X.
*
PROCEDURE DIVISION USING CALLED-PARM.
……
GOBACK.
以上程序的入口地址直接通过编译后的程序名反映出来。该程序名为CALLED-PGM。因此,在主调用程序中使用CALL语句对其调用的方式如下。
CALL ‘CALLED-PGM’ USING CALLING-PARM.
除此之外,还可在被调用程序中通过ENTRY语句指定选择性入口地址。主调用程序同样可以通过该选择性入口地址实现程序的调用。当在以上被调用程序中通过ENTRY语句指定选择性入口地址时,该程序代码如下。
IDENTIFICATION DIVISION.
PROGRAM-ID CALLED-PGM.
AUTHER XXX.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING STORAGE SECTION.
……
LINKAGE SECTION.
77 CALLED-PARM PIC X.
*
PROCEDURE DIVISION USING CALLED-PARM.
……
GOBACK.
ENTRY ‘ALTENTRY’ USING CALLED-PARM.
……
GOBACK.
此时,在主调用程序中,便可通过使用ENTRY语句定义的选择性入口地址实现程序调用。调用方式如下。
CALL ‘ALTENTRY’ USING CALLING-PARM.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: