X=A+B, имеющих одинаковую длину. Листинг программы приведен в таблице 2.1.
A= B=
Результат сложения заносится в область памяти, отведенную под второе слагаемое.
В области памяти записывается по адресам
8250 – 87 (младший байт первого слагаемого)
8251 – 35 (старший байт первого слагаемого)
8252 – 87 (младший байт второго слагаемого)
8253 – 02 (старший байт второго слагаемого)
Таблица 2.1 – Программа сложения массива однобайтных чисел
Адрес | Код команды | Метка | Мнемоника | Комментарий |
8200 8201 8202 | 21 50 82 | PRG 1: | LXI H, X | Загрузить в регистры младшие два разряда числа А |
8203 8204 8205 | 11 52 80 | LXI D, Y | Загрузить в регистры младшие два разряда числа В | |
8206 | AF | XRA A | Очистить аккумулятор | |
8207 8208 | OE 02 | MVI C, 02 | Загрузить счетчик числа байтов | |
8209 | 1A | M1: | LDAX D | Загрузить в аккумулятор два разряда числа А |
820А | 8E | ADC M | Прибавить к содержимому акумулятора два разряда числа В с учетом переноса | |
820В | 27 | DAA | Преобразовать результат в десятичный код | |
820C | 12 | STAX D | Передать результат в ячейку памяти, адресуемой регистровой парой DE | |
820D | 13 | INX D | Указать на адрес следующих двух разрядов числа В | |
820E | 23 | INX H | Указать на адрес следующих двух разрядов числа А | |
820F | OD | DCR C | Уменьшить содержимое счетчика числа байтов | |
8210 8211 8212 | C2 09 82 | INZ M1 | Если не последний (старший) байт, то идти на МI | |
8213 | E7 | RST 7 | Прервать выполнение программы |