О сказках про троичную логику
В очередной раз был удивлен количеством суеверий на эту тему. Решил написать небольшое разъяснение в пику безграмотным журналюгам.
Не надо путать двоичную систему счисления и двузначную логику.
________
Большинство компов используют двоичную систему счисления. Это значит, что числа в них кодируются последовательностью цифр, каждая из которых может иметь два варианта. Например, 0 вольт и +5 вольт. Условно каждый вариант обозначают 0 или 1.
Всякое целое число можно записать в любой системе счисления. Вот например, в десятичной системе число 13. В двоичной будет 1101.
С технической точки зрения считать в двоичной системе проще. Например, таблица умножения будет не 10 на 10, а 2 на 2. С другой стороны, для записи числа в двоичной стсиеме потребуется больще цифр. На примере выше это видно: 1101 и 13.
Если приблизительно прикинуть орган к носу, то идеальный вариант лежит где-то между 2-ичной и 3-ичной системами счисления.
______
А что такое двузначная логика? Двузначная логика, это когда рассматривается два варианта истинности: true и false - "истина" и "ложь". Обратите внимание: речь идет не о кодировании чисел, а о кодировании истинности.
Двузначная логика не учитывает промежуточные градации типа "может быть" или "скорее всего". Поэтому для работы в двузначной логике требуется формулировать утверждения очень четко, ясно, определенно - чтобы не было никаких "может быть".
Есть и другие виды логики. Они сложнее в обращении, но не так чтобы уж совсем... Тем не менее, лучше использовать именно двузначную логику, когда есть такая возможность - просто, чтобы не усложнять себе жизнь.
Не рекомендуется идти на поводу у тех, кто говорит что-нибудь типа: "Это такой сложный вопрос, как можно его обсуждать в двоичной логике!?"
Именно сложный вопрос лучше обсуждать в максимально простой логике. Раз вопрос сложный, значит не надо дополнительно его усложнять, применяя усложненный вид логики. Если двузначной логики действительно не хватает - другое дело. Но обычно это просто отмазка тех, кто боится любой логики вообще и надеется на то, что собеседник не знает никакой логики, кроме двузначной - и в результате обсуждение будет вестись вовсе без логики.
Технически операции двузначной логики проще всего запрограммировать на компьютере с двумя состояниями ячеек памяти. В этом случае те же 0 и +5 вольт будут условно соответствовать "лжи" и "истине". Но надо понимать, что операции с числами и логические операции - это две принципиально различные вычислительные задачи, имеющие разные цели.
Как вы наверное уже поняли, говорить "двоичная логика" безграмотно. Правильно говорить "двузначная логика", либо "двоичная система счисления". "Двоичная логика" - это компьютерный слэнг, означающий, что многие элементы электроники могут находиться ровно в двух состояниях (0 и +5 вольт илинаподобие). К логике словесных рассуждений этот термин имеет весьма отдаленное отношение.
______
Дурь журналистов состоит, во-первых, в том, что на обычном компьютере с двоичной системой счисления легко реализуется любая другая система счисления. Например, десятичная. Наверное, вы прямо сейчас видите на экране парочку чисел именно в десятичной системе счисления - например, дату или время сообщения. И никаких проблем. На двоичной системе работают только микросхемы, а на экране - в десятичной. Одно переводится в другое и обратно без проблем.
Дурь журналистов состоит, во-вторых, в том, что на обычном компьютере с двузначной логикой легко реализуется любая логическая система. Например, нечеткая логика или теория вероятностей.
Почему-то думают, что применение недвузначной логики в компьютерах - это дело будущего, и это обеспечит могучий прорыв там или сям. Возможно, вы будете смеяться, когда узнаете правду. Вы давно играли в какую-нибудь компьютерную игрушку (или видели как кто-то играет)? В стрелялку типа Quake или Doom, в стратегию типа Heroes и т.п.?
Так вот, в компьютерных играх используют одновременно несколько видов логики. Двузначную, нечеткую, бесконечнозначную логику, основанную на теории вероятностей (ее еще называют иногда "квантовой логикой").
Заметьте: я не написал "в современных компьютерных играх". Потому, что недвузначные логики используются уже черт знает сколько времени. С первых примитивных игрушек. Никаких особых проблем в применении этих логических систем не возникает.
Пример: по лабиринту бежит монстр. Ему надо в вас стрелять. Чтобы игра была интересной, в поведение монстра вносится элемент случайности. Он медлит, промазывает, бежит то вправо, то влево. Тут то и используется недвузначная логика: не попасть/промазать, а попасть с некоторой вероятностью, бежать не однозначно влево/вправо, а с некоторой вероятностью влево, а иначе - вправо. В результате поведение монстров становится не таким примитивным и предсказуемым, как если бы они бегали по одному заранее заданному маршруту и всегда стреляли точно вам в сердце.
Напоследок, приведу краткий обзор терминов:
Двоичная система счисления - способ записи чисел, при котором используется только две цифры: 0 и 1.
Двузначная логика - методика рассуждений, в которой возможны только две степени уверенности: истина и ложь.
Двоичная логика - устройство электроники компьютера, при котором элементы схем имеют два рабочих напряжения.
Не надо путать двоичную систему счисления и двузначную логику.
________
Большинство компов используют двоичную систему счисления. Это значит, что числа в них кодируются последовательностью цифр, каждая из которых может иметь два варианта. Например, 0 вольт и +5 вольт. Условно каждый вариант обозначают 0 или 1.
Всякое целое число можно записать в любой системе счисления. Вот например, в десятичной системе число 13. В двоичной будет 1101.
С технической точки зрения считать в двоичной системе проще. Например, таблица умножения будет не 10 на 10, а 2 на 2. С другой стороны, для записи числа в двоичной стсиеме потребуется больще цифр. На примере выше это видно: 1101 и 13.
Если приблизительно прикинуть орган к носу, то идеальный вариант лежит где-то между 2-ичной и 3-ичной системами счисления.
______
А что такое двузначная логика? Двузначная логика, это когда рассматривается два варианта истинности: true и false - "истина" и "ложь". Обратите внимание: речь идет не о кодировании чисел, а о кодировании истинности.
Двузначная логика не учитывает промежуточные градации типа "может быть" или "скорее всего". Поэтому для работы в двузначной логике требуется формулировать утверждения очень четко, ясно, определенно - чтобы не было никаких "может быть".
Есть и другие виды логики. Они сложнее в обращении, но не так чтобы уж совсем... Тем не менее, лучше использовать именно двузначную логику, когда есть такая возможность - просто, чтобы не усложнять себе жизнь.
Не рекомендуется идти на поводу у тех, кто говорит что-нибудь типа: "Это такой сложный вопрос, как можно его обсуждать в двоичной логике!?"
Именно сложный вопрос лучше обсуждать в максимально простой логике. Раз вопрос сложный, значит не надо дополнительно его усложнять, применяя усложненный вид логики. Если двузначной логики действительно не хватает - другое дело. Но обычно это просто отмазка тех, кто боится любой логики вообще и надеется на то, что собеседник не знает никакой логики, кроме двузначной - и в результате обсуждение будет вестись вовсе без логики.
Технически операции двузначной логики проще всего запрограммировать на компьютере с двумя состояниями ячеек памяти. В этом случае те же 0 и +5 вольт будут условно соответствовать "лжи" и "истине". Но надо понимать, что операции с числами и логические операции - это две принципиально различные вычислительные задачи, имеющие разные цели.
Как вы наверное уже поняли, говорить "двоичная логика" безграмотно. Правильно говорить "двузначная логика", либо "двоичная система счисления". "Двоичная логика" - это компьютерный слэнг, означающий, что многие элементы электроники могут находиться ровно в двух состояниях (0 и +5 вольт илинаподобие). К логике словесных рассуждений этот термин имеет весьма отдаленное отношение.
______
Дурь журналистов состоит, во-первых, в том, что на обычном компьютере с двоичной системой счисления легко реализуется любая другая система счисления. Например, десятичная. Наверное, вы прямо сейчас видите на экране парочку чисел именно в десятичной системе счисления - например, дату или время сообщения. И никаких проблем. На двоичной системе работают только микросхемы, а на экране - в десятичной. Одно переводится в другое и обратно без проблем.
Дурь журналистов состоит, во-вторых, в том, что на обычном компьютере с двузначной логикой легко реализуется любая логическая система. Например, нечеткая логика или теория вероятностей.
Почему-то думают, что применение недвузначной логики в компьютерах - это дело будущего, и это обеспечит могучий прорыв там или сям. Возможно, вы будете смеяться, когда узнаете правду. Вы давно играли в какую-нибудь компьютерную игрушку (или видели как кто-то играет)? В стрелялку типа Quake или Doom, в стратегию типа Heroes и т.п.?
Так вот, в компьютерных играх используют одновременно несколько видов логики. Двузначную, нечеткую, бесконечнозначную логику, основанную на теории вероятностей (ее еще называют иногда "квантовой логикой").
Заметьте: я не написал "в современных компьютерных играх". Потому, что недвузначные логики используются уже черт знает сколько времени. С первых примитивных игрушек. Никаких особых проблем в применении этих логических систем не возникает.
Пример: по лабиринту бежит монстр. Ему надо в вас стрелять. Чтобы игра была интересной, в поведение монстра вносится элемент случайности. Он медлит, промазывает, бежит то вправо, то влево. Тут то и используется недвузначная логика: не попасть/промазать, а попасть с некоторой вероятностью, бежать не однозначно влево/вправо, а с некоторой вероятностью влево, а иначе - вправо. В результате поведение монстров становится не таким примитивным и предсказуемым, как если бы они бегали по одному заранее заданному маршруту и всегда стреляли точно вам в сердце.
Напоследок, приведу краткий обзор терминов:
Двоичная система счисления - способ записи чисел, при котором используется только две цифры: 0 и 1.
Двузначная логика - методика рассуждений, в которой возможны только две степени уверенности: истина и ложь.
Двоичная логика - устройство электроники компьютера, при котором элементы схем имеют два рабочих напряжения.
no subject
Компьютеры на троичной логике серийно выпускались в СССР в начале 60-х ("Сетунь").
Машины для своего времени были очень неплохие, но никаких прорывов знания не открыли.
Выпускались также электромеханические компьютеры на десятичной базе.
no subject
no subject
И лишь потом пошла в серию...
военная кафедра
а секретный военный тригер - три.
no subject
no subject
no subject
no subject
no subject
между дискретными разница по помехоустойчивость малозначимая, как ты наверное догадываешься...
т.е. представь себе кодирование амплитудой волны и серией фрагментов волн с 4 градациями амплитуды
no subject
no subject
пусть мы кодируем величину сигнала аналогово
чтобы передать аналогово число от 0 до 255 нам нужен приемник, который распознает 256 градаций амплитуды
величина помехи которая сожет все испортить равна 1/256 от максимальной амплитуды
пусть теперь мы кодируем величину сигнала дискретно в 4-ричной системе
чтобы передать аналогово число от 0 до 255 нам нужен приемник, который распознает 4 градации амплитуды (а сигнал разбит на 4 последовательных фрагмента)
величина помехи которая сожет все испортить равна 1/4 от максимальной амплитуды
понятна идея?
no subject
А то, что ты написал - это просто два цифровых канала. 256- и 4-значный.
no subject
no subject
no subject
Короче, есть такая вещь, как аналоговые величины, и с ними работают через АЦП/ЦАП. А есть такая вещь, как цифра, которая запихнута в нетривиальной кодировке (не 0/+5 В), и с ней работают через модемы. Задачи перед устройствами стоят немножко разные. Демодулятору плевать на помехи, если он исходное число может узнать. А АЦПу не всё равно - ему по шее настучат. И ТТХ у них разные вещи содержат.
Короче, сам подумай. Вообще, от подумая слышу!
no subject
Ага, ты еще попробуй развести понятия величина и число ;) Устреми в том примере 255 к бесконечности... в пределе получишь идеальную аналогувую величину. А теперь попробуй вернуться к реальности и уловить, что четкая граница между аналоговым и цифровым кодированием будет только в умах теоретиков ;)
no subject
А чего их разводить, чай не кислота. Величину меряют, число циферками передают.
> Устреми в том примере 255 к бесконечности...
И обломишься, потому что придётся измерять напряжение с бесконечной точностью. В этом, кстати, отличие величины от числа: величину меряют с погрешностью, а в числе важна каждая циферка принципиально.
> четкая граница между аналоговым и цифровым кодированием будет только в умах теоретиков ;)
Практиков, Муся, практиков. Я же сказал: когда дело доходит до реализации конкретных устройств, перепутать даже с закрытыми глазами не получится. А ты как раз со своими пределами несколько затеоретизировался.
no subject
Результат измерения есть шо? :)
[ И обломишься, потому что придётся измерять напряжение с бесконечной точностью. ]
Во. За шо я тебя люблю нежно по-бГатски, так это за понятливость :)
[ В этом, кстати, отличие величины от числа: величину меряют с погрешностью, а в числе важна каждая циферка принципиально. ]
Да ниужели?? Приципиально, да? Яркость красного в дискретном видеосигнале будет не 253, ф 252 и хана фильму, правда? :)
no subject
Доверительный интервал.
> Во. За шо я тебя люблю нежно по-бГатски, так это за понятливость :)
Я тебя тоже. Щас полюблю. Величину-то можно не с бесконечной точностью мерять, ку?
> Да ниужели?? Приципиально, да? Яркость красного в дискретном видеосигнале будет не 253, ф 252 и хана фильму, правда? :)
Вот поэтому, кстати, яркость и аналоговая величина. А теперь представь себе ошибочку в знаковом бите. Или ещё проще - в каком-нибудь бите команды в экзешнике. Другие результаты, не правда ли?
no subject
Слова какие страшные, я таких слов если и знал кода, то забыл :o)
[ Величину-то можно не с бесконечной точностью мерять, ку? ]
Да. И шо?
[ Вот поэтому, кстати, яркость и аналоговая величина. ]
Когда как! Пример, что не всегда важно...
no subject
На что и расчёт был.
> [ Величину-то можно не с бесконечной точностью мерять, ку? ] Да. И шо?
А то, что если ты цифровой канал на 256 уровней будешь слушать с погрешностью +-5, ни черта хорошего не получится.
Ладно, всё, прекращаем курить в присутствии Профа :-)
no subject
все равно насколько я понял спор чисто терминологический - по фактам разногласий не вижу :)
no subject
Тебе сказали, что помехоустойчивость - плюс двоичного кодирования. Ты сказал, что помехоустойчивать - плюс вообще любой цифры. Контрпример: цифровой канал на 256 уровней, передающий по байту за такт, ни черта не помехоустойчив. Закрыли тему?
no subject
Помехоустойчивость для дискретного кодирования тем лучше, чем меньше основание системы счисления. При увеличении основания п.у. снижается. Однако кроме того при увеличении основания мы приближаемся по всем свойствам к аналоговому кодированию, в том числе и по помехоустойчивости.
Вот теперь можно закрыть тему :)
no subject
no subject
но программистски-практически - нет.
берется задача переслать по каналу одно число... аналогово либо дискретно. тут то и вылезает очень похожие помеХуеСтоячести
no subject
****
не надо лепить горбатого. :-)
Аналоговая и цифровая техника принципиально различны. Не веришь - попробуй проиграть CD на патефоне. :-)))))
no subject
no subject
я пробовал на нем винил 70-х проигрывать.
Звучит хорошо, но снимает стружку. В натуре снимает, не вру.
:-)))
no subject
no subject
no subject
МАЛАДЕЦ!!!