Команды логического сложения

ORA ri– с регистром: A, B, C, D, E, H или L;

ORA M– с ячейкой памяти, адрес ячейки памяти в HL;

ORI <B2> – с непосредственным операндом, B2 – второй байт команды.

1.2.1 Записать в память, начиная с адреса 0800H, коды программы (таблица 42), реализующей выражение:

A = (A) Команды логического сложения - student2.ru (C) Команды логического сложения - student2.ru (M) Команды логического сложения - student2.ru 80H.

Таблица 42 – Контрольная программа, содержащая команды логического сложения

Адрес Команда Операнд Машинный код Комментарий
ORA C B1 ; A = (A) OR (C)
LXI H, 0900H 21 00 09 ; Загр. HL=0900H, адр. М
ORA M B6 ; A = (A)OR(М)
ORI 80H F6 80 ; A = (A)OR 80Н
HLT   ; Останов

1.2.2 Выполнить программу, предварительно задавая исходные значения в соответствии с таблицей 43:

СТ0800 0807ВП.

Проверить полученные результаты (см. таблицу 42).

Таблица 43 – Исходные данные и результаты для контрольной программы,

содержащей команды логического сложения

Вариант
(А) – исх. FF АА
(С)
(М) по адр. 0900Н
(А) – рез. FF FF F7
(F)

Команды логического умножения

ANA ri– с регистром: A, B, C, D, E, H или L;

ANA M– с ячейкой памяти, адрес ячейки памяти в HL;

ANI <B2> – с непосредственным операндом, B2 – второй байт команды.

1.3.1 Записать в память, начиная с адреса 0810Н, коды программы (таблица 44), реализующей выражение:

A = (A) Команды логического сложения - student2.ru (D) Команды логического сложения - student2.ru (M) Команды логического сложения - student2.ru 7FH.

Таблица 44 – Контрольная программа, содержащая команды логического умножения

Адрес Команда Операнд Машинный код Комментарий
ANA D A2 ; A = (A) AND (D)
LXI H, 0910H 21 10 09 ; Загр. HL=0910H, адр. М
ANA M A6 ; A = (A) AND (М)
ANI 7FH E6 7F ; A = (A) AND 7FН
HLT   ;останов

1.3.2 Выполнить программу, предварительно задавая исходные значения в соответствии с таблицей 45:

СТ0810 0817ВП.

Проверить полученные результаты (см. таблицу 45):

Таблица 45 – Исходные данные и результаты для контрольной программы,

содержащей команды логического умножения

Вариант
(А) – исх. FF DB
(D) A2 FF
(М) по адр. 0910Н FF C3 6E 0F
(А) – рез. 7F
(F)

Задание 1:

Написать и выполнить программу реализации выражения:

M2 = (A) Команды логического сложения - student2.ru (M1) Команды логического сложения - student2.ru (C) Команды логического сложения - student2.ru (D).

Адрес ячеек памяти: М1 = 0920Н, М2 = 0921Н. Исходные значения взять из таблицы 46. Результаты записать в таблицу 46. Начальный адрес программы 0А00Н.

Проверочную с учетом загрузки исходных данных программу записать в таблицу, аналогичную по форме таблице 44. Вычислить ожидаемый результат. Сравнить ожидаемый результат с полученным. Преобразовать в двоичную систему счисления содержимое регистра F и сделать выводы о значениях признаков.

Таблица 46 – Исходные данные и результаты выполнения для проверочной

программы, содержащей команды логического сложения и умножения

Вариант
(А) FF 4A
(C) A2 4B 7E
(D) A0 F0
(M1) по адр. 0920Н D5
(M2) по адр. 0921Н          
(F)          

Команды исключающие ИЛИ

XRA ri – с регистром: A, B, C, D, E, H или L;

XRA M – с ячейкой памяти, адрес ячейки памяти в HL;

XRI <B2> – с непосредственным операндом, B2 – второй байт команды.

1.4.1 Записать в память, начиная с адреса 0820Н, коды программы (таблица 47), реализующей выражение:

A = (A) Команды логического сложения - student2.ru (C) Команды логического сложения - student2.ru (M) Команды логического сложения - student2.ru AAH.

Адрес: М = 0930H.

Таблица 47 – Контрольная программа, содержащая команды логического сложения по модулю два

Адрес Команда Операнд Машинный код Комментарий
XRA A AF ; A = (A) XOR (A),A=00H
XRA E, AB ; A = (A) XOR (E)
LXI H, 0930H 21 30 09 ; Загр. HL=0930H, адр. М
XRA M AE ; A = (A) XOR (M)
XRI AAH EE AA ; A = (A) XOR AAH, рез.
HLT   ;останов

1.4.2 Выполнить программу, задавая исходные значения в соответствии с таблицей 48:

СТ0820 0828ВП.

Проверить полученные результаты (см. таблицу 48):

Таблица 48 – Исходные данные и результаты для контрольной программы,

содержащей команды сложения по модулю два

Вариант
(А) – исх.
(E) FF C2 AA
(М) по адр. 0930Н F0 0F
(А) – рез. 5A 5A 4A AA
(F)

Команда ИНВЕРСИЯ

CMA – инверсия содержимого регистра-аккумулятора.

1.5.1 Записать в память, начиная с адреса 0830Н, коды программы (таблица 49), реализующей выражение:

Команды логического сложения - student2.ru

Таблица 49 – Контрольная программа, содержащая команды логического отрицания и умножения

Адрес Команда Операнд Машинный код Комментарий
MOV A, B ; Пересылка А ← (B)
CMA   2F ; A = NOT (A)
MOV B, A ; Пересылка А ← (B), ; NOT (B)
MOV A, C ; Пересылка А ← (C)
CMA   2F ; A = NOT (A), NOT (C)
ANA B A0 ; A = (A) AND (B)
CMA   2F ; A = NOT (A), рез.
HLT   ;останов

1.5.2 Выполнить программу, задавая исходные значения в соответствии с таблицей 50:

СТ0830 0837ВП.

Проверить полученные результаты (см. таблицу 50).

Таблица 50 – Исходные данные и результаты для контрольной программы,

содержащей команды логического отрицания и умножения

Вариант
(B) FF AB
(C) FF
(A) – рез. FF FF BB
(F)

Задание 2:

Написать и выполнить программу реализации выражения:

Команды логического сложения - student2.ru .

Исходные значения взять из таблицы 51. Результат записать в таблицу 51. Начальный адрес программы 0А20Н.

Таблица 51 – Исходные данные и результаты для проверочной программы,

содержащей команды логического отрицания и сложения по модулю два

Вариант
(B)
(C) 5E F6 5A
(A) – рез.          
(F)          

Проверочную программу записать в таблицу, аналогичную по форме таблице 49. Вычислить ожидаемый результат. Сравнить ожидаемый результат с полученным. Преобразовать в двоичную систему счисления содержимое регистра F и сделать выводы о значениях признаков.

Команды сравнения

Теоретическое обоснование

Система команд микропроцессора КР580ВМ80 содержит три типа команд сравнения:

– сравнение содержимого аккумулятора с содержимым регистра: А, В, С, D, E, H или L;

– сравнение содержимого аккумулятора с ячейкой памяти по адресу HL;

– сравнение содержимого аккумулятора с непосредственным операндом.

Команды сравнения выполняются посредством внутреннего вычитания из содержимого аккумулятора, соответственно, содержимого регистра, ячейки памяти либо непосредственного операнда. Содержимое аккумулятора при этом не изменяется. В результате сравнения устанавливаются биты признаков следующим образом (таблица 52):

Таблица 52 – Значение битов признаков в зависимости от результата сравнения

Результат сравнения Признак
(TZ) (TC)
Равно Больше Меньше

Бит четности устанавливается по результату внутреннего вычитания и, соответственно, равен 1, если количество единиц в результате четно, и равен 0, если количество нечетно.

Бит знака устанавливается равным значению старшего разряда результата внутреннего вычитания.

Наши рекомендации