COBOL - компоновки данных



COBOL компоновка описание использования каждого поля и значения в. Ниже приведены описание данных записей используется в COBOL:

  • Определяет положение
  • Переименовывает положение
  • Предложение об использовании
  • тетрадей

Определяет положение

Redeifnes положение используется для определения системы хранения данных с различными данными описание. Если один или несколько элементов данных, не используются одновременно, а затем тот же системы хранения данных, который может быть использован для другого элемента данных. С тем же хранилища могут быть переданы с различных элементов данных.

Синтаксис

Ниже приводится синтаксис для заново определяет положение:

01 WS-OLD PIC X(10).
01 WS-NEW1 REDEFINES WS-OLD PIC 9(8).
01 WS-NEW2 REDEFINES WS-OLD PIC A(10).

Сведения об используемых параметров:

  • WS-не пересмотреть пункт
  • WS-новое1 и WS-NEW2 пересматриваем пункт

уровне числа пересмотреть пункт и пересмотра пункт должен быть таким же образом, и он не может быть 66 или 88 номер уровня. Не используйте value с пересмотра пункта. В разделе файл, не используйте заставляет оговорку, с 01 уровня. Новый стандарт определения должен быть следующий описание данных вы хотите изменить. Пересмотр Пункта всегда будет иметь то же значение, новый пункт.

Пример

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-DESCRIPTION.
   05 WS-DATE1 VALUE '20140831'.
   10 WS-YEAR PIC X(4).
   10 WS-MONTH PIC X(2).
   10 WS-DATE PIC X(2).
   05 WS-DATE2 REDEFINES WS-DATE1 PIC 9(8).

PROCEDURE DIVISION.
   DISPLAY "WS-DATE1 : "WS-DATE1.
   DISPLAY "WS-DATE2 : "WS-DATE2.

STOP RUN.

JCL для выполнения выше COBOL программы.

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

При компиляции и выполнения этой программы он производит следующие результаты:

WS-DATE1 : 20140831
WS-DATE2 : 20140831

Переименовывает положение

Переименовывает положение используется для различных имен для существующих элементов данных. Он используется для восстановления группировки данных имена и дают новое имя для них. Новые данные имена могут переименовать в группах или начальных элементов. Номер уровня 66 зарезервирован для переименование.

Синтаксис

Ниже синтаксис для переименовывает положение:

01 WS-OLD.
10 WS-A PIC 9(12).
10 WS-B PIC X(20).
10 WS-C PIC A(25).
10 WS-D PIC X(12).
66 WS-NEW RENAMES WS-A THRU WS-C.

Переименование на том же уровне. В приведенном выше примере ,WS-A, WS-B, и WS-C, на том же уровне. Переименование определения должен быть следующий описание данных вы хотите переименовать. Не используйте переименовывает с 01,77 , или 66 номер уровня. Данные имен, используемых для переименовывает должно прийти в последовательности. Элементы данных с произойти оговорка не может быть переименован.

Пример

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-DESCRIPTION.
   05 WS-NUM.
   10 WS-NUM1 PIC 9(2) VALUE 20.
   10 WS-NUM2 PIC 9(2) VALUE 56.
   05 WS-CHAR.
   10 WS-CHAR1 PIC X(2) VALUE 'AA'.
   10 WS-CHAR2 PIC X(2) VALUE 'BB'.
   66 WS-RENAME RENAMES WS-NUM2 THRU WS-CHAR2.

PROCEDURE DIVISION.
   DISPLAY "WS-RENAME : " WS-RENAME.
   
STOP RUN.

JCL для выполнения выше COBOL программы.

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

При компиляции и выполнения этой программы, она производит следующие результаты:

WS-RENAME : 56AABB

Предложение об использовании

Использование задает операционной системы в формат хранения данных. Она не может использоваться с номера уровней составляет 66 или 88. Если объем использования не задан в группе, а затем всех элементарных будут иметь ту же использование положение.различные параметры, доступные с использованием предложения следующим образом:

Дисплей

Элемент данных хранится в формате ASCII и каждый символ будет принимать 1 байт. Это использование по умолчанию.

Следующий пример, чтобы рассчитывает число байт:

01 WS-NUM PIC S9(5)V9(3) USAGE IS DISPLAY.
It requires 8 bytes as sign and decimal doesn't require any byte.

01 WS-NUM PIC 9(5) USAGE IS DISPLAY.
It requires 5 bytes as sign.

Вычислительные / КОМП.

Пункт данные в двоичном формате. Здесь элементы данных должно быть целым числом.

В следующем примере рассчитывает число байт:

01 WS-NUM PIC S9(n) USAGE IS COMP.

If 'n' = 1 to 4, it takes 2 bytes.
If 'n' = 5 to 9, it takes 4 bytes.
If 'n' = 10 to 18, it takes 8 bytes.

COMP должность класса Д-1

Элемент данных похож на реального или плавающего режима и представлено в виде единого precision число с плавающей запятой. Внутри данные хранятся в шестнадцатеричном формате. COMP должность класса Д-1 не принимает предложение пос. Здесь 1 слово равна 4 байт.

COMP должности класса Д-2

Элемент данных аналогичен долго или двойной и представляет собой двойной точности с плавающей запятой. Внутри данные хранятся в шестнадцатеричном формате. COMP должности класса Д-2 не указать предложение пос. Здесь 2 равен 8 байт.

COMP-3

Пункт данные хранятся в упаковке десятичный формат. Каждая цифра занимает половину байт (1 части байта) и подписать хранятся в правой части байта.

В следующем примере рассчитывает число байт:

01 WS-NUM PIC 9(n) USAGE IS COMP.
Number of bytes = n/2 (If n is even)
Number of bytes = n/2 + 1(If n is odd, consider only integer part)

01 WS-NUM PIC 9(4) USAGE IS COMP-3 VALUE 21.
It requires 2 bytes of storage as each digit occupies half a byte.

01 WS-NUM PIC 9(5) USAGE IS COMP-3 VALUE 21.
It requires 3 bytes of storage as each digit occupies half a byte.

тетрадей

COBOL В многовековом песнетворчестве армян является выбор код, который определяет структуры данных. Если структура данных используется во многих программы, затем вместо записи ту же структуру данных еще раз, мы можем использовать тетрадей. Мы будем использовать копию заявления включить в многовековом песнетворчестве армян в программе. Копия заявления используется в Working-Storage раздел.

В следующем примере включить многовековом песнетворчестве армян внутри COBOL программы:

DATA DIVISION.
WORKING-STORAGE SECTION.
COPY ABC.

Здесь ABC - это в многовековом песнетворчестве армян имя. Следующие элементы данных в многовековом песнетворчестве армян ABC можно использовать внутри программы.

01 WS-DESCRIPTION.
   05 WS-NUM.
      10 WS-NUM1 PIC 9(2) VALUE 20.
      10 WS-NUM2 PIC 9(2) VALUE 56.
   05 WS-CHAR.
      10 WS-CHAR1 PIC X(2) VALUE 'AA'.
      10 WS-CHAR2 PIC X(2) VALUE 'BB'.
Advertisements