Идеи и аппарат логики используется в кибернетике, вычислительной технике и электротехнике (построение компьютеров основано на законах математической логики).
В основе логических схем и устройств ПК лежит специальный математический аппарат, использующий законы логики. Математическая логика изучает вопросы применения математических методов для решения логических задач и построения логических схем. Знание логики необходимо при разработке алгоритмов и программ, так как в большинстве языков программирования есть логические операции.
Булева алгебра
Двоичное кодирование – все виды информации кодируются с помощью 0 и 1.
Задача – разработать оптимальные правила обработки таких данных.
Джордж Буль разработал основы алгебры, в которой используются только 0 и 1(алгебра логики, булева алгебра).
Почему "логика"?Результат выполнения операции можно представить как истинность (1) или ложность (0) некоторого высказывания.
Логические высказывания
Логическое высказывание – это повествовательное предложение, относительно которого можно однозначно сказать, истинно оно или ложно.
Высказывание или нет?
Сейчас идет дождь.
Жирафы летят на север.
История – интересный предмет.
У квадрата – 10 сторон и все разные.
Красиво!
В городе N живут 2 миллиона человек.
Который час?
Обозначение высказываний
A – Сейчас идет дождь.
B – Форточка открыта.
простые высказывания (элементарные)
Составные высказывания строятся из простых с помощью логических связок (операций) "и", "или", "не", "если … то", "тогда и только тогда" и др.
A и B
A или не B
если A, то B
не A и B
A тогда и только
тогда, когда B
Сейчас идет дождь и открыта форточка.
Сейчас идет дождь или форточка закрыта.
Если сейчас идет дождь, то форточка открыта.
Сейчас нет дождя и форточка открыта.
Дождь идет тогда и только тогда, когда открыта форточка.
БАЗОВЫЕ ЛОГИЧЕСКИЕ ОПЕРАЦИИ
В алгебре высказываний, как и в обычной алгебре, вводится ряд операций. Логические связки И, ИЛИ и НЕ заменяются логическими операциями: конъюнкцией, дизъюнкцией и инверсией. Это основные логические операции, при помощи которых можно записать любую логическую функцию.
1. Логическая операция ИНВЕРСИЯ (ОТРИЦАНИЕ)
соответствует частице НЕ
обозначается черточкой над именем переменной или знаком ¬ перед переменной
Инверсия логической переменной истинна, если сама переменная ложна, и, наоборот, инверсия ложна, если переменная истинна.
Таблица истинности инверсии имеет вид:
A | |
0 | 1 |
1 | 0 |
Операция НЕ (инверсия)
Если высказывание A истинно, то "не А" ложно, и наоборот.
А | не А |
1
0
0
1
таблица истинности операции НЕ
также: ,not A (Паскаль), ! A (Си)
Таблица истинности логического выражения Х – это таблица, где в левой части записываются все возможные комбинации значений исходных данных, а в правой – значение выражения Х для каждой комбинации.
2. Логическая операция КОНЪЮНКЦИЯ (ЛОГИЧЕСКОЕ УМНОЖЕНИЕ)
соответствует союзу И
обозначается знаком & или Λ, или ·
Конъюнкция двух логических переменных истинна тогда и только тогда, когда оба высказывания истинны.Это определение можно обобщить для любого количества логических переменных, объединенных конъюнкцией.А & В & С=1, только если А=1, В=1, С=1.Таблица истинности конъюнкции имеет следующий вид:
A | B | А & В |
0 | ||
1 | 0 | |
1 | 0 | |
3. Логическая операция ДИЗЪЮНКЦИЯ (ЛОГИЧЕСКОЕ СЛОЖЕНИЕ)
соответствует союзу ИЛИ
обозначается знаком v или + или ║
Дизъюнкция двух логических переменных ложна тогда и только тогда, когда оба высказывания ложны.Это определение можно обобщить для любого количества логических переменных, объединенных дизъюнкцией.А v В v С =0, только если А=0, В=0, С=0.Таблица истинности дизъюнкции имеет следующий вид:
A | B | А V В |
0 | ||
1 | ||
1 | 0 | 1 |
Логические формулы
Система имеет три датчика и может работать, если два из них исправны.
A – "Датчик № 1 неисправен".
B – "Датчик № 2 неисправен".
C – "Датчик № 3 неисправен".
Аварийный сигнал:
X – "Неисправны два датчика".
X – "Неисправны датчики № 1 и № 2" или
"Неисправны датчики № 1 и № 3" или
"Неисправны датчики № 2 и № 3".
логическая формула
Использование алгебры логики
Задача. Следующие два высказывания истинны:
1. Неверно, что если корабль A вышел в море, то корабль C – нет.
2. В море вышел корабль B или корабль C, но не оба вместе.
Определить, какие корабли вышли в море.
… если корабль A вышел в море, то корабль C – нет.
1. Неверно, что если корабль A вышел в море, то корабль C – нет.
2. В море вышел корабль B или корабль C, но не оба вместе.
Решение:
Логический элемент НЕ (инвертор)
Простейшим логическим элементом является инвертор, выполняющий функцию отрицания (инверсию). У этого элемента один вход и один выход. На функциональных схемах он обозначается:
вход | выход |
1 | 0 |
0 | 1 |
Если на вход поступает сигнал, соответствующий 1, то на выходе будет 0. И наоборот.
Логический элемент И (конъюнктор)
Логический элемент, выполняющий логическое умножение, называется конъюнктор. Он имеет, как минимум, два входа. На функциональных схемах он обозначается:
На выходе этого элемента будет сигнал 1 только в том случае, когда на все входы поступает сигнал 1. Когда хотя бы на одном входе будет ноль, на выходе также будет ноль.
вход 1 | вход 2 | выход |
0 | ||
1 | 0 | |
1 | 0 | |
Логический элемент ИЛИ (дизъюнктор)
Логический элемент, выполняющий логическое сложение, называется дизъюнктор. Он имеет, как минимум, два входа. На функциональных схемах он обозначается:
Если хотя бы на один вход поступает сигнал 1, то на выходе будет сигнал 1.
вход 1 | вход 2 | выход |
0 | ||
1 | ||
1 | 0 | 1 |
Рассмотрим еще два логических элемента, которые играют роль базовых при создании более сложных элементов и схем.
Логический элемент И-НЕ выполняет логическую функцию штрих Шеффера (И-НЕ), он имеет, как минимум, два входа. На функциональных схемах он обозначается:
Логический элемент ИЛИ-НЕ выполняет логическую функцию стрелка Пирса (И-НЕ), он имеет, как минимум, два входа. На функциональных схемах он обозначается:
.
Логический элемент И-НЕ
Логический элемент ИЛИ-НЕ
вход 1 | вход 2 | выход |
0 | 1 | |
1 | 0 | |
1 | 0 | |
0 |
вход 1 | вход 2 | выход |
0 | 1 | |
1 | ||
1 | 0 | 1 |
0 |
Функциональные схемы
Сигнал, выработанный одним логическим элементом, можно подавать на вход другого элемента, это дает возможность образовывать цепочки из отдельных логических элементов — функциональные схемы.
Функциональная (логическая) схема – это схема, состоящая из логических элементов, которая выполняет определённую функцию. Анализируя функциональную схему, можно понять, как работает логическое устройство, т.е. дать ответ на вопрос: какую функцию она выполняет.
Ясно, что элемент “И” осуществляет логическое умножение значений ¬А и В. Над результатом в элементе “НЕ” осуществляется операция отрицания, т.е. вычисляется значение выражения:
Таким образом структурной формулой данной функциональной схемы является формула:
Важной формой описания функциональных схем является структурная формула. Покажем на примере, как выписывают формулу по заданной функциональной схеме.
Таблица истинности функциональной схемы
Для функциональной схемы можно составить таблицу истинности, то есть таблицу значений сигналов на входах и выходах схемы, по которой можно понять какую функцию выполняет данная схема. Таблица истинности - это табличное представление логической (функциональной) схемы в котором перечислены все возможные сочетания значений входных сигналов вместе со значением выходного сигнала для каждого из этих сочетаний.
Составим таблицу истинности для данной логической схемы:
А | В | С |
0 | ||
1 | ||
1 | 0 | |
Начертим таблицу: количество столбцов = количество входов + количество выходов, количество строк = 2 количество входов. В данной таблице 3 столбца и 4 строки. Заполним первые столбцы всеми возможными вариантами входных сигналов
Рассмотрим первый вариант входных сигналов: А=0, В=0. Проследим по схеме, как проходят и преобразуются входные сигналы. Результат, полученный на выходе (С=1), запишем в таблицу.
Рассмотрим второй вариант входных сигналов: А=0, В=1. Проследим по схеме, как проходят и преобразуются входные сигналы. Результат, полученный на выходе (С=0), запишем в таблицу.
Рассмотрим третий вариант входных сигналов: А=1, В=0. Проследим по схеме, как проходят и преобразуются входные сигналы. Результат, полученный на выходе (С=1), запишем в таблицу.
Рассмотрим четвёртый вариант входных сигналов: А=1, В=1. Проследим по схеме, как проходят и преобразуются входные сигналы. Результат, полученный на выходе (С=1), запишем в таблицу.
В результате получаем таблицу истинности данной логической схемы:
А | В | С |
0 | 1 | |
1 | 0 | |
1 | 0 | 1 |
Задание. Построить таблицу истинности для данной логической схемы и записать формулу для данной схемы:
Логическая реализация типовых устройств компьютера
Обработка любой информации на компьютере сводится к выполнению процессором различных арифметических и логических операций. Для этого в состав процессора входит так называемое арифметико-логическое устройство (АЛУ). Оно состоит из ряда устройств, построенных на рассмотренных выше логических элементах. Важнейшими из таких устройств являются триггеры, полусумматоры, сумматоры, шифраторы, дешифраторы, счетчики, регистры.
Выясним , как из логических элементовразрабатываются логические устройства.
Триггер (англ. trigger – защёлка)
Триггер – это логическая схема, способная хранить 1 бит информации (1 или 0). Строится на 2-х элементах ИЛИ-НЕ или на 2-х элементах И-НЕ.
основной
выход
вспомогательный
выход
reset, сброс
set, установка
обратные связи
S | R | Q | режим | |
0 | ||||
1 | ||||
1 | 0 | |||
хранение |
запрещен |
1
1
0
0
сброс |
установка 1 |
0
0
РЕГИСТРЫ
Функциональная схема компьютера, состоящая из триггеров, предназначенная для запоминания многоразрядных кодов и выполнения над ними некоторых логических преобразований называется регистром.
Регистр - это устройство, предназначенное для хранения многоразрядного двоичного числового кода, которым можно представлять и адрес, и команду, и данные.
счетчик команд - регистр устройства управления процессора (УУ), содержимое которого соответствует адресу очередной выполняемой команды; служит для автоматической выборки программы из последовательных ячеек памяти; регистр команд - регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные - для хранения кодов адресов операндов.
В ЭВМ применяются регистры 8, 16, 32, 48 и 64 разрядов.
© ООО «Знанио»
С вами с 2009 года.