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

Практикум по дисциплине «Теория дискретных автоматов» для студентов 3-го курса направления подготовки 10.03.01 «Информационная безопасность».

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
2. Опустить знаки инверсии на отдельные переменные, используя закон де Моргана :  󰥎󰥎 󰥎󰥎 
3. Образовать новые скобочные выражения и получить конъюнкцию элементарных дизъюнкций, используя распределительный закон алгебры логики. 󰥎 󰇛󰥎󰇜󰇛󰥎󰇜 󰥎 󰇛󰥎󰇜󰇛󰥎󰇜󰇛󰥎󰇜
4. Исключить повторяющиеся элементарные дизъюнкции.
Пример:
󰇛   󰇛
󰥎󰇜󰇛󰥎
󰇜󰇛
󰇜󰇛


󰥎󰇜󰇛
󰇜

(
󰥎
󰥎
󰇜

)
 󰇛󰥎
󰇛󰥎
󰇜󰇛
󰇜󰇛

󰥎󰇜
󰥎
󰇜

Логические функции могут иметь несколько КНФ, одна из которых
называется совершенной КНФ (СКНФ).
Совершенная КНФ логических функций
Совершенной КНФ называется КНФ, элементарные дизъюнкции которой
содержат все переменные логической функции.
Пример: 󰇛  
󰇜
 󰇛󰥎󰥎
󰇜󰇛󰇛󰥎
󰥎󰇜
СКНФ можно получить как по таблице истинности, так и введением
недостающих переменных.
Получение СКНФ по таблице истинности
Для получения СКНФ по таблице истинности логической функции
используются все запрещенные наборы.
При этом выполняют следующие действия:
1. выписываются все запрещенные наборы переменных в виде конституент нуля;
2. записывается конъюнкция конституент нуля.
Пример: Для функции 󰇛  
󰇜
с запрещенными наборами 100, 101,
элементарные дизъюнкции будут следующие:
100  101 
󰥎󰥎 󰥎󰥎
Тогда СКНФ будет иметь вид:
󰇛  
󰇜
(
󰥎󰥎)(
󰥎󰥎
)
Получение СКНФ введением недостающих переменных.
В этом способе получения используют соотношения алгебры логики:
  󰥎  
Действия по получению СКНФ следующие:
1. получение КНФ функции;
2. определение недостающих переменных каждой элементарной дизъюнкции;
3. добавить в каждую элементарную дизъюнкцию слагаемое  по каждой недостающей в нем переменной;
4. привести формулу к виду КНФ, которая и будет СКНФ.
Пример:󰇛  
󰇜
 
󰥎
Получим КНФ функции:
󰇛  
󰇜󰇛
󰥎
󰇜󰇛
󰥎
󰇜󰇛

󰥎
󰇜󰇛

󰥎
󰇜󰇛
󰥎
󰇜󰇛
󰥎
󰇜󰇛

