COBOL-데이터 유형
데이터 분할은 프로그램에서 사용되는 변수를 정의하는 데 사용됩니다. COBOL에서 데이터를 설명하려면 다음 용어를 이해해야합니다.
- 데이터 이름
- 레벨 번호
- 그림 조항
- 가치 조항
01 TOTAL-STUDENTS PIC9(5) VALUE '125'.
| | | |
| | | |
| | | |
Level Number Data Name Picture Clause Value Clause
데이터 이름
데이터 이름은 절차 부서에서 사용하기 전에 데이터 부서에서 정의해야합니다. 사용자 정의 이름이 있어야합니다. 예약어는 사용할 수 없습니다. 데이터 이름은 실제 데이터가 저장되는 메모리 위치를 참조합니다. 기본 또는 그룹 유형이 될 수 있습니다.
예
다음 예제는 유효하고 유효하지 않은 데이터 이름을 보여줍니다-
Valid:
WS-NAME
TOTAL-STUDENTS
A100
100B
Invalid:
MOVE (Reserved Words)
COMPUTE (Reserved Words)
100 (No Alphabet)
100+B (+ is not allowed)
레벨 번호
레벨 번호는 레코드의 데이터 레벨을 지정하는 데 사용됩니다. 기본 항목과 그룹 항목을 구분하는 데 사용됩니다. 기본 항목을 함께 그룹화하여 그룹 항목을 만들 수 있습니다.
Sr. 아니. | 레벨 번호 및 설명 |
---|---|
1 | 01 레코드 설명 항목 |
2 | 02 to 49 그룹 및 기본 항목 |
삼 | 66 조항 항목 이름 변경 |
4 | 77 세분화 할 수없는 항목 |
5 | 88 조건 이름 입력 |
Elementary items더 이상 나눌 수 없습니다. 레벨 번호, 데이터 이름, 그림 절 및 값 절 (선택 사항)은 기본 항목을 설명하는 데 사용됩니다.
Group items하나 이상의 기본 항목으로 구성됩니다. 레벨 번호, 데이터 이름 및 값 절 (선택 사항)은 그룹 항목을 설명하는 데 사용됩니다. 그룹 레벨 번호는 항상 01입니다.
예
다음 예는 그룹 및 기본 항목을 보여줍니다-
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NAME PIC X(25). ---> ELEMENTARY ITEM
01 WS-CLASS PIC 9(2) VALUE '10'. ---> ELEMENTARY ITEM
01 WS-ADDRESS. ---> GROUP ITEM
05 WS-HOUSE-NUMBER PIC 9(3). ---> ELEMENTARY ITEM
05 WS-STREET PIC X(15). ---> ELEMENTARY ITEM
05 WS-CITY PIC X(15). ---> ELEMENTARY ITEM
05 WS-COUNTRY PIC X(15) VALUE 'INDIA'. ---> ELEMENTARY ITEM
그림 조항
그림 절은 다음 항목을 정의하는 데 사용됩니다.
Data type숫자, 알파벳 또는 영숫자 일 수 있습니다. 숫자 유형은 0에서 9까지의 숫자로만 구성됩니다. 알파벳 유형은 A에서 Z까지의 문자와 공백으로 구성됩니다. 영숫자 유형은 숫자, 문자 및 특수 문자로 구성됩니다.
Sign숫자 데이터와 함께 사용할 수 있습니다. + 또는 – 일 수 있습니다.
Decimal point position숫자 데이터와 함께 사용할 수 있습니다. 가정 위치는 소수점 위치이며 데이터에 포함되지 않습니다.
Length 데이터 항목에서 사용하는 바이트 수를 정의합니다.
그림 절에 사용 된 기호-
Sr. 아니. | 기호 및 설명 |
---|---|
1 | 9 숫자 |
2 | A 알파벳 |
삼 | X 영숫자 |
4 | V 암시 적 십진수 |
5 | S 기호 |
6 | P 가정 십진수 |
예
다음 예제는 PIC 절의 사용을 보여줍니다-
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NUM1 PIC S9(3)V9(2).
01 WS-NUM2 PIC PPP999.
01 WS-NUM3 PIC S9(3)V9(2) VALUE -123.45.
01 WS-NAME PIC A(6) VALUE 'ABCDEF'.
01 WS-ID PIC X(5) VALUE 'A121$'.
PROCEDURE DIVISION.
DISPLAY "WS-NUM1 : "WS-NUM1.
DISPLAY "WS-NUM2 : "WS-NUM2.
DISPLAY "WS-NUM3 : "WS-NUM3.
DISPLAY "WS-NAME : "WS-NAME.
DISPLAY "WS-ID : "WS-ID.
STOP RUN.
JCL 위의 COBOL 프로그램을 실행하려면-
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1 EXEC PGM = HELLO
위의 프로그램을 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
WS-NUM1 : +000.00
WS-NUM2 : .000000
WS-NUM3 : -123.45
WS-NAME : ABCDEF
WS-ID : A121$
가치 조항
Value 절은 데이터 항목을 초기화하는 데 사용되는 선택적 절입니다. 값은 숫자 리터럴, 영숫자 리터럴 또는 형상 상수 일 수 있습니다. 그룹 및 기본 항목 모두에 사용할 수 있습니다.
예
다음 예제는 VALUE 절의 사용을 보여줍니다-
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NUM1 PIC 99V9 VALUE IS 3.5.
01 WS-NAME PIC A(6) VALUE 'ABCD'.
01 WS-ID PIC 99 VALUE ZERO.
PROCEDURE DIVISION.
DISPLAY "WS-NUM1 : "WS-NUM1.
DISPLAY "WS-NAME : "WS-NAME.
DISPLAY "WS-ID : "WS-ID.
STOP RUN.
JCL 위의 COBOL 프로그램을 실행하려면-
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1 EXEC PGM = HELLO
위의 프로그램을 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
WS-NUM1 : 03.5
WS-NAME : ABCD
WS-ID : 00