精通COBOL--11.1.2 提高部分功能段执行效率
来源:互联网 发布:centos 双网卡驱动 编辑:程序博客网 时间:2024/05/22 03:08
COBOL可调用的子程序并不一定要求由COBOL所编写。实际上,COBOL语言所调用的子程序是可以由其他语言编写的,如汇编语言、PL/1语言等等。
对于某些功能,使用其他语言编写往往执行效率会更高。例如,在大型机环境下使用S/390汇编语言编写的程序,通常运行效率就比使用COBOL编写的要高。但是,汇编语言编写起来是不如COBOL方便的。因此,通常可以以COBOL编写主程序,而将其中经常使用的部分功能段使用汇编语言编写。这样,既不会过于增大开发难度,也能从整体上提高程序的运行效率。
例如,下面这段COBOL程序便调用了汇编程序。其中所调用的程序名为ASMPGM,传递的参数依次为DATA1、DATA2、DATA3。该COBOL程序代码如下。
IDENTIFICATION DIVISION.
PROGRAM-ID CALL-ASM-PROG.
AUTHER XXX.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING STORAGE SECTION.
77 DATA1 PIC X.
77 DATA2 PIC X.
77 DATA3 PIC X.
……
*
PROCEDURE DIVISION.
……
CALL ‘ASMPGM’ USING DATA1
DATA2
DATA3.
……
STOP RUN.
所调用的汇编程序通常可以如下。
ASMPGM CSECT
STM R14,R12,12(R13)
BALR R12,R0
USING *,R12
LM R2,R4,0(R1)
……
BCR B’1111’,14
DC A(PARM1)
DC A(PARM2)
DC X’80’,AL3(LASTPARM)
END ASMPGM
该汇编程序中,R2、R3、R4这3个寄存器将分别与COBOL中的3个参数相对应。其中R2与DATA1相对应,R3与DATA2相对应,R4与DATA3相对应。
此处主要是为了说明通过COBOL可以调用其他语言编写的子程序,并以此提高程序整体执行效率。关于大型机上的汇编语言将在后面的章节中进行讲解,这里不必深究。
- 精通COBOL--11.1.2 提高部分功能段执行效率
- 精通cobol--9.13.2 SEARCH语句的功能
- 精通cobol--9.9.3 查找效率
- 精通COBOL--11.1.1 提高代码可重用性
- 精通cobol--第9章 COBOL中的表
- 精通COBOL--11.1 子程序调用的作用
- 精通cobol--9.1.2 表的基本概念
- 精通cobol--9.2.2 下标的作用
- 精通cobol--9.6.2 如何进行直接查找
- 精通cobol--9.9.2 具体查找过程
- 精通cobol--9.10.2 计算平均数
- 精通cobol--9.11.2 如何定义索引表
- 精通cobol--9.15.2 如何定义变长表
- 精通cobol--9.16.2 嵌套下标表
- 精通COBOL--11.2.2 子程序的调用顺序
- 精通COBOL--11.5.2 静态调用程序示例
- 精通COBOL--11.6.2 动态调用程序示例
- 精通COBOL--16.2.2 使用CEDA定义资源
- 精通COBOL--11.1.1 提高代码可重用性
- NT内核下的inline hook
- uclinux-2008R1-RC8(bf561)到VDSP5的移植(1):前言
- Spring配置
- Linux下oracle设置开机自启动的方法
- 精通COBOL--11.1.2 提高部分功能段执行效率
- 精通COBOL--11.1.3 防止数据意外丢失或被更改
- Windows下如何彻底删除Oracle
- ORACLE常用傻瓜问题1000问全集(一)
- 精通COBOL--11.2 子程序调用的特点
- Oracle数据库开发约定
- 想在ubuntu下写写驱动,找到一些资料..
- 精通COBOL--11.2.1 子程序的命名规则
- oracle事务嵌套研究