Четверг, 16.05.2024, 01:50

Микропроцессорные системы

Меню сайта
Главная » Статьи » Приложения

Приложение 1. "Система команд МП i8080A"

В данном разделе приводится описание всех команд МП i8080A разделенных на пять групп. При описании использованы следующие символы и сокращения:

Символ

Значение

ADDR

16-битовый адрес

DATA8

8-битовые данные

DATA16

16-битовые данные

PORT

8-битовый адрес УВВ

byte2

Второй байт команды

byte3

Третий байт команды

R, R1, R2

Один из регистров: A, B, C, D, E, H, L

RP

Одна из регистровых пар:

B задает пару B:C;

D задает пару D:E;

H задает пару H:L

RH

Старший регистр пары

RL

Младший регистр пары

PC

16-битный счетчик команд

SP

16-битный указатель стека

[ ]

Содержимое ячейки памяти или R

<—

Оператор пересылки

/\

Логическое И

-\/

Исключающее ИЛИ

\/

Логическое ИЛИ

+

Сложение

-

Вычитание

*

Умножение

<—>

Оператор обмена

/

Обратный код

КОМАНДЫ ПЕРЕСЫЛКИ ДАННЫХ

Команды этой группы служат для пересылки данных между регистрами, а также между регистрами и ячейками памяти. Эти команды не оказывают воздействия на регистр признаков.

MOV R1, R2 (Пересылка регистровая)

R1 <— R2

Содержимое регистра R2 пересылается в регистр R1.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: не изменяются

MOV R, M (Пересылка из памяти)

R <— [H:L]

Содержимое ячейки памяти, адрес которой содержится в регистрах H и L, пересылается в регистр R.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: не изменяются

MOV M, R (Пересылка в память)

[H:L] <— R

Содержимое регистра R пересылается в ячейку памяти, адрес которой содержится в регистрах H и L.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: не изменяются

MVI R, DATA8 (Пересылка непосредственная)

R <— DATA8

Содержимое второго байта (DATA8) команды пересылается в регистр R.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: не изменяются

MVI M, DATA8 (Пересылка в память непосредственная)

[H:L] <— DATA8

Содержимое второго байта (DATA8) команды пересылается в ячейку памяти, адрес которой находится в регистрах H и L.

Машинные циклы: 3

Машинные такты: 10

Адресация: непосредственная/косвенно-регистровая

Признаки: не изменяются

LXI RP, DATA16 (Загрузка регистровой пары непосредственная)

RH <-- byte3

RL <— byte2

Содержимое третьего байта команды загружается в старший регистр пары RP, а содержимое второго байта - в младший регистр пары RP.

Машинные циклы: 3

Машинные такты: 10

Адресация: непосредственная

Признаки: не изменяются

LDA ADDR (Прямая загрузка аккумулятора)

A <-- [ADDR]

Содержимое ячейки памяти, адрес которой находится во втором и третьем байтах (ADDR) команды загружается в аккумулятор.

Машинные циклы: 4

Машинные такты: 13

Адресация: прямая

Признаки: не изменяются

STA ADDR (Прямое запоминание аккумулятора)

[ADDR] <-- A

Содержимое аккумулятора записывается в ячейку памяти, адрес которой находится во втором и третьем байтах (ADDR) команды.

Машинные циклы: 4

Машинные такты: 13

Адресация: прямая

Признаки: не изменяются

LHLD ADDR (Прямая загрузка регистров H и L)

L <— [ADDR]

H <— [ADDR + 1]

Содержимое ячейки памяти, адрес которой расположен во втором и третьем байтах (ADDR) команды, загружается в регистр L. Содержимое следующей ячейки памяти загружается в регистр H.

Машинные циклы: 5

Машинные такты: 16

Адресация: прямая

Признаки: не изменяются

SHLD ADDR (Прямое запоминание регистров H и L)

[ADDR] <-- L

[ADDR+1] <— H

Содержимое регистра L записывается в ячейку памяти, адрес которой расположен во втором и третьем байтах (ADDR) команды, содержимое регистра H записывается в следующую ячейку памяти.

