DEC |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
HEX |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
Пример перехода от десятичного кода к шестнадцатеричному коду показан на рис. 5.1. Буква h означает, что число записано в шестнадцатеричном коде.
BIN 1101 0101
DEC 13 5
HEX D 5
Ответ: D5h
Рис. 5.1
Список наиболее распространённых команд микропроцессора Intel 8080 и соответствующих им шестнадцатеричных кодов приведен в табл. 5.2.
Большинство команд микропроцессора можно разделить на команды пересылки данных, арифметические команды, логические команды, команды сравнения, команды переходов. Большая часть команд работает с регистрами.
Регистр – это внутренняя ячейка памяти (ОЗУ) микропроцессора. У микропроцессора i8080 имеются регистры общего назначения: A, B, C, D, E, H, L; и регистры специального назначения, из которых нас интересует только регистр флагов. Регистры общего назначения восьмиразрядные. Однако они могут образовывать 16-ти разрядные регистровые пары: BC, DE и HL. Основным регистром, через который производится большинство операций, является регистр А. Его также называют аккумулятором. Регистровые пары могут использоваться для косвенной адресации. Например, команда MOV A,M означает: переместить в регистр А данные, адрес которых находится в регистровой паре HL.
Таблица 5.2
HEX |
Команда |
Операция |
Комментарий |
04 |
INR B |
(B)¬ (B)+1 |
Инкремент регистра B |
05 |
DCR B |
(B)¬ (B)-1 |
Декремент регистра B |
2F |
CMA |
(A)¬() |
Инверсия регистра A |
32 |
STA Adr |
((Adr))¬(A) |
Запись в ОЗУ |
3A |
LDA Adr |
(A)¬((Adr)) |
Чтение из ОЗУ |
3C |
INR A |
(A)¬ (A)+1 |
Инкремент регистра A |
3D |
DCR A |
(A)¬ (A)-1 |
Декремент регистра A |
3E |
MVI A,D8 |
(A)¬D8 |
Запись регистра A 8-ми разрядным числом |
47 |
MOV B,A |
(B)¬(A) |
Перемещение данных |
78 |
MOV A,B |
(A)¬(B) |
Перемещение данных |
79 |
MOV A,C |
(A)¬(C) |
Перемещение данных |
4F |
MOV C,A |
(C)¬(A) |
Перемещение данных |
80 |
ADD B |
(A)¬ (A) +(B) |
Сложение данных |
90 |
SUB B |
(A)¬ (A) -(B) |
Вычитание данных |
A0 |
ANA B |
(A)¬ (A) AND (B) |
Конъюнкция данных |
B0 |
ORA B |
(A)¬ (A) OR (B) |
Дизъюнкция данных |
B8 |
CMP B |
CY¬1, если (B)>(A) |
Сравнение данных |
C2 |
JNZ Adr |
Переход на Adr, если Z=0 |
Команда условного перехода |
C3 |
JMP Adr |
Безусловный переход на Adr |
Команда безусловного перехода |
C6 |
ADI D8 |
(A)¬ (A) + D8 |
Сложение с 8-ми разрядным числом |
C9 |
RET |
Выход из подпрограммы |
|
CA |
JZ Adr |
Переход на Adr, если Z=1 |
Команда условного перехода |
CD |
CALL Adr |
Вызов подпрограммы по адресу Adr |
|
E6 |
ANI D8 |
(A)¬ (A) AND D8 |
Конъюнкция с 8-ми разрядным числом |
F6 |
ORI D8 |
(A)¬ (A) OR D8 |
Дизъюнкция с 8-ми разрядным числом |
D2 |
JNC Adr |
Переход на Adr, если CY=0 |
Команда условного перехода |
DA |
JC Adr |
Переход на Adr, если CY=1 |
Команда условного перехода |
DE |
SBI D8 |
(A)¬ (A) - D8 |
Вычитание 8-ми разрядного числа |
примечание: одинарные скобки означают – «данные в регистре»; двойные скобки означают – «данные, находящиеся по указанному адресу»
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.