Перейти до вмісту
ГОСТ 22558-89
/ 116

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

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

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

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

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

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

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

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

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

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

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

+

4“

■ч»

Пробел

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Н азначение

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

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

бший формат

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

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

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

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

АП

ЗАПОЛНИТЕЛЬ

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

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

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

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

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

282

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

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

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

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

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

В

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

282 ГОСТ 22558—89

П ГОСТ 22558—89 С. 283

родолжение

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

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

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

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

Побачили розбіжність з офіційним текстом?

Повідомити про неточність

Напишіть, що саме розходиться з офіційною публікацією. Код документа вкажіть у повідомленні — так ми швидше знайдемо потрібне місце.

Перейти до форми зворотного зв'язку

Дивіться також

Весь розділ →