
- •Основы прикладной теории цифровых автоматов
- •Основы прикладной теории цифровЫх автоматов
- •Оглавление
- •Предисловие
- •Глава 1. Информационные основы цифровых автоматов
- •1.1. Информация и общие принципы ее преобразования
- •1.2. Обмен информацией между различными информационными устройствами
- •1.3. Аппаратные средства хранения и обработки информации
- •1.4. Общие понятия о цифровом автомате и алгоритме
- •Глава 2. Представление числовой информации в цифровом автомате
- •2.1. Системы счисления и понятие кода
- •2.2. Выбор системы счисления
- •2.3. Формальные правила двоичной арифметики
- •2.4. Перевод числа из одной позиционной системы счисления в другую
- •Глава 3. Формы представления чисел в цифровых автоматах
- •3.1. Форма представления двоичных чисел с фиксированной запятой
- •3.2. Представление отрицательных чисел в формате с фиксированной запятой
- •3.3. Форма представление чисел с плавающей запятой
- •3.4. Перевод чисел из формата с фиксированной запятой в формат с плавающей запятой и обратно
- •3.5. Погрешности представления чисел
- •20 [A]ф 2n - 1 для целых чисел
- •Глава 4. Арифметические действия с двоичными числами
- •4.1. Сложение двоичных чисел
- •4.1.1. Алгебраическое сложение чисел, представленных в форме с фиксированной запятой
- •4.1.2. Переполнение разрядной сетки
- •4.1.3. Модифицированный прямой, обратный и дополнительный код
- •4.1.4. Алгебраическое сложение чисел, представленных в форме с плавающей запятой
- •4.2. Умножение двоичных чисел
- •4.2.1. Методы умножения двоичных чисел
- •4.2.2. Умножение чисел, представленных в форме с фиксированной запятой
- •4.2.3. Умножение чисел, представленных в форме с плавающей запятой
- •4.2.4. Ускорение операции умножения
- •4.3. Деление двоичных чисел
- •4.3.1. Деление двоичных чисел, представленных в форме с фиксированной запятой.
- •4.3.2. Деление двоичных чисел, представленных в форме с плавающей запятой.
- •4.4. Оценка точности выполнения арифметических операций
- •4.4.1. Погрешность округления
- •Глава 5. Выполнение операций над десятичными числами
- •5.1. Представление десятичных чисел в д-кодах
- •5.2. Формальные правила поразрядного сложения в д-кодах
- •5.3. Представление отрицательных чисел в д-кодах
- •5.4. Выполнение операций сложения и вычитания в д-кодах
- •5.5. Умножение чисел в д-кодах
- •5.6. Деление чисел в д-кодах
- •5.7. Перевод чисел из д-кода в двоичный и из двоичного в д-код
- •Глава 6 контроль работы цифрового автомата
- •6.1. Основные понятия теории кодирования
- •6.2. Кодирование по методу четности-нечетности
- •6.3. Коды Хеминга
- •6.4. Контроль по модулю
- •6.5. Контроль арифметических операций
- •Глава 7. Основы алгебры логики
- •7.1. Основные понятия алгебры логики
- •7.2. Свойства элементарных функций алгебры логики
- •7.3. Аналитическое представление функций алгебры логики
- •7.4. Совершенные нормальные формы
- •7.5. Системы функций алгебры логики
- •7.6. Числовое и геометрическое представление логических функций
- •Глава 8. Упрощение и минимизация логических функций
- •8.1. Задача минимизации
- •8.2. Метод Квайна и импликантные матрицы
- •8.3. Метод Карно (диаграммы Вейча)
- •Глава 9. Методы анализа и синтеза логических электронных схем
- •9.1. Логические операторы электронных схем или цепей
- •9.1.1. Задачи анализа и синтеза электронных схем
- •9.2. Синтез логических схем с одним выходом
- •9.3. Электронные схемы с несколькими выходами
- •9.4. Временные булевы функции и последовательностные автоматы
- •Глава 10. Введение в теорию автоматов и структурный синтез цифровых автоматов
- •10.1. Основные понятия и определения
- •10.2. Методы структурного синтеза и языки описания цифровых автоматов
- •10.3. Элементарный автомат (триггерный элемент)
- •10.4. Синтез цифрового автомата с памятью
- •Глава 11 алгоритмы реализации арифметических действий в цифровых автоматах
- •11.1. Общие принципы разработки алгоритмов
- •11.2. Алгоритмы реализации арифметических действий с операндами, представленными в форме с фиксированной запятой
- •11.2.1.Сложение и вычитание
- •11.2.2. Умножение
- •11.2.3. Деление
- •11.3 Алгоритмы реализации арифметических действий с операндами, представленными в форме с плавающей запятой
- •11.3.1. Сложение и вычитание
- •11.3.2. Умножение
- •11.3.3. Деление
- •11.4. Блок-схемы регистра накапливающего сумматора
- •11.4.1. Для работы с обратным кодом
- •11.4.2. Для работы с дополнительным кодом
- •11.5. Алгоритм извлечения квадратного корня операнда с плавающей запятой
- •Определения основных понятий и терминов
- •Литература
7.2. Свойства элементарных функций алгебры логики
Рассмотрим основные законы, аксиомы и теоремы алгебры логики
Некоторые законы обычной алгебры применимы и к алгебре логики. Например:
Закон коммутативности:
для умножения
АВ = ВА;
для сложения
A + B = B + A.
Закон ассоциативности:
для умножения
A(BC) = (AB)С,
для сложения
A + (B + С) = (A + B) + С.
Закон дистрибутивности умножения по отношению к сложению:
A(B + С) = AB + AC.
В алгебре логики действует также закон дистрибутивности сложения по отношению к умножению:
A +BС = (A + B)(A + С)
Алгебра логики имеет ряд специфических аксиом и теорем, основные из которых, необходимые для анализа и синтеза логических цепей или схем, приведены ниже.
а) б)
1) A = 1, если A 0; A = 0, если A 1;
2) Если A = 0, тоA = 1 Если A = 1, тоA = 0
3) 0 + 0 = 0; 0 0 = 0;
4) 0 + 1 = 1 1 0 = 0;
5) 1 + 1 = 1 1 1 = 1;
6)0 = 1 1 = 0;
7) A + 0 = A A 1 = A;
8) A + 1 = 1 A 0 = 0;
9) A + A = A A A = A;
10) A = A;
11) A +A = 1 AA= 0;
12) A + B + C =ABC ABC =A + B + C
(теорема де Моргана);
13) A(A + B) = A A + AB = A
(закон поглощения).
14) A +AB = A + B A(A + B) = AB
В алгебре логики широко используется также специфический закон склеивания:
15) AB +AB = B(A +A) = B (A + B)(A +B) = A
Аксиомы и теоремы, записанные слева, называются двойственными аксиомам и теоремам, записанным справа.
Двойственность определяется как изменение всех знаков операции И на знаки операции ИЛИ, всех знаков операции ИЛИ на знаки операции И, всех нулей на единицы и всех единиц на нули.
Двойственность является одним из основных свойств алгебры логики и означает, что если f(A, B, C) и f(A, B, C) - двойственные функции, то
f(A, B, C) = f(A,B,C).
Законы де Моргана являются одной из иллюстраций свойства двойс-твенности и, как уже отмечалось, могут быть сформулированы в виде:
ABC =A +B +C
A + B + C =ABC,
Из законов де Моргана вытекают следствия:
ABC = A +B +C
A + B + C = ABC.
Следовательно, появляется возможность выражать конъюнкцию через дизъюнкцию и отрицание, или дизъюнкцию - через конъюнкцию и отрицание. Законы де Моргана и следствия из них справедливы для любого количества переменных.
Функция сложения по модулю 2 представляется следующим образом:
A B = AB +AB = (A + B)(A +B)
Для этой функции справедливы следующие аксиомы:
A A = 0; A A A = A; A A = 1; A 1 =A; A 0 = A
На основании рассмотренных аксиом и свойств элементарных логических функций можно, например, вывести правила представления функций И, ИЛИ, НЕ через функцию сложения по модулЮ 2 и наоборот:
F = A 1;
A + B = A B AB
F D = (A B) (A + B)
Для функции Шеффера, которая может быть выражена соотношением
x1/x2 = x1x2
Характерны аксиомы:
x/x =x+ x/x = 1+ x/0 = 1+
x/1 =x+ x/0 = 1+ x/1 = x.
Функции И, ИЛИ, НЕ через функцию Шеффера выражаются так:
x1x2 = x1/x2 = x1/x2/x1/x2; x = x/x;
x1 + x2 = x1x2 =x1/x2 = x1/x1/x2/x2.
Функция Пирса (Вебба) может описываться следующими выражениями:
x1 x2 = x1 + x2 =x1x2
Для этой функции справедливы аксиомы:
x x =x; x 0 =x; x x = 0; x 1 = 0.
Функции И, ИЛИ, НЕ выражаются через функцию Пирса (Вебба) следующим образом:
x1x2 = (x1 x1) (x2 x2); x1 + x2 = (x1 x2) (x1 x2); x = x x.
В заключение обзора основных свойств логических функций подчеркнем, что логичекие выражения содержащие операции дизъюнкции и конъюнкции можно преобразовывать (раскрывать скобки, выносить общий множитель, переставлять местами члены и т.д.) по правилам алгебры, считая формально дизъюнкцию операцией сложения, а конъюнкцию - операцией умножения. Но нужно всегда четко помнить, что в алгебре логики, в отличие от обыкновенной алгебры, знак + либо знак означают логическую связку ИЛИ (OR), а знак умножения "" либо знаки , и &, означают логическую связку И (AND).