1. Список элементов языка, определяемых реализацией

Ниже следует список элементов языка настоящего стандарта, для которых спецификация синтаксиса или правил доопределяется в реализации.

  1. Системное-имя. Правила образования системного-имени определяются реализацией (см. ч. 4, п. 4.2.2.1.2).

  2. Представление данных. Выбор основания системы счисления обычно за­висит от арифметических возможностей вычислительной машины (см. ч. 4, п. 4.3.4).

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

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

  5. Внешний переключатель. Внешний переключатель является устройством оборудования или программным средством, определяемым и именуемым реализа- дисй (см. ч. 4, п. 4.5).

  6. Внешний переключатель. Реализация определяет область действия (про­грамма, единица исполнения и т. п.) каждого внешнего переключателя и воз­можности (внешние по отношению к Коболу), используемые для изменения сос­тояния внешнего переключателя (см. ч. 4, п. 4.5).

  7. Область В. Область В занимает конечное число позиций литер, опреде­ляемое реализацией (см. ч. 4, п. 7.2).

  8. Имя-машииы в параграфе SOURCE-COMPUTER (ИСХОДНАЯ-МАШИ- НА). Имя-машииы является системным-именем, поэтому правила образования имени-машины определяются реализацией (см. ч. 6, п. 4.3.3, синтаксическое пра­вилі! (1)).

(о) Имя-машины в параграфе OBJECT-COMPUTER (РАБОЧАЯ-МАШИ­НА). Имя-машииы является системным-именем, поэтому правила образования имени-машины'определяется реализацией (см. ч. 6. п. 4.4.3, синтаксическое пра­вил-! fl)).

ПО) Фраза MEMORY SIZE (РАЗМЕР ПАМЯТИ).

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

I И) Программная основная последовательность.

При отсутствии фразы PROGRAM COLLATING SEQUENCE (ПРОГРАМ­МНЫЙ АЛФАВИТ) используется внутренняя основная последовательность (см. ч 6, п. 4.1.4. общее правило (6)).

  1. Имя-реализации в параграфе SPECIAL-NAMES (СПЕЦИАЛЬНЫЕ- ИМЕНА), Имя-реализации является системным именем, поэтому правила обра­зования имени-реализации определяются реализацией (см. ч. 6, п. 4.5.2).

STANDARD-1 (СТАНДАРТ-А) во фразе ALPHABET (АЛФАВИТ). Если между отдельными литерами стандартного и внутреннего наборов отсутет- вует соответствие и оно никак не определено, это соответствие определяется реализацией (см. ч. 6, п. 4.5.4, общее правило 4 а).

  1. Имя-реализации во фразе ALPHABET (АЛФАВИТ).

