Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab. №17 (чистовик (ё)).doc
Скачиваний:
19
Добавлен:
13.02.2016
Размер:
240.13 Кб
Скачать

7 Содержание отчёта

    1. Наименование и цели лабораторной работы.

    2. Условия, проверочные программы и результаты выполнения заданий № 1…4 в виде таблиц.

    3. Ручной расчёт ожидаемого результата.

    4. Краткие пояснения по ходу выполнения и результатам для каждого задания.

8 Контрольные вопросы

    1. Поясните, как с помощью команды сдвига умножить либо разделить некоторое число на 8.

    2. Укажите, с помощью какой логической команды и как можно выделить некоторые разряды числа (см. таблицу 14).

    3. Укажите, когда устанавливаются триггеры TZ, TC, TP, TS при выполнении команды сравнения.

    4. Поясните, с помощью какой команды можно получить инверсию содержимого регистра D.

9 Требования к знаниям и умениям студентов

В результате выполнения лабораторной работы студенты должны знать:

  • систему команд МП КР580ВМ80;

  • логические команды и команды сдвига;

  • назначение команд системной программы МОНИТОР УМК.

Должны уметь:

  • составлять программы, содержащие логические команды и команды сдвига;

  • готовить к работе УМК;

  • вводить и выполнять программы в автоматическом режиме.

10 Методические указания

    1. Логические команды

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

Для реализации логических операций в системе команд микропроцессора КР580ВМ80, предусмотрены следующие логические команды:

  1. логическое сложение;

  2. логическое умножение;

  3. исключающее ИЛИ;

  4. инверсия.

Все логические команды выполняются побитно с 8-ми разрядными операндами. При этом один из операндов размещается в регистре-аккумуляторе, а второй – либо в одном из регистров общего назначения, либо в ячейке памяти, или задаётся во втором байте команды. Результат выполнения команды записывается в регистр-аккумулятор. При этом бит переноса устанавливается в нуль, а остальные биты устанавливаются в соответствии с результатом выполнения команды.

Команды логического сложения реализуют логическую операцию ИЛИ. Результат равен 1, если хотя бы один из соответствующих битов равен единице, и равен 0, если оба равны нулю. Например:

Где OR – обозначение логической операции ИЛИ.

Команды логического умножения реализуют логическую операцию И. Результат равен 1, если оба соответствующие бита равны 1, и равен 0, если один из них равен 0. Например:

Где AND – обозначение логической операции И.

Команды исключающего ИЛИ реализуют логическую операцию ИСКЛЮЧАЮЩЕЕ ИЛИ или называемую по другому СЛОЖЕНИЕ ПО МОДУЛЮ ДВА. Результат равен 1, если соответствующие биты противоположны (1 и 0), и равен 0, если они одинаковы (1 и 1; 0 и 0). Например:

где XOR – обозначение логической операции ИСКЛЮЧАЮЩЕЕ ИЛИ.

Команды инверсии реализуют операцию ОТРИЦАНИЕ содержимого регистра-аккумулятора. Например:

где NOT – обозначение логической операции ОТРИЦАНИЕ.

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

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

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

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

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

A = (A) OR (C) OR (M) OR 80H.

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

Адрес

Команда

Операнд

Машинный код

Комментарий

0800

ORA

C

B1

; A = (A) OR (C)

0801

LXI

H, 0900H

21 00 09

; Загр. HL=0900H, адр.

; М

0804

ORA

M

B6

; A = (A)OR(М)

0805

ORI

80H

F6 80

; A = (A)OR 80Н

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

СТ0800 0807ВП.

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

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

Вариант

1

2

3

4

5

(А) – исх.

00

FF

АА

01

70

(С)

00

00

55

10

04

(М) по адр. 0900Н

00

00

88

02

53

(А) – рез.

80

FF

FF

93

F7

(F)

82

86

86

86

82