Вызывающий модуль - Большая Энциклопедия Нефти и Газа, статья, страница 3
Поддайся соблазну. А то он может не повториться. Законы Мерфи (еще...)

Вызывающий модуль

Cтраница 3


Необходимо отличать внешнюю спецификацию модуля от другой документации, такой, как описание логики модуля, так как логика модуля может изменяться без воздействия вызывающих модулей, а изменение внешних спецификаций модуля обычно приводит к изменениям в вызывающих модулях. Внешняя спецификация модуля может принимать ряд физических форм в зависимости от включения шести перечисленных выше категорий.  [31]

Такое решение проблемы часто не дает положительных результатов, так как выходные параметры, значения которых рассчитываются в вызываемом модуле, обычно ярт ляются функцией его входных параметров, и значения результатов вычислений влияют на дальнейший ход работы вызывающего модуля.  [32]

Регистры ссязей ( см. 2.6) - регистры, которые используются для связей между модулями: регистры 0 и 1-для передачи параметров, регистр 1-для передачи адреса списка параметрои; регистр 13 - адрес области сохранения; регистр 14-адрес возврата; регистр 15-содержит адрес точки входа при передаче управления вызываемому модулю и код возврата при возврате управления вызывающему модулю.  [33]

Первым действием программного модуля должно быть сохранение общих регистров в области сохранения, переданной вызывающим модулем. Первоначально вызывающим модулем является управляющая программа ОС ЕС. Содержимое регистров связен должно сохраняться в любом случае, так как их содержимое может быть изменено системными макрокомандами, в которых тоже соблюдаются системные соглашения.  [34]

Вспомогательный управляющий модуль вставляется между двумя любыми связанными модулями. В этом случае вызывающий модуль в схеме запроса обращается не к процедуре, поставляющей элемент входного массива, а к вспомогательному управляющему модулю. Вспомогательный модуль может изменить значения параметров состояний выходных массивов вызываемого модуля ( сделать некоторые из них дополнительно запрашиваемыми); обращается к вызываемому модулю, анализирует результаты его работы; если нужно, проверяет условия переходов; если необходимо, выполняет обращение к модулям вывода или другим модулям семантической обработки, перерабатывающим элементы выходных массивов вызывавшегося модуля, которые в противном случае должны были бы быть подвергнуты буферизации; если не был создан элемент выходного массива, используемый модулем, вызвавшим вспомогательный, обращается повторно к вызываемому модулю; возвращает управление вызывающему модулю, когда создан необходимый ему элемент массива.  [35]

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

37 Способы объединения программных модулей. [37]

Программа состоит из модулей, связи между которыми подчиняются строгой иерархии: каждый модуль может обращаться только к модулям, которые ему непосредственно подчинены. Возврат всегда должен происходить в вызывающий модуль.  [38]

SKR - трехмерный массив, объединяющий МКТ плоскостей, на каждой из которых задано SM точек посредством двух координат X, Y. Значения SM, МКТ определяются вызывающим модулем.  [39]

Более сложным способом является использование таблицы, содержащей значения или адреса параметров. Адрес этой таблицы обычно записывается вызывающим модулем в регистр R5, который затем используется в подпрограмме для доступа к конкретным параметрам. Таблица с параметрами может располагаться либо в вызывающем модуле непосредственно за командой перехода к подпрограмме, либо в специально зарезервированной фиксированной области памяти. Недостаток табличного способа заключается в необходимости предусматривать для каждой подпрограммы отдельную область памяти, содержащую параметры. Разновидностью табличного способа является использование подпрограммой и вызывающим модулем общей области памяти, в которую вызывающий модуль записывает входные параметры, а подпрограмма помещает выходные параметры.  [40]

Проблемная программа может иметь сложную модульную структуру с передачами управления от модуля к модулю средствами ОС ЕС - CALL или LINK. Если база данных была открыта в вызывающем модуле, то вызываемый модуль должен иметь возможность продолжать работу с базой данных, а вызывающий модуль после возврата ему управления должен быть в состоянии воспользоваться результатами работы подпрограммы, даже если это касается базы данных.  [41]

Мы уже установили, что модули низкого уровня не должны управлять работой модулей высокого уровня. Точнее говоря, они могут возвратить в вызывающий модуль указания о том, что именно произошло при их выполнении. Таким образом, подпрограммы связываются передаваемыми элементами данных или индикаторами, так что функции модулей по обработке этих элементов разделены. Когда некоторый модуль заменяется заглушкой, указанную связь необходимо учитывать. Некоторые заглушки приходится писать так, чтобы установка выдаваемых ими индикаторов обеспечивала правильную работу зависящей от них подпрограммы.  [42]

Два взаимодействующих модуля образуют пару вызывающий модуль - подпрограмма. Для правильного их функционирования необходимо, чтобы вызывающему модулю было известно местонахождение подпрограммы в общей структуре программы, были определены способы вызова подпрограммы и возврата из нее и, наконец, выбран способ обмена данными между подпрограммой и вызывающим модулем.  [43]

Подпрограмма не должна портить данные, принадлежащие вызывающему или другим модулям. В частности, она не должна изменять установленное вызывающим модулем содержимое регистров RO - R5 в тех случаях, когда эти регистры не предназначены для передачи параметров.  [44]

Модуль с логической внутренней связностью представляет собой конструкцию, в которой за каждое обращение реализуется одна из соответствующих функций. Функция, которая необходима при очередном вызове, определяется явно вызывающим модулем. Примером такого модуля может служить модуль с функцией чтения ( записи) файла.  [45]



Страницы:      1    2    3    4