- •Набір команд мікропроцесора кр580ік80
- •Команди парасилки даних
- •Арифметичні та логічні команди
- •Команди передачі управління
- •Команди введення-виведення і керування
- •Набір команд мікропроцесора у порядку зростання коп
- •Організація внутрішніх регістрів процесора кр580ік80
- •Регістр прапорців
- •Органiзацiя регiстрових пар
- •Операції з парами регістрів та стеком
- •Команди керування переходами.
- •Операції акумулятора
- •Команди рестарту
- •Формати команд та даних
Організація внутрішніх регістрів процесора кр580ік80
Акумулятор |
вввввввввввв |
Регістри загального призначення | |
А (8 біт) |
|
B (8 біт) |
С (8 біт) |
|
|
D (8 біт) |
E (8 біт) |
|
|
H (8 біт) |
L (8 біт) |
|
|
Програмний лічильник (PC) -16 біт | |
|
|
Вказівник стеку (SP) - 16 біт |
Регістр прапорців
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
S |
Z |
X |
AC |
X |
P |
X |
C |
Тут прйняті такі позначення: S - прапорець знаку;
Z - прапорець нуля;
X - не використовується;
AC - додаткове перенесення;
P - прапорець парності;
C - прапорець перенесення.
Органiзацiя регiстрових пар
RSW - слово стану програми |
Регістрові пари | ||
А (8 біт) |
Регістр прапорців (8 біт) |
B (B С) (16 біт) | |
|
|
D (D E) (16 біт) | |
|
|
H (H L) (16 біт) | |
|
|
Програмний лічильник (16 біт) | |
|
|
Вказівник стеку (16 біт) |
Примiтка. При адресацiї та арифметичних операцiях лiвий байт є старшим. Лiвий байт першим вводиться в СТЕК і другим зчитується зі стеку, правий - другим вводиться в стек і першим зчитується зi СТЕКУ.
Операції з парами регістрів та стеком
Команда |
RSW (A+F) |
Пари регістрів |
SP |
PC |
Функція | ||
B (B+C) |
D (D+E) |
H (H+L) | |||||
INX |
|
03 |
13 |
23 |
33 |
|
Збiльшити вмiст (інкремент) пари регiстрiв |
DCX |
|
0B |
1B |
2B |
3B |
|
Зменшити вмiст (декремент) пари регiстрiв |
LDAX |
|
0A |
1A |
7E (1) |
|
|
Опосередковане завантаження акумулятора (пара регістрів містить адресу комірки ОЗП, вміст якої пересилається в акумулятор) |
STAX |
|
02 |
12 |
77 (2) |
|
|
Опосередкований запис вмісту акумулятора в пам‘ять (пара регістрів містить адресу комірки ОЗП, в яку пересилається вміст акумулятора) |
LHLD |
|
|
|
2A |
|
|
Пряме завантеження Н/L (байти 2 та 3 мiстять адресу комірки ОЗП, вміст якої завантажується в пару регістрівН/L) |
SHLD |
|
|
|
22 |
|
|
Прямий запис вмiсту H/L в ОЗП (байти 2 та 3 містять адресу комірки ОЗП, куди копіюється вміст пари вказаних регістрів) |
LXI |
|
01 |
11 |
21 |
31 |
03 (3) |
Безпосереднє завантаження пари регистрiв (байти 2 та 3 мiстять безпосереднi данi) |
РСHL |
|
|
|
|
|
Е9 |
Завантаження в РС вмісту H/L (здійснюється перехід на адресу, яка записана в парі регістрів H/L ) |
XGHG |
|
|
EB |
|
|
Обмін даними між парами регі-стрів D/E та H/L | |
DAD |
|
09 |
19 |
29 |
39 |
|
Додавання вмісту пари регі-стрів до вмісту H/L |
PUSH |
F5 |
C5 |
D5 |
E5 |
|
|
Записати вміст пари регістрів у вершину стеку |
POP |
F1 |
C1 |
D1 |
E1 |
|
|
Зчитати вміст вершини стеку в пару регістрів |
XTHL |
|
|
|
E3 |
|
|
Обмін вмістом між парою H/L та вершиною стеку. |
SPHL |
|
|
|
|
F9 |
|
Заванаження в SP вмісту пари регістрів H/L |
- команда MOV A, M;
- команда MOV A, M;
- команда JMP.