
- •Определение булевой функции
- •Способы задания булевых функций
- •Формулы. Реализация функций формулами
- •Принцип двойственности
- •Разложение булевых функций по переменным. Совершенные
- •Полнота и замкнутость. Примеры функционально полных систем
- •Представление булевых функций полиномом Жегалкина
- •Класс функций, сохраняющий константу 0
- •Класс функций, сохраняющий константу 1
- •Класс самодвойственных функций
- •Класс линейных функций
- •Теорема Поста о полноте
- •Понятие днф. Проблема минимизации булевых функций
- •Геометрическая интерпретация задачи минимизации булевых функций
- •Определение тупиковой днф
- •Построение тупиковых днф методом упрощения совершенной днф
- •Определение сокращенной днф и геометрический метод ее построения
- •19.Минимизация булевых функций на основе построения тупиковых д. Н. Ф.
- •20. Минимизация булевых функций методом карт Карно.
- •21.Минимизация булевых функций методом Квайна-Мак-Класски
- •24. Элементарные методы синтеза схем из функциональных элементов. Метод синтеза, основанный на совершенной д. Н. Ф.
- •25. Элементарные методы синтеза схем из функциональных элементов. Метод синтеза, основанный на более компактной реализации множества всех конъюнкций .
- •26.Элементарные методы синтеза схем из функциональных элементов. Метод синтеза, основанный на разложении функции по переменной .
- •27 Синтез схем дешифратора
- •29. Определение и способы задания конечного автомата
- •Способы задания конечного автомата
- •30. Задача анализа и синтеза автоматов
- •31.Элементарные автоматы
- •32. Задача о полноте автоматного базиса
- •Канонический метод синтеза автомата.(?)
- •34.Словарные операторы. Примеры.
- •35. Словарный оператор, реализуемый автоматом. Ограниченно-детерминированный словарный оператор.
- •36. Минимизация автомата
- •37. Понятие формального языка
- •Регулярные языки и грамматики
- •38. Автоматы Мили и Мура. Распознавание множеств автоматами. Теорема анализа для автомата.
- •Понятие алгоритма. Машины Тьюринга и операции над ними. Функции, вычислимые на машинах Тьюринга.
- •40. Формальное определение алгоритма. Представление об алгоритмически неразрешимых проблемах.
- •2. Представление об алгоритмически неразрешимых проблемах
Канонический метод синтеза автомата.(?)
Пример. На конвейере, по которому
двигаются детали двух типов
и
,
установлен автомат, задачей которого
является такая сортировка деталей,
чтобы после прохождения мимо автомата
они образовывали группы
.
Неподходящую деталь автомат сталкивает
с конвейера. Требуется построить схему
такого автомата, используя
-триггер
и элементы «И», «ИЛИ», «НЕ».
Синтез автомата разбивается на следующие этапы.
1. Построение абстрактного автомата .
Входной алфавит –
.
Выходной алфавит –
,
где С – сталкивание детали, П –
ее пропуск. Внутренние состояния автомата
отражают его память о том, какую часть
группы
он уже сформировал:
.
По мере формирования группы автомат
циклически перемещается по этим
состояниям, не изменяя состояния при
поступлении неподходящей детали.
Диаграмма переходов-выходов показана
на рис. 7.
2. Кодирование
алфавитов
.
Один из возможных вариантов кодирования приведен в следующих таблицах.
3. Построение канонической структуры автомата.
Каноническая структура разрабатываемого автомата показана на рис. 8.
Найдем зависимости выходов СФЭ
,
от переменных
сначала в табличном виде (таблица 8), по
которым далее построим формулы
,
,
.
Эти функции называются частично
определенными, так как они не определены
при
.
Для представления этих функций формулами
их доопределяют таким образом, чтобы
получить более простой вид формул.
4. Представление функций выхода автомата и функций управления памятью формулами.
Используя методы минимизации булевых
функций, строим по возможности экономное
представление функций
,
,
формулами в базисе
:
,
,
.
5. Реализация СФЭ и окончательная схема автомата (рис. 9).
34.Словарные операторы. Примеры.
Рассмотрим конечный алфавит X , составленный из букв x1,…..,xn : X={ x1,…..,xn }.
Элементы декартового произведения Xk
называют словами длины k
в алфавите X:
=xi1…xik
. При k = 0 имеем пустое
слово, которое обозначается
.
Множество всех слов в алфавите X
обозначается X*: X*=
X
X2
…
Xn.
Длину слова
обозначим l(
)
. Например, l(
)=
0 , l(
)=k
є
Xk.
Пусть 1 = xi1…xip и 2=xj1…xjq – произвольные слова из алфавита X . Приписывание слова 1 к слову 2 называется конкатенацией. Полученное при этом слово обозначается 1 2: 1 2= xi1…xip xj1…xjq .
Операция конкатенации обладает следующими свойствами:
а) ассоциативность: 1( 2 3)=( 1 2) 3;
б) существование нейтрального элемента: = = .
Очевидно, что эта операция некоммутативна.
Пусть X и Y – два алфавита, X*и Y*– соответствующие им множества слов.
Отображение ϕ :X*→Y*,
→
=
ϕ (
)
называется словарным оператором.
Рассмотрим примеры словарных операторов для двоичных алфавитов X=Y={0,1}.
Пример 1. Оператор ϕ1 сопоставляет каждому слову его первую букву: ϕ1(α1…. αn)= α1
Пример 2. Оператор ϕ2
производит в слове-аргументе замену
каждого нуля на единицу и каждой единицы
на нуль: ϕ2(α1…. αn)=
Пример 3. Оператор ϕ3 переписывает каждое слово слева направо: ϕ1(α1…. αn)= αn…α1
Пример 4. Оператор ϕ4 определяется следующим образом:
ϕ3(α1 α2…. αn)=β1 β2… βn , где β1= α1, β2= α1 α2