Статус документа
Статус документа

ГОСТ 22558-89 (СТ СЭВ 6184-88, ИСО 1989-85) Язык программирования Кобол. Части 8-17

     1.3. Понятия языка

1.3.1. Вложенные исходные программы

1.3.2. Определитель файла

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

1.3.3. Глобальные и локальные имена

Имя данного именует данное. Имя файла именует определитель файла. Эти имена классифицируются как  локальные.

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


Локальное имя можно использовать для обращения к объекту, с которым оно связано, только из программы, в которой это локальное имя объявлено.

Некоторые имена всегда являются глобальными, некоторые имена всегда локальные; есть имена, которые могут быть локальными или глобальными в зависимости от спецификаций в программе, где эти имена объявлены.

Имя записи является глобальным, если в статье описания записи, в которой объявляется имя записи, указана фраза GLOBAL (ГЛОБАЛЬНОЕ) или в случае статьи описания записи в секции файлов фраза GLOBAL (ГЛОБАЛЬНОЕ) указана в статье описания файла для имени файла, связанного со статьей описания записи. Имя данного является глобальным, если фраза GLOBAL (ГЛОБАЛЬНОЕ) указана в статье описания данного, которой объявляется имя данного, или в другой статье, которой эта статья описания данного подчинена. Имя условия, объявленное в статье описания данного, является глобальным, если эта статья подчиняется другой статье, в которой определена фраза GLOBAL (ГЛОБАЛЬНОЕ). Однако иногда специальные правила запрещают задавать фразу GLOBAL (ГЛОБАЛЬНОЕ) для определенных статей описания данных, описания файлов или описания записей.

Имя файла является глобальным, если фраза GLOBAL (ГЛОБАЛЬНОЕ) определена в его статье описания файла.


Если имя данного, имя файла или имя условия, объявленное в статье описания данного, не является глобальным, оно является локальным.

Глобальные имена являются транзитивными для программ, содержащихся в других программах.

1.3.4. Внешние и внутренние объекты

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

Данное или определитель файла является внешним, если память, связанная с этим объектом, соотнесена единице исполнения, а не какой-то конкретной программе внутри единицы исполнения. К внешнему объекту может обращаться любая программа в единице исполнения, которая описывает объект. Обращение ко внешнему объекту из разных программ, использующих отдельные описания объектов, - это всегда обращение к одному и тому же объекту. В единице исполнения имеется только одно представление внешнего объекта.


Объект является внутренним, если память, связанная с этим объектом, соотнесена только программе, которая описывает этот объект. внутренние объекты могут иметь локальные имена.


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

1.3.5. Общие и начальные программы

Все программы, образующие часть единицы исполнения, могут иметь один или оба из следующих атрибутов: COMMON (ОБЩАЯ) и INITIAL (НАЧАЛЬНАЯ), или они могут не иметь этих атрибутов вообще.

Общей программой называется программа, которая несмотря на то, что она является прямо содержащейся в другой программе, может быть вызвана программой, прямо или косвенно содержащейся в этой другой программе. Атрибут "общая" присваивается путем указания фразы COMMON (ОБЩАЯ) в разделе идентификации программы. Фраза COMMON (ОБЩАЯ) облегчает написание подпрограмм, которые будут использоваться всеми программами, содержащимися в данной программе.

Начальная программа - это программа, состояние которой инициируется во время вызова. Таким образом при каждом вызове начальной программы ее состояние такое же, каким оно было при первом вызове этой программы в единице исполнения. В процессе инициации начальной программы инициируются внутренние данные программы; таким образом, данное из внутренних данных программы, описание которого содержит фразу VALUE (ЗНАЧЕНИЕ), инициируется на это указанное значение, а данное, описание которого не содержит фразу VALUE (ЗНАЧЕНИЕ), инициируется на неопределенное значение. Файлы с внутренними определителями файлов, которые связаны с программой, не находятся в открытом состоянии. Управляющие механизмы для всех операторов PERFORM (ВЫПОЛНИТЬ), находящихся в программе, устанавливаются в их начальное состояние. Атрибут "начальная" присваивается путем указания фразы INITIAL (НАЧАЛЬНАЯ) в разделе идентификации программы.