Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПТ (украинская) ДРУК.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.86 Mб
Скачать

3. Лабораторна робота № 2. Логічні операції і маскування

Мета роботи

Вивчення логічних операцій і організація маскування інформації.

Загальні відомості

У багатьох випадках при виконанні програм, а також організації керування зовнішніми об'єктами необхідно перевіряти або корегувати (маскувати) стан одного або декількох розрядів у регістрі-акумуляторі. Це робиться за допомогою команд логічних операцій.

Логічне множення “І”

Очищає розряд акумулятора, якщо у відповідному розряді маски буде записаний 0, і не змінює його, якщо – 1. Це правило виведене з розгляду операції кон'юнкції двох величин:

0Λ0=0; 0Λ1=0; 1Λ0=0; 1Λ1=1.

При цьому маска може бути представлена за допомогою безпосередньої, регістрової і посередньо-регістрової адресації:

ANI B2 – безпосередня реєстрація;

ANA R – регістрова адресація;

ANA M – посередньо-регістрова адресація.

Логічне множення позначаться знаками “Λ”, “И”, “and”.

Логічне складання “АБО”

Встановлює одиницю в розряді акумулятора, якщо у відповідному розряді маски буде записана 1, і зберігає інформацію в розряді акумулятора, якщо – 0. По суті це правило виведене з розгляду операції дизьюнкции двох величин:

0V0=0; 0V1=1; 1V0=1; 1V1=1.

При цьому маска може бути представлена за допомогою безпосередньої, регістрової і посередньо-регістрової адресації:

ORI B2 – безпосередня реєстрація;

ORA R – регістрова адресація;

ORA M – посередньо-регістрова адресація.

Логічне складання позначаться знаками “V”, “АБО”, “or”.

Операція логічного “виключного АБО”

Інвертує вміст розряду акумулятора, якщо у відповідному розряді маски записана 1, і не змінює його, якщо – 0.

Наприклад:

0 0=0; 0 1=1; 1 0=1; 1 1=0.

При цьому маска може бути представлена за допомогою безпосередньої, регістрової і посередньо-регістрової адресації:

XRI B2 – безпосередня реєстрація;

XRA R – регістрова адресація;

XRA M – посередньо-регістрова адресація.

Логічне виключне АБО позначаться знаками “ ”, “xor”.

Інвертування

Міняє вміст розрядів акумулятора на протилежне. Правило виведене з розгляду операції інверсії:

; .

Команда CMA.

Порівняння

Використовується для порівняння двох операторів, один з яких завжди знаходиться в акумуляторі. Дана операція виконується шляхом неробочої команди віднімання з вмісту акумулятора вмісту другого операнда, представленого тим або іншим методом адресації. При цьому вміст акумулятора не змінюється, а встановлюються відповідні розряди регістра стану.

Другий операнд може бути представлений за допомогою безпосередньої, регістрової або посередньо-регістрової адресації:

CPI B2 – безпосередня реєстрація;

CMP R – регістрова адресація;

CMP M – посередньо-регістрова адресація.

Порядок виконання роботи

Увімкнути ПЕВМ. Увійти до робочого середовища Windows під своїм паролем. Для запуску емулятора завантажте програму k120.bat з директорії c:\Program files\int8080.

Виконати наступні обов'язкові завдання

Завдання 2.1. Написати програму для вирішення такого математичного виразу:

[(2100) V (2101) Λ (2102) 13H]→(2103) (3.1)

Лістинг програми з докладними коментарями приведений в таблиці 3.1. Для перевірки програми завантажити в комірки ОЗП (2100), (2101) і (2102) відповідно 17Н, 7FH і 0BН, результат роботи програми показати викладачеві.

Таблиця 3.1

Адреса

Код

Мнемоніка

Коментар

2200

21 01 21

LXI H, 2101H

2100H→(HL)

2203

7E

MOV A, M

M(HL)→(A)

2204

23

INX H

(HL)+1→(HL)

2205

A6

ANA M

A)ΛM(HL)→(A)

2206

EE 13

XRI 13H

(A) 13H→(A)

2208

47

MOV B, A

(A)→(B)

2209

3A 00 21

LDA 2100H

(2100)→(A)

220С

В0

ORA B

(A)V(B)→(A)

220В

32 03 21

STA 2103H

(A)→(2103)

2210

76

HLT

зупинення

Завдання 2.2. Самостійно написати програму для вирішення математичного виразу згідно варіанту (Таблиця 3.2).

Зробити перевірку отриманих результатів в двійковій формі.

Зміст звіту

Тема, мета роботи.

Лістинги програм написаних самостійно і перевірка.

Висновки.

Таблиця 3.2

варіанту

Завдання

Дані для перевірки

1

(2100) " (2101) L [(2102) : 2]→ (2103)

76H→(2100); 84Н→(2101); C6→(2102)

2

{30H + [(2100) V (2101)]} " 15H → (2102)

97Н→(2100); В6→(2101)

3

(2100)L [(2101) " (2102)] + (2103) → (2104)

BE→(2100);A1→(2101);D5→(2102);7E→(2103)

4

[(2100) · 2] " (2101) V 75H→ (2102)

70Н→(2100);12Н→(2101)

5

(2100) L (2101) " (2102) + 05Н→ (2103)

F6→(2100);74Н→(2101);11Н→(2102)

6

[(2100) · 2] " [(2101) L (2102)]→ (2103)

81Н→(2100); 66Н→(2101); 98H→(2102)

7

(2100) L 25H V (2101)→ (2102)

19Н→(2100);05Н→(2101)

8

[(2100) " 1АН L (2101) ] V 20H → (2102)

8E→(2100);14Н→(2101)

9

{10H V [ (2100) · 2]} " (2101) → (2102)

98Н→(2100); В6H→(2101)

10

[(2100) V (2101) + (2102)] " 2FH → (2103)

F3→(2100);75Н→(2101);13Н→(2102)

11

[10H V (2100)] " [20H L (2101)] → (2102)

30Н→(2100);74Н→(2101)

12

(2100) " 31H V [(2101) · 2] → (2102)

28Н→(2100);9E→(2101)

13

[(2100) V (2101)] " [50H + (2103)]→ (2102)

47Н→(2100);34Н→(2101);98Н→(2103)

14

[(2100) V (2101)] L [15H " (2102)] → (2103)

72Н→(2100);9D→(2101) ;19Н→(2102)

15

4 · (2100) V [(2101) L (2102) – 32H]→ (2103)

84Н→(2100);66Н→(2101) ;82Н→(2102)

16

[(2100) L A5H " (2101)]→ (2102)

49Н→(2100);EF→(2101)

17

[(2100) L (2101) " (2102) V 4BH] · 2→ (2103)

8E→(2100);62Н→(2101) ;23Н→(2102)

18

(2100) L [20H + (2101) V (2102)] → (2103)

90Н→(2100);64Н→(2101);77Н→(2102)

19

(2100) V [50H " (2101)] L 20H → (2102)

36Н→(2100);67Н→(2101)

20

[(2100) L (2101)] " 30H → (2102)

5C→(2100);22Н→(2101)

21

{[(2100) V (2101)] : 2} L (2102) → (2103)

32Н→(2100);89Н→(2101);А1→(2102)

22

[8CH V (2100)] " [(2101) · 2] → (2102)

A6→(2100);4D→(2101)

23

[(2100) V (2101)] L [(2102) " (2103)] → (2104)

0D→(2100);FF→(2101);E3→(2102);A3→(2103)

24

A3H V [(2100) : 2] L [(2101) → (2102)

7B→(2100);D4→(2101)

25

[(2100) V (2101) " 65H] L F0H→ (2102)

33Н→(2100);E3→(2101)

26

(2101) " {[30H V (2103)] : 4} → (2102)

8CН→(2100);32Н→(2101)

27

[(2100) L (2101) " (2102)] · 5,5 → (2103)

99Н→(2103);67Н→(2104) ;B4→(2103)

28

[0DH L (2101)] L [31H V (2100)]→ (2100)

12Н→(2100);88Н→(2101);

29

[(2100) : 2] L D4H V (2101) ∙ 2 → (2103)

67Н→(2100);90Н→(2101)

30

[7BH V (2100)] " [FFH – (2101)]→ (2102)

84Н→(2100);12Н→(2101)

Контрольні запитання

Призначення команди логічного множення.

Призначення логічної команди виключного «АБО».

Призначення команди логічного складання і інверсії.

Виконання порівнянь в МП Intel-8080.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]