Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3.ПТЦА.doc
Скачиваний:
18
Добавлен:
15.09.2019
Размер:
578.56 Кб
Скачать

11. Поняття про булеві функції. Три способи задання булевих функцій. Таблиця істинності. Номер двійкового набору. Повністю та неповністю визначені булеві функції. Основні поняття

Ф-ція f, яка залежить від n змінних x1,x2,…,xn називається булевою, або переключаючою, якщо ф-ція f і любий з її аргументів xi, i приймають значення тільки змножини {0,1}. Аргументи булевої ф-ції також називаються булевими.

Довільна булева ф-ція задається одним із трьох способів : матричним (табличним), геометричним і аналітичним.

При матричному способі булева ф-ція f(x1, x2, …, xn) задається таблицею істинності (табл.1 та 2),

В лівій частині якої представлені всі можливі двійкові набори довжини n, а в правій вказується значення ф-ції на цих наборах.

Під двійковим набором = < >, {0,1} розуміють сукупність значень аргументів х12,…,хn булевої ф-ції f. Двійковий набір має довжину n, якщо він представлений n цифрами із множини {0,1}. В табл. 1 та 4 перечислені всі двійкові набори відповідної довжини 3 і 4.

54

Іноді двійкові набори в таблиці істиності булевої ф-ції зручно представляти номерами наборів. Запишемо аргументи x1,x2,…xn в порядку зростання їх індексів. Тоді любий двійковий набір =< > , {0,1} можна розглядати як ціле двійкове число N: N= 2n-1+ 2n-2+…+ , яке називають номером набору . Наприклад, двійкові набори 0101 і 1000 мають номера 5 і 8 відповідно. Очевидно будь-яка булева ф-ція може бути задана таблицею істинності, в якій двійкові набори замінені своїми номерами (табл. 2).

Булеві ф-ції, залежать від великого числа змінних, задавати таблицею істиності незручно, в силу її громіздкості. Наприклад таблиця істинності булевої функції 8 змінних буде містити 28=256 рядків. Тому для задання ф-ції багатьох змінних зручно використати модифікацію таблиці істинності.

Розглянемо спосіб побудови такої таблиці істинності для ф-ції n змінних. Множина із n змінних ф-ції розбивається на дві підмножини : x1, x2, …,xj-1 і хj, xj+1,…, xn. Змінні x1, x2, …,xj-1 відмічають рядки таблиці істинності, задаваючи в кожному рядку значення відповідного двійкового набору довжини j-1. Змінними хj, xj+1,…, xn відмічають її стовбці, задаваючи в кожному стовбці значення відповідного двійкового набору довжини n-j+1. Значення функції записуються в клітинці на перетині відповідного рядка і стовбця (табл 3).

При геометричному способі булева ф-ція f(x1, x2, …, xn) задається з допомогою n-мірного куба. В геометричному смислі кожний двійковий набір =< > , {0,1} є n-мірний вектор, визначаючий точку n-мірного прстору. Виходячи з цього, вся множина наборів, на яких визначена ф-ція n змінних, представляється вершинами n-мірного куба. Відмічаючи точками вершини куба, в яких функція приймає одиничне значення (або нульове), одержимо геометричне представлення функції. Наприклад, булева функція, задана табл.1, геометрично представляється 3-мірним кубом

При аналітичному способі булева функція задається формулами, тобто аналітичними виразами, побудованими на основі операцій булевої алгебри. Аналітичний спосіб задання булевих функцій займає особливе місце в проектуванні цифрових машин. Фактично, всі перетворення над булевими ф-ціями, необхідні для побудови цифрових машин, ведуться на аналітичному рівні.

Розглянемо області визначення булевоі ф-ції. Як уже відмічалось, між двійковими наборами і двійковими числами існує взаємнооднозначна відповідність. Отже, існує 2n різних наборів двійкових змінних.

Таким чином, областю визначення булевої ф-ції n змінних при матричному способі задання являється множина всіх можливих двійкових довжин n наборів, а при геометричному способі задання множина всіх вершин n-мірного одиничного куба.

Булеву ф-цію, визначену на всіх своїх наборах, називають повністю визначеною. Булеву ф-цію n змінних називають неповністю визначеною,або частинною, якщо вона визначена не на всіх двійкових наборах довжини n. Неповністю визначена булева ф-ція не попадає під визначення, дане на початку глави, але при довільному довизначенні (на всіх наборах, на яких вона не визначена ) ця невідповідність знімається.

Існує не більше як 2n різних булевих функцій n змінних. До цього висновку легко прийти, користуючись простими комбінаторними міркуваннями, і згадавши, що на кожному із 2n наборів функції можуть приймати два значення.

Розглянемо найбільш використовувані булеви ф-ції однієї і двох змінних. Ф-ції однієї змінної представлені таблиці 5, де

f0(x) =0 – тотожній нуль (константа 0);

f1(x) =x – тотожна ф-ція;

f2(x) = - заперечення x (інверсія);

f3(x) =1 – тотожна одиниця (константа 1).

Ф-ції двох змінних представлені в табл.6.

Найбільш часто використовуються такі:

f0(x1,x2)=0 - тотожній нуль (константа 0);

f1(x1,x2)=x1*x2 – кон’юнкція. Замість знака “*” інколи використовують знак & або . Цю ф-цію часто називають логічним перетворенням або логічним множенням;

f3(x1,x2)=x1- повторення х1;

f5(x1,x2)=x2- повторення х2;

f6(x1,x2)=x1 х2 –додавання по модулю, або сума mod 2;

f7(x1,x2)=x1 x2-диз’юнкція (логічне або);

f8(x1,x2)=x1 х2- функція Вебба (стрілка Пірса);

f9(x1,x2)=x12 - еквівалентність;

f13(x1,x2)=x1 х2 – імплікація;

f14(x1,x2)=x1/x2- штрих Шеффера;

f15(x1,x2)=1- тотожна одиниця (константа 1);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]