<<
>>

Поток управления между активациями подпрограмм

При вызове подпрограммы происходит ее активация. При этом в памяти формируется структура — запись активации. Запись активации содержит все данные, необходимые для работы подпрограммы.
В каждый момент времени управление может передаваться только одной подпрограмме. При вызове из Р подпрограммы Q выполнение Р приостанавливается. Выполнение Р возобновляется при возврате управления из Q. Таким образом, передача управления между активациями подпрограмм соответствует принципу LIFO (последний вошел — первый вышел).

Поток управления между активациями можно проиллюстрировать вставкой в тела подпрограмм операторов записи.

В следующей функции факториала управление достигает оператора записи сразу после входа и перед выходом из тела функции:

Здесь операторы записи трассируют поток управления между активациями. Символ ^ можно читать как «начало активации», а символ ^ как «завершение активации».

382

Глава 14. Управление подпрограммами

Покажем трассировку для вызова -(3). Для иллюстрации вложенности вызовов используем отступы (в функции средства организации отступов не показаны, но их легко добавить):

Видим, что выполнение активации -(3) приостанавливается, пока управление находится в активациях - (2), -(1) и - (0).

<< | >>

Еще по теме Поток управления между активациями подпрограмм:

  1. коян: Восходящий узел - включение в общий поток; Нисходящий узел - исключение из общего потока.
  2. § 3. Распределение внешнеполитических полномочий между высшими органами государственной власти и управления
  3. АКТИВАЦИЯ
  4. Различие между культурами Запада и Востока и России между ними, проблема родителей.
  5. Различие между культурами Запада и Востока и России между ними, проблема родителей.
  6. АКТИВАЦИЯ ПСИХОЛОГИЧЕСКАЯ
  7. АКТИВАЦИЯ: УРОВЕНЬ ИНДИВИДУАЛЬНЫЙ
  8. АКТИВАЦИЯ ФИЗИОЛОГИЧЕСКАЯ
  9. 9.7.8. Шаг восьмой:активация
  10. Активация Тела Света
  11. АКТИВАЦИЯ: УРОВЕНЬ ОПТИМАЛЬНЫЙ
  12. Альбатрос (восхождение на поток)
  13. ТЕОРИЯ ПОТОКА СОЗНАНИЯ
  14. 3.9. ПОТОК СОЗНАНИЯ