
- •А.2. Символы и сокращения
- •А.З. Форматы команд и данных
- •А.4. Способы адресации
- •А.5. Флаги условий
- •А.6. Справочник по системе команд
- •А.6.1. Команды пересылки данных
- •Xchg (обмен регистров н и l с регистра-ми d и е)
- •А.6.2. Арифметические команды
- •Inr r (увеличение регистра)
- •Inx rр (увеличение регистровой пары)
- •А.6.3. Логические команды
- •А.6.4. Команды перехода
- •А.6.5. Команды работы со стеком, ввод-вывод и управление процессором
- •Xthl (обмен верхушки стека с регистровой парой h-l)
А.6.5. Команды работы со стеком, ввод-вывод и управление процессором
Команды этой группы выполняют операции ввода-вывода, управляют стеком и изменяют внутренние управляющие флаги.
Кроме тех случаев, когда об этом не говорится особо, команды этой группы не влияют на флаги условий.
PUSH rр (загрузка в стек)
((SP)-l) ← (rh)
((SP)-2) ← (rl)
(SP) ← (SP) - 2
Содержимое старшего регистра регистровой пары rр записывается в ячейку памяти, адрес которой на 1 меньше содержимого регистра SP.. Содержимое младшего регистра регистровой пары rp записывается в ячейку памяти, адрес которой на 2 меньше содержимого регистра SP. Содержимое регистра SP уменьшается на 2. Заметьте: в качестве регистровой пары rp не может быть указан регистр SP.
1 |
1 |
R |
P |
0 |
1 |
0 |
1 |
Циклов: 3
Состояний: 12(8085), 11(8080)
Адресация: регистровая косвенная
Флаги: не изменяются
PUSH PSW (загрузка в стек слова состояния процессора)
((SP)-l) ← (A)
((SP) - 2)0 ← (CY), ((SP)1 - 2)1 ← X
((SP)-2)2 ← (P), ((SP)- 2)3 ← X
((SP) - 2)4 ← (AC), ((SP) ← 2)5 - X
((SP)-2)6 ← (Z),((SP)-2) 7 - (S) ((SP) ← (SP)-2
Х - не определен.
Содержимое регистра А записывается в ячейку памяти, адрес которой на 1 меньше содержимого регистра SP. Значения флагов условий собираются в слове состояния процессора, которое записывается в ячейку памяти по адресу, на 2 меньшему, чем содержимое регистра SP. Содержимое регистра SP уменьшается на 2.
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
Циклов: 3
Состояний: 12(8085), 11(8080)
Адресация: регистровая косвенная
Флаги: не изменяются
D7 D6 D5 D4 D3 D2 D1 D0
S |
Z |
X |
AC |
X |
P |
X |
CY |
Х-не определен
POP rp (выгрузка из стека)
(rl) ← ((SP))
(rh) ← ((SP)+l)
(SP) ← (SP) + 2
Содержимое ячейки памяти, адрес которой находится в регистре SP, записывается в младший регистр регистровой пары rp. Содержимое ячейки памяти, адрес которой на 1 больше содержимого регистра SP, записывается в старший регистр регистровой пары rр. Содержимое регистра SP увеличивается на 2. Заметьте: в качестве регистровой пары rр не может быть указан регистр SP.
1 |
1 |
R |
P |
0 |
0 |
0 |
1 |
Циклов: 3
Состояний: 10
Адресация: регистровая косвенная
Флаги: не изменяются
POP PSW (выгрузка из стека слова состояния процессора)
(CY) ← ((SP))0
(P) ← ((SP))2
(AC) ← ((SP))4
(Z) ← ((SP))
(S) ← ((SP))7
(A) ← ((SP)+1)
(SP) ← (SP) + 2
Содержимое ячейки памяти, адрес которой находится в регистре SP, используется для восстановления значений флагов условий. Содержимое ячейки памяти, адрес которой на 1 больше содержимого регистра SP, записывается в регистр А. Содержимое регистра SP увеличивается на 2.
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
Циклов: 3 Состояний: 10
Адресация: регистровая косвенная
Флаги: Z, S, Р, CY, АС