- •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).
2.2. С помощью байта – маски сбросили первый и четвертые байты 3316 с применением одной из команд: ana rs, ana m, ana b2 (Таблица 12).
Таблица 12
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 40 08 |
LXI H |
0840 |
В регистровую пару (HL) записали адрес ячейки памяти М(0840) |
0803 |
3E 33 |
MVI A |
33 |
В аккумулятор загрузили число 33 |
0805 |
36 ED |
MVI M |
ED |
В ячейку памяти 0840 загрузили число ED |
0807 |
A6 |
ANA M |
|
Логически умножили содержимое аккумулятор и ячейки памяти М(0840), результат загрузили в аккумулятор |
0808 |
FF |
RST 7 |
|
Прервали выполнение команды |
Просмотрели и зафиксировали в отчете содержимое регистров A=21, F=16, M(0840)=ED
2.3. Выполнили операцию логического сложения чисел a316 и 8b16 с применением одной из команд: ora rs, ora m, ori b2 (Таблица 13).
Таблица 13
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 40 08 |
LXI H |
0840 |
В регистровую пару (HL) записали адрес ячейки памяти М(0840) |
0803 |
3E A3 |
MVI A |
A3 |
В аккумулятор загрузили число A3 |
0805 |
36 8B |
MVI M |
8B |
В ячейку памяти 0840 загрузили число 8B |
Окончание таблицы 13
0807 |
B6 |
ORA M |
|
Логически сложили содержимое аккумулятора и ячейки памяти М(0840), результат загрузили в аккумулятор |
0808 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=AB, M(0840)=8B, F=82
2.4. С помощью байта – маски установили третий и седьмой биты байта 3316 с применением одной из команд: ora rs, ora m, ori b2 (Таблица 14).
Таблица 14
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 33 |
MVI A |
33 |
В аккумулятор загрузили число 33 |
0802 |
0E 88 |
MVI C |
88 |
В регистр C загрузили число 88 |
0804 |
B1 |
ORA C |
|
Логически сложили содержимое аккумулятора и регистра C, результат загрузили в аккумулятор |
0805 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=BB, C=88, F=86
2.5. С помощью команды CMA инвертировали число 8A16 (Таблица 15).
Таблица 15
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 8A |
MVI A |
8A |
В аккумулятор загрузили число 8A |
0802 |
2F |
CMA |
|
Инвертировали содержимое аккумулятора |
0803 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=75, F=86
2.6. Инвертировали флаг переноса регистра F (Таблица 16).
Таблица 16
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3F |
CMC |
|
Инвертировали флаг переноса |
0802 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистра до выполнения программы F=86 и после выполнения программы F=87
2.7. С помощью байта-маски инвертировать первый, третий и седьмой биты байта B116 используя одну из команд XRA RS, XRA M, XRI B2 (Таблица 17)
Таблица 17
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E B1 |
MVI A |
B1 |
В аккумулятор загрузили число B1 |
0802 |
0E 8A |
MVI C |
8A |
В регистр C загрузили число 8A |
0804 |
A9 |
XRA C |
|
Побитно сложили по модулю 2 содержимое аккумулятора и содержимое регистра С, результат записали в аккумулятор |
0805 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=3B, C=8A, F=02
2.8. Поразрядно сравнили два числа 101100012 и B116, используя одну из команд XRA RS, XRA M, XRI B2 (Таблица 18).
Таблица 18
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E B1 |
MVI A |
B1 |
В аккумулятор загрузили число B1 |
0802 |
EE B1 |
XRI |
B1 |
Побитно сложили по модулю 2 содержимое аккумулятора и число B1, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=00, F=46
2.9. Выполнили задания пунктов 2.1.-2.4., 2.7.-2.8., используя другие режимы адресации (Таблицы 19-24).
Таблица 19
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E A3 |
MVI A |
A3 |
В аккумулятор загрузили число A3 |
0802 |
E6 8B |
ANI |
8B |
Логически умножили содержимое аккумулятора и число 8B, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=83, F=82
Таблица 20
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 33 |
MVI A |
33 |
В аккумулятор загрузили число 33 |
0802 |
E6 ED |
ANI |
ED |
Логически умножили содержимое аккумулятора и число ED, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=21, F=06.
Таблица 21
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E A3 |
MVI A |
A3 |
В аккумулятор загрузили число A3 |
0802 |
F6 8B |
ORI |
8B |
Логически сложили содержимое аккумулятора и число 8B, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=AB, F=82
Таблица 22
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 33 |
MVI A |
33 |
В аккумулятор загрузили число 33 |
0802 |
F6 88 |
ORI |
88 |
Логически сложили содержимое аккумулятора и число 88, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=BB, F=86
Таблица 23
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E B1 |
MVI A |
B1 |
В аккумулятор загрузили число B1 |
0802 |
EE 8A |
XRI |
8A |
Побитно сложили по модулю 2 содержимое аккумулятора и число 8A, результат записали в аккумулятор |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=3B, F=02
Таблица 24
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 40 08 |
LXI H |
0840 |
В регистровую пару (HL) загрузили адрес ячейки памяти M(0840) |
0803 |
3E B1 |
MVI A |
B1 |
В аккумулятор загрузили число B1 |
0805 |
36 B1 |
MVI M |
B1 |
В ячейку памяти M(0840) загрузили число B1 |
0807 |
AE |
XRA M |
|
Побитно сложили по модулю 2 содержимое аккумулятора и содержимое ячейки памяти M(0840), результат записали в аккумулятор |
0808 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=00, F=46
3. Исследовали команды вспомогательных логических и арифметических операций
3.1. Сравнили числа 3D16 и 2216, 3D16 и 8F16, 3D16 и 3D16, используя одну из команд: CMP RS, CMP M, CPI B2 (Таблицы 25-27)
Таблица 25
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 3D |
MVI A |
3D |
В аккумулятор загрузили число 3D |
0802 |
06 22 |
MVI B |
22 |
В регистр B загрузили число 22 |
0804 |
B8 |
CMP B |
0850 |
Сравнили содержимое аккумулятора с содержимым регистра B и записали результат в флаг переноса F |
0805 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=3D, B=22, F=02
Таблица 26
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 40 08 |
LXI H |
0840 |
В регистровую пару (HL) загрузили адрес ячейки памяти M(0840) |
0803 |
3E 3D |
MVI A |
3D |
В аккумулятор загрузили число 3D |
0805 |
36 8F |
MVI M |
8F |
В ячейку памяти M(0840) загрузили число 8F |
Окончание таблицы 26
0807 |
BE |
CMP M |
|
Сравнили содержимое аккумулятора с содержимым ячейки памяти M(0840) и записали результат в флаг переноса F |
0808 |
FF |
RST 7 |
|
Прервали выполнение программы |
Таблица 27
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
3E 3D |
MVI A |
3D |
В аккумулятор загрузили число 3D |
0802 |
F3 3D |
CPI |
3D |
Сравнили содержимое аккумулятора с числом 3D и записали результат в флаг переноса F |
0804 |
FF |
RST 7 |
|
Прервали выполнение программы |
Просмотрели и зафиксировали в отчете содержимое регистров A=3D, F=42