Cтраница 2
Связь между вызываемой программой относится больше к адресам памяти, чем к численным значениям аргументов. [16]
Если все необходимые вызываемые программы не могут одновременно разместиться в имеющейся основной памяти, следует применить технику перекрытия. Структура программы о перекрытием может быть предварительно спланированной или ( только для ОС ЕС) динамической. Если структура с перекрытием может быть спланирована предварительно, она задается о помощью управляющих операторов Редактора связей. [17]
При этом способе вызываемая программа может входить в ту же программную структуру, что и вызывающая. В простейшем случае вызова ( когда вызывающая и вызываемая программы фактически представляют собой части некоторой большой программы) для передачи параметров используются регистры или общие области памяти, а вызываемой программе соответствует в очереди диспетчера та же запись, что и вызывающей. В некоторых системах между вызываемой и вызывающей программами возникают значительно более сложные отношения, на которых мы остановимся несколько позже. [18]
Ускорение запуска часто вызываемых программ Проверка жесткого диска на наличие ошибок. [19]
В результате выполнения вызываемой программы на языке Ассемблера значения аргументов могут измениться. Часто бывает так, что эти новые значения нужны вызывающей программе для продолжения ее работы. Подпрограмма на языке Ассемблера может передавать результаты вычислений через список аргументов. [20]
Если данные передаются вызываемой программе через список аргументов, то для списка в вызывающей программе строится область аргументов. В нее заносятся адреса памяти, в которой размещаются значения фактических аргументов, передаваемых в вызываемую программу для ее выполнения. [21]
Если данные передаются вызываемой программе через список аргументов, то для списка в вызывающей программе строится область аргументов. [22]
Когда связь с вызываемой программой устанавливается оператором ВЫЗВАТЬ, в котором литерал есть имя вызываемой программы, выполнение программы начинается с первого оператора раздела процедур, исключая декларативные секции. [23]
Когда связь с вызываемой программой устанавливается оператором ВЫЗВАТЬ, в котором литерал является именем точки входа, определенной оператором ВХОД, выполнение программы начинается первого оператора. [24]
Перед возвратом из подпрограммы вызываемая программа должна вбсста-новить содержимое всех регистров из области сохранения. Если подпрограмме передаются также и параметры, то их адреса ( длиной 4-байт) обычно собираются вызывающей программой в список параметров. [25]
Оператор определяет логический конец вызываемой программы. [26]
При этом указывается имя вызываемой программы и имеется возможность передать ей параметры подобно оператору CALL. Необходимо только, чтобы аналогичный список формальных параметров присутствовал в списке оператора PROGRAM, с которого может начинаться самостоятельная программная единица. [27]
Вариант USING делает доступными вызываемой программе данные, щределенные в вызывающей программе. [28]
Сначала проверяется, является ли вызываемая программа резидентной. Проверка идет по Таблице номеров системных задач. Для резидентной программы управление возвращается программе Согласование. [29]
Оператор EXITS предназначен для указания вызываемой программы, необходимой для дополнительной обработки. [30]