Составители:
Рубрика:
36
Функции можно пронумеровать и задавать их десятичным номером
(см. табл. 1 и 2). По таблице истинности функции f(x
1
, x
2
, …, x
n
) ее
номер определяется столбцом значений функции на всех наборах аргу-
ментов следующим образом:
01 1
01 1
() 2 2 2
,
n
n
Nf f f f
−
−
=⋅+⋅++ ⋅
…
где f
i
– значение функции f на наборе i, N
i
= 2
i
– множитель (“вес”)
для набора i = 0, 1,…, n -1, причем нумерация значений функции в
таблице идет снизу вверх. Таким образом, функцию можно задать, как
f
N
(x
1
, x
2
, …, x
n
).
Пример. Построить таблицу истинности и определить номер фун-
кции
(,,) ( )
.
fxyz x y y
z
=→∨⊕
Для построения таблицы истинности заданной функции (табл. 6)
следует использовать таблицы булевых функций одной и двух перемен-
ных (табл. 1 и 2), последовательно вычисляя компоненты формулы, пред-
ставляющей функцию:
Вычислим десятичный номер функции:
N(f) = 1⋅2
0
+ 0⋅2
1
+ 1⋅2
2
+1⋅2
3
+1⋅2
4
+ 1⋅2
5
+ 1⋅2
6
+ 1⋅2
7
= 1 + 4 + 8 + 16
+ 32 + 64 + 128 = 253, т. е. это функция f
253
(x, y, z).
Для восстановления булевых значений функции по ее номеру необ-
ходимо разложить N(f) в двоичный код последовательным делением по
Таблица 6
xyz i iN
000110117 821
001111016 46
010011015 23
0110 10 114 61
100 1101138
1011110124
1100010012
1110001101
Страницы
- « первая
- ‹ предыдущая
- …
- 36
- 37
- 38
- 39
- 40
- …
- следующая ›
- последняя »