Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №7 - 8

.doc
Скачиваний:
34
Добавлен:
07.03.2015
Размер:
1.97 Mб
Скачать

Примечание. Знаком Х отмечено безразличное состояние, знаком * – операция сдвига на один разряд влево. Арифметические действия, выполняемые АЛУ, указаны словами «плюс» и «минус», все другие действия – логические и указаны символами.

Таблица 8.2. Результаты расчетов логических и арифметических функций

п/п

Операнд А10 = А2 = Операнд В10 = В2 =

Режим рабо-ты

Результат

выполнения лог. функции

Результат выполнения арифметической функции

С =

М = С = 0

М = С = 1

F8

F4

F2

F1

К

С

F8

F4

F2

F1

К

С

F8

F4

F2

F1

1

Расч.

Эксп.

2

Расч.

Эксп.

»

»

16

Эксп.

Расч.

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

Отчёт по работе должен содержать:

  • заполненную таблицу (табл. 8.2) с указанием операндов А и В, состояния кнопки М при выполнении той или иной операции, результатов F и признаков С и К;

  • перевод заданных чисел из десятичной в двоичную систему счисления.

Задания для домашней подготовки

При подготовке к выполнению работы ответьте на следующие вопросы:

1. Какие основные логические функции двух переменных вы знаете?

2. Какое количество логических функций существует для двух переменных?

3. Какова схема устройства, выполняющего логическую функцию F = (А + В)(С + D)?

4. Переведите из десятичной в двоичную, восьмеричную и шестнадцатеричную системы счисления год вашего рождения.

5. Выполните арифметические операции «сложение» и «вычитание» в двоичном коде над двоичными переменными, соответствующими вашему курсу и группе. Убедитесь в правильности выполнения действий, переведя данные и результат в восьмеричную и шестнадцатеричную системы счисления.

Краткие теоретические сведения

АЛУ относится устройствам, обрабатывающим входную информацию (операнды А и В), представленную в виде двоичных переменных. При этом каждый разряд операндов А и В имеет значение «1» (нажатая кнопка вызывает свечение светодиода) либо «0» (при не нажатой кнопке свечение светодиода отсутствует). Выходная информация (операнд F и признаки С, К) представлена также в двоичной системе счисления («1» – есть свечение светодиода, «0» – свечение светодиода отсутствует).

Логическими операциями, исследуемыми на АЛУ, являются инверсия, конъюнкция, дизъюнкция, неравнозначность и их комбинации. Все логические операции производятся над двоичными числами поразрядно. Рассмотрим основные логические операции.

Инверсия (отрицание) обозначается в записи как либо , осуществляет обращение «0» в «1», а «1» в «0», например, А = 1101, = 0010.

Конъюнкция (логическое умножение, функция «И») в записи может быть обозначена одним из следующих способов:

F = A Λ B; F = A·B; F = AB.

Логическое умножение осуществляет преобразование переменных А и В в функцию F по правилу, приведённому в табл. 8.3.

Инверсия конъюнкции (штрих Шеффера, функция «И-НЕ») обозначается, как и выполняется при двух входных переменных так, как указано в табл. 8.3.

Дизъюнкция (логическое сложение, функция «ИЛИ») в записи обозначается как F = А V В, F = A + B.

Реализуемая в данном случае функция также представлена в таблице (табл. 8.3).

Таблица 8.3. Логические функции

А

В

Логические функции

«И»

«И-НЕ»

«ИЛИ»

«ИЛИ-НЕ»

Неравно-значность

Равно-

значность

F = AB

F = A + B

0

0

0

1

0

1

0

1

0

1

0

1

1

0

1

0

1

0

0

1

1

0

1

0

1

1

1

0

1

0

0

1

В табл. 8.3 функция имеет название инверсия дизъюнкции (стрелка Пирса) и выполняет преобразование «ИЛИ-НЕ».

Неравнозначность (при двух входных переменных логическую операцию иногда называют «сложение по модулю 2», «исключающее ИЛИ») имеет обозначение или .

Условное обозначение либо соответствует функции равнозначность.

Результаты F обработки операндов А и В перечисленных функций указаны в табл. 8.3.

На рис. 8.1 представлены условные графические обозначения логических функций, используемые при составлении принципиальных устройств.

Рис. 8.1. Условные графические обозначения логических функций

Арифметические операции над двоичными переменными производятся с учетом того, что при их выполнении входная и выходная информация представляется в двоичной системе счисления, а не поразрядно, как при организации логических операций.

Двоичная система счисления основана на использовании двух коэффициентов «0» и «1» в качестве множителей а0  аn при записи числа А:

А2 = аn·2n+ … + a3·23 + a2·22 + a1·21 + a0·20.

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

Пример. Представить в двоичной системе число А10 = 43.

Решение. Преобразование осуществляется следующим образом:

43 : 2 = 21

остаток 1 – младший значащий разряд

21 : 2 = 10

остаток 1,

10 : 2 = 5

остаток 0,

5 : 2 = 2

остаток 1,

2 : 2 = 1

остаток 0,

1 : 2 = 0

остаток 1 – старший значащий разряд.

Ответ. Десятичное число 43 имеет двоичный эквивалент 101011.

4310 = 101011.

Кроме двоичной часто применяются восьмеричная и шестнадцатеричная системы счисления.

В восьмеричной системе число А записывается так:

А8 = аn·8n+ … + a3·83 + a2·82 + a1·81 + a0·80.

Коэффициенты а0  аn имеют значение 0, 1, 2, 3, 4, 5, 6, 7. Старшим коэффициентом системы счисления является 78. 78 может быть представлено триадой двоичных чисел 78 = 1112. Следовательно, для перевода числа из двоичной системы счисления в восьмеричную необходимо разбить его на триады, начиная с младших разрядов, и каждую триаду представить в восьмеричном коде. Если старшая триада будет неполной, её дополняют нулями.

Пример. 4310 = 101011 = 538.

В шестнадцатеричной системе счисления 16 коэффициентов а0  аn (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F). При этом А16 = 1010; В16 = 1110; С16 = 1210; D16 = 1310; Е16 = 1410; F16 = 1510.

Запись числа А в этом случае выглядит так:

А16 = аn·16n+ … + a3·163 + a2·162 + a1·161 + a0·160.

Старшим коэффициентом системы счисления является F16 = 1510, которое может быть представлено тетрадой двоичных разрядов.

F16 = 1510 = 11112.

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

Пример. 4310 = 00101011 = 2В16.

Из арифметических действий АЛУ может выполнять сложение и вычитание в двоичном, восьмеричном и шестнадцатеричном коде. Правила сложения и вычитания одноразрядных двоичных чисел а, в представлены на рис. 8.2.

а) б)

Рис. 8.2. Правила в табличном виде для: а – сложения; б – вычитания

Пример. Сложить два двоичных числа:

Значком «» в примере отмечен возникающий перенос.

Пример. Сложить двоичное число 1011 само с собой:

Как видно из приведенного примера, суммирование двоичного числа самого с собой приводит к сдвигу кода данного числа в сумме на один разряд влево. Это свойство суммирования используется при организации операции умножения.

Пример. Найти разность двух двоичных чисел:

Значком «» в примере отмечен возникающий заем.

Для определения разности иногда прибегают к использованию дополнительного кода. Дополнительным кодом двоичного числа А называют двоичное число, полученное путем инвертирования А, и суммирование этой инверсии с единицей.

Пример. Найти дополнительный код числа А = 1010112:

= 0101002;

Адоп = 0101002 + 0000012 = 0101012.

Итак, дополнительным кодом числа 1010112 является число 0101012. Операция вычитания в дополнительном коде требует выполнения следующих действий:

1) уменьшаемое оставляют без изменения;

2) находят дополнительный код вычитаемого;

3) уменьшаемое складывают с дополнительным кодом вычитаемого;

4) возникающую единицу переноса в старшем разряде разности не учитывают.

В приведенной последовательности действий удалось избежать операции «вычитание», заменив её операциями «инвертирование» и «сложение».

Пример. Найти разность двух двоичных чисел

1011012 = 4510 и 101102 = 2210.

Находим дополнительный код числа 101102. Им является число 010102. Разность определяется следующим образом:

+

1011012 = 4510

010102

1*101112 = 2310 .

1* – не учитывают.

Использование подобного приёма объясняется тем, что для организации и суммирования и вычитания применяются одни и те же устройства, называемые сумматорами. Они могут быть одноразрядными или многоразрядными, неполными или полными. Одноразрядный неполный сумматор (полусумматор) имеет два входа и два выхода. Условное обозначение, логическая структура и таблица истинности неполного сумматора представлены на рис. 8.3. Выход F дает результат арифметического сложения двух битов, а выход С дает результат переноса, возникающего при сложении. Одноразрядный полный сумматор имеет три входа и два выхода. На рис. 8.4 показан полный одноразрядный сумматор, который отличается от неполного тем, что он имеет три входа. На выходе С имеется результат сложения одноразрядных цифр А, В и переноса С предыдущего полусумматора. Многоразрядный сумматор строится путем каскадного включения одноразрядных сумматоров (рис. 8.5).

а) б) в)

Рис. 8.3. Неполный одноразрядный сумматор: а – условное обозначение;

б – логическая структура; в – таблица истинности

а) б) в)

Рис. 8.4. Полный одноразрядный сумматор: а – условное обозначение;

б – логическая структура; в – таблица истинности

а) б)

Рис. 8.5. Полный 4-разрядный сумматор:

а – условное обозначение; б – структурная схема

На рис. 8.6 представлена схема включения сумматора при вычитании четырехзначных двоичных чисел.

Другие арифметические действия (деление, умножение, возведение в степень и т. д.) выполняются программно с применением микропроцессорных устройств, составной частью которых является АЛУ.

Рис. 8.6. Схема включения сумматора при вычитании

четырехразрядных двоичных чисел

Контрольные вопросы и задания

  1. Объясните принцип работы АЛУ на примере выполнения им функции №10 при М = 0, С = 1.

  2. Какие логические функции двух переменных выполняются на АЛУ К155ИП3? Приведите их таблицы истинности и условные графические изображения.

  3. Чему равны значения операндов А и В, если результат инверсии неравнозначности операндов А и В равен F = 1100?

  4. Как представить двоичное число в шестнадцатеричной и восьмеричной системах счисления? Проиллюстрируйте перевод чисел из одной системы в другую на нескольких примерах.

  5. Объясните принцип использования сумматора для вычитания двоичных чисел.

  6. Что означает перенос при арифметической обработке двоичных операндов А и В? Каково назначение бита переноса в АЛУ и при каких условиях он устанавливается в единицу?

  7. Что такое ускоренный перенос? Чем вызвана необходимость применения специальных схем ускоренного переноса?

  8. Каким образом можно увеличить разрядность операндов А и В для обработки восьмеричных или шестнадцатеричных входных слов?

  9. Что вы знаете об операции сдвига двоичных чисел влево?

  10. Начертите функциональную схему АЛУ при выполнении им операции №14, М = 0, С0 = 0.

93