󰥎
Определив недостающие переменные в каждой элементарной
дизъюнкции, добавим их и приведем к виду КНФ, получив СКНФ.
󰇜
11
󰇛  
x
1
x2 x
3
00
01
11
10 0 0 1 1
0
1 1 1 0 1
󰇜
󰇛󰥎󰥎
󰇛󰥎󰥎󰇜󰇛󰥎󰥎
󰇜󰇛󰥎󰥎󰇜󰇛
󰇜(󰥎
󰥎󰇜󰇛
󰥎
󰥎
󰥎󰥎
󰇜
󰇜󰇛

󰥎󰥎󰇜
Нормальные и совершенные нормальные формы логических функций используются при решении задач, анализа ДУ, в частности для определения возможности минимизации функциональных электрических схем дискретных устройств.
2.Минимизация логических функций
Общие вопросы минимизации
Рассматривая стандартные формы логических функций выяснили, что СДНФ и СКНФ являются не экономичными формами представления логических функций. Для построения ДУ целесообразно применение форм представления логических функций более компактное, позволяющее более экономно реализовать устройства.
В качестве критериев компактного представления логических функций являются: минимальное количество переменных в ДНФ (КНФ) или минимальное количество элементарных дизъюнкций(конъюнкций) а ДНФ (КНФ).
Эти критерии используются при минимизации логических функций.
Известны методы минимизации, позволяющие по СДНФ (СКНФ) получить сокращенные ДНФ (СкДНФ), тупиковые ДНФ (КНФ), минимальные ДНФ (КНФ) и кратчайшие ДНФ.
Рассмотрим методы получения минимализированных дизъюнктивных форм логических функций.
Минимизация по методу матриц Карно
Матрицы Карно упрощают задачу минимизации при получении минимальных нормальных форм логических функций.
Матрица Карно — это прямоугольная таблица истинности, содержащая 2n клеток, в которой строки и столбцы обозначены соседними двоичными кодами. В клетки матрицы записываются значения логической функции на соответствующих наборах переменных. Если в клетке матрицы Карно стоит прочерк, для частично определенной логической функции, то в этой клетке можно ставить либо 0, либо 1.
Матрица Карно для трех переменных представлена в табл. 1, а для четырех в табл. 2.
Таблица 1
Матрица Карно для 3-х переменных
 

12

 
  
Здесь подкубы демонстрируют склеивание.
x1 x
2
x3 x
4
00
01
11
10
00 0 0 0 0
01 0 1 1 0
11 0 1 1 0
10 0 0 0 0
Таблица 2
Матрица Карно для 4-х переменнных
     
  
В матрицах Карно могут объединяться единицы или нули в подкубы.
Подкуб объединяют 2n клеток в форме прямоугольника.
Например, на рис. 1 представлены варианты правильных подкубов.
Рисунок 1 – Правильные подкубы матрицы Карно
Рассмотрим свойства матриц Карно:
1) объединение двух соседних клеток в которых записаны единицы, равносильно операции склеивания им соответствующих конституент 1. В таблице 1 и таблице 2 показано склеивание конституент 1 при включении в подкуб, соответственно, двух единиц и четырех единиц;
13
2) соседним наборам переменных функции соответствуют не только
x1 x2
x3 x4
00
01
11
10
00 1 1 0 0
01 0 0 0 0
11 1 1 0 1
10 0 1 0 0
рядом расположенные единицы, но и крайние клетки строк и столбцов;
3) чем больше клеток включено в подкуб, тем больше конституент 1 склеиваются и тем меньше букв входит в конъюнкцию, соответствующую подкубу;
4) подкуб полностью не входящий в другой подкуб эквивалентен простой импликанте;
5) для записи импликанты соответствующей выбранному подкубу необходимо выделить те переменные, которые не меняют своего значения в подкубе;
Для ДНФ, если переменная равна 1, то в импликанту она войдет в прямом
виде , если равно 0 – в инверсном виде .
По матрице Карно, если надо получить СДНФ, надо взять дизъюнкцию
выражений, полученных для каждой конституенты единицы.
Для получения СкДНФ, надо взять дизъюнкцию выражений (простых импликант), полученных для всех максимально возможных подкубов и покрывающих все единицы матрицы.
Для получения ТДНФ, надо взять дизъюнкцию выражений, полученных для максимально возможных подкубов, покрывающих все единицы матрицы, при которых из всех подкубов какой-либо подкуб исключен, а все единицы остались охвачены оставшимися подкубами.
Получение МДНФ состоит в выборе минимальной из всех ТДНФ.
Пример. Пусть дана матрица Карно (табл. 3) с выделенными максимальными подкубами по единицам.
Таблица 3 – Матрица Карно с максимальными подкубами по 1
Запишем по матрице все дизъюнктивные нормальные формы представления логической функции(совершенные ДНФ, сокращенные ДНФ, тупиковые ДНФ):

󰇛   󰇜

  󰇛   󰇜 󰇛   󰇜 󰇛   󰇜 󰇛   󰇜
СДНФ
;
СкДНФ
ТДНФ
ТДНФ
МДНФ
 

 
 
 

 



 
 
 
 
 

14
 





 
    
 

 
;

 
– выбрана
 
 

;

;
По рассматриваемой матрице Карно (табл.2.9), но с максимальными
x1 x2
x3 x4
00
01
11
10
00 1 1 0 0
01 0 0 0 0
11 1 1 0 1
10 0 1 0 0
x1 x2
x3
x4
Z
0 0 0 0 0
0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0
1
0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0
1 1 0 1 1 1 1 1 0 1 1 1 1 1 1
подкубами по 0 запишем все конъюктивные нормальные формы представления логической функции.
Таблица 4 – Матрица Карно с максимальными подкубами по 0
󰇛   󰇜 󰇜󰇛  
󰇜󰇛
  󰇛   󰇜 󰇛   󰇜 󰇛   󰇜 󰇛   󰇜
    
 󰇜󰇛
 󰇛  
СКНФ
󰇜󰇛 
  
СкКНФ
МКНФ
 󰇛 
 󰇛 
ТКНФ
 󰇛 󰇜󰇛 󰇜󰇛 󰇜󰇛  󰇜;
