Другая подпрограмма - Большая Энциклопедия Нефти и Газа, статья, страница 2
Мода - это форма уродства столь невыносимого, что нам приходится менять ее каждые шесть месяцев. Законы Мерфи (еще...)

Другая подпрограмма

Cтраница 2


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

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

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

Подпрограмма на Ассемблере, которая не вызывает другую подпрограмму, называется подпрограммой на Ассемблере низшего уровня. В примере 5 приведена подпрограмма низшего уровня, которая может быть вызвана программой на Алгамсе. Если в теле подпрограммы используется регистр 13, то в подпрограмме должны быть предусмотрены команды для сохранения и восстановления его содержимого.  [19]

В теле подпрограммы могут содержаться обращения к другим подпрограммам или к самой себе. Однако следует иметь в виду, что для хранения значения каждой переменной в памяти машины АЛ МО отводится одно и то же слово, независимо от того, сколько раз и каким образом происходит обращение к блоку, в котором она описана.  [20]

Если вызванная подпрограмма будет в свою очередь вызывать другие подпрограммы, то она должна сохранить адрес переданной ей области сохранения во втором слове новой области сохранения. Кроме того, она должна запомнить адрес новой области сохранения в третьем слове переданной ей области сохранения.  [21]

В свою очередь, внутри подпрограммы возможен вызов другой подпрограммы.  [22]

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

Подпрограмма MAIN управляет последовательностью основных действий через вызов других подпрограмм, как показано на рис. 4.1. Некоторые процедуры вызываются только 1 раз, эти вызовы составляют подготовительную фазу вычислений. Остальные действия выполняются в цикле: каждый проход по циклу соответствует одной итерации для стационарной задачи или одному шагу по времени для нестационарной задачи.  [24]

Программная единица, из которой осуществляется обращение к другой подпрограмме или к функции, называется вызывающей программой.  [25]

Большинство подпрограмм пакета LINPACK не обращаются к какой-либо другой подпрограмме пакета. Единственное исключение составляют подпрограммы оценки обусловленности с именами, заканчивающимися на СО, каждая из которых обращается к соответствующей FA-подпрограмме для факторизации матрицы. Однако почти все подпрограммы пакета LINPACK обращаются к одной или нескольким подпрограммам пакета BLAS. Чтобы упростить комплектацию библиотек, тексты каждой подпрограммы пакета LINPACK включают в себя комментарии, которые перечисляют все подпрограммы пакета BLAS и функции Фортрана, требуемые этой подпрограммой.  [26]

Часть программы, получающая управление при запуске и вызывающая другие подпрограммы.  [27]

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

Полное программное обеспечение состоит из головной программы и ряда других подпрограмм.  [29]

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



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