|    | 
СИ-БИ техника | КВ техника | УКВ техника | Радиоизмерения | Защита от TVI | Источники питания | Софт | Расчеты | Справочники
Главная arrow Проектирование arrow MathCAD arrow Функции двух аргументов  

Функции двух аргументов

Оглавление
Функции двух аргументов
Страница 2
Страница 3
Страница 4
Страница 3 из 4

Таблица 4.7. Двоичные функции одного (второго) аргумента

а

b

b(f 1)

-b(f 14)

0

1

0

1

1

1

0

0

0

1

0

1

Таблица 4.8. Двоичные функции нуля аргументов

а

b

1 (f15)

0 (f16)

1

0

1

0

1

0

1

0

Можно отметить, что в табл. 4.3 попали операторы, изначально предназначенные для работы не с двоичными25, а с вещественными операндами: . Но если принять во внимание тот факт, что множество двоичных чисел26 входит во множество вещественных чисел , то включение этих операторов в табл. 4.3 вполне законно. В этом ряду (

) также можно отметить и избыточность, и недостаточность. С избы-

точностью все более-менее ясно ("больше", например, — это инверсия от оператора "меньше или равно" и т. д.). Недостаточность же можно наблюдать в том, что при работе с вещественными переменными вместо оператора "равно" более уместно использовать оператор "примерно равно", которого нет в списках встроенных. Можно также вспомнить о существовании понятий "намного больше" или "намного меньше". Эти операторы соотношения также возвращают двоичные значения, но имеют фактически уже не два, а три аргумента (операнда): сравниваемую пару вещественных чисел и некое контекстное представление программиста о том, что такое "примерно" или "намного".

Если говорить не о классической двоичной алгебре, а о реальной практике программирования, то следует признать, что переменные, фигурирующие в табл. 4.2 и 4.3, могут принимать не два (0 или 1), а три значения: 0, 1 и неопределенно. Эту особенность мы уже зафиксировали в табл. 4.4—4.8, где вместо конкретных значений аргументов (0 или 1) стоит прочерк. В языках программирования есть инструменты, обработки таких "прочерков" в таблицах истинности. Если аргумент двоичной функции не определен, то расчет может либо прерываться сообщением об ошибке, либо идти по третьему пути.

Аргументы двоичных функций могут принимать не два и не три, а... бесконечное множество вещественных значений. Это множество делится на две предельно неравные части: на нуль и на ненуль (-,0, если говорить языком табл. 4.2 — на числа, отличные от нуля, которые двоичными функциями воспринимаются как единицы). Бывает и так, что двоичная функция возвращает не только нули и единицы. В табл. 4.9 представлен пример работы функции Or в одной из реализаций языка BASIC28.

Таблица 4.9. "Дизъюнктивная конъюнкция"

a

b

a Or b

0

0

0

0

-0

1

-0

0

1

-0

-0

2

Можно допустить и другую работу расширенного оператора or (табл. 4.10).

Таблица 4.10. Расширенная конъюнкция (дизъюнкция)

а

b

a Or b

0

0

0

0

-0

1

-0

0

2

-0

-0

3

Одно дело, когда первый аргумент (операнд) не равен нулю, а другое — когда второй, и третье — когда оба одновременно.

Подытоживая "семипунктный" разбор табл. 4.2 и 4.3, можно сказать, что описываемые двоичные функции в реальных компьютерных реализациях могут иметь недвоичные аргументы и возвращать опять же недвоичные результаты. Но особого недвоичного смысла в этом нет. Просто по технологическим причинам вещественные переменные в описываемых реализациях языков программирования (BASIC, Mathcad и др.) "по совместительству" играют роль двоичных (булевых, логических). При этом двоичные (булевы, логические) функции воспринимают свои вещественные аргументы "двоично": нуль есть нуль (Нет, False), а все остальное — единица (Да, True).

Эта, можно сказать, "категоричность" описываемых встроенных функций вступает в противоречие с положениями теории нечетких множеств (fuzzy sets) и теории нечеткой логики (fuzzy logic). Необходимо, например, статистически обрабатывать на компьютере не только "черно-белые" (двоичные) ответы анкетируемых типа "Да (1)" — "Нет (0)", но и "цветные" (вещественные) ответы: "Да (1)", "Скорее да, чем нет (0.75, например)", "Ни да, ни нет (0.5)", "Скорее нет, чем да (0.25, например)" и "Нет (0)". Если говорить не о статистике, а об электротехнике и вернуться к электрическим цепям, которыми иллюстрируют работу двоичных функций (см. нижнюю часть рис. 4.25), то можно упомянуть тот факт, что сейчас в быту получают распространение выключатели, плавно меняющие накал ламп от 100% до нуля. Еще раньше такие устройства стали применять в театрах и кинозалах. Медики уверяют, что плавный переход от света к темноте через полумрак не портит зрение. (В кинотеатрах свет тушат плавно, конечно, не по медицинским соображениям, а по другим причинам — если резко погасить свет, то может начаться паника.)


« Пред. - След. »


RLBN.ru - Электроника и компьютеры

0.139
Hosted by uCoz