Арифметические команды Таблица 3.2
Мнемоника |
Формат команды |
Виды адресации |
Флаги |
Число тактов |
Функциональное назначение |
ADI DATA8 |
11000110 Y Y |
Непосредственная |
S, Z, AC,P,C |
7 |
Сложить содержимое аккумулятора с 8-разрядной константой DATA8. Результат находится в аккумуляторе: (А)←(А)+YY |
ADD RBS |
10000 SSS |
Прямая регистровая |
то же |
4 |
(А)←(А)+(RBS) |
ACI DATA8 |
11001110 Y Y |
Непосредственная |
то же |
7 |
(А)←(А)+YY+(С) |
ADC RBS |
10001 SSS |
Прямая регистровая |
то же |
4 |
(А)←(А)+(RBS)+(С) |
DAD RW |
00 rw 1001 |
То же |
C |
10 |
Сложить содержимое пары регистров H с содержимым 16-разрядного регистра RW: (HL)←(HL)+(RW) |
SUI DATA8 |
11010110 Y Y |
Непосредственная |
S, Z, AC,P,C |
7 |
Вычесть из содержимого аккумулятора константу DATA8. Результат находится в аккумуляторе: (А)←(А)-YY |
ADD M |
10000110 |
Косвенная регистровая (р-р HL задается неявно) |
то же |
7 |
(А)←(А)+((HL)) |
ADC M |
10001110 |
Косвенная регистровая |
то же |
7 |
(А)←(А)+((HL))+(С) |
SUB RBS |
10010 SSS |
Прямая регистровая |
то же |
4 |
(А)←(А)-(RBS) |
SUB M |
10010110 |
Косвенная регистровая |
то же |
7 |
(А)←(А)-((HL)) |
SBI DATA8 |
11011110 Y Y |
Непосредственная |
то же |
7 |
(А)←(А)-YY-(С) |
SBB RBS |
10011 SSS |
Прямая регистровая |
то же |
4 |
(А)←(А)-(RBS)-(С) |
SBB M |
10011110 |
Косвенная регистровая |
то же |
7 |
(А)←(А)-((HL))-(С) |
CPI DATA8 |
11111110 Y Y |
Непосредственная |
то же |
7 |
Сравнить содержимое аккумулятора с 8-разрядной константой DATA8. Сравниваемые величины не изменяются. Если флаг Z=1, величины равны; С=1,Z=0 – содержимое аккумулятора меньше, чем DATA8 (в противоположном случае С=0, Z=0 – больше): (S), (Z), (AC), (P), (С)←(А)-YY |
CMP RBS |
10111 SSS |
Прямая регистровая |
то же |
4 |
Сравнить содержимое аккумулятора с содержимым 8-разрядного регистра RBS. Сравниваемые величины не изменяются. Если флаг Z=1, величины равны; С=1,Z=0 – содержимое аккумулятора меньше, чем RBS (в противоположном случае С=0, Z=0 – больше): (S), (Z), (AC), (P), (С)←(А)-(RBS) |
CMP M |
10111110 |
Косвенная регистровая |
то же |
7 |
Сравнить содержимое аккумулятора с содержимым ячейки памяти по адресу, хранящемуся в HL. Сравниваемые величины не изменяются. Если флаг Z=1, величины равны; С=1,Z=0 – содержимое аккумулятора больше, чем RBS (в противоположном случае С=0, Z=0 – меньше): (S), (Z), (AC), (P), (С)←(А)-((HL)) |
INR RBD |
00 DDD 100 |
Прямая регистровая |
S, Z, AC,P |
5 |
Инкрементировать содержимое регистра RBD: (RBD)←(RBD)+1 |
INR M |
00110100 |
Косвенная регистровая |
то же |
10 |
Инкрементироать содержимое ЯП, на которую указывает адрес, хранимый в паре регистров HL: ((HL))←((HL))+1 |
INX RW |
00 rw 0011 |
Прямая регистровая |
то же |
5 |
Инкрементировать содержимое 16-разрядного регистра RW: (RW)←(RW)+1 |
DCR RBD |
00 DDD 101 |
Прямая регистровая |
S, Z, AC,P |
5 |
Декрементировать содержимое регистра RBD: (RBD)←(RBD)-1 |
DCR M |
00110101 |
Косвенная регистровая |
то же |
10 |
Декрементировать содержимое ЯП, на которую указывает адрес, хранимый в паре регистров HL: ((HL))←((HL))-1 |
DCX RW |
00 rw 1011 |
Прямая регистровая |
то же |
5 |
Декрементировать содержимое 16-разрядного регистра RW: (RW)←(RW)-1 |
DAA |
00100111 |
Неявная |
S, Z, AC,P,C |
4 |
Скорректировать искаженный результат после сложения двух 2-разрядных двоично-десятичных чисел. Если младшая (старшая) тетрада содержимого аккумулятора больше 9 или флаг АС (С) установлен в единицу, то ксодержимому аккумулятора добавляется 06Н(60Н). Если (А3А2А1А0)>9 или АС =1, то (А)←(А)+06Н. Если (А7А6А5А4)>9 или С =1, то (А)←(А)+60Н |