Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Простейшая микро-ЭВМ. Проектирование. Наладка. Использование.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.89 Mб
Скачать

Приложения

Система команд микропроцессора КР580ИК80А

ПРИЛОЖЕНИЕ1

Мнемокод команды

Описание команды

Длина команды байт

, Изменяемые флаги

Число тактов

INRr

Увеличение содержимого регистра г на еди-

1

Z,S,P,AC

5

ницу

INRM

Увеличение на единицу содержимого ячейки

1

Z,S,P,AC

10

памяти по адресу, указанному в регистрах Н

и L

DCRr

Уменьшение содержимого регистра г на еди-

1

Z,S,P, AC2

5

ницу

DCRM

Уменьшение на единицу содержимого ячейки

1

Z, S,P, AC2

10

памяти по адресу, указанному в регистрах Н

иЬ

MOVrl,r2

Пересылка данных из регистра г 2 в регистр rl

1

-

5

MOV M, г

Пересылка данных из регистра г в ячейку па-

1

-

7

мяти по адресу, указанному в регистрах Н и L

MOV г, М

Пересылка данных в регистр г из ячейки памя-

1

-

7

ти по адресу, указанному в регистрах Н и L

ADDr

Суммирование содержимого регистра г и со-

1

Z,S,P,C,AC

4

держимого аккумулятора

ADDM

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

1

Z,S,P,C, AC

7

по адресу, указанному в регистрах Н и L,

с содержимым аккумулятора

ADCr

Сложение с учетом переноса содержимого ре-

1

Z,S,P, C, AC

4

гистра г и содержимого аккумулятора

ADCM

Сложение с учетом переноса содержимого

1

Z,S,P,C,AC

7

ячейки памяти по адресу, указанному в ре-

Продолжение прилож. 1

Мнемокод команды

Длина Описание команды команды, Изменяемые флаги байт

Число тактов

ги страх Н и L, с содержимым аккумулятора

SUB r

Вычитание содержимого регистра г из содер- 1 Z,S,P, С , АС

4

жимого аккумулятора

SUBM

Вычитание из содержимого аккумулятора 1 Z, S, Р, С , АС

7

содержимого ячейки памяти по адресу, ука-

занному в регистрах Н и L

SBBr

Вычитание с заемом содержимого регистра г 1 Z, S, Р, С , АС

4

из содержимого аккумулятора

SBBM

Вычитание с заемом из содержимого аккуму- 1 Z,S,P,C , AC

7

лятора содержимого ячейки памяти по адресу,

указанному в регистрах Н и L

ANA г

Поразрядное И над содержимым регистра г 1 Z , S, Р, С = 0, АС = 0

4

и аккумулятора

ANAM

Поразрядное И над содержимым аккумуля- 1 Z , S, Р, С = 0, АС = 0

7

тора и ячейки памяти по адресу, указанному

в регистрах Н и L

XRAr

Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над со- 1 Z, S, Р, С = 0, АС = 0

4

держимым регистра г и аккумулятора

XRAM

Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над со- 1 Z, S, Р, С = 0, АС = 0

7

держимым аккумулятора и ячейки памяти

по адресу, указанному в регистрах Н и L

ORAr

Поразрядное ИЛИ над содержимым регист- 1 Z,S,P,C = 0, AC = 0

4

pa r и аккумулятора

ORAM

Поразрядное ИЛИ над содержимым аккуму- 1 Z, S, Р, С = 0, АС = 0

7

лятора и ячейки памяти по адресу, указанно-

му в регистрах Н и L

CMP г

Сравнение содержимого регистра г и аккуму- 1 (Z, S, P, С, АС)3

4

лятора

CMPM

Сравнение содержимого аккумулятора и ячей- 1 (Z, S, P, С, АС)3

7

ки памяти по адресу, указанному в регист-

рах Н и L

INXrp

Увеличение на единицу содержимого пары ре- 1 -

5

гистров гр (В, D, Н, SP)

DCXrp

Уменьшение на единицу содержимого пары 1 -

5

регистров гр (В, D, H, SP)

DADrp

Сложение содержимого пары регистров тр 1 С

10

(В, D, H, SP) с содержимым пары регистров

Н и L и хранение результата в Н и L

POPrp

Выдача данных из стека в пару регистров гр 1 (Z, S, P, С, АС)6

10

(В, D, H) или в аккумулятор и регистр при-

знаков PSW

PUSH rp

Занесение в стек содержимого пары регист- 1 -

11

ров гр (В, D, H) или содержимого аккумуля-

тора и регистра признаков PSW

STAXrp

Запись содержимого аккумулятора в ячейку 1 -

7

памяти, косвенно адресуемую парой регист-

ров гр (В, D)

LDAX rp

Запись в аккумулятор содержимого ячейки 1

7

памяти, косвенно адресуемой парой регист-

ров гр (В, D)

RNZ

Возврат из подпрограммы при отсутствии 1 -

5/11

нуля (флаг нуля в состоянии 0)

RZ

Возврат из подпрограммы при наличии нуля 1 -

5/11

(флаг нуля в состоянии 1)

