Comments 24
В двоичной логике есть шесть основных операций, которые не могут быть выражены друг через друга:
XOR вполне себе выражается через AND, OR и NOT.
Функциональная полнота, если мне память не изменяет, причем можно даже через пары И-НЕ или ИЛИ-НЕ (КНФ и ДНФ).
Память вам немного изменила. КНФ и ДНФ — это представления в базисе (И, ИЛИ, НЕ).
Но вы правы, базис И-НЕ тоже существует.
Вообще, в двоичном базисе может быть от 1 до 4х функций, причем все варианты осуществимы.
Но вы правы, базис И-НЕ тоже существует.
Вообще, в двоичном базисе может быть от 1 до 4х функций, причем все варианты осуществимы.
от 1? это xor в смысле в базисе?
Нет, с xor не получится, она линейная. Но есть функции, с которыми получится:
ru.wikipedia.org/wiki/Штрих_Шеффера
ru.wikipedia.org/wiki/Стрелка_Пирса
ru.wikipedia.org/wiki/Штрих_Шеффера
ru.wikipedia.org/wiki/Стрелка_Пирса
Спасибо. Прошляпил.
Если в двоичной системе 1 байт = 8 бит, то в троичной наверное правильней было бы 9 трит? Все таки 3^3 = 9.
Таки 3^3 = 27
Если в двоичной системе 1 байт = 8 бит, то в троичной наверное правильней было бы 9 трит? Все таки 3^3 = 9.Конкретное количество битов в байте 1.) не имеет никакого отношения к разрядности системы 2.) ничем не определено даже для двоичной системы. Байт — это от «binary term» и конкретного размера по определению не имеет.
Один трайт был принят равным восьми тритам для возможности сравнения с байтом из восьми бит. безусловно, договоренность может быть любой.
Было бы здорово, если б кто-то привел конкретные или даже реальные (если есть) примеры использования троичной логики и насколько оно себя в этих случаях оправдывает.
Так вроде же были Советские ЭВМ на троичной логике, если не ошибаюсь.
UPD: Троичный компьютер
UPD: Троичный компьютер
квантовые компьютеры в общем случае можно привести к троичной логике
Почему во втором разделе была явно введена симметричная система (-1, 0, 1), а в разделе про троичную арифметику автор вдруг снова возвращается к обычной (0, 1, 2) со всеми проблемами представления отрицательных чисел?
Для удобства восприятия троичного представления через двоичное. Не явно знак присутствует и в т.н. «несбалансированной» троичной системе, если ее представление осуществляется через двоичную (избыточность двух бит для представления одного трита). Возможно, не самый оптимальный метод. Очень прошу: если есть идеи — поделитесь. Буду только благодарен.
1. Отрицание («NOT», !);
2. Повторение («REP», ~);
…
В скобках приведены обозначения операций, принятые в языке программирования Си (кроме п. 2, т. к. в Си нет операции повторения — прим. автора).
Зато в языке C есть унарный оператор ~. Это как раз и есть побитовое отрицание. Его следует написать напротив NOT. А! — это логическое отрицание.
Насколько я помню, единственным полезным свойством троичных вычислений является симмтерия относительно нуля, которая означает, что при округлении у нас не возникает систематической ошибки, как при использовании чётных систем счисления.
Речь про вековечную проблему «куда округлять 0.5 до целых?». В нечётной системе счисления всё просто — там эквивалента 0.5 просто нет.
В условиях плавающей запятой с ограниченной мантисой это значительно повышает точность вычислений.
Все остальные преимущества высосаны из пальца, т.к. битовая плотность любого «больше цифр» будет такой же или меньшей.
Речь про вековечную проблему «куда округлять 0.5 до целых?». В нечётной системе счисления всё просто — там эквивалента 0.5 просто нет.
В условиях плавающей запятой с ограниченной мантисой это значительно повышает точность вычислений.
Все остальные преимущества высосаны из пальца, т.к. битовая плотность любого «больше цифр» будет такой же или меньшей.
Sign up to leave a comment.
Эмуляция троичной системы. Вариант концепции