C5-COBOL 基本动词

COBOL 基本动词

COBOL动词用于过程部中的数据处理。每个语句总是以COBOL动词开头。有几种具有不同动作类型的COBOL动词。

Input(输入)/Output(输出)动词

输入/输出动词用于从用户获取数据,并显示COBOL程序的输出。下面两个动词用于这一过程:

Accept动词

Accept 动词用于从操作系统或直接从用户获取诸如日期,时间和天等数据。如果程序从用户接收数据,那么就需要通过JCL传递。在从操作系统获取数据时,FROM选项则如下面例子所示:

ACCEPT WS-STUDENT-NAME.
ACCEPT WS-DATE FROM SYSTEM-DATE.

Display动词

Display动词用于显示COBOL程序的输出。

DISPLAY WS-STUDENT-NAME.
DISPLAY "System date is : " WS-DATE.

COBOL程序

       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.
       
       DATA DIVISION.
          WORKING-STORAGE SECTION.
          01 WS-STUDENT-NAME PIC X(25).
          01 WS-DATE PIC X(10).
       
       PROCEDURE DIVISION.
          ACCEPT WS-DATE FROM DATE.
          DISPLAY "Date : " WS-DATE.
       
       STOP RUN.

JCL执行上述COBOL程序:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO
//INPUT DD DSN=PROGRAM.DIRECTORY,DISP=SHR
//SYSIN DD *
TutorialsPoint
/*

当你编译和执行上面的程序,会产生以下结果:

Name : TutorialsPoint
Date : 2014-08-30

Initialize(初始化)动词

Initialize 动词被用来初始化组项或基本项。数据名为RENAME的子句不能被初始化。数字数据项由ZEROES代替。字母数字或字母数据项由SPACES代替。如果我们包含REPLACING术语,则数据项可被初始化为给定替换值,如以下示例所示:

       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.
       
       DATA DIVISION.
           WORKING-STORAGE SECTION.
           01 WS-NAME PIC A(30) VALUE 'ABCDEF'.
           01 WS-ID PIC 9(5).
           01 WS-ADDRESS. 
           05 WS-HOUSE-NUMBER PIC 9(3).
           05 WS-COUNTRY PIC X(15).
           05 WS-PINCODE PIC 9(6) VALUE 123456.
       
       PROCEDURE DIVISION.
           A000-FIRST-PARA.
           INITIALIZE WS-NAME, WS-ADDRESS.
           INITIALIZE WS-ID REPLACING NUMERIC DATA BY 12345.
           DISPLAY "My name is   : "WS-NAME.
           DISPLAY "My ID is     : "WS-ID.
           DISPLAY "Address      : "WS-ADDRESS.
           DISPLAY "House Number : "WS-HOUSE-NUMBER.
           DISPLAY "Country      : "WS-COUNTRY.
           DISPLAY "Pincode      : "WS-PINCODE.
       
       STOP RUN.

JCL执行上述COBOL程序:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

当你编译和执行上面的程序,会产生以下结果:

My name is   :                               
My ID is     : 12345
Address      : 000               000000
House Number : 000
Country      :                
Pincode      : 000000

Move(移动)动词

移动动词是用来将数据从源数据复制到目标数据的。它可以用于基本和组数据项。对于组数据项,使用MOVE CORRESPONDING/CORR。在尝试其它选项的时候,MOVE CORR不工作;但是在大型机服务器上工作。

对于从字符串移动数据,则使用MOVE(x:l),其中x是起始位置,l是长度。如果目标数据项PIC子句少于源数据项PIC子句,则数据将被截断。如果目标数据项PIC子句多于源数据项PIC子句,则将添加额外的ZEROS或SAPCES字节。从下面的例子可以清楚的看到:

       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.
       
       DATA DIVISION.
           WORKING-STORAGE SECTION.
           0
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值