- •1.2. Выполнили операцию вычитания двух однобайтных чисел с применением различных режимов адресации: sub rs, sub m, sui b2 (Таблицы 4-6)
- •1.3. Выполнили операцию сложения двух двухбайтных чисел с применением одной из команд adc rs, adc m, aci b2 (Таблица 7)
- •1.4. Выполнили операцию вычитания двух двухбайтных чисел с применением одной из команд: sbb rs, sbb m и sbi b2 (Таблица 8)
- •1.5. Выполнили задания пунктов 1.3. И 1.4. Используя регистровую косвенную адресацию (Таблицы 9 – 10).
- •1.6. Разработали и исследовали программу сложения пяти произвольных однобайтных чисел, используя все режимы адресации. (Таблица 10.1)
- •2.2. С помощью байта – маски сбросили первый и четвертые байты 3316 с применением одной из команд: ana rs, ana m, ana b2 (Таблица 12).
- •2.3. Выполнили операцию логического сложения чисел a316 и 8b16 с применением одной из команд: ora rs, ora m, ori b2 (Таблица 13).
- •2.4. С помощью байта – маски установили третий и седьмой биты байта 3316 с применением одной из команд: ora rs, ora m, ori b2 (Таблица 14).
- •3.2. Задали массив чисел 0a00 ←0116; 0a01 ←0516; 0a02 ←0216; 0a03 ←0116.
- •3.4. Определили сумму двух однобайтных чисел находящихся по адресам 0921 (0316), 0a10 (0516), 0bc9 (0116). Пользуясь командой сложения содержимого регистровых пар dad r (Таблица 31).
- •3.5. Нашли сумму двух десятичных однобайтных чисел 7710 и 1810 (Таблица 32).
3.4. Определили сумму двух однобайтных чисел находящихся по адресам 0921 (0316), 0a10 (0516), 0bc9 (0116). Пользуясь командой сложения содержимого регистровых пар dad r (Таблица 31).
Таблица 31
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 00 |
MVI A |
00 |
В аккумулятор записали число 00 |
0802 |
21 21 09 |
LXI H |
0921 |
В регистровую пару (HL) загрузили адрес ячейки памяти M(0921) |
0805 |
86 |
ADD M |
|
Сложили содержимое аккумулятора с содержимым ячейки памяти адрес которой находится в регистровой паре (HL), результат поместили в аккумулятор |
0806 |
01 10 0A |
LXI B |
0A10 |
В регистровую пару (BC) загрузили адрес ячейки памяти M(0A10 ) |
0809 |
09 |
DAD B |
|
Сложили содержимое регистровых пар (HL) и (BC), результат записали в (HL) |
080A |
86 |
ADD M |
|
Сложили содержимое аккумулятора с содержимым ячейки памяти адрес которой находится в регистровой паре (HL), результат поместили в аккумулятор |
080B |
11 C9 0B |
LXI D |
0BC9 |
В регистровую пару (DE) загрузили адрес ячейки памяти M(0BC9) |
Окончание таблицы 31
080E |
19 |
DAD D |
|
Сложили содержимое регистровых пар (HL) и (DE), результат записали в (HL) |
080F |
86 |
ADD M |
|
Сложили содержимое аккумулятора с содержимым ячейки памяти адрес которой находится в регистровой паре (HL), результат поместили в аккумулятор |
0810 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=03, F=06, HL=1EFA, BC=0A10, DE=0BC9.
3.5. Нашли сумму двух десятичных однобайтных чисел 7710 и 1810 (Таблица 32).
Таблица 32
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 77 |
MVI A |
77 |
В аккумулятор записали число 77 |
0802 |
C6 18 |
ADI |
18 |
Сложили содержимое аккумулятора с числом 18, результат поместили в аккумулятор |
0804 |
27 |
DAA |
|
Преобразовали число в аккумуляторе из шестнадцатеричной системы в десятичную систему |
0805 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=95, F=96