Из содержимого регистра А вычитаются данные, размещенные в памяти по адресу, определяемому в результате кон- катенации содержимого регистров Н и L.
STC (set carry) - установить признак переноса.
Формат команды: 0010111
(C)<-1.
ANA r (AND register) — логическое И с регистром.
Формат команды: 10100SSS
(А)<-(А)*(r)
C<==>AC<-0
Команда реализует поразрядное булево умножение над байтами, которые хранятся в регистрах блока РОН. При этом признак переноса как и признак вспомогательного переноса, приобретает значение нуль.
ORA r (OR register) — логическое ИЛИ с регистром.
Формат команды: 10110SSS
(А)<-(А) ИЛИ (r)
C<==>AC<-0
Команда реализует поразрядное булево ИЛИ над байтами, которые хранятся в регистрах блока РОН. При этом признак переноса как и признак вспомогательного переноса, приобретает значение нуль.
J condition addr (conditional jump) — перейти по условию.
Формат команды: 11ССС01О, low addr, high addr
if(CCC) then (PC)<-(byte 3)(byte 2) else (PC)<-(PC)+i
Если заданное полем CCC команды условие реализуется, то управление передается команде, адрес которой в памяти определяется как конкатенация второго и третьего байтов команды. Команда условного перехода JUMP IF тиражируется кодированием условий перехода в поле CCC. В МП 8080 имеет место следующий набор команд условного перехода:
JC (jump on carry) — переход по переполнению - ССС<-С=1;
JNC (jump on no carry) —переход по отсутствию переполнения - ССС<-С=0;
JZ (jump on zero) — переход по нулевому результату - ССС<-Z=0;
JNZ (jump on no zero) —переход по ненулевому результату - ССС<-Z=1;
JP (jump on positive) — переход по положительному результату - ССС<-S=0;
JM (jump on minus) — переход по отрицательному результату - ССС<-S=1;
JPE (jump on parity even) — переход по четному результату - ССС<-P=1;
JPO (jump on parity odd) - пepexoд по нечетному результату - ССС<-P=0;
Команды JUMP IF не влияют на содержимое аккумулятора, регистров признака и состояния МП, а оперируют только со счетчиком команд PC. При выполнении сданного в поле CCC условия (проверяется по значению соответствующего разряда в регистре признаков) команда JUMP IF загружает в PC альтернативный адрес (адрес перехода). Если заданное в поле CCC условие не реализуется, МП переходит к выполнению команды, адрес которой определяется путем прибавления 1 к содержимому счетчика команд, т. е. (PC)<—(PC) + 1.
PCHL (jump H and L indirect—move H and L to PC) — безусловно перейти по косвенному адресу. Формат команды: 11101001
(РСН)<-(Н)
(PCL)<-(L).
Содержимое регистра H помещается в старшие разряды счетчика команд, а регистра L - в младшие разряды счетчика команд. Содержимое регистров H и L не изменяется. Команда используется для реализации процедуры перехода по косвенному адресу JUMP INDIRECT.
CALL addr (call) — вызвать.
Формат команды: 11001101, low addr, high addr
((SP)-l)<-(PCH)
((SP)-2)<-(PCL)
(SP)<-(SP)—2
(PC)<-(byte 3)(byte 2).
По команде CALL старший полуадрес следующей команды из счетчика команд PC загружается в стек, т.е. заносится в ячейку памяти, адрес которой уменьшен на 1 относительно содержимого регистра-указателя стека SP. Младший полуадрес из счетчика команд PC засылается в ячейку памяти по адресу, уменьшенному на 2 относительно исходного содержимого регистра SP. Управление передается команде, адрес которой определяется в результате конкатенации в программном счетчике содержимого второго и третьего байтов команды.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.