что такое алгебра логики в информатике

Что такое алгебра логики в информатике

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

Алгебра – это раздел математики, предназначенный для описания действий над переменными величинами, которые принято обозначать строчными буквами латинского алфавита – а, b, x, y и т.д. Действия над переменными величинами записываются в виде математических выражений.

Термин «логика» происходит от древнегреческого “logos”, означающего «слово, мысль, понятие, рассуждение, закон».

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

Алгебру логику называют также алгеброй Буля, или булевой алгеброй, по имени английского математика Джорджа Буля, разработавшего в XIX веке ее основные положения. В булевой алгебре высказывания принято обозначать прописными латинскими буквами: A, B, X, Y. В алгебре Буля введены три основные логические операции с высказываниями: Сложение, умножение, отрицание. Определены аксиомы (законы) алгебры логики для выполнения этих операций. Действия, которые производятся над высказываниями, записываются в виде логических выражений.

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

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

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

В качестве основных логических операций в сложных логических выражениях используются следующие:

• НЕ (логическое отрицание, инверсия);

• ИЛИ (логическое сложение, дизъюнкция);

• И (логическое умножение, конъюнкция).

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

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

Операция НЕ — логическое отрицание (инверсия)

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

• если исходное выражение истинно, то результат его отрицания будет ложным;

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

Для операции отрицания НЕ приняты следующие условные обозначения:

Результат операции отрицания НЕ определяется следующей таблицей истинности:

Aне А
01
10

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

Приведем примеры отрицания.

1. Высказывание «Земля вращается вокруг Солнца» истинно. Высказывание «Земля не вращается вокруг Солнца» ложно.

3. Высказывание «4 — простое число» ложно. Высказывание «4 — не простое число» истинно.

Принцип работы переключателя настольной лампы таков: если лампа горела, переключатель выключает ее, если лампа не горела — включает ее. Такой переключатель можно считать электрическим аналогом операции отрицания.

Операция ИЛИ — логическое сложение (дизъюнкция, объединение)

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

Применяемые обозначения: А или В, А V В, A or B.

Результат операции ИЛИ определяется следующей таблицей истинности:

ABА или B
000
011
101
111

Результат операции ИЛИ истинен, когда истинно А, либо истинно В, либо истинно и А и В одновременно, и ложен тогда, когда аргументы А и В — ложны.

Приведем примеры логического сложения.

1. Рассмотрим высказывание «В библиотеке можно взять книгу или встретить знакомого». Это высказывание формально можно представить так: С = А V В, где высказывание А — «В библиотеке можно взять книгу», а В — «В библиотеке можно встретить знакомого». Объединение этих высказываний при помощи операции логического сложения означает, что события могут произойти как отдельно, так и одновременно.

2. Рассмотрим высказывание «Знания или везение — залог сдачи экзаменов». «Успешно сдать экзамен может тот, кто все знает, или тот, кому повезло (например, вытянут единственный выученный билет), или тот, кто все знает и при этом выбрал «хороший» билет.

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

Операция И — логическое умножение (конъюнкция)

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

Применяемые обозначения: А и В, А ⋀ В, A & B, A and B.

Результат операции И определяется следующей таблицей истинности:

ABА и B
000
010
100
111

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

Приведем примеры логического умножения.

1. Рассмотрим высказывание «Умение и настойчивость приводит к достижению цели». Достижение цели возможно только при одновременной истинности двух предпосылок — умения И настойчивости.

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

Операция «ЕСЛИ-ТО» — логическое следование (импликация)

Эта операция связывает два простых логических выражения, из которых первое является условием, а второе — следствием из этого условия.

если А, то В; А влечет В; if A then В; А-> В.

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

Приведем примеры операции следования.

1. Рассмотрим высказывание «Если идет дождь, то на улице сыро». Здесь исходные высказывания «Идет дождь» и «На улице сыро». Если не идет дождь и не сыро на улице, результат операции следования — истина. На улице может быть сыро и без дождя, например, когда прошла поливочная машина или дождь прошел накануне. Результат операции ложен только тогда, когда дождь идет, а на улице не сыро.

a) А — ложно, В — ложно (1-я строка таблицы истинности). Можно найти такие числа, для которых истиной является высказывание «если А — ложно, то и В — ложно». Например, х = 4, 17, 22.

b) А — ложно, В — истинно (2-я строка таблицы истинности). Можно найти такие числа, для которых истиной является высказывание «если А — ложно, то В — истинно». Например, х = б, 12, 21.