Машинные циклы: 5

Машинные такты: 16

Адресация: прямая

Признаки: не изменяются

LDAX RP (Косвенная загрузка аккумулятора)

A <— [RP]

Содержимое ячейки памяти, адрес которой расположен в регистровой паре RP, загружается в аккумулятор.

Примечание: могут использоваться только регистровые пары B:C и D:E.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: не изменяются

STAX RP (Косвенное запоминание аккумулятора)

[RP] <-- А

Содержимое аккумулятора пересылается в ячейку памяти, адрес которой находится в регистровой паре RP.

Примечание: могут использоваться только регистровые пары B:C и D:E.

Машинные циклы: 2

Машинные такты: 7

Адресация: регистровая

Признаки: не изменяются

XCHG (Обмен между регистрами H, L и D, E)

H <—> D

L <—> E

Регистровые пары H:L и D:E обмениваются содержимым.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: не изменяются

АРИФМЕТИЧЕСКИЕ КОМАНДЫ

Команды этой группы выполняют арифметические операции над данными в регистрах и памяти. Данный тип команд воздействует на флаги состояния стандартным образом (кроме особо указанных случаев).

ADD R (Регистровое сложение)

А <— А + R

Содержимое регистра R складывается с содержимым аккумулятора. Результат операции записывается в аккумулятор.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,AC

ADD M (Сложение с памятью)

А <— А+[H:L]

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

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

ADI DATA8 (Непосредственное сложение)

А <— А + DATA8

Содержимое второго байта (DATA8) команды складывается с содержимым аккумулятора. Результат записывается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

ADC R (Регистровое сложение с переносом)

А <-- A + R + CY

Содержимое регистра R и признака переноса CY складывается с содержимым аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

ADC M (Сложение памяти с переносом)

А <— А + [H:L] + CY

Содержимое ячейки памяти, адрес которой расположен в регистровой паре H:L, складывается с содержимым аккумулятора и признаком переноса CY. Результат помещается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

ACI DATA8 (Непосредственное сложение с переносом)

A <-- A + DATA8 + CY

Содержимое второго байта (DATA8) команды складывается с содержимым аккумулятора и признаком переноса CY. Результат помещается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

SUB R (Регистровое вычитание)

A <— A - R

Содержимое регистра R вычитается из содержимого аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

SUB M (вычитание памяти)

A <— A - [H:L]

Содержимое ячейки памяти, адрес которой находится в регистровой паре H:L, вычитается из содержимого аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

SUI DATA8 (Непосредственное вычитание)

A <-- A - DATA8

Содержимое второго байта (DATA8) команды вычитается из содержимого аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

SBB R (Регистровое вычитание с заёмом)

A <— A - R - CY

Содержимое регистра R и содержимое признака переноса CY вычитаются из аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

SBB M (Вычитание памяти с заёмом)

A <— A - [H:L] - CY

Содержимое ячейки памяти, адрес которой расположен в регистровой паре H:L, и содержимое признака переноса CY вычитаются из содержимого аккумулятора.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

SBI DATA8 (Непосредственное вычитание с заёмом)

А <— A - DATA8 - CY

Содержимое второго байта (DATA8) команды и содержимое признака переноса CY вычитаются из содержимого аккумулятора. Результат помещается в аккумулятор.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

INR R (Увеличение регистра)

R <— R + 1

Содержимое регистра R увеличивается на 1.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: Z,S,P,АС

INR M (Увеличение памяти)

[H:L] <— [H:L] + 1

Содержимое ячейки памяти, адрес которой расположен в регистровой паре H:L увеличивается на 1.

Машинные циклы: 3

Машинные такты: 10

Адресация: косвенно-регистровая

Признаки: Z,S,P,АС

DCR R (Уменьшение регистра)

R <— R - 1

Содержимое регистра уменьшается на 1.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: Z,S,P,АС

DCR M (Уменьшение памяти)

[H:L] <— [H:L] - 1

Содержимое ячейки памяти, адрес которой расположен в регистровой паре H:L, уменьшается на 1.