ТКНФ
 󰇛   󰇜
 
 󰇜󰇛   
 
󰇜󰇛
󰇜󰇛 
󰇜󰇛
 
󰇜󰇛  
 
 󰇜󰇛
  
󰇜󰇛 
󰇜󰇛 
ТКНФ
 󰇜;
󰇜󰇛
󰇜󰇛
 󰇛   󰇜
 󰇜󰇛 
 
 
 
󰇜󰇛
  󰇜;
  󰇜;
ТКНФ
 
– одна
из них.
3 Разработка ФЭС ДУ комбинационного типа
Рассмотренные логико-математические основы ДУ комбинационного
типа позволяют проводить построение ФЭС по таблице истинности.
Построение ФЭС по соответствию производятся в следующей
последовательности.
Рассмотрим процесс построения ДУ на примере. Дана таблица истинности (табл. 5) Таблица 5 - Таблица соответствия для построения ФЭС ДУ
комбинационного типа
15
1. Записывается формула выходной функции Z в совершенной
x3 x4
x1 x
2
00
01
11
10
00
0 0 0
0
01
0 1 1 1 11
0 1 1 1 10
1 1 1
1
дизъюнктивной (конъюнктивной) нормальной форме, в зависимости от заданного элемента базиса.
2. Для построения ФЭС запишем формулу выходной функции Z в
совершенной ДНФ.
Z = 





3. Минимизация формулы выходной функции по методу матрицы
Карно(табл. 6).
Таблица 6 - Матрица Карно минимизируемой формулы
Минимальная Z = 
4. Преобразуем минимальную Z в требуемый базис по алгоритму 3.
Алгоритм 3 представления функции в базисе И-НЕ:
1) получить ДНФ функции;
2) поставить над ДНФ двойное отрицание;
3) нижнее (внутреннее) отрицание по закону Де Моргана
  опустить на элементарные конъюнкции. Известен и алгоритм получения функции в базисе ИЛИ-НЕ.
Алгоритм 4 представления функции в базисе ИЛИ-НЕ
1) получить КНФ функции;
2) поставить над КНФ двойное отрицание;
3) нижнее отрицание опустить на элементарные дизъюнкции. В базисе И-НЕ минимальная функция Z имеет вид Z1
Z1 =
 
 
 
 
Построение ФЭС состоит в замене представленных в логической формуле
операций на соответствующие логические элементы (рис. 2).
Рис. 2. ФЭС, реализующая таблицу истинности в базисе И-НЕ
16
Для построения ФЭС в базисе ИЛИ-НЕ по той же таблице соответствия
x3 x4
x1 x
2
00
01
11
10
00
0 0 0
0
01
0 1 1 1 11
0 1 1
1
10
1 1 1
1
выполним следующие действия.
Запишем входную функцию в совершенной КНФ
󰇛
󰇜
󰇛󰇜󰇛
󰇛󰇜󰇛󰇜
Минимизируем по матрице Карно
Минимальная Z2 = 󰇛

Преобразуем в минимальную Z2 в базис ИЛИ-НЕ Z2 = 󰇛
󰇜󰇛

󰇜
󰇛
ФЭС будет иметь вид (рис.3).
󰇜󰇛󰇜
󰇜󰇛

󰇜
󰇜
󰇛
󰇜
Рис. 3. ФЭС, реализующая таблицу соответствия в базисе ИЛИ-НЕ
Входящие в серии типовые элементы имеют конкретное число входов,
поэтому при записи формул разрабатываемых ФЭУ ДУ целесообразно преобразовать из к необходимому виду.
Так, при большем числе входов логических элементов, чем число букв в
элементарной конъюнкции (дизъюнкции) необходимо использовать соотношения:
1)  ,
2)  ,
3)  ,
4)  .
Слева в тождествах представлены выражения для двухвходовых
элементов, справа для трехвходовых элементов.
17
Если число входов логических элементов меньше числа букв в
x1
x2
x3
x4
Z1
Z2
Z3
Z4
Z5
Z6
Z7
Z8 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1 0 1 0
0
0 0 1 0 0 1 0 0 1 0 0
0
0 0 1 1 0 0 1 1 0 1 0
1
0 1 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 1
0
0 1 1 0 1 1 0 0 0 0 1
1
0 1 1 1 1 1 0 1 0 1 1
1
1 0 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 1 1
1
1 0 1 0 1 1 1 1 0 0 0
0
1 0 1 1 1 1 1 1 0 0 0
0
1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 0 0 0
0
1 1 1 0 1 1 1 1 0 1 0
0
1 1 1 1 1 1 1 1 0 0 0
0
Базис элементов
И-НЕ
ИЛИ-НЕ
x1
x2
x3
x4
Z9
Z10
Z11
Z12
Z13
Z14
Z15
Z16
0 0 0 0 0 0 0 0 0 0 0
0
0 0 0 1 0 0 0 1 0 1 0
0
0 0 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 1 0 1 1 1 0
0
0 1 0 0 0 0 1 0 1 0 1
0
0 1 0 1 0 0 1 1 1 1 1
0
0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 1 0 1 1 1 1 1 0
1
1 0 0 0 1 1 1 0 1 0 1
1
1 0 0 1 1 1 1 1 1 1 1
1
1 0 1 0 1 1 1 1 0 0 0
0
1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0
0
1 1 0 1 1 1 1 1 0 0 0
0
1 1 1 0 1 1 1 1 1 1 1
1
элементарной конъюнкции (дизъюнкции), то возможно применение следующих приемов:
1)  
2) 
3)
󰇛

 
󰇜󰇛

;
󰇛

󰇜
 󰇛󰇜󰇛󰇜.
󰇜
Для закрепления изученного материала рекомендуется проведение
исследования по разработке ФЭС комбинационного автомата.
Задачи для решения
Построить ФЭС в требуемом базисе. Вариант задания - при символе Z .
18
Контрольные вопросы
1.Дать определение нормальной формы логической функции.
2.Определение совершенной нормальной формы логической функции.
3.Алгоритм получения нормальной формы логической функции.
4.Получение СДНФ по таблице истинности.
5. Получение СДНФ введением недостающих переменных.
6. Получение СкДНФ по таблице истинности.
7.Получение ТДНФ по таблице истинности.
Практическая работа № 3
Тема: Построение таблицы истинности комбинационных автоматов по
функциональной электрической схеме при анализе Цель: Изучить последовательность выполняемых этапов при анализе дискретных автоматов без памяти.
Теоретические сведения
Алгоритм анализа функциональных свойств ДУ
без памяти
Рассмотрим пункты Алгоритма анализа. П.1 проверка правильности ФЭС. Перечислим условия правильности ФЭС:
─ в любой момент времени в любой точке схемы однозначно определяются
либо сигнал 0, либо -1;
─ каждая точка схемы соединена только с одним выходом какого-либо
логического элемента;
─ в ФЭС отсутствуют обратные связи. Не теряя обычности, рассмотрим процесс анализа ДУ без памяти на конкретном примере (рис. 1).
Рис. 1. ФЭС ДУ без памяти для проведения анализа
19
Данная ФЭС (рис. 3.2) согласно п.1 Алгоритма анализа удовлетворяет
условиям правильности.
П.2 построение структурной схемы ДУ. Она представлена на рис. 3.2.
Рис. 2. Структурная схема анализируемого ДУ
По структурной схеме видим 4 входа ДУ x1, x2, x3, x
и один выход z0.
4
П.3 запись функции непосредственных связей, обозначенных введенными переменными y1, y2, y3, y4, y5, y6, y7, y8.
y1=1; y2=2; y3=3; y4=4; y5=y1 y2 y3; y6=y3 x1 x2;
y7=y2 y3 y4; y8=y4 x1 x2.
П.4 определение логической функцию выхода z0 путем подстановки и применения законов и тождеств алгебры логики.
z0 = y5 ˅ y6 ˅ y7 ˅ y8 = y1 y2 y3 ˅ x1 x2 x3 ˅ x4 y2 y3 ˅ x1 x2 y4 = = 1 2 3 ˅ x1 x2 3 ˅ x4 2 3 ˅ x1 x2 4.
П.5 представление функции выхода в совершенной дизъюнктивной нормальной форме и построение таблицы истинности (табл. 3.1).
z0 = 1 2 3 (x4 ˅ 4) ˅ x1 x2 3 (x4 ˅ 4) ˅ 2 3 x4 (x1 ˅ 1) ˅ x1 x2 4 (x3 ˅ 3) = 1 2 
x4 ˅ 1 2 3 4 ˅ x1 x2 3 x4 ˅ x1 x2 3 4 ˅ x1 2 3 x4 ˅ 1 2 3 x4 ˅ x1 x2 3 x4 ˅ x1 x2 3 
= 1 2 3 x4 ˅ 1 2 3 4 ˅ x1 x2 3 x4 ˅ x1 x2 3 4 ˅ x1 2 3 x4 ˅ x1 x2 x3 
4
Таблица 1
Таблица истинности реализуемой функции анализируемого ДУ
3
4
20
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]