c) А — истинно, В — ложно (3-я строка таблицы истинности). Невозможно найти такие числа, которые делились бы на 9, но не делились на 3. Истинная предпосылка не может приводить к ложному результату импликации.

d) А — истинно, В — истинно (4-я строка таблицы истинности). Можно найти такие числа, для которых истиной является высказывание «если А — истинно, то и В — истинно». Например, х = 9, 18, 27.

Операция «А тогда и только тогда, когда В» (эквивалентность, равнозначность)

Применяемое обозначение: А = В, А

B001010100111

Результат операции эквивалентность истинен только тогда, когда А и В одновременно истинны или одновременно ложны.

Приведем примеры операции эквивалентности:

1. День сменяет ночь тогда и только тогда, когда солнце скрывается за горизонтом;

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

Источник

Лекция 3. Логические основы работы ЭВМ


3.1. Что такое алгебра логики

Алгебра логики — это раздел математики, изучающий логические переменные, рассматриваемые со стороны их логических значений (истинности или ложности) и логических операций над ними.

3.2. Какая связь между алгеброй логики и двоичным кодированием

Математический аппарат алгебры логики очень удобен для описания того, как функционируют аппаратные средства компьютера, поскольку основной системой счисления в компьютере является двоичная, в которой используются цифры 1 и 0, а значений логических переменных тоже два: “1” и “0”.

3.3. В каком виде записываются в памяти компьютера и в регистрах процессора данные и команды

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

3.4. Что такое логический элемент компьютера

Логический элемент компьютера — это часть электронной логичеcкой схемы, которая реализует элементарную логическую функцию.

Логическими элементами компьютеров являются электронные схемы И, ИЛИ, НЕ, И—НЕ, ИЛИ—НЕ и другие (называемые также вентилями ), а также триггер.

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

Чтобы представить два логических состояния — “1” и “0” в вентилях, соответствующие им входные и выходные сигналы имеют один из двух установленных уровней напряжения. Например, +5 вольт и 0 вольт.

Высокий уровень обычно соответствует значению “истина” (“1”), а низкий — значению “ложь” (“0”).

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

Работу логических элементов описывают с помощью таблиц истинности.

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

3.5. Что такое схемы И, ИЛИ, НЕ, И—НЕ, ИЛИ—НЕ


С х е м а И

Схема И реализует конъюнкцию двух или более логических значений. Условное обозначение на структурных схемах схемы И с двумя входами представлено на рис. 3.1.

Таблица истинности схемы И

xyx & y
000
010
100
111

Единица на выходе схемы И будет тогда и только тогда, когда на всех входах будут единицы. Когда хотя бы на одном входе будет ноль, на выходе также будет ноль.

Связь между выходом z этой схемы и входами x и y описывается соотношением: z = x & y (читается как «x и y» ). Операция конъюнкции на структурных схемах обозначается знаком «&» (читается как «амперсэнд» ), являющимся сокращенной записью английского слова and.

С х е м а ИЛИ

Схема ИЛИ реализует дизъюнкцию двух или более логических значений. Когда хотя бы на одном входе схемы ИЛИ будет единица, на её выходе также будет единица.

Условное обозначение на структурных схемах схемы ИЛИ с двумя входами представлено на рис. 3.2. Знак «1» на схеме — от устаревшего обозначения дизъюнкции как «>=1» (т.е. значение дизъюнкции равно единице, если сумма значений операндов больше или равна 1). Связь между выходом z этой схемы и входами x и y описывается соотношением: z = x v y (читается как «x или y» ).

Таблица истинности схемы ИЛИ

xyx v y
000
011
101
111

С х е м а НЕ

Если на входе схемы 0, то на выходе 1. Когда на входе 1, на выходе 0. Условное обозначение на структурных схемах инвертора — на рисунке 3.3.

Таблица истинности схемы НЕ

x
01
10

С х е м а И—НЕ

Таблица истинности схемы И—НЕ

xy
001
011
101
110

С х е м а ИЛИ—НЕ

Таблица истинности схемы ИЛИ—НЕ

xy
001
010
100
110

3.6. Что такое триггер

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

Самый распространённый тип триггера — так называемый RS-триггер (S и R, соответственно, от английских set — установка, и reset — сброс). Условное обозначение триггера — на рис. 3.6.

На каждый из двух входов S и R могут подаваться входные сигналы в виде кратковременных импульсов ( ).

Наличие импульса на входе будем считать единицей, а его отсутствие — нулем.

