Операции управления
Предназначены для организации переходов при выполнении про- граммы. В команде в явном виде указывается адрес следующей команды АСК. Для организации условных переходов кроме АСК указывается при- знак, по которому происходит переход. Обычно значение признака уста- навливается предыдущей командой. Типичные признаки:
v Результат равен нулю;
v Результат отрицательный;
v Результат положительный;
v Переполнение.
Некоторые операции не формируют признак результата. Для выпол- нения условного перехода после такой операции в программу включают специальную команду, формирующую признак результата. Типичным примером такой команды является команда “Сравнить”.
Для организации вызова подпрограмм применяют операции типа "пе- реход с возвратом". Перед выполнением перехода эта операция запоми- нает в памяти “точку возврата” - текущее значение счетчика команд. По- сле завершения подпрограммы в счетчик заносится запомненное значе- ние, то есть возобновляется выполнение программы.
Для управления вызовами подпрограмм используется специальный
механизм, называемый стеком. Сущность этого

![]()
Записать
Вытолкнуть
механизма приведена на рисунке.
Стек
представляет со- бой область памяти. Нача- ло этой области
памяти называется вершиной
сте- ка. В вершину стека зано- сятся данные выполняю-
щейся подпрограммы. Вызов подпрограммы приводит к “опусканию” сте- ка, после чего в вершине запоминается счетчик команд выполнявшейся подпрограммы. Возврат из подпрограммы вызывает “подъем” стека. Это приводит к выталкиванию из вершины стека и занесению в счетчик ко- манд запомненного адреса очередной команды и восстановлению в вер- шине стека данных предыдущей подпрограммы.
Таким образом, в вершине стека всегда находятся данные выполняе- мой в данный момент подпрограммы. Программа считается выполненной, если стек становится пустым. Рассмотрим этот процесс на примере вы- полнения приведенной на рисунке программы. На схеме отражен про- цесс запоминания данных выполняемой подпрограммы.
Действие: Вызов Main>Вызов F1>Вызов F2>Возврат из F2>Возврат из
F1>Возврат из Main
Стек: Пусто Main F1 F2 F1 Main Пусто
Main F1 Main Main
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.