Cтраница 4
Здесь С [ идентификатор подпрограммы ] - условие трансляции подпрограммы; если оно не равно нулю, подпрограмма транслируется, в противном случае не транслируется. Условие для каждого модуля вычисляется как сумма условий по всем вызывающим модулям и условия непосредственного вызова модуля пользователем. [46]
Вызываемый модуль производит перезапись содержимого регистров в слова 4 - 18 области сохранения вызывающего модуля и приступает к исполнению. После исполнения вызываемый модуль загружает в регистр 13 адрес области сохранения вызывающего модуля ( второе слово), а в регистры 14, 15, 0 - 12 переписывав. При написании программы на языке Ассемблера эти действия должен предусмотреть программист. Если же программа пишется на языке высокого уровня, их выполняет компилятор. [47]
Для указания передаваемых значений нужно выбрать модуль и нажать кнопку Next в диалоговом окне. Передаваемые значения ( passed values) - это данные, передаваемые из вызывающего модуля в вызываемый. Существуют два вида таких значений. Во-первых, передаваемые значения-аргументы ( Argument Passed Values) - определяемые пользователями аргументы в вызываемом модуле. Во-вторых, именованные передаваемые значения ( Named Passed Values) - аргументы, заранее определяемые для модуля. Нужно дать этому аргументу имя и значение. [48]
Все списки изначально связаны ссылками в специальный список, называемый списком свободного пространства. Процедура openbuf выбирает первый буфер из списка свободного пространства и возвращает его индекс вызывающему модулю. Иногда процедура deposit переполняет буфер; Когда это случается, deposit должна взять другую буферную запись из списка свободного пространства и добавить ее в список клиента. Аналогично, когда процедура withdraw выбирает последние данные из буферной записи, буфер возвращается в список свободного пространства. [49]
![]() |
Динамическое создание формы и ее отображение при помощи метода ShowModal. [50] |
Для отображения форм используется два метода: Show и GhowMudc. Они отличаются тем, что после вызова метода Show приложение продолжает выполнять программный код вызывающего модуля, а в случае вызова метода ShowModal управление передается вызываемой форме. В случае использования метода Show можно переключаться между вызывающей и вызываемой формой и производить в них некоторые действия, а в случае использования метода ShowModal вызываемая форма блокирует работу приложения до тех пор. [51]