Машинные циклы: 3

Машинные такты: 10

Адресация: косвенно-регистровая

Признаки: Z,S,P,АС

INX RP (Увеличение регистровой пары)

RH:RL <— RH:RL + 1

Содержимое регистровой пары RP увеличивается на 1.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: не изменяются

DCX RP (Уменьшение регистровой пары)

RH:RL <— RH:RL - 1

Содержимое регистровой пары RP уменьшается на 1.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: не изменяются

DAD RP (Сложение регистровой пары с парой H, L)

H:L <-- H:L + RH:RL

Содержимое регистровой пары RP складывается с содержимым регистровой пары H:L. Результат помещается в регистровую пару H:L.

Машинные циклы: 3

Машинные такты: 10

Адресация: регистровая

Признаки: CY

DAA (Десятичная коррекция аккумулятора)

Восьмиразрядное число, содержащееся в аккумуляторе, переводится в формат двух четырехразрядных десятичных цифр в двоичном представлении следующим образом:

Если значение четырех младших разрядов аккумулятора больше 9 или если установлен признак АС, к содержимому аккумулятора добавляется число 6.

Если значение четырех старших разрядов аккумулятора больше 9 или если установлен признак CY, число 6 прибавляется к старшим четырем разрядам аккумулятора.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

ЛОГИЧЕСКИЕ КОМАНДЫ

Команды этой группы выполняют логические (булевские) операции над данными в регистрах и ячейках памяти. Кроме особо упомянутых случаев, все команды воздействуют на признаки.

ANA R (Регистровая операция "и")

A <— A /\ R

Выполняется операция логического "и" над содержимым регистра R и аккумулятора. Результат помещается в аккумулятор. Признак CY устанавливается в 0.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

ANA M (Операция "и" над памятью)

А <— А /\ [H:L]

Выполняется операция логического "и" над содержимым аккумулятора и ячейки памяти, адрес которой расположен в регистровой паре H:L. Результат помещается в аккумулятор. Признак CY устанавливается в 0.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

ANI DATA8 (Непосредственная операция "и")

A <— A /\ DATA8

Выполняется операция логического "и" над содержимым второго байта (DATA8) команды и содержимым аккумулятора. Результат помещается в аккумулятор. Признаки CY и AC устанавливаются в 0.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

XRA R (Регистровая операция "исключающее или")

А <— А -\/ R

Выполняется операция "исключающее или" над содержимым регистра R и содержимым аккумулятора. Результат помещается в аккумулятор. Признаки CY и АС устанавливаются в 0.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

XRA M (Операция "исключающее или над памятью)

А <— А -\/ [H:L]

Выполняется операция "исключающее или" над содержимым аккумулятора и содержимым ячейки памяти, адрес которой расположен в регистровой паре H:L. Результат помещается в аккумулятор. Признаки CY и АС устанавливаются в 0.

Машинные циклы: 2

Машинные такты:  7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

XRI DATA8 (Непосредственная операция "исключающее или")

A <— A -\/ DATA8

Выполняется операция "исключающее или" над содержимым второго байта (DATA8) команды и содержимым аккумулятора. Результат помещается в аккумулятор. Признаки CY и AC устанавливаются в 0.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

ORA R (Регистровая операция "или")

A <— A \/ R

Выполняется операция логического "или" над содержимым регистра и содержимым аккумулятора. Результат помещается в аккумулятор. Признаки CY и AC устанавливаются в 0.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

ORA M (Операция "или" над памятью)

А <— А \/ [H:L]

Выполняется операция логического "или" над содержимым аккумулятора и содержимым ячейки памяти, адрес которой расположен в регистровой паре H:L. Результат помещается в аккумулятор. Признаки CY и AC устанавливаются в 0.

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

ORI DATA8 (Непосредственная операция " или ")

А <— A V DATA8

Выполняется операция логического "или" над содержимым второго байта (DATA8) команды и содержимым аккумулятора. Результат помещается в аккумулятор. Признаки CY и AC устанавливаются в 0.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная.

Признаки: Z,S,P,CY,АС

CMP R (Регистровое сравнение)

А - R

Содержимое регистра R вычитается из содержимого аккумулятора. Содержимое аккумулятора остается без изменений. Признак Z устанавливается в 1, если А = R. Признаки CY и S устанавливаются в 1, если А < R.

Машинные циклы: 1

Машинные такты: 4

Адресация: регистровая

Признаки: Z,S,P,CY,АС

CMP M (Сравнение памяти)

А - [H:L]

Содержимое ячейки памяти, адрес которой находится в регистровой паре H:L, вычитается из содержимого аккумулятора. Содержимое аккумулятора остается без изменений. Признак Z устанавливается в 1, если A = [H:L]. Признаки CY и S устанавливаются в 1, если A < [H:L].

Машинные циклы: 2

Машинные такты: 7

Адресация: косвенно-регистровая

Признаки: Z,S,P,CY,АС

CPI DATA8 (Непосредственное сравнение)

A - DATA8

Содержимое второго байта команды (DATA8) вычитается из содержимого аккумулятора. Содержимое аккумулятора остается без изменений. Признак Z устанавливается в 1, если A = DATA8. Признаки CY и S устанавливаются в 1, если A < DATA8.

Машинные циклы: 2

Машинные такты: 7

Адресация: непосредственная

Признаки: Z,S,P,CY,АС

RLC (Циклический сдвиг влево)

AN+1 <— AN; A0 <— A7; CY <— A7

Содержимое аккумулятора сдвигается циклически на один разряд влево.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

RRC (Циклический сдвиг вправо)

AN <— AN+1; A7 <— A0; CY <— A0

Содержимое аккумулятора сдвигается циклически на один разряд вправо.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

RAL (Циклический сдвиг влево через признак переноса)

AN+1 <— AN; A0 <— CY; CY <— A7

Содержимое аккумулятора сдвигается влево на один разряд через признак переноса CY.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

RAR (Циклический сдвиг вправо через признак переноса)

AN <— AN+1; A7 <— CY; CY <— A0

Содержимое аккумулятора сдвигается вправо на один разряд через признак переноса CY.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

CMA (Обратный код аккумулятора)

A <— A/

Инвертирует содержимое аккумулятора.

Машинные циклы: 1

Машинные такты: 4

Признаки: не изменяются

CMC (Обратный код признака переноса)

CY <— CY/

Инвертирует значение признака переноса CY.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

STC (Установить признак переноса)

CY <— 1

Признак переноса устанавливается в 1.

Машинные циклы: 1

Машинные такты: 4

Признаки: CY

КОМАНДЫ ПЕРЕХОДА

Команды этой группы прерывают последовательное выполнение команд микропроцессора. Ни одна из команд перехода не воздействует на признаки состояния.

JMP ADDR (Безусловный переход)

PC <— ADDR

Передает управление команде, адрес которой находится во втором и третьем байтах (ADDR) текущей команды.

Машинные циклы: 3

Машинные такты: 10

Адресация: непосредственная

Признаки: не изменяются

JCONDITION ADDR (Условный переход)

if (CONDITION) PC <— ADDR

Если условие истинно, то управление передается команде, адрес которой находится во втором и третьем байтах (ADDR) текущей команды, в противном случае выполняется команда, следующая за данной.

JZ ADDR

Переход по адресу ADDR, если Z=1

JNZ ADDR

Переход по адресу ADDR, если Z=0

JP ADDR

Переход по адресу ADDR, если S=0

JM ADDR

Переход по адресу ADDR, если S=1

JC ADDR

Переход по адресу ADDR, если CY=1

JNC ADDR

Переход по адресу ADDR, если CY=0

JPE ADDR

Переход по адресу ADDR, если P=1

JPO ADDR

Переход по адресу ADDR, если P=0

Машинные циклы: 3

Машинные такты: 10

Адресация: непосредственная/косвенно-регистровая

Признаки: не изменяются

CALL ADDR (Вызов подпрограммы)

[SP - 1] <— PCH

[SP - 2] <— PCL

SP <— SP - 2

PC <— ADDR

Управление передается команде, адрес которой определяется вторым и третьим байтами (ADDR) текущей команды. Адрес возврата из подпрограммы сохраняется в стеке.

Машинные циклы: 5

Машинные такты: 17

Адресация: непосредственная/косвенно-регистровая

Признаки: не изменяются

СCONDITON ADDR (Условный вызов подпрограммы)

if (CONDITION)

[SP - 1] <— PCH

[SP - 2] <— PCL

SP <— SP - 2

PC <— ADDR

Если условие истинно, то команда выполняется аналогично команде CALL (см. выше); в противном случае управление передается на следующую команду.

CZ ADDR

Вызвать подпрограмму по адресу ADDR, если Z=1

СNZ ADDR

Вызвать подпрограмму по адресу ADDR, если Z=0

СP ADDR

Вызвать подпрограмму по адресу ADDR, если S=0

СM ADDR

Вызвать подпрограмму по адресу ADDR, если S=1

CC ADDR

Вызвать подпрограмму по адресу ADDR, если CY=1

CNC ADDR

Вызвать подпрограмму по адресу ADDR, если CY=0

CPE ADDR

Вызвать подпрограмму по адресу ADDR, если P=1

CPO ADDR

Вызвать подпрограмму по адресу ADDR, если P=0

Машинные циклы: 3/5

Машинные такты: 11/17

Адресация непосредственная/ косвенно-регистровая

Признаки: не изменяются

RET (Возврат из подпрограммы)

PCL <— [SP]

PCH <— [SP+1]

SP <— SP + 2

Управление передается по адресу возврата, который находится в стеке по адресу, определяемому содержимым регистра SP.

Машинные циклы: 3

Машинные такты: 10

Адресация: косвенно-регистровая

Призаки: не изменяются

RCONDITION (Условный возврат из подпрограммы)

if (CONDITION)

PCL <— [SP]

PCH <— [SP + 1]

SP <— SP + 2

Если условие истинно, то команда выполняется аналогично команде RET, в противном случае управление передается на следующую команду.

RZ

Возврат из подпрограммы, если Z=1

RNZ

Возврат из подпрограммы, если Z=0

RP

Возврат из подпрограммы, если S=0

RM

Возврат из подпрограммы, если S=1

RC

Возврат из подпрограммы, если C=1

RNC

Возврат из подпрограммы, если C=0

RPE

Возврат из подпрограммы, если P=1

RPO

Возврат из подпрограммы, если P=0

Машинные циклы: 1/3

Машинные такты: 5/11

Адресация: косвенно-регистровая

Признаки: не изменяются

RST N (Программное прерывание)

[SP - 1] <— PCH

[SP - 2] <— PCL

SP <— SP - 2

PC <— 8*N

Управление передается команде, адрес которой определяется как 8*N. Адрес возврата сохраняется в стеке.

Машинные циклы: 3

Машинные такты: 11

Адресация: косвенно-регистровая

Признаки: не изменяются

PCHL (Косвенный переход по регистрам H и L - занесение регистровой пары H:L в регистр PC)

PCH <— H

PCL <— L

Содержимое регистра Н заносится в старшие восемь разрядов регистра PC. Содержимое регистра L заносится в младшие восемь разрядов регистра PC.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: не изменяются

КОМАНДЫ УПРАВЛЕНИЯ СТЕКОМ, ВВОДОМ-ВЫВОДОМ И СОСТОЯНИЯМИ ПРОЦЕССОРА

Команды этой группы выполняют операции ввода-вывода, управляют стеком.

PUSH RP (Загрузка в стек)

[SP - 1] <— RH

[SP - 2] <— RL

SP <— SP - 2

Содержимое старшего регистра регистровой пары RP записывается в ячейку памяти, адрес которой на 1 меньше содержимого регистра SP. Содержимое младшего регистра регистровой пары RP записывается в ячейку памяти, адрес которой на 2 меньше содержимого регистра SP. Содержимое SP уменьшается на 2.

Машинные циклы: 3

Машинные такты: 11

Адресация: косвенно-регистровая

Признаки: не изменяются

PUSH PSW (Загрузка в стек слова состояния микропроцессора)

[SP - 1] <— А

[SP - 2]D0 <— CY

[SP - 2]D1 <— 1

[SP - 2]D2 <— P

[SP - 2]D3 <— 0

[SP - 2]D4 <— AC

[SP - 2]D5 <— 0

[SP - 2]D6 <— Z

[SP - 2]D7 <— S

SP <— SP - 2

Содержимое аккумулятора помещается в ячейку памяти, адрес которой на 1 меньше содержимого регистра SP. Содержимое регистра признаков помещается в ячейку памяти, адрес которой на 2 меньше содержимого регистра SP. Содержимое SP уменьшается на 2.

Машинные циклы: 3

Машинные такты: 11

Адресация: косвенно-регистровая

Признаки: не изменяются

POP RP (Выгрузка из стека)

RL <— [SP]

RH <— [SP + 1]

SP <— SP + 2

Содержимое ячейки памяти, адрес которой находится в регистре SP, записывается в младший регистр регистровой пары RP. Содержимое ячейки памяти, адрес которой на 1 больше содержимого регистра SP, записывается в старший регистр регистровой пары RP. Содержимое регистра SP увеличивается на 2.

Машинные циклы: 3

Машинные такты: 10

Адресация: косвенно-регистровая

Признаки: не изменяются

POP PSW (Выгрузка из стека слова состояния микропроцессора)

CY <— [SP]D0

P <— [SP]D2

АС <— [SP]D4

Z <— [SP]D6

S <— [SP]D7

А <— [SP + 1]

SP <— SP + 2

Содержимое ячейки памяти, адрес которой определяется содержимым регистра SP, используется для восстановления содержимого регистра признаков. Содержимое ячейки памяти, адрес которой на 1 больше содержимого регистра SP, помещается в аккумулятор. Содержимое регистра SP увеличивается на 2.

Машинные циклы: 3

Машинные такты: 10

Адресация: косвенно-регистровая

Признаки: CY,P,AC,Z,S

XTHL (Обмен верхушки стека с регистровой парой H:L)

L <—> [SP]

H <—> [SP + 1]

Регистр L обменивается содержимым с ячейкой памяти, адрес которой находится в регистре SP. Регистр Н обменивается содержимым с ячейкой памяти, адрес которой на 1 больше содержимого регистра SP.

Машинные циклы: 5

Машинные такты: 18

Адресация: косвенно-регистровая

Признаки: не изменяются

SPHL (Запись регистровой пары H:L в SP)

SP <— H:L

Содержимое регистров H и L заносится в регистр SP.

Машинные циклы: 1

Машинные такты: 5

Адресация: регистровая

Признаки: не изменяются

IN PORT (Ввод)

А <— [PORT]

Данные из указанного порта (PORT), записываются в аккумулятор.

Машинные циклы: 3

Машинные такты: 10

Адресация: прямая

Признаки: не изменяются

OUT PORT (Вывод)

PORT <— А

Содержимое аккумулятора передается в указанный порт (PORT).

Машинные циклы: 3

Машинные такты: 10

Адресация: прямая

Признаки: не изменяются

EI (Разрешить прерывания)

Прерывания разрешаются со следующей команды.

Машинные циклы: 1

Машинные такты: 4

Признаки: не изменяются

DI (Запретить прерывания)

Прерывания запрещаются с начала обработки команды DI.

Машинные циклы: 1

Машинные такты: 4

Признаки: не изменяются

HLT (Останов)

Процессор останавливается. Содержимое регистров и признаков не изменяется.

Машинные циклы: 1

Машинные такты: 7

Признаки: не изменяются

NOP (Пустая операция)

Пустая операция. Содержимое регистров и признаков не изменяется.

Машинные циклы: 1

Машинные такты: 4

Признаки: не изменяются

Категория: Приложения | Добавил: avk1963 (10.03.2015)
Просмотров: 4696 | Рейтинг: 4.1/15
Всего комментариев: 0