
- •Задание для выполнения лабораторной работы №3
- •Выполнить операцию вычитания двух однобайтных чисел с применением различных режимов адресации:
- •Выполнить операцию сложения двух двухбайтных чисел с применением одной из команд: adс rs, adс m, aсi b2.
- •Выполнить операцию вычитания двух двухбайтных чисел с применением одной из команд: sвb rs, sвb m, sвi b2.
- •1.5 Выполнить задания пунктов 1.3 и 1.4, используя другие режимы адресации.
- •2.2 С помощью байта-маски сбросить 1 и 4 биты байта 001100112 (3316) с применением одной из команд: ana rs, ana m, ana b2.
- •2.3. Выполнить операцию логического сложения чисел 101000112 (а316) и 100010112 (8в16) с применением одной из команд: ora rs, ora m, ori b2.
- •2.4. С помощью байта-маски установить 3 и 7 биты байта 001100112 (3316) с применением одной из команд:
- •2.5. С помощью команды сма инвертировать число 100010102 (8а16).
- •2.6. Инвертировать флаг переноса регистра f.
- •2.8. Поразрядно сравнить два числа 101100012 и в116, используя одну из команд: xra rs, xra m, xri b2.
- •2.9. Выполнить задания пунктов 2.1 – 2.4, 2.7, 2.8 используя другие режимы адресации.
- •Найти сумму двух десятичных однобайтных чисел 7710 и 1810.
- •Состав отчета по лабораторной работе
Выполнить операцию сложения двух двухбайтных чисел с применением одной из команд: adс rs, adс m, aсi b2.
Таблица 23
Программа сложения двух двухбайтных чисел (регистровая адресация)
-
Адрес
Машинный
код
Мнемоника
команды
Операнд
Комментарий
0800
3E 8A
MVI A,
8A
(A) ← 8A
0802
06 B4
MVI B,
B4
(B) ← B4
0804
80
ADD B
(A) ← (A) + (B)
0805
32 50 08
STA
0805
M(0850) ← (A)
0808
3E 08
MVI A,
08
(A) ← 08
080A
06 10
MVI B,
10
(B) ← 10
080C
88
ADC B
(A) ← (A) + (B) + C
080D
32 51 08
STA
0851
M(0851) ← (A)
0810
FF
RST 7
Прервать выполнение
Программы
Данная программа выполняет операцию 088А16+10В416. Сначала складываются младшие байты чисел, затем старшие с учетом переноса в старший байт. Младший байт суммы содержится в ячейке памяти 0850, старший байт суммы в ячейке памяти 0851. Проверить результат сложения. Проверить и зафиксировать в отчете содержимое регистра F после сложения младших и старших байтов, а также результат сложения.
Результат сложения: 193E, F=02, ячейка 0850 содержит младший байт, т.е. 3E, а ячейка 0851 содержит старший байт, т.е. 19.
Выполнить операцию вычитания двух двухбайтных чисел с применением одной из команд: sвb rs, sвb m, sвi b2.
Таблица 24
Программа вычитания двух двухбайтных чисел (непосредственная адресация)
-
Адрес
Машинный
код
Мнемоника
команды
Операнд
Комментарий
0800
3E 27
MVI A,
27
(A) ← 27
0802
D6 83
SUI
83
(A) ← (A) – 83
0804
32 50 08
STA
0850
M(0850) ← (A)
0807
3E 21
MVI A,
21
(A) ← 21
0809
DE 10
SBI
10
(A) ← (A) – 10 – C
080B
32 51 08
STA
0851
M(0851) ← (A)
080E
FF
RST 7
Прервать выполнение
Программы
Данная программа выполняет операцию 212716 – 108316. Сначала из младшего байта уменьшаемого вычитается младший байт вычитаемого, результат помещается в ячейку памяти 0850. Далее с учетом заема в младший байт из старшего байта уменьшаемого вычитается старший байт вычитаемого, результат помещается в ячейку памяти 0851. Проверить результат вычитания. Проверить и зафиксировать в отчете содержимое регистра F после вычитания младших и старших байтов, а также результат вычитания чисел – ячейки памяти 0850 (младший байт разности) и 0851 (старший байт разности).
F=06, ячейка 0850 =A4 (младший байт), ячейка 0851=10 (старший байт).