На рис. 3.7 показана реализация триггера с помощью вентилей ИЛИ—НЕ и соответствующая таблица истинности.

SRQ
00запрещено
0110
1001
11хранение бита

Поскольку один триггер может запомнить только один разряд двоичного кода, то для запоминания байта нужно 8 триггеров, для запоминания килобайта, соответственно, 8 х 2 10 = 8192 триггеров. Современные микросхемы памяти содержат миллионы триггеров.

3.7. Что такое сумматор

Сумматор — это электронная логическая схема, выполняющая суммирование двоичных чисел.

Сумматор служит, прежде всего, центральным узлом арифметико-логического устройства компьютера, однако он находит применение также и в других устройствах машины.

1. цифра a i первого слагаемого;

2. цифра b i второго слагаемого;

3. перенос p i–1 из младшего разряда.

В результате сложения получаются две цифры:

1. цифра c i для суммы;

2. перенос p i из данного разряда в старший.

ВходыВыходы
Первое слагаемоеВторое слагаемоеПереносСуммаПеренос
00000
00110
01010
01101
10010
10101
11001
11111

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

Например, схема вычисления суммы C = (с 3 c 2 c 1 c 0 ) двух двоичных трехразрядных чисел A = (a 2 a 1 a 0 ) и B = (b 2 b 1 b 0 ) может иметь вид:

3.8. Какие основные законы выполняются в алгебре логики

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

ОСНОВНЫЕ ЗАКОНЫ АЛГЕБРЫ ЛОГИКИ


ЗаконДля ИЛИДля И
Переместительный
Сочетательный
Распределительный
Правила де Моргана
Идемпотенции
Поглощения
Склеивания
Операция переменной с ее инверсией
Операция с константами
Двойного отрицания

3.9. Как составить таблицу истинности

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

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

Если формула содержит три переменные, то возможных наборов значений переменных восемь:

(0, 0, 0), (0, 0, 1), (0, 1, 0), (0, 1, 1), (1, 0, 0), (1, 0, 1), (1, 1, 0), (1, 1, 1).

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

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

ПеременныеПромежуточные логические формулыФормула
00100111
01111011
10001001
11001001

2. Таблица истинности для формулы :

ПеременныеПромежуточные логические формулыФормула
0001100
0110000
1010110
1110000

3. Таблица истинности для формулы :

ПеременныеПромежуточные логические формулыФормула
000110100
001110111
010001101
011001111
100110000
101110000
110010000
111010000

3.10. Как упростить логическую формулу

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

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

Покажем на примерах некоторые приемы и способы, применяемые при упрощении логических формул:

1)
(законы алгебры логики применяются в следующей последовательности: правило де Моргана, сочетательный закон, правило операций переменной с её инверсией и правило операций с константами);

2)
(применяется правило де Моргана, выносится за скобки общий множитель, используется правило операций переменной с её инверсией);

4)
( вводится вспомогательный логический сомножитель ( ); затем комбинируются два крайних и два средних логических слагаемых и используется закон поглощения);

5)
(сначала добиваемся, чтобы знак отрицания стоял только перед отдельными переменными, а не перед их комбинациями, для этого дважды применяем правило де Моргана; затем используем закон двойного отрицания);

6)
(выносятся за скобки общие множители; применяется правило операций с константами);

7)
(к отрицаниям неэлементарных формул применяется правило де Моргана; используются законы двойного отрицания и склеивания);

8)
(общий множитель x выносится за скобки, комбинируются слагаемые в скобках — первое с третьим и второе с четвертым, к дизъюнкции применяется правило операции переменной с её инверсией);

9)
(используются распределительный закон для дизъюнкции, правило операции переменной с ее инверсией, правило операций с константами, переместительный закон и распределительный закон для конъюнкции);

10)
(используются правило де Моргана, закон двойного отрицания и закон поглощения).

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

3.11. Что такое переключательная схема

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

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

Найдем функции проводимости F некоторых переключательных схем:

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

Задача нахождения среди равносильных схем наиболее простых является очень важной. Большой вклад в ее решение внесли российские учёные Ю.И. Журавлев, С.В. Яблонский и др.

При рассмотрении переключательных схем возникают две основные задачи: синтез и анализ схемы.

1. Построим схему, содержащую 4 переключателя x, y, z и t, такую, чтобы она проводила ток тогда и только тогда, когда замкнут контакт переключателя t и какой-нибудь из остальных трёх контактов.

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

3. Найдем функцию проводимости схемы:

4. Упростим переключательные схемы:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *