Cтраница 2
Первый байт первой команды подпрограммы называется точкой входа в нее, а адрес этого байта - адресом точки входа. Соответственно адрес первого байта команды, которой будет передаваться управление возврата из подпрограммы, называется адресом возврата. [16]
Карта типа END помимо спецпробивки ( позиция 1) и символов END ( позиции 2 - 4) содержит адрес точки входа ( позиции 6 - 8), на которую должно быть передано управление после загрузки модуля. [17]
Функции регистра 15: при передаче управления любой другой программе в него помещается адрес входа; при передаче управления из управляющей программы в нем находится адрес точки входа; при получении макрорасширений системных макрокоманд в него засылается адрес списка параметров для управляющей программы; при возврате управления из вызываемой программы он может содержать код возврата. [18]
Если в вызванной подпрограмме отсутствуют системные макрокоманды ( кроме SAVE и RETURN) и вызовы других подпрограмм, то в качестве базового регистра можно использовать регистр 15, в котором находится адрес точки входа в подпрограмму. [19]
При написании макроопределения учтем, что при вызове какой-либо программы в регистре 13 фиксируется адрес области сохранения вызвавшей программы, в регистре 14 - адрес возврата в вызвавшую программу, а в регистре 15 - адрес точки входа в вызванную программу, используемый в качестве начальной базы. А поскольку любые из этих регистров могут быть в макрокоманде выделены для целей базирования, то для упрощения алго-ритма - обеспечения группового базирования в начале макроопределения используются явные адреса. [20]
При получении управления программой обработки условия переполнения регистры 0 или 1 содержат данные работы макрокоманды PRTOV-содержимое регистров 2 - 13 то же, что и до выдачи макрокоманды, в регистре 14 - адрес возврата, а в регистре 15 - адрес точки входа в программу обработки условия переполнения. [21]
Регистры ссязей ( см. 2.6) - регистры, которые используются для связей между модулями: регистры 0 и 1-для передачи параметров, регистр 1-для передачи адреса списка параметрои; регистр 13 - адрес области сохранения; регистр 14-адрес возврата; регистр 15-содержит адрес точки входа при передаче управления вызываемому модулю и код возврата при возврате управления вызывающему модулю. [22]
Модуль с именем - содержимым регистра R - загружается в оперативную память. Адрес точки входа помещается в счетчик С. [23]
Объектный модуль заканчивается картой END. В ней может быть указан адрес точки входа в модуль. В этом случае в 6 - 8 - й колонках находится адрес точки входа, а в 15 - 16 - й колонках - ESDID секции, содержащей эту точку. [24]
![]() |
Организация обращения и выхода из подпрограммы. [25] |
Первая выполняемая команда подпрограммы называется точкой входа, ее адрес - адресом точки входа. Когда требуется выполнение подпрограммы, основная программа должна определить адрес точки входа соответствующей подпрограммы и произвести передачу управления по этому адресу. [26]
Точный размер резидентной части ядра МВМ при необходимости можно определить из схемы загрузки ядра МВМ, которая создается в процессе генерации ядра. Эта схема содержит имена модулей ядра, длины модулей и адреса точек входа. [27]
В процессе редактирования составляется оглавление фазы. В него входят имя фазы, начальный адрес загрузки фазы, адрес точки входа в фазу, адрес фазы в библиотеке и другая информация. Оглавление помещается в системную рабочую область на резидентном пакете дисков. [28]
Большинство современных языков программирования высокого уровня допускает оба метода передачи параметров. В качестве фактических параметров могут выступать и имена подпрограмм, передача подпрограмм всегда осуществляется передачей адреса точки входа в эти подпрограммы. [29]
Через глобальные символы устанавливается связь между независимо транслируемыми модулями внутри загрузочного модуля. Глобальные символы, определенные, например, как, метки внутри одного программного модуля, могут служить адресами точек входа из других программных модулей. На такие символы ссылаются из других модулей, например, для передачи управления или для обращения к данным. [30]