ГРУППА КОМАНД ПЕРЕДАЧИ УПРАВЛЕНИЯ
Назначение команд данной группы – изменение хода вычислительного процесса, т.е. реализация переходов в программе.
Безусловные команды передачи управления выполняют определенные операции с содержимым счетчика команд PC. Команды условной передачи управления в зависимости от состояния разрядов регистра признаков осуществляют или не осуществляют переход к определенной точке программы. Условия, с которыми оперируют команды условной передачи управления, следующие:
|
| Поле ССС
| NZ – ненулевой результат
| (Z = 0)
|
| Z – нулевой результат
| (Z = 1)
|
| NC - отсутствие переноса
| (CY = 0)
|
| C – перенос
| (CY = 1)
|
| P0 – нечетный результат
| (P = 0)
|
| PE – четный результат
| (P = 1)
|
| P – число положительное
| (S = 0)
|
| M – число отрицательное
| (S = 1)
|
|
JMP AD
(PC) (B3)(B2)
Передать адрес команде, адрес которой определяется содержимым второго и третьего байтов текущей команды.
Циклов: 3
Тактов: 10
Адресация: непосредственная
Признаки: -
J condition AD
if (ccc) then (PC) (B3)(B2)
else (PC) (PC)+1
Если задаваемое полем ССС команды условие реализуется, то управление предается команде, адрес которой в памяти определяется содержимым второго и третьего байтов команды. Команды JAMP IF не влияет на содержимое аккумулятора, регистров признака и состояния MP, а оперируют только со счетчиком команд PC. Если заданное в поле ССС условие не выполняется, МП переходит к выполнению команды, адрес которой определяется путем прибавления 1 к содержимому счетчика команд PC.
Циклов: 3
Тактов: 10
Адресация: непосредственная
Признаки: -
CALL AD
((SP)-1) (PCH)
((SP)-2) (PCL)
(SP) (SP)-2
(PC) (B3)(B2)
Старший полуадрес следующей команды из счетчика команд PC загружается в стек, т.е. заносится в ячейку памяти, адрес которой уменьшен на 1 относительно содержимого регистра-указателя стека SP. Младший полуадрес из счетчика команд PC засылается в ячейку памяти по адресу, уменьшенному на 2 относительно исходного содержимого регистра SP. Управление передается команде, адрес которой определяется содержимым второго и третьего байтов команды.
Циклов: 5
Тактов: 17
Адресация: непосредственная / косвенная регистровая
Признаки: -
C condition AD
if (ccc) then ((SP)-1) (PCH)
((SP)-2) (PCL)
(SP) (SP)-2
else (PC) (PC)+1
Вызвать подпрограмму по адресу по условию. Любая команда вызова подпрограммы, прежде чем передать управление команде, расположенной по адресу, размещенному во втором и третьем байтах команды, с целью упрощения процедуры возврата к основной программе заносит в стек адрес возврата.
Всякая подпрограмма заканчивается командой RETURN
Циклов: 3/5
Тактов: 11/17
Адресация: непосредственная/косвенная регистровая
Признаки: -
RET
(PCL) ((SP))
(PCH) ((SP)+1)
(SP) (SP)+2
Содержимое ячейки памяти, адрес которой задается указателем стека SP, заносится на место младшего байта в счетчик команд PC, содержимое ячейки памяти, адрес которой на 1 больше содержимого регистра SP, заносится на место старшего байта в счетчик команд PC. Значение регистра SP увеличивается на 2.
Циклов: 3
Тактов: 10
Адресация: косвенная регистровая
Признаки: -
R condition
if (ccc) then (PCL) ((SP))
(PCH) ((SP)+1)
(SP) (SP)+2)
else (PC) (PC)+1
Вернуться по условию
Циклов: 1/3
Тактов: 5/11
Адресация: косвенная/ непосредственная
Признаки: -
RST n
((SP)-1) (PCH)
((SP)-2) (PCL)
(SP) (SP)-2
(PC) 8ּ(NNN)
Произвести повторный запуск. Старший полуадрес следующей команды из счетчика команд PC передается в ячейку внешней памяти по адресу, значение которого на 1 меньше содержимого регистра SP. E следующий элемент стека с адресом (SP) – 2 загружается младший полуадрес следующей по программе команды. Содержимое SP уменьшается на 2. Управление передается команде, адрес которой определяется как произведение содержимого поля NNNּкоманды на 8, т.е. поле NNN команды заносится в счетчик команд PC в разряды , или (PC) (0000 0000 00NN ּN000).
Команда RSTиспользуется для операций с вектором прерывания и загружает в счетчик команд PC действительный начальный адрес соответствующей программы обслуживания прерывания.
Циклов: 3
Тактов: 11
Адресация: косвенная регистровая
Признаки: -
PCHL
(PCH) (H)
(PCL) (L)
Безусловно перейти по косвенному адресу. Содержимое регистра H заносится на место старшего байта в счетчик команд PC, содержимое регистра L – на место старшего байта.
Циклов: 1
Тактов: 5
Адресация: регистровая
Признаки: -
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|