Файл: Архаров В.И. Арифметические и логические основы цифровых вычислительных машин учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.07.2024
Просмотров: 100
Скачиваний: 1
тельных функций (табл. 4.2), которые в переключательной алгебре можно трактовать как элементарные операторы. Указанным опера торам могут быть поставлены в соответствие элементарные опе рации математической логики.
При синтезе переключательных схем (глава шесть) встает во прос о выборе минимального количества исходных операторов, через которые можно было бы выразить другие операторы и произ вольные переключательные функции. Элементарные логические функции от двух переменных обладают следующими пятью свой ствами (пять классов булевых функций): свойством сохранения нуля, свойством сохранения единицы, самодвойственностью (не четностью), монотонностью, линейностью.
П е р в ы й |
к л а с с составляют функции, |
сохраняющие кон |
станту 0, т. е. |
такие булевы функции f (х1г . . . |
, хп), что /( 0, 0, . . . |
0) = 0. Поскольку на одном из наборов значения функций фикси рованы, произвольными остаются (в случае п переменных) лишь
2"— 1 наборов. |
Булевы |
функции от п |
переменных, сохраняющие |
||||||
константу нуль, составляют |
]_ |
|
|
|
|
||||
В т о р о й |
|
к л а с с |
|
|
2 |
|
|
функции, |
|
|
булевых функций составляют |
||||||||
сохраняющие константу 1, |
т. |
е. такие |
булевы функции f (xlt . . . |
||||||
хп), что f(l , |
1, |
. . . , 1) |
= |
1. |
Булевы |
функции от п переменных, |
|||
сохраняющие |
константу |
1 |
составляют |
1 |
cfin |
|
|
||
1, |
— |
2 . |
|
|
|||||
Т р е т и й |
|
к л а с с |
булевых функций |
составляют |
так |
назы |
|||
ваемые линейные функции. |
|
Булева функция / (х1г . . |
. , |
хп) на |
зывается линейной, если ее возможно представить в виде канониче
ского полинома: f (х1, |
. |
. . , |
хп) = а0 + а1х 1 + . . . + апхп. |
Ко |
||||
эффициенты а0, аг, . . . |
, |
ап |
могут принимать значения 0 или 1. |
|||||
Линейных функций имеется 2n + |
1 от п переменных. |
так |
||||||
Ч е т в е р т ы й |
к л а с с |
булевых |
функций составляют |
|||||
называемые самодвойственные функции. |
Булевы функции f {хх, . . . |
|||||||
х„) и q (хг . . . , |
хп) |
называются двойственными друг другу, |
если |
|||||
q (хг . . . , хп) = |
f {хх, . . . , |
хп). Справедливо также и соотноше |
||||||
ние f (хг, . . . , хп) — |
q |
(*!, . . . , |
хп). Булева функция f (хг, |
|
||||
хп) называется самодвойственной, |
если она двойственна по отно |
|||||||
шению к себе самой, т. е. |
если выполняется соотношение f (xlt . . |
|||||||
хп) = / (*i> • • ■. хп). |
|
|
|
( п р о т и в о п о л о ж н ы м и |
н а |
|||
Если условиться называть |
||||||||
б о р а м и — набор (сс1, |
. . . , |
ап) |
и набор (а1...........а„), то опреде |
ление самодвойственных функций будет следующее.
Булева функция называется самодвойственной, если на любых двух противоположных наборах она принимает противоположные значения (0 и 1).
Самодвойственная функция в случае табличного способа зада ния функций будет иметь вид таблицы 4-14.
98
Из таблицы 4-14 видно, что при расположении набора в естест венном порядке противоположные друг другу наборы помещаются симметрично относительно середины этого расположения.
Количество самодвойственных булевых функций от п аргумен
-fin
тов равно | Примеры:
1. /(%!, X2)= * lV * 2 , /*(*!, X2)==X1\/^2 = ^lA^2=^lA^2-
2. f2(x) = x, /* ( x)=J (x) = x = x.
|
|
3. |
/* (x, x) = f(x, x) = x- x = x \ / x = x \ l x = \ . |
|
||||||||
П я т ы й |
к л а с с |
булевых функций составляют м о н о т о н |
||||||||||
н ы е ф у н к ц и и . |
|
Булева функция |
f (xlt |
. . . , хп) |
называется |
|||||||
монотонной, |
если для любых |
|
|
Т а б л и ц а 4-14 |
||||||||
наборов, |
имеющих |
одинако |
|
|
||||||||
|
|
|
|
|||||||||
вую |
размерность а = |
(а1, ..., |
-«1 |
*2 |
*3 |
f Ою -Ь. *з) |
||||||
ап) и в = |
(plf . . . , |
р„), та |
||||||||||
|
|
|
|
|||||||||
ких, что а < |
в, |
имеет |
место |
0 |
0 |
0 |
1 |
|||||
неравенство |
|
|
|
|
|
0 |
0 |
1 |
0 |
|||
/(«!, |
..., |
а „ ) < / ( Р 1, |
...,Р„). |
0 |
1 |
0 |
0 |
|||||
0 |
1 |
1 |
1 |
|||||||||
Среди |
булевых |
функций |
1 |
0 |
0 |
0 |
||||||
имеются |
как |
монотонные |
||||||||||
1 |
0 |
1 |
1 |
|||||||||
функции (например, функции |
1 |
1 |
0 |
1 |
||||||||
(х, х 1-х2), |
так и немонотонные |
1 |
1 |
1 |
0 |
функции (х, х г х г). Приведем определения для суперпозиции лю бого числа функции данного класса:
1)суперпозиция любого числа булевых функций, сохраняющих кон станту «О», является также функцией,сохраняющей константу «О»;
2)суперпозиция любого числа булевых функций, сохраняющих
константу «1», является функцией, сохраняющей константу «1»;
3)суперпозиция любого числа линейных булевых функций пред ставляет собою снова линейную функцию',
4)суперпозиция любого числа самодвойственных функций яв ляется снова самодвойственной функцией',
5)суперпозиция любого числа монотонных булевых функций яв ляется, в свою очередь, монотонной функцией.
Свойства элементарных функций указаны в таблице 4-15.
Система [набор] элементарных логических функций называется функционально полной, если произвольную булеву функцию можно представить в виде суперпозиции функций этой системы.
Введенное определение легко распространяется на произволь ные булевы функции. При установлении необходимых и достаточ ных условий функциональной полноты большую роль играют пять классов булевых функций. Используя пять классов булевых функ ций в работе «Синтез цифровых автоматов», В. М. Глушков рас-
J* |
99 |
Комбинации значений переменных
X 0 0 1 1
У 0 1 0 1
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
|
|
|
|
Т а б л и ц а |
4-15 |
|
Элементар ные функции |
Наименова ние элемен тарных функций |
Не сохра няет 0 |
Не с о х р а няет 1 |
Несамодвой ственная |
Нелинейная |
Немонотон ная |
/о |
|
0 |
|
|
+ |
+ |
|
|
/г |
х А у |
|
|
+ |
|
+ |
||
h |
х ^ - у |
|
+ |
+ |
+ ~ |
+ |
||
/з |
|
X |
|
|
|
1 |
|
|
f 4 |
У > х |
|
+ |
+ |
+ |
|||
|
“Г" |
|||||||
h |
|
У |
|
|
+ |
+ |
+ |
|
/о |
х |
+ |
У |
|
+ |
|||
f l |
х |
у |
у |
1 |
|
|
|
|
f s |
X V |
у |
+ |
+ |
+ |
|
||
_Г |
|
|||||||
/9 |
х ~ у |
+ |
|
+ |
+ |
|
||
/10 |
|
У |
|
|
+ |
+ |
+ |
|
f u |
у - > х |
+ |
|
+ |
+ |
+ |
||
/12 |
|
X |
|
+ |
+ |
+ |
+ |
|
/13 |
х - > У |
+ |
|
+ |
+ |
|||
fu |
Х А У |
+ |
|
+ |
+ |
+ |
||
f i b |
|
1 |
|
4 - |
|
+ |
|
|
сматривает теорему о функциональной полноте, которая устанав ливает необходимые и достаточные условия функциональной пол ноты.
Теорема гласит: Для того чтобы система булевых функций была полной, необходимо и достаточно, чтобы она содержала по крайней мере одну функцию: 1) не сохраняющую константу «О», 2 ) не сохра няющую константу «1», 3) несамодвойственную, 4 )немонотонную, 5) нелинейную.
Доказательство необходимости описываемых в этой теореме свойств системой булевых функций вытекает из определений 1—5, а также из того, что тривиальные функции f (хг...........хп) -- xt при надлежат каждому (i — 1, . . . , п) из пяти классов булевых функ ций. Целью теоремы является построение в виде суперпозиций функ ции системы s и переменных (хг, . . . , хп) любой заданной булевой функции f (х1г . . . , хп) этих переменных.
Из теоремы следует, если каждая функция не обладает лишь одним из пяти перечисленных выше свойств, то для функциональ ной полноты потребуется система из пяти функций. Если какая-либо функция не обладает ни одним из этих пяти свойств, то она одна образует функционально полную систему.
Функционально полная система булевых функций называется несократимой, если из нее нельзя исключить ни одной функции так, чтобы оставшаяся после исключения система функций снова
100
была бы функционально полной. Любую функционально полную систему булевых функций можно привести к несократимому виду, выбрасывая из нее лишние функции.
Система функций, которая в сумме накрывает значками «-}-» все пять колонок (табл. 4-15), является функционально полной. Несо
кратимые функционально полные системы могут |
быть построены |
|
с помощью одной, двух, |
трех и четырех функций. |
|
Анализируя таблицу |
4-15, можно установить несократимые си |
стемы, состоящие из определенного количества элементарных буле
вых функций: /8 — стрелка |
|
Пирса |
x \J у, |
f 13 — штрих Шеффера |
||||||||
х /\ у, /я и f 13 позволяют |
получить |
несократимые системы, состоя |
||||||||||
щие из одной переключательной функции. |
|
|
|
|||||||||
Несократимые системы, состоящие из двух переключательных |
||||||||||||
функций, будут следующие: |
|
|
|
|
|
|
|
|
|
|||
/ 0,11’ |
/о,1з! |
/l,10_> |
/l,12i |
/ 2,9; |
|
/ 2,10') |
/ 2,1:0 / 2,12'» |
|||||
(О,-') |
(0. -) |
(.’.у) |
(V, —) |
|
~ |
|
)(5,-) |
&->) (=;.-) |
||||
/ 2.3; |
/W m |
/ 4,91 |
/ 4,10> |
|
/4 ,ll’> |
/4,12 |
||||||
(=;,.) |
к , - ) |
|
|
(;=,-) |
|
- |
<5=, —) |
|||||
/ 4,13; |
/ 4,15! |
/б,п"> |
fe,i3< |
/ 7,10'» |
/ 7,12! |
flO.lli |
||||||
( - ,- ) (-.1) |
( + , -О |
(+, -о |
(V.-) |
(V,-) |
-о |
|||||||
|
/ю ,и ’> / 10,1з ‘> |
/ 11,12’ |
|
/12,13‘>- |
|
|
||||||
|
|
|
|
|
|
Щ, _ ) (-,* -) |
|
|
||||
Несократимые |
системы, |
состоящие |
|
из трех |
переключательных |
|||||||
функций, будут следующие: |
|
|
|
|
|
|
|
|
|
|||
/о, |
1, э’> |
/l, 6, 9-1 |
/l,6 ,1 5 ’> |
/б, 7, 9’> |
/б, 7, 16* |
|||||||
(0, Л, |
|
|
|
(А,+, 1) (+.V>~) |
(+, v.l) |
Анализ таблицы 4-15 показывает, что несократимые полные системы элементарных функций могут состоять не более чем из трех функ ций.
К числу несократимых не относится система (Д , V>—), а так-
же максимальная система. Максимальная система является набо ром всех элементарных функций двух переменных.
Система (Д , \J , —) и максимальная являются функционально полными. Из системы (Д , \J , —) может быть исключена без нару шения полноты одна из операций: «—», «Д» или «!/»•
Из максимальной системы могут быть образованы все несокра тимые системы.
Вопросы и задачи для самопроверки
1.Какие функции называются переключательными?
2.Как зависит число различных переключательных функций от числа ар гументов? Подсчитайте число различных функций от двух, трех и четы рех аргументов.
3.Составьте таблицы значений функций:
/1 (Х1 >х2<хз) = *1 V х2х3 >
/ 2 (xlt х2, х3) = (х, V х2) -> (хх V х3).
101