Если задана фраза имя-реализании-2, набор кодов литер или соответствую­щая основная последовательность определяется реализацией. Реализация также определяет соответствие между литерами или литерой набора кодов, специфи­цированного фразой имя-реализации-2, и внутренним набором кодов литер (см. ч. 6, п. 4.5.4, общее правило 4в). _

  1. Фраза RERUN (ПЕРЕПРОГОН). Реализация должна обеспечивать хо­тя бы один вариант фразы RERUN (ПЕРЕПРОГОН) (см. ч. 7, п. 2.12.4, общее правило (2)).

  2. Фраза RECORD (В ЗАПИСИ). Если в статье описания записи не ука­зана фраза RECORD (В ЗАПИСИ) или если во фразе RECORD (В ЗАПИСИ) указан диапазон позиций литер, реализация определяет, какой получается тип записей — переменной длины или фиксированной длины (см. ч. 2, п. 2.1.4.3).

  3. Фраза INDEXED BY (ИНДЕКСИРУЕТСЯ). Имя-индекса, идентифи­цируемое в исходной программе посредством фразы INDEXED BY (ИНДЕКСИ­РУЕТСЯ), не определяется в программе, так как его размещение и формат за­висят от машины и, не будучи данными, имена-индексов не могут быть связаны с какой-либо структурой данных (см. ч. 6, п. 5.8.3, синтаксическое правило (13)).

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

  5. Фраза SIGN (ЗНАК). Если вариант SEPARATE CHARACTER (ОТ­ДЕЛЬНО) не указан, представление знака данного определяет реализация (см. ч. S, п. 5.12.4, общее правило 5в).

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

  7. Фраза SYNCHRONIZED (ВЫДЕЛЕНО). Реализация должна указы­вать, как обрабатываются элементарные данные, связанные с фразой SYNCH­RONIZED (ВЫДЕЛЕНО), в зависимости от: (а) формата внешнего представле­ния содержащих их записей или групп, в описании которых указана фраза SYNCHRONIZED (ВЫДЕЛЕНО); (б) необходимого порождения неявных за­полнителей, если элементарное данное, непосредственно предшествующее данно­му, описание которого содержит фразу SYNCHRONIZED (ВЫДЕЛЕНО), не оканчивается на естественной границе (см. ч. 6. п. 5.13.4, общее правило (8)).

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

  9. Фраза об использовании USAGE IS BINARY (ДВОИЧНОЕ). Каждая реализация определяет точное воздействие фразы BINARY (ДВОИЧНОЕ) на выравнивание и представление данного в памяти машины, включая представле­ние любого алгебраического знака. Реализацией должно быть распределено до­статочно памяти для размещения десятичных значений максимального диапазо­на, определяемого строкой литер шаблона (см. ч. 6, п. 5.14.4, общее правило (3)).

  10. Фраза об использовании USAGE IS COMPUTATIONAL (ДЛЯ ВЫ- ЧИСЛЕНИИ). Каждая реализация определяет точное воздействие фразы USAGE IS COMPUTATIONAL (ДЛЯ ВЫЧИСЛЕНИЙ) на выравнивание и представле­ние данного в памяти машины, включая представление алгебраического знака и допустимый диапазон значений данных (см. ч. 6, п. 5.14.4, общее правило (4)).

  11. Фраза об использовании USAGE IS INDEX (ДЛЯ ИНДЕКСА). Каж­дая реализация определяет точное воздействие фразы USAGE IS INDEX (ДЛЯ ИНДЕКСА) на выравнивание и представление данного в памяти машины, вклю­чая действительные значения, присвоенные номеру вхождения элемента таблицы (см. ч. 6, п. 5.14.4, общее правило (7)).

  12. Фраза об использовании USAGE IS PACKED-DECIMAL (ДЕСЯТИЧ- НОЕ). Каждая реализация определяет точное воздействие фразы USAGE IS PACKED-DECIMAL (ДЕСЯТИЧНОЕ) на выравнивание и представление данно­го в памяти машины, включая представление алгебраического знака. Реализаци­ей должен быть выделен достаточный объем памяти для размещения максималь­ного значения, соответствующего десятичным позициям числа, определяемого строкой литер шаблона (см. ч. 6, п. 5.14.4, общее правило (9)).

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

  14. Оператор ACCEPT (ПРИНЯТЬ). Мнемоническое имя в операторе ACCEPT (ПРИНЯТЬ) должно связываться с устройством оборудования (см. ч. 6, п. 6.5.3, синтаксическое правило (1)).

  15. Оператор ACCEPT (ПРИНЯТЬ). Любое преобразование данных, тре­буемое при их перемещении с внешнего устройства в данное, представленное иден­тификатором-1, определяется реализацией (см. ч. 6. п. 6.5.4, общее правило (1)).

  16. Оператор ACCEPT (ПРИНЯТЬ). Размер одной передачи для каждого устройства оборудования определяется реализацией (см. ч. 6, п. 6.5.4, общее пра­вило (2)).

  17. Оператор ACCEPT (ПРИНЯТЬ). Если вариант FROM (С) не указан, то используется устройство, определяемое реализацией как стандартное (см. ч. 6, п. 6.5.4, общее правило (5)).

  18. Оператор ADD (СЛОЖИТЬ). Выделение достаточного поля памяти для выполнения вычислений без потери значащих цифр обеспечивается компи­лятором (см. ч. 6, п. 6.6.4, общее правило (4)).

  19. Оператор COMPUTE (ВЫЧИСЛИТЬ). Каждая реализация определя­ет приемы обработки арифметических выражений (см. ч. 6, п. 6.8.4, общее пра­вило (3)).

  20. Оператор DISPLAY (ВЫДАТЬ). Мнемоническое-имя в операторе DISPLAY (ВЫДАТЬ) связывается с устройством оборудования (см. ч. 6, п. 6.10.3, синтаксическое правило (1)).

  21. Оператор DISPLAY (ВЫДАТЬ). Любое преобразование данных, кото­рое может потребоваться при выводе литерала-1 или данного, соотнесенного идентификатору-1, на внешнее устройство, определяется реализацией (см. ч. 6, п. 6.10.4, общее правило (1)).

  22. Оператор DISPLAY (ВЫДАТЬ). Размер одной передачи для каждого устройства определяется реализацией (см. ч. 6, п. 6.10.4, общее правило (2)).

  23. Оператор DISPLAY (ВЫДАТЬ). Если не указана фраза UPON (НА), используется стандартное выводное устройство реализации (см. ч. 6, п. 6.10.4, общее правило (7)).

  24. Оператор ENTER (ВОЙТИ). Имя-языка-1 определяется реализацией (см. ч. 6, п. 6.12.3, синтаксическое правило (1)).Оператор SEARCH ALL (ИСКАТЬ ОСОБО). Начальная установка имени-индекса для идентификатора-1 игнорируется и установка имени-индекса меняется в ходе операции поиска способом, определяемым реализацией (см. ч. 6, п. 6.22.4, общее правило (4)).

  25. Оператор SET (УСТАНОВИТЬ). Каждая реализация определяет, на какие внешние переключатели может ссылаться оператор SET (УСТАНОВИТЬ) (см. ,ч. 6, п. 6.23.3, синтаксическое правило (5)).

  26. Оператор STOP литерал (ОСТАНОВИТЬ литерал). Продолжение функ­ционирования единицы исполнения начинается со следующего выполнимого опе­ратора в том случае, когда подключена зависящая от реализации процедура уп­равления возобновлением единицы исполнения (см. ч. 6. п. 6.24.4, общее правило (4)). '

  27. Оператор SUBTRACT (ОТНЯТЬ). Отведение достаточного поля па­мяти для выполнения вычислений без потери значащих цифр обеспечивается компилятором (см. ч. 6, п. 6.26.4, общее правило (4)).

  28. Состояние ввода-вывода. Если значение состояния ввода-вывода для операции ввода-вывода указывает критическое состояние ошибки, реализацией определяются действия, которые предпринимаются после выполнения любой применимой по оператору USE AFTER STANDARD EXCEPTION (ИСПОЛЬЗО­ВАТЬ ПОСЛЕ СТАНДАРТНОЙ ОШИБКИ) процедуры, или, если ни одна та­кая процедура не применима, после завершения стандартной системной обра­ботки ошибок ввода-вывода (см. ч. 7, п. 1.3.5; ч. 8, п. 1.3.4; ч. 9, п. 1.3,4).

  29. Состояние ввода-вывода. Условие постоянной ошибки остается дейст­вующим на все последующие операции ввода-вывода файла до тех пор, пока не будут вызваны определенные реализацией средства для устранения условия по­стоянной ошибки (см. ч. 7, п. 1.3.5; ч. 8, п. 1.3.4; ч. 9, п. 1.3.4).

  30. Состояние ввода-вывода. Если применимо более одного значения, зна­чение, которое помещается в состояние ввода-вывода, определяется реализацией (см. ч. 7, п. 1.3.5; ч. 8, п. 1.3.4; ч. 9, п. 1.3.4).

  31. Состояние ввода-вывода = 24. Сделана попытка занесения записей в относительный или индексный файл за пределами внешне определенных его гра­ниц. Способ определения границ устанавливается реализацией (см. ч. 8, п. 1.3.4; ч. 9, п. 1.3.4).

  32. Состояние ввода-вывода = 34, Сделана попытка занесения записи в последовательный файл за пределами внешне определенных границ файла. Спо­соб определения границ устанавливается реализацией (см. ч. 7, п. 1.3.5).

  33. Состояние ввода-вывода = 9х. Значение 9 состояния ввода-вывода ука­зывает на существование условий, определяемых реализацией. Значение х опре­деляется реализацией (см. ч. 7, п. 1.3.5; ч. 8, п. 1.3.4; ч. 9, п. 1.3.4).

  34. Фраза ASSIGN (НАЗНАЧИТЬ). Значение и правила для допустимого содержимого имени-реализации-1 и значение литерала-1 определяются реализа­цией (см. ч. 7, п. 2.3.3, синтаксическое правило (3); ч. 9, п 2.3.3, синтаксическое правило (3); ч. 8, п. 2.3.3, синтаксическое правило (3); ч. 13, п. 2.3 3, синтакси­ческое правило (3)).

  35. Фраза ASSIGN (НАЗНАЧИТЬ). Правила корректности имениреализа- ции-1 и литерала-1 определяются реализацией (см. ч. 7, 8, 9, 13, (т 2.3.4, общее правило 16). »

  36. Фраза ASSIGN (НАЗНАЧИТЬ). Реализация определяет связь между., файлом и запоминающей средой, на которую ссылается имя-реализации или ли­терал (см. ч. 7, п. 2.3.4, общее правило (3); ч. 8, п. 2 3.4 общее правило (4); ч. 9, п. 2.3.4, общее правило (5); ч. 13, п. 2 3.4, общее правило (3)).

  37. Фраза PADDING CHARACTER (ЛИТЕРА ЗАПОЛНИТЕЛЬ). Если фраза PADDING CHARACTER (ЛИТЕРА ЗАПОЛНИТЕЛЬ) не. задана, значе­ние, используемое для литеры заполнителя, определяется реализацией (см. ч. 7, а. 2.7.4, общее правило (5)).

  38. Имя-реализации во фразе RECORD DELIMITER (ОГРАНИЧИТЕЛЬ ЗАПИСИ). Имя-реализации является системным-именем; поэтому правила об­разования имени-реализации определяются реализацией (см. ч. 7, п. 2.8.2).

  39. Фраза RECORD DELIMITER (ОГРАНИЧИТЕЛЬ ЗАПИСИ). Правила корректности имени-реализации во фразе RECORD DELIMITER (ОГРАНИЧИ­ТЕЛЬ ЗАПИСИ) определяются реализацией (см. ч. 7, п. 2.3.4, общее правило 1в).

  40. Фраза RECORD DELIMITER (ОГРАНИЧИТЕЛЬ ЗАПИСИ).

Если задано имя-реализации-1, для определения длины записей переменной длины используется метод, определяемый реализацией (см. ч. 7, п. 2.8.4, общее правило (3)).

  1. Фраза RESERVE (РЕЗЕРВИРОВАТЬ). Если фраза RESERVE (РЕ­ЗЕРВИРОВАТЬ) нс указана, количество распределяемых областей ввода-выво­да определяется реализацией (см. ч. 7, п. 2.9.3, общее правило (1)).

  2. Фраза LABEL RECORDS (МЕТКИ). Вариант STANDARD (СТАН­ДАРТНЫ), указывает, что существуют метки файла или устройства, назначенного файлу, и эти метки соответствуют спецификациям меток, определяемым реали­зацией (см. ч. 7, п. 3.6.3, общее правило (2)).

  3. Фраза LABEL RECORDS (МЕТКИ), Если фраза LABEL RECORDS (МЕТКИ) не указана для файла, метки для этого файла должны соответство­вать спецификациям меток, определяемых реализацией (см. ч. 7, п. 3.6.3, общее правило (3)).

  4. Фраза VALUE (ЗНАЧЕНИЕ). Имя-реализации является системным- именем, поэтому правила образования имени-реализации определяются реализа­цией (см. ч. 7. п. 3.9.2).

  5. Оператор CLOSE (ЗАКРЫТЬ). Метки обрабатываются в соответствии со стандартной процедурой обработки меток, определенной реализацией. Выпол­няются операции закрытия, определенные реализацией (см. ч. 7, п. 4.2.4, общее правило ЗВ; ч. 8, п. 4.2.4, общее правило 2А; ч. 9, п. 4.2.4, общее правило 2А; ч. 13, п. 4.2.4, общее правило ЗВ).

  6. Оператор OPEN (ОТКРЫТЬ). Проверка или запись меток осуществля­ется в соответствии с процедурами, определяемыми реализацией для обработки входных или выходных меток (см. ч. 7, п. 4.3.4, общее правило (7); ч. 8, п. 4.4.4, общее правило (7); ч. 9, п. 4.4.4, общие .правила (7) и (14); ч. 13, п. 4 5.4, общее правило 5 а).

  7. Оператор WRITE (ПИСАТЬ). Если указано мпемоническое-имя-1, имя связывается с. особым свойством, определяемым реализацией (см. ч. 7, п. 4.7.3, синтаксическое правило (6)).

  8. Оператор WRITE (ПИСАТЬ). Если указано мнемоническооимя-1, пе­чатаемая страница продвигается в соответствии с правилами, установленными реализацией для данного устройства (см. ч. 7, п. 4.7.4, общее правило 15г);

  9. Оператор WRITE (ПИСАТЬ). Если указано PAGE (СТРАНИЦЫ) фразы ADVANCING (ПРОДВИЖЕНИЯ) и в статье описания, связанной с вы­водимой записью файла, не указана фраза LINAGE (ВЕРСТКА), позициониро­вание устройства па следующую физическую страницу выполняется в соответст­вии с правилами, определенными реализацией (см. ч. 7, п. 4.7.4, общее правило 15з).

  10. Катушка. Размеры катушки определяются реализацией (см. ч. 3).

  11. Том (unit). Размер тома определяется реализацией (см, ч. 3).