RNC

Возврат из подпрограммы при отсутствии 1 -

5/11

переноса (флаг переноса в состоянии 0)

RC

Возврат из подпрограммы при наличии пе- 1 -

5/11

реноса (флаг переноса в состоянии 1)

Продолжение прилож. 1

Мнемокод команды

Описание команды

Длина команды, Изменяемые флаги байт

Число тактов

RPO

Возврат из подпрограммы при отсутствии

1

5/11

четности (флаг четности в состоянии 0)

RPE

Возврат из подпрограммы при наличии чет-

1

ности (флаг четности в состоянии 1)

RP

Возврат из подпрограммы при положительном

1

5/11

результате (флаг знака в состоянии 0)

RM

Возврат из подпрограммы при отрицательном

1

5/11

результате (флаг знака в состоянии 1)

RET

Безусловный возврат из подпрограммы

1 С4

5/11

RLC

Циклический сдвиг содержимого аккумуля-

1 С4

тора влево

1 С4

RRC

Циклический сдвиг содержимого аккумуля-

1 С

тора вправо

RAL

Циклический сдвиг содержимого аккумуля-

1 С4

тора влево, включая флаг переноса

1 С4

RAR

Циклический сдвиг содержимого аккумуля-

1 С4

тора вправо, включая флаг переноса

XCHG

Обмен данными между парами регистров Н,

1

4

L HD.E

XTHL

Обмен данными между двумя верхними ячей-

1

18

ками стека и парой регистров Н, L (сначала

самая верхняя обменивается с L , затем сле-

дующая с Н)

SPHL

Передача в указатель стека содержимого ре-

1

гистров Н и L

PCHL

Передача в счетчик команд содержимого пары 1 -

5

регистров Н и L с последующим выполнением

программы с адреса, равного новому содер-

жимому счетчика команд (по существу коман-

да перехода)

HLT

Останов программы 1 -

7

NOP

Отсутствие операции 1 -

4

DI

Запрет на прерывание программы 1 -

4

EI

Разрешение прервать программу 1 -

4

DAA

Перевод двоичного представления содержимо- 1 —

4

го аккумулятора в двоично-десятичный код

СМА

Поразрядное инвертирование содержимого 1 -

4

аккумулятора

STC

Установка флага переноса С в единицу 1 С = 1

4

CMC

Инвертирование значения флага переноса 1 С=С

4

RSTA

Повторный запуск программы с адреса 1 -

11

10 = (ОА08)

ADI<B2>

Сложение содержимого байта В2 с содержи- 2 Z,S,P, С, АС

7

мым аккумулятора

ACI <В2>

Сложение с учетом переноса содержимого 2 Z,S, P, С, АС

7

байта В2 с содержимым аккумулятора

SUI <В2>

Вычитание содержимого байта В2 из содер- 2 Z, S, Р, С1 , АС2

7

жимого аккумулятора

SBI <В2>

Вычитание с заемом содержимого байта В2 2 Z, S, Р, С1 , АС2

7

ANI <В2>

из содержимого аккумулятора Поразрядное И над содержимым байта В2 и 2 Z , S, Р, С = 0, АС = 0

7

содержимым аккумулятора

XRI <B2>

Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над со- 2 Z, S, Р, С = 0, АС =0

7

держимым байта В2 и содержимым аккуму-

лятора

Продолжение прилож. 1

Мнемокод команды

Описание команды

Длина команды, байт

Изменяемые флаги

Число тактов

ORI<B2>

Поразрядное ИЛИ над содержимым байта В2

2

Z,S,P, C = 0, AС=0

7

и содержимым аккумулятора

CPI <В2>

Сравнение содержимого байта В2 с содержи-

2

(Z, S, Р,С, АС)3

7

мым аккумулятора

IN <B2>

Ввод данных в аккумулятор из порта ввода,

2

-

10

определяемого адресом в байте В2

OUT<B2>

Вывод данных из аккумулятора в порт вы-

2

-

10

вода, определяемый адресом в байте В2

MVI r <B2>

Занесение содержимого байта В2 в регистр г

2

-

7

MVI M <B2>

Запись содержимого байта В2 в ячейку памя-

2

-

7

JNZ<B2><B3>

ти по адресу, указанному в регистрах Н и L

Переход в программе к выполнению команды по адресу в В2, ВЗ при отсутствии нуля (флаг нуля в состоянии 0)

3

-

10

JZ<B2><B3>

Переход в программе к выполнению команды по адресу в В2, ВЗ при наличии нуля (флаг ну­ля в состоянии 1)

3

-

10

JNC<B2><B3> JC<B2><B3>

Переход в программе к выполнению команды по адресу в В2, ВЗ при отсутствии переноса (флаг переноса в состоянии 0) Переход в программе к выполнению команды по адресу в В2, ВЗ при наличии переноса (флаг переноса в состоянии 1)

3 3

-

10 10

JPO<B2><B3>

Переход в программе к выполнению команды по адресу в В2, ВЗ при наличии нечетности (флаг четности в состоянии 0)

3

-

10

JPE<B2><B3>

Переход в программе к выполнению команды

3

10

по адресу в В2, ВЗ при наличии четности (флаг четности в состоянии 1)

JP<B2><B3>

Переход в программе к выполнению команды по адресу в В2, ВЗ при положительном резуль­тате (флаг знака в состоянии 0)

3

10

JM<B2><B3>

Переход в программе к выполнению команды по адресу в В2, ВЗ при отрицательном резуль­тате (флаг знака в состоянии 1)

3

10

JMP<B2><B3>

Безусловный переход к команде по адресу в В2, ВЗ

3

10

. с

CNZ<B2><B3>

Вызов подпрограммы при отсутствии нуля (флаг нуля в состоянии 0)

3

11/175

с

CZ<B2><B3>

Вызов подпрограммы при наличии нуля (флаг нуля в состоянии 1)

• 3

~

11/175

с

CNC<B2><B3>

Вызов подпрограммы при отсутствии перенос, (флаг переноса в состоянии 0)

i3

И/175

CC<B2><B3>

Вызов подпрограммы при наличии переноса (флаг переноса в состоянии 1)

3

И/175

CPO<B2><B3>

Вызов подпрограммы при наличии нечетности (флаг четности в состоянии 0)

3

11/175

CPE<B2><B3>

Вызов подпрограммы при наличии четности (флаг четности в состоянии 1)

3

И/175

CP<B2><B3>

Вызов подпрограммы при наличии положи­тельного результата (флаг знака в состоя­нии 0)

3

И/175

CM<B2><B3>

Вызов подпрограммы при наличии отрица­тельного результата (флаг знака в состоя­нии 1)

3

И/175

Продолжение прилож. 1

Мнемокод команды

Длина Описание команды команды, Изменяемые флаги байт

Число тактов

CALL<B2><B3>

Вызов подпрограммы из памяти по адресу, 3 -

17

указанному в байтах В2, ВЗ

LXIrp<B2><B3>

Занесение содержимого двух байтов В2, ВЗ 3 -

10

в пару регистров гр (В, D, Н, SP)

STA<B2><B3>

Запись содержимого аккумулятора в ячейку 3 -

13

памяти по адресу в В2, ВЗ

LDA<B2><B3>

Запись в аккумулятор содержимого ячейки 3 —

13

памяти по адресу в В2, ВЗ

SHLD<B2><B3>

Занесение содержимого регистров Н и L в па- 3 -

16

мять: содержимое L пересылается в ячейку

по адресу в В 2, ВЗ; содержимое регистра Н -

в ячейку, адрес которой на единицу больше

LHLD<B2><B3>

Загрузка в регистры Н и L содержимого ячеек 3 -

16

памяти: в L пересылаются данные из ячейки па-

мяти по адресу в В2, ВЗ; в Н — из ячейки, ад-

рес которой на единицу больше

Примечания [14]:

1. Флаг устанавливается при наличии заема в старший разряд, в противном случае сбрасывается.

2. Флаг устанавливается при наличии заема из старших четырех разрядов в младшие, в противном случае сбрасывается.

3. Флаг нуля Z устанавливается, если содержимое регистра или байта данных совпадает с содержимым аккумулятора; флаги знака и переноса S и С устанавливаются, если содержимое регистра или байта данных больше содержимого аккуму­лятора; флаг вспомогательного переноса АС устанавливается, если содержимое младших четырех разрядов регистра или байта данных больше содержимого соответствующих разрядов аккумулятора; флаг четности Р устанавливается, если байт разности между содержимым аккумулятора и содержимым регистра или байта данных содержит четное число единиц.

4. Состояние флага равно значению выдвигаемого из аккумулятора двоичного разряда.

5. Большее значение (за косой чертой) указывает на число тактов при выполнении условий, меньшее — при невыпол­нении.

6. По команде POP PSW флаги устанавливаются в соответствии со значением разрядов слова, хранящегося в стеке; при выдаче данных из стека в другие регистры флаги не меняются.

Приложение 2. СХЕМА ПМ-ЭВМ

Приложение 3. Таблица элементов, используемых в схеме ПМ-ЭВМ

Обозначение микросхемы

Тип микросхемы

Выводы микросхем

Питание

+ 5 В общее

D1

КР580ИК80А

Данные в тексте

D2

КР580ГФ24

Данные в тексте

D3-D7, D31

К155ЛН1

14 7

D8

К155ЛА1

14 7

D9, DIG, D23

К589АП16

16 8

Dll, D24

К155ИД4

14 7

D12, D13

КР541РУ2

18 9

D14, D15

КР556РТ4

16 8

D16-D22, D29

К155ТМ7

5 12

D25

К155ЛА2

14 7

D26

К155ЛЕ1

14 7

D27, D28

К155ЛАЗ

14 7

D30

К155ТМ2

14 7

Примечания:

KB - 9 МГц

С1 - 0,15 мкФ

R1-R6 - 1 кОм

R7 — R30 — в зависимости от типа VI — V24

R31-R34- 5,1 кОм

V1-V24 - АЛ102А, АЛ102Г, АЛ112А-М