Буквенно-цифровая редактируемая

Числовая редактируемая

  1. Во фразе PICTURE (ШАБЛОН) редактирование плаваю­щей вставкой и редактирование подавлением и замещением нуля взаимно исключаются. Во фразе PICTURE (ШАБЛОН) может быть использован только один тип замещения при подавлении ну­ля.

  2. Редактирование простой вставкой указывается символами шаблона: , (запятая), В (пробел), / (дробная черта) и 0 (нуль). Литеры вставки учитываются при определении размера данного и представляют позицию в данном, в которую будет вставлена лите­ра, соответствующая символу шаблона. Если литера вставки , (за­пятая) является последним символом в шаблоне, фраза PICTURE (ШАБЛОН) должна быть последней фразой статьи описания дан­ного и за ней непосредственно должен следовать разделитель точ­ка. В результате в статье описания данного появляется комбина­ция «,.» или две последовательные точки, если используется фра­за DECIMAL-POINT IS СОММА (ДЕСЯТИЧНАЯ ТОЧКА ЗАПЯ­ТАЯ).

  3. При редактировании специальной вставкой в качестве ли­теры вставки используется символ . (точка), которая кроме того служит для выравнивания. Литера вставки для явной десятичной точки учитывается при определении размера данного. В одной и той же строке-литер шаблона не разрешается использование под­разумеваемой десятичной точки, представленной символом V (Т), и явной десятичной точки, представленной символом вставки. Ес­ли литера вставки является последней литерой шаблона, то фра­за PICTURE (ШАБЛОН) должна быть последней фразой в статье •описания данного и за ней непосредственно должен следовать раз­делитель точка. В результате в статье описания данного появляют­ся две последовательные точки или комбинация,. , если использу­ется фраза DECIMAL-POINT IS СОММА (ДЕСЯТИЧНАЯ ТОЧ­КА ЗАПЯТАЯ).

Результатом редактирования специальной вставкой является появление литеры специальной вставки в значении данного на по­зиции, указанной в строке-литер шаблона.

  1. Редактирование фиксированной вставкой указывается ва­лютным символом и символами редактирования, управляемыми знаком: +, —, CR(KP), ОВ(ДБ).

В данной строке-литер шаблона может быть использован толь­ко один валютный символ и только один из символов редактиро­вания, управляемых знаком. Если используются символы CR (КР) и DB (ДБ), они представляют две самые правые позиции литер и учитываются при определении размера данного. Если использует­ся символ + или —, он должен быть самой левой или самой пра­вой позицией литеры, которая учитывается при определении раз­мера данного. Валютный знак должен быть самой левой позицией литеры, кроме случаев, когда ему может предшествовать символ + или символ —; валютный знак учитывается при определении размера данного. При редактировании фиксированной вставкой в редактируемое данное помещается литера вставки, управляемая знаком, на позицию литеры, которую эта литера занимает в стро­ке-литер шаблона.

Зависимость результатов редактирования фиксированной вставкой от значения данного приведена ниже.

Редактирующий символ в строке-литер шаблона

Литеры вставки, появляющиеся в редактируемом данном

Данное положитель­ное или нуль

Данное отрицательное

+

+

Пробел

CR (КР)

'2 пробела

CR (КР)

'DB (ДБ)

То же

DB (ДБ)



  1. Редактирование плавающей вставкой указывается валют­ным символом и редактирующими символами, управляемыми зна­ком + или —, которые являются литерами плавающей вставки, взаимно исключающими друг друга в данной строке-литер шабло­на.

Редактирование плавающей вставкой указывается в строке- литер шаблона цепочкой из двух или более литер плавающей вставки. Цепочка литер плавающей вставки может содержать лю­бые символы фиксированной вставки или предшествовать литерам фиксированной вставки. Литеры простой вставки рассматриваются как часть цепочки литер плавающей вставки. Если литерой плава­ющей вставки является валютный символ, то цепочка литер плава­ющей вставки может содержать литеры фиксированной вставки ■CR (КР) или DB (ДБ) непосредственно справа от этой цепочки.

Самая левая литера цепочки литер плавающей вставки пред­ставляет левую границу для размещения литеры плавающей встав­ки. Самая правая литера цепочки литер плавающей вставки пред­ставляет правую границу для размещения литеры плавающей вставки.

Вторая слева литера плавающей вставки представляет левую границу числового данного, которое может быть помещено в поле данного. Ненулевые числовые данные могут располагаться, на­чиная от этой позиции, на любой позиции справа от этой границы.

Строка-литер шаблона определяет два способа редактирования плавающей вставкой. Первый из них заключается в том, что неко­торые или все ведущие позиции цифр слева от десятичной точки представляются литерой вставки; при втором способе позиции всех цифр в строке-литер шаблона представляются литерой вставки.

Если литеры вставки находятся только слева от десятичной точки, то в результате редактирования единственная литера встав­ки размещается на позиции литеры, непосредственно предшеству­ющей десятичной точке или первой ненулевой цифре в позициях данного, представленных цепочкой символов вставки (в зависимос­ти от того, что встречается ранее в данном). Позиции литер, пред­шествующие литере вставки, замещаются пробелами.

Если все позиции цифровых литер в строке-литер шаблона представляются литерой вставки, результат редактирования зави­сит от значения данных. Если значение равно нулю, все данное бу­дет содержать пробелы. Если значение не равно нулю, результат будет таким, как если бы литеры вставки находились только слева от десятичной точки.

Если все позиции цифровых литер в строке-литер шаблона представляются литерами вставки, то по крайней мере одна из ли­тер вставки должна находиться слева от десятичной точки.

Если цепочкой литер плавающей вставки являются управляю­щие символы редактирования + или —, то вставляемые литеры зависят от значения данного:

Редактирующий символ в строке-литер шаблона

Литеры вставки, появляющиеся в редактируемом данном

Данное положительно или нуль

Данное отрицательно

+

4“

■ч»

Пробел

Если все позиции цифровых литер в строке-литер шаблона представлены литерами вставки, результат зависит от значения данного. Если значение нуль, то данное будет содержать пробе­лы. Если значение не нуль, то результат будет таким же, как и в, случае, когда вставляемыми литерами являются литеры только слева от десятичной точки.

Во избежание отбрасывания литер при перемещении данных, минимальный размер строки-литер шаблона для принимающего поля должен равняться числу литер пересылаемого данного плюс число литер фиксированной вставки в принимающем поле, плюс 1 для литеры плавающей вставки. Если же отбрасывание литер про­изошло, то значением данных для редактирования будет значение, полученное после отбрасывания литер.

  1. Подавление ведущих нулей на позициях цифр указывается использованием литер 7(П) или* в качестве символов подавления в строке-литер шаблона. Эти символы являются взаимно исклю­чающими в одной и той же строке-литер шаблона. Каждый сим­вол подавления учитывается при определении размера данного. Ес­ли используется 2(П), литерой замещения будет пробел; если ис­пользуется звездочка, литерой замещения будет * .

Подавление и замещение нулей указывается в строке-литер шаблона цепочкой из одного или более символов подавления нуля в ведущих позициях цифр, которые должны быть заменены, если соответствующая позиция литеры в данных содержит нуль. Лите­ры простой вставки, находящиеся в этой цепочке символов или не­посредственно справа от нее, рассматриваются как часть этой це­почки.

В строке-литер шаблона имеется два способа представления подавления нуля: при первом способе некоторые или все ведущие позиции цифр слева от десятичной точки представляются символа­ми подавления; другой способ заключается в представлении всех позиций цифр в строке-литер шаблона символами подавления.

Если символы подавления оказались только слева от десятич­ной точки, то любой ведущий нуль в данном на позиции символа подавления в строке-литер шаблона заменяется на литеру заме­щения. Подавление заканчивается на первой ненулевой цифре из представленных строкой символов подавления или на десятичной точке, в зависимости от того, что встретилось первым.

Если все позиции цифр в строке-литер шаблона представляют­ся символами подавления и значение данных отлично от нуля, то, результат является таким же, как в случае, если бы литеры подав­ления находились только слева от десятичной точки. Если значе­ние является нулевым, то различаются следующие два случая: ес­ли символом подавления является 7(П), все данное, включая ли­теры редактирования, заменяется пробелами; если символом по­

давления является * , все данное, кроме явной десятичной точки, заменяется звездочками;

  1. символы +, —, *, Z(FI) и валютный знак при использова­нии в качестве плавающих литер замещения являются взаимно исключающими внутри одной строки-литер.

  1. П р а в и л а предшествования

В таблице показан порядок предшествования при использова­нии литер в качестве символов строки-литер шаблона.

Символ X в клетке таблицы указывает, что символы, используе­мые как заголовки соответствующих столбцов, могут предшество­вать (но необязательно непосредственно) в строке шаблона сим­волам, указанным в начале соответствующих строк таблицы. Сим­вол «—» указывает на недопустимость такого предшествования. Заключенные в фигурные скобки символы являются взаимно иск­лючающими. Валютный знак указывается с помощью символов «В. зн.».

В строку литер шаблона должны входить по крайней мере один из символов А, X, Z (П), 9 или *, или по крайней мере два из сим­волов + , —, или В.зн.

Символы неплавающей вставки + и —, символы плавающей вставки Z (П), *, +, — и В. зн. и символ Р (М) встречаются дваж­ды в таблице. Для каждого символа левый столбец и верхний ряд представляют использование этого символа слева от позиции де­сятичной точки. Правый столбец и нижний ряд представляют ис­пользование символа справа от позиции десятичной точки.

5.10. Фраза REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ)

  1. Н азначение

Фраза REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ) позволяет одну и ту же область памяти машины описывать различными статьями описания данных.

  1. О

    [ имя-данного-1 номер-уровня I filler

    бший формат

REDEFINES имя-данного-2

и

ПЕРЕОПРЕДЕЛЯЕТ

мя-данного-1

З

номер-уровня

АП

ЗАПОЛНИТЕЛЬ

имя-данного-2

В вышеприведенном формате номер-уровня, имя-данного-1 и FILLER (ЗАПОЛНИТЕЛЬ) не являются частью фразы REDEFI­NES (ПЕРЕОПРЕДЕЛЯЕТ) и приведены для наглядности.

  1. Синтаксические правила

  1. Фраза REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ), если она ука­зана, должна следовать непосредственно за субъектом статьи.

Номера уровней имени-данного-1 и имени-данного-2 долж­ны быть одинаковыми I и не могут быть равными 66 или 88282

Второй символ

Допустимость предшествования первого символа

Символы фиксированной вставки

Символы плавающей вставки

Другие символы

В

0

/


(+)


( CR 1 J (КР)

1 DB 1

1 (ДВ) )

в. зн

г Z -j (П)

( z 1 (П)

*

(±1

|±}

в.

зн

в. зн

9

А X

S (3

V (Т)

р (М)

р

(М)

Символы фиксирован­ной вставки

в

X

х

х

х

х

х

х

х

х

X

X

X

X

X

X

X

X

0

х

х

х

х

х

х

х

х

х

х

X

х

X

X

X

X

х

/

х

х

х

у

х

х

—.

х

/

х

X

х

х

х

х

х

х

X


х

X

х

X

/X

х

—■

х

х

х

х

х

X

х

х

х

х


х

х

Х<

X

х

X


х

X

х

—,

—.












{±1

X

X

X

х

X

- -

х

X

X

__

X

X

X

X

х •

X

1 CR(KP) 1 t ОВ(ДБ) /

X

X

X.

/X

X


X


zZ

X

X

X

X

X

X

В. зн.

_.

х

■—

Символы плавающей вставки

{Z(?} }

X

X

X

X.

. —

X

-

X.

V



{Z(n) I

X

X.

X

х

X

X

X

X

X

-

.....

X

X

т+

X

X.

X

Хх

X

X

X


X


X

X

X

X





X

X

В. зн.





х

-

--

х

-


■—

В. зн.

X

X

X

X

X

X



---

X

X

__

X

X