Лекция: Сложные программы, как правило, включают в себя подпрограммы, т.е. создается алгоритм основной программы и в основной программе используются команды обращения к подпрограмме.

 

Синтаксис команды обращения к подпрограмме

Б1 Б2 Б3 CALL
младшие разряды адрес ячейки памяти ЗУ с командой подпрогрпммы
старшие разряды

([SP-1]) ←(CPL)возвр.

([SP-2]) ←(CPH)возвр.

(SP)←(SP)-2; измен. адр. вершины стека.

(CP)←([< Б3>< Б2>]).

Последовательность выполнения команды обращения к подпрограмме CALL.

В стековую память записывается 16-ти разрядный адрес ячейки памяти возврата после выполнения подпрограммы (CPL)возвр., (CPH)возвр.

В указатель счетчика команд (PC) заносится адрес первой ЯП команды подпрограммы с КОП ([<Б3><Б2>]).. Поскольку стековая память использована для хранения адреса возврата из подпрограммы в основную программу, то изменяется значение указателя вершины стека (уменьшается на 2, т.е. SP=SP-2).

Команда возврата из подпрограммы

Б1 RET

(CPL) ← ([SP+1]), (запись в счетчик команд PC адреса

(CPH) ← ([ SP+2]) возврата в основную программу)

(SP)←(SP)+2, (изменяется адрес вершины стека )

В счетчик команд PC записывается содержимое стековой памяти по адресу ([SP+1]) и ([SP+2]), т.е. адрес возврата в основную программу.

После выполнения команды значение указателя стека SP увеличивается на 2, т.е. SP=SP+2.

6.3. Команда HLT – останов выполнения программы

Б1 HLT

МП прекращает выполнение программы и ждет указаний.

Пустая команда

Б1 NOP

Эта команда используется для резервирования ячеек при написании программы. МП никаких действий не выполняет, но осуществляет первый этап (чтение и дешифрование). Кроме того, команда может применяться при написании программы временной задержки (для изучаемого симулятора AVSIM85 время выполнения 1-ого этапа команды четыре секунды).

еще рефераты
Еще работы по информатике