COBOL第一天

第一天的COBOL语言课程结束了.

号称永不关机的大机今天因为停电关机了,突然觉得川大很好笑了.今天一天的东西都没有经过上机的实践,积压的很多,胸口积的要喘不过气了,好多的,不,应该说是太多的东西要记了.期待明天的上机课程至少可以记得起80-90%,那样也不枉我今天敲了一天的键盘了.(那老师说是要保密不给考课件,所以,可怜的我啊,只能自己用手打了.) 

今天的部分随堂笔记(网速太慢了,不传附件了,直接粘上来了)

2007-8-10 COBOL语言课程笔记摘要

一个正式的COBOL程序

IDENTIFICATIONDIVISION.

PROFRAM-ID. HELLOWOR.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 NEC PIC X(5) VALUE “1234”.

01 TEST PIC 9(3) VALUE 34.

01 PERSON.

   02 NAME PIC X(10).

   02 AGE PIC 9(2).

PROCEDUER DIVISION.

   DISPLAY ‘HELLO,WORLD!’.

   STOPRUN.

 

数据部的文件节:描述程序中用到的输入输出文件及其记录中个数据项的属性.

最简单的文件描述体的一般格式:

FD 文件名

      RECORDING MODE ISF

      RECORD CONTAINS 80 CHARACTERS

      DATA RECORD IS 数据名

文件节的书写格式:FDA区开始书写,01层号也从A区开始,其他层号可以从A也可以从B区开始.为了看起来层次分明,最好从B区开始.

(PS:80,1-6为标识区,7-16A)

记录描述:记录描述提由01层号开始,后跟记录名,如果记录本身就是一个初等项.则在记录名后描述记录长度;否则,数据名后跟句点.

定义记录的数据结构:

DATA DIVISION.

FILE SECTION.

FD IN-FILE

PECORD

 

数据部的工作存储节:描述程序中用到的中间数据项.程序中用的数据项分为两部分,

 

 

数据部的连接节.通信节.(了解即可)

过程部:COBOL的最后一个部分.包含程序运行的所有语句,包含对数据进行操作的程序逻辑.

COBOL程序的书写格式

1-6 :标号区

7:标志区

8-11:A.程序中有些内容如部头,节头,段头,层号01,层号77及文件描述付FD等应该从A区开始书写.

12-72:B.写程序的正文部分.如过程部的句子就只能从B区开始书写.

73-80:注释区.

JCL(compile+link+run)

//COBOJOBA  JOB ACCT#,

//             NOTIFY=your-id,

//             MASGLEVEL=(1,1)

//STEP1 EXEC PROC=IGYWCLG

//COBOL.SYSIN DD DSN= your-ds-of-COBOL-code,DISP=SHR

COBOL的字符集

0-9

保留字是具有特定意义的胆子或特殊字符(用做数学和关系操作符)

COBOL300多个的保留字,常用的100多个.

l         数据类型:变量VARIABLES,常量,CONTENTS

l         变量要通过类型和数值范围来进行描述.

l         所有用到的变量都要在数据部进行描述/声明.

01 STUDENTNAME PIC X(6) VALUE SPACES.

   STUDENTNAME

  

 

 

 

 

 

 

 

MOVE “JOHN” TO STUDENTNAME.

       STUDENTNAME

J

O

H

N

 

 

 

思考题:COBOL”070810”转化为”07-08-10”再转化为英文表示方法????

声明数据

包含:一个层号(有组或者叫父子关系)

     一个数据名或是变量名

     一个PICTURE子句

Eg.01 studentDetails.

02 StudentName.

    03 Surname PIC X(8) .

 02 StudentId PIC 9(7) .

PICTURECLAUSE symbols

9(the digit nine)

X(the )

 

 

Examples:

1.         Picture 999 a three digit(+ive only) integer

2.         Picture S999 a three digit(+ive /-ive) integer

3.         Picture XXXX a four chatacter text item or string

4.         Picture 99V99  a +ive ’real’ in the range 0 to 99.99

5.         Picture S9V9  a +ive/-ive ‘real’

PIC表示取值的范围。如PIC S94V94):表示从-9999.9999+9999.9999的范围。

数据声明的例子

01 Num1 PIC 999 VALUE ZEROS .

01 VatRate PIC V999 VALUE .18.

01 StudentName PIC X(10) VALUE SPACES.10个空格。

NUM1

Vat

 

0000

 

 

 

常量

l         数值常量

l         非数值常量

l         表意常量/象征常量 all zero etc.

HIGH-VALUE 最大值

LOW-VAULE  最小值

NULL         ‘’(与空格不同)

MOVE *** TO ***

MOVE ALL “_” TO StudentName

_

_

_

_

_

_

01 GrossPay PIC 9(5)V99 VALUE 13.5.

0

0

0

1

3

5

0

从右往左开始存           小数点位

COMPUTE

e.g. COMPUTE z = x + y (注意要加空格,在每一个字符后都要加)

DISPLAY HELLO WORLD!“.

DISPLAY  “MY NAME IS “ NAME.

 

9描述符:表示该位置上可以放入一个0-9之间的数字。例如:01 A PIC999。或者01 A PIC93)。

表示A可以存放000-999之间的一个三位数。有几个9表示有几位数。

注意:示整数部分,负号则舍弃,输入的小数部分会被舍弃。只能存放数字不能放空格。

V描述符:指出在数值数据结构中隐含的小数点的位置。小数点不占内存单元。

03 M PIC 93V92)。

l         注意:V在描述符最后则等于无小数点

u       一个数据的描述服只能有一个V

u       进行数据传诵或运算时,按隐含的小数点的位置对准传诵或运算。

u       V表示的小数点只在传诵或运算时起作用不能被显示或是答应出来。

S描述符:如果想在数据项中防入一个带符号的数据,可以用S

03 M PIC S93V92)。

l         注意:S描述符必须是最左边的一个

u       在内存中,S不占位数,在传诵或运算时起作用。

字母型数据的描述

03 M PIC X5)。

l         注意:字符型可以用X描述,也可以用9A来描述。如‘COB-74‘也可以用PIC X6),也可以PIC A3 X92)。

l         字母型数据既可以用A描述也可以用X

l         字符型数据中可以放数字。

编辑型描述符

.’小数点

 ‘+’’-‘正负号

02 A1 PIC +93. =  PIC 93+

 

                                 -----努力的天才学COBOLing...

你可能感兴趣的