282 ГОСТ 22558—89




П

ГОСТ 22558—89 С. 283

родолжение

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

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

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

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

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

В

0

/

-


(+}


< CR 1 (КР)

1 DB (

1 (ДВ) J

в.

1 Z 1 (П)

* 1

[ Z 1 (П)

1 * 1

{+}

1±|

в. зн

в. зн

9

А X

S (а)

V (Т)

р (М)

р

(М)

і

Другие СИМВОЛЫ

9

X

X

X

1 1 ІХ

х

х

х

х

х

.—

х

х

х

х

X

X

А

X

X

X

___

X

X

S(3)

--

•—

....

—.

V(T)

х

х

х

х

х

х

X

—.

X

х

х

х

х

Р(М)

х

—■

X

X

х

—.

х

X

х

х

х


X

х

Р(М)

X

X


—-

—-

X

X

X

  1. В секции файлов эта фраза не должна использоваться в статьях уровня 01.

  2. В секции коммуникаций эта фраза не должна использовать­ся в статьях уровня 01.

  3. Статья описания данного для имени-данного-2 не может содержать фразу OCCURS (ПОВТОРЯЕТСЯ). | Однако имя- данного-2 может подчиняться данному, статья описания которо­го содержит фразу OCCURS (ПОВТОРЯЕТСЯ). При этом, однако, имя-данного-2 во фразе REDEFINES (ПЕРЕОПРЕДЕ­ЛЯЕТ) не должно индексироваться.

Как исходное определение, так и переопределение не долж- ны включать данные переменного размера.

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

  2. Имя-данного-2 не должно уточняться, даже если оно не­однозначно, так как в этом случае благодаря расположению фразы REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ) в исходной прог- рамме двусмысленности не будет.

  3. Допустимы множественные переопределения одних и тех же позиций литер. Множественные переопределения одних и тех же позиций литер должны использовать имя-данного статьи, в которой впервые была определена область памяти.

  4. Статьи, дающие новые описания позиций литер, не должны содержать фразу VALUE (ЗНАЧЕНИЕ), за исключением статей описаний имен-условий.

  5. Между статьями описания имени-данного-2 и субъекта статьи не может появляться статья, имеющая номер-уровня, чис­ленно меньший номера уровня имени-данного-2 и субъекта статьи.

  6. Статьи, дающие новые описания позиций литер, должны следовать за статьей, определяющей область имени-данного-2, без промежуточных статей, описывающих новые позиции литер.

  7. Для уровня 1 ядра имя-данного-2 не может быть подчине­но статье, содержащей фразу REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ).

Для уровня 2 ядра имя-данного-2 может быть подчинено ста- тье, содержащей фразу REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ).

5.10.4.Общие правила

(1) Распределение памяти начинается с имени-данного-2 и продолжается на область памяти, достаточную для размещения данного, определяемого именем-данного-1 или фразой FILLER (ЗАПОЛНИТЕЛЬ).то же время имя-данного-3 не может входить в группу, опреде­ляемую именем-данного-2.

  1. . Общие правила

  1. Если имя-данного-3 задано, то имя-данного-1 является именем группы, которая содержит все элементарные данные, начиная от имени-данного-2 (если имя-данного-2 является эле­ментарным данным) или первого элементарного данного в име- ни-данного-2 (если имя-данного-2 является именем группы) и заканчивая именем-данного-3 (если имя-данного-3 является эле­ментарным данным) или последним элементарным данным в имени-данного-3 (если имя-данного-3 относится к групповому данному).

  2. Если имя-данного-3 не указано, то все свойства данного, определенного именем-данного-2, становятся свойствами данно- го, определенного именем-данного-1.

  1. Фраза SIGN (ЗНАК)

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

Фраза SIGN (ЗНАК) определяет позицию и способ представ­ления знака числа, если эти сведения необходимо явно задать.

  1. Общий формат

[SIGN IS] [ ! [SEPARATE CHARACTER]

11 I 1 x2A. liN Д I

^іітажднйй) і°ТДЕЛЬН°і

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

  1. Фраза может быть задана только в статьях описания чис­ловых данных, строка литер шаблона которых содержит литеру S(3), или в статьях описания групповых данных, содержащих хоть одну статью описания числовых данных вышеуказанного типа.

  2. Статьи описания числовых данных, содержащие фразу SIGN (ЗНАК), должны быть описаны явно или неявно с исполь­зованием DISPLAY (ДЛЯ ВЫДАЧИ). ,

  3. Если в описании файла указана фраза CODE-SET (АЛ­ФАВИТ), то статьи описания входящих в его записи числовых дан­ных со знаком должны содержать фразу SEPARATE (ОТДЕЛЬ­НО).

  1. Общие правила

  1. Фраза SIGN (ЗНАК) необязательна; она определяет пози­цию и способ представления знака числового данного, в статье описания которого она встречается, или числовых данных, подчи­ненных групповому данному, статья описания которого содержит эту фразу. Фраза SIGN (ЗНАК) применяется только к статьям описания числовых данных, строка литер шаблона которых содер­жит символ S (3), указывающий на наличие знака числа, но не на его способ представления или позицию.

  2. Если фраза SIGN (ЗНАК) указана для группового данно­го, подчиненного другому групповому данному, для которого фра­за SIGN (ЗНАК) тоже указана, то фраза, определенная на млад­шем уровне иерархии, подавляет фразу SIGN (ЗНАК), указан­ную на старшем уровне иерархии.

  3. Если фраза SIGN (ЗНАК) указана в статье описания эле­ментарного числового данного, подчиненного групповому данному, для которого фраза SIGN (ЗНАК) тоже указана, то фраза SIGN (ЗНАК), определенная в статье описания элементарного числового данного подавляет фразу SIGN (ЗНАК) группового данного.

  4. Если статья описания числового данного не содержит фра­зу SIGN (ЗНАК), а строка литер его шаблона содержит символ S(3), то позиция и представление знака (по умолчанию) опреде­ляются реализацией. Общие правила п. 5.12.4 не применимы к та­ким данным.

  5. Если вариант SEPARATE (ОТДЕЛЬНО) не указан, то предполагается, что знак числа связывается с первой (или, соотч ветственно, последней) позицией цифры элементарного числового данного; символ S (3) в строке-литер шаблона не учитывается при определении размера данного (в терминах числа литер стандартно­го формата данного); представление знака данного определяет реализация.

  6. Если вариант SEPARATE (ОТДЕЛЬНО) указан, то знак числа будет занимать первую (или, соответственно, последнюю) позицию литеры элементарного числового данного; эта позиция литеры не является позицией цифры; символ S (3) в строке-литер шаблона учитывается при определении размера данного (в терми­нах числа литер стандартного формата данного); положительный или отрицательный знак числа представляют литеры стандартно­го формата данных + или —.

  7. Все необходимые преобразования при выполнении вычис­лений или сравнений для данных, статьи описания которых содер­жат фразу SIGN (ЗНАК) и символ S (3) в строке литер-шаблона, выполняются автоматически.

  1. Фраза SYNCHRONIZED (ВЫДЕЛЕНО)

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

Фраза SYNCHRONIZED (ВЫДЕЛЕНО) определяет выравни­вание элементарного данного по естественным границам машинной памяти (см. ч. 4, п. 4.3.7)

  1. Общий формат

I SYNCHRONIZED ) Г LEFT '

I SYNC J RIGHT

ВПРАВО


ВЛЕВО


ВЫДЕЛЕНО


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

  1. Эта фраза может появляться только в статье описания элементарного данного.

  2. SYNC является сокращением слова SYNCHRONIZED.

  1. Общие правила

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

Такая неиспользованная память включается:

  1. в размер любой группы данных, к которой принадлежит эле­ментарное данное;

  2. в распределяемые позиции литер, когда групповое данное является объектом фразы REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ). Неиспользуемые позиции литер не включаются в переопределяемые позиции, если объектом фразы REDEFINES (ПЕРЕОПРЕДЕЛЯ­ЕТ) является элементарное данное.

  1. Фраза SYNCHRONIZED (ВЫДЕЛЕНО), в которой не ука­зано ни RIGHT (ВПРАВО), ни LEFT (ВЛЕВО), означает, что эле­ментарное данное нужно расположить между естественными гра­ницами таким образом, чтобы достичь наиболее эффективного его использования. Особенности размещения определяются реализа­цией.

  2. SYNCHRONIZED LEFT (ВЫДЕЛЕНО ВЛЕВО) определя­ет расположение элементарного данного, начиная с левой крайней позиции литеры, в естественных границах памяти, в которую оно помещается.

  3. SYNCHRONIZED RIGHT (ВЫДЕЛЕНО ВПРАВО) указы­вает, что элементарное данное размещается вплотную к правой по­зиции литеры в естественных границах памяти, в которую оно по­мещается.

  4. При обращении в исходной программе к данному, имеюще­му в описании фразу SYNCHRONIZED (ВЫДЕЛЕНО), при опре­делении любого действия, зависящего от размера (например вы­равнивания, усечения, переполнения), используется размер данно­го, задаваемый фразой PICTURE (ШАБЛОН).

  5. Если описание данного содержит фразу SYNCHRONIZED (ВЫДЕЛЕНО) и знак числа, то последний появляется в позиции, знака, явно или неявно указанной фразой SIGN (ЗНАК).

  6. Если фраза SYNCHRONIZED (ВЫДЕЛЕНО) указана для данного внутри области действия фразы OCCURS (ПОВТОРЯЕТ­СЯ), то выделяется каждое вхождение повторяющегося данного, для которого при этом порождается необходимый неявный запол­нитель.

  7. Фраза SYNCHRONIZED (ВЫДЕЛЕНО) зависит от обору­дования и в дополнение к правилам (1) — (7) при реализации дол­жно быть точно определено, как обрабатываются связанные с этой фразой элементарные данные в зависимости от формата внешнего представления содержащих их записей или групп и порождения необходимых неявных заполнителей (если элементарное данное, непосредственно предшествующее данному, содержащему фразу SYNCHRONIZED (ВЫДЕЛЕНО), не оканчивается на естествен­ной границе). Автоматически порождаемые позиции заполнителя включаются в размер каждой группы, в которой содержится за­полнитель, и в переопределяемые поля машинной памяти, если группа данных, частью которой является заполнитель, появляется как объект фразы REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ).

  8. Реализация может задавать автоматическое выравнивание внутри записи для любого внутреннего формата данных, за исклю­чением данных, использование которых указано DISPLAY (ДЛЯ ВЫДАЧИ). Однако запись в целом может быть выделена.

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