Cтраница 1
Команда возврата из прерываний, RTI, как показано в приведенном выше фрагменте программы, применяется для выхода из программы обработки прерываний и вызывает возобновление выполнения прерванной программы. Это осуществляется восстановлением содержимого PSW и возвратом адреса из стека, а также восстановлением информации в соответствующих регистрах, после чего выполнение прерванной программы возобновляется, как будто оно и не прерывалось. [1]
Команда возврата ( return instruction) осуществляет выход из подпрограммы и возврат в вызывающую программу. [2]
Команда возврата из прерывания RETFIE завершает прерывающую подпрограмму и устанавливает бит GIE, чтобы опять разрешить прерывания. [3]
Команда возврата из подпрограммы с очисткой стека ( MARK) реализована только в УВК СМ-4. Она позволяет автоматически возвращать в исходное состояние указатель стека, если аргументы подпрограммы передавались через стек. [4]
Команды возврата из прерываний ( RTI, RTT) осуществляют процедуру, обратную по отношению к той, которая была описана выше для обработки прерываний. Поэтому этими командами должны оканчиваться подпрограммы обработки прерываний, вызванных внешними устройствами и внутренними причинами, а также подпрограммы, управление которым передано после выполнения команд ЕМР, TRAP, ЮТ, ВРТ. [5]
Команда возврата - самогасящаяся, после своего исполнении она себя зачеркивает - заменяет нулями. [6]
Имеется команда возврата диаметров к первоначальным значениям. [7]
В командах возврата полный 12-разрядный адрес, включающий разряд адресации банка, выбирается из стека системы. Несмотря на то, что программирование в пространстве программного кода, организованном таким образом, затруднено, результат может оказаться намного эффективнее, чем при работе в обычной однородной среде линейного типа. [8]
При выполнении команды возврата из подпрограммы запомненный адрес извлекается из стека и направляется в С. [9]
Если в команде возврата в качестве косвенного указан адрес А, то содержание счетчика команд, хранимое в А, будет восстановлено и исходная программа продолжит свою работу. [10]
На сумматоре получена команда возврата, которая записывается в ячейку обратной связи га. [11]
После умножения выполняется команда возврата RTS. В этот момент в стеке может быть либо адрес возврата в программу, вызвавшую FACTOR, либо очередная двухсловная запись, выполненная при рекурсивном вызове подпрограммы FACTOR. В последнем случае в R1 загружается новое значение N, которое будет умножено на промежуточный результат, хранимый в стеке, и процесс повторится. Если же вычисление факториала закончено, то управление передается в вызывающую программу, а результат остается в стеке. [12]
Дополнительно для подготовки команды возврата понадобятся две константы, коды которых соответствуют командам безусловного перехода к первой команде группы В или С; мы поместим их в ячейки 71 и 72 - На блок-схеме ( рис. 14) стрелками указан порядок выполнения команд; взаимодействие соответствующих команд и команды возврата от подпрограммы к основной программе указано пунктиром. Выделенные команды в схеме приведены в развернутом виде в одном из возможных вариантов. [13]
Обращение к подпрограмме с помощью команды безусловного перехода с возвратом. [14] |
В конце подпрограммы размещается команда возврата, которая представляет собой команду ВПК, указывающую путем косвенной адресации адрес ячейки, в которой находится адрес Авт. [15]