Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Borodina_A_I_Matematika_v_kompyutere.doc
Скачиваний:
8
Добавлен:
12.11.2019
Размер:
708.61 Кб
Скачать

8.Логические основы эвм

Кроме арифметических, ЭВМ выполняют также логические операции, основанные на понятиях алгебры логики. Основным понятием алгебры логики является высказывание. Высказывание это законченное предложение, о котором можно сказать, что его содержание либо истинно, либо ложно. Каждому высказыванию можно приписать одно из двух значений: истинному высказыванию соответствует значение "1", а ложному – "0".

Из нескольких простых высказываний можно составлять сложные высказывания. Для объединения простых высказываний в сложные применяются знаки логических операций: отрицание, конъюнкция, дизъюнкция, равнозначность. В ЭВМ названные операции выполняются над двоичными кодами поразрядно, т.е. в каждом разряде, независимо от остальных разрядов.

Конъюнкция двух высказываний А и В (логическое умножение) обозначается А^В или АВ (читается «А и В»). Значение истинности конъюнкции следующее:

А

В

А^В

1

1

1

1

0

0

0

1

0

0

0

0

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

Из определения конъюнкции и значения ее истинности вытекает, что:

А^0=0, А^1=1, А^А=А.

Операция логическое умножение в ЭВМ похожа на обычное умножение, но отличается тем, что она проходит в каждом разряде независимо от остальных разрядов.

Примеры: 1011010111 1-й операнд A= 10110

^ 0010110101 2-й операнд B= 11010

0010010101 – результат A^B= 10010

Дизъюнкция двух высказываний А и В (логическое сложение) обозначается АvВ, или А+В (читается «А или В»). Значение истинности дизъюнкции следующее:

А

В

АvВ

1

1

1

1

0

1

0

1

1

0

0

0

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

Из определения дизъюнкции и значения её истинности следует, что:

Аv0=А, Аv1=1, АvА=А.

Логическое сложение в ЭВМ тоже поразрядная операция. Если возьмем те же два исходных числа, то результат этой операции будет таким:

1011010111 1-й операнд А= 10110

0010110111 2-й операнд В= 11010

0010010101 результат АvВ= 11110

Равнозначность двух высказываний А и В обозначается А~В, или А=В (читается «А равнозначно В»). Значение истинности равнозначности следующее:

А

В

А~В

1

1

1

1

0

0

0

1

0

0

0

1

Два высказывания считаются равнозначными, если значения истинности их одинаково, т.е. запись А=В показывает, что высказывания А и В либо оба истинны, либо оба ложны. Из таблицы истинности равнозначности получается:

А~1=А; А~0=А.

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

Например: А=10110

В=10101

А~В=11100

Отрицание равнозначности двух высказываний А и В (сопоставление или сравнение) обозначается , или А#В, или А<>В (читается "А неравнозначно В").

Значение истинности отрицания равнозначности следующее:

А

В

1

1

0

1

0

1

0

1

1

0

0

0

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

Как и предыдущие, эта операция в ЭВМ является поразрядной. Произведем её над теми же двумя двоичными кодами.

1011010111 1-й операнд

0010110101 2-й операнд

1001100010 результат

Отрицание равнозначности двух высказываний представляет собой сложное высказывание, получаемое при помощи двух ранее описанных логических операций: .

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

Переместительный: А^В=В^А; АvВ=ВvА.

Сочетательный:^В)^С=А^^С)=В^^С);

vВ)+С=АvvС)=ВvvС).

Распределительный: А^ВvС=(АvС) ^vС);

vВ)^С=А^СvВ^С.

Закон инверсии: ;

.

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

1

2

3

4

5

6

7

8

9

10

а)

1

1

0

1

0

1

1

1

1

0

б)

0

0

0

1

1

0

1

0

1

1

в)

0

1

1

1

1

0

0

0

0

0

а) содержимое ячейки до сдвига;

б) после сдвига на три разряда вправо;

в) после сдвига на четыре разряда влево.

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

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

Контактная схема представляет собой устройство из проводов и контактов, связывающих два или более полюсов. Мы будем рассматривать схемы, имеющие два полюса, один из которых является входом в систему, а другой – выходом.

К онтакты бывают двух типов: замыкающие и размыкающие. Замыкающий контакт (см. рис. 8.1.а) в нерабочем состоянии сохраняет цепь в разомкнутом состоянии (т.е. если кнопка контакта не нажата, то цепь разомкнута). При рабочем состоянии (кнопка нажата) контакт замыкает цепь. Размыкающий контакт, наоборот, в нерабочем состоянии замыкает цепь, а в рабочем – размыкает.

Рис. 8.1. Контактные схемы

Контакты будем обозначать последними буквами латинского алфавита: x, y, z и т.д. Причем в случае размыкающего контакта сверху буквы будем ставить черточку.

С помощью этих контактов нетрудно реализовать логические операции над высказываниями и всевозможные формулы алгебры логики. На рис. 8.1.б показана реализация конъюнкции и дизъюнкции при помощи замыкающих контактов.

Пусть нерабочему состоянию контакта соответствует 0, рабочему 1. Отсутствие тока в цепи примем за 0, наличие – за 1. В схеме с последовательно включенными контактами ток в цепи может быть только тогда, если замкнуты оба контакта. Если же не замкнут один из контактов (или оба контакта), то ток в цепи отсутствует.

Таким образом, выполняется таблица истинности для конъюнкции:

x

y

x^y

1

1

1

1

0

0

0

1

0

0

0

0

В схеме с параллельно включенными контактами ток в цепи появляется тогда, когда замкнут хотя бы один из контактов. Только в одном случае цепь не проводит тока, – если разомкнуты оба контакта. Следовательно, выполняется таблица истинности для дизъюнкции:

x

y

xvy

1

1

1

1

0

1

0

1

1

0

0

0

Итак, конъюнкция высказываний реализуется последовательным соединением контактов, дизъюнкция – параллельным.

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