Операции управления


Предназначены для организации переходов при выполнении программы. В команде в явном виде указывается адрес следующей команды АСК. Для организации условных пе­реходов кроме АСК указывается признак, по которому происходит переход. Обычно зна­чение признака устанавливается предыдущей командой. Типичные признаки:

v Результат равен нулю;

v Результат отрицательный;

v Результат положительный;

v Переполнение.

Некоторые операции не формируют признак результата. Для выполнения условного перехода после такой операции в программу включают специальную команду, формирующую признак результата. Типичным примером такой команды является команда “Сравнить”.

Для организации вызова подпрограмм применяют операции типа "переход с возвратом". Перед выполнением перехода эта операция запоминает в памяти “точку возврата” - текущее значение счетчика команд. После завершения подпрограммы в счетчик заносится запомненное значение, то есть возобновляется выполнение программы.

Для управления вызовами подпрограмм используется специальный механизм, называемый стеком. Сущность этого механизма приведена на рисунке.

Стек представляет собой область памяти. Начало этой области памяти называется вершиной стека. В вершину стека заносятся данные выполняющейся подпрограммы. Вызов подпрограммы приводит к “опусканию” стека, после чего в вершине запоминается счетчик команд выполнявшейся подпрограммы. Возврат из подпрограммы вызывает “подъем” стека. Это приводит к выталкиванию из вершины стека и занесению в счетчик команд запомненного адреса очередной команды и восстановлению в вершине стека данных предыдущей подпрограммы.

Таким образом, в вершине стека всегда находятся данные выполняемой в данный момент подпрограммы. Программа считается выполненной, если стек становится пустым. Рассмотрим этот процесс на примере выполнения приведенной на рисунке программы. На схеме отражен процесс запоминания данных выполняемой подпрограммы.

Действие: Вызов Main>Вызов F1>Вызов F2>Возврат из F2>Возврат из F1>Возврат из Main

Стек: Пусто Main F1 F2 F1 MainПусто

Main F1 Main

Main



Дата добавления: 2019-02-08; просмотров: 516;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.