1

Поскольку это не вопрос исследовательского уровня (поскольку я не учусь в аспирантуре), я решил зайти сюда с другого сайта CS Q & A.

Почему мы используем двоичный код для кодирования информации в битах?

У меня есть некоторый опыт программирования и аппаратного обеспечения, и я знаю, что 1 и 0 - это выключение и включение лампочки и т.д. Но современные светильники также имеют диммер.
Почему мы по-прежнему используем 1 и 0, когда мы можем использовать частоту или процентное значение энергии, передаваемой для дальнейшего сжатия сообщения на машинном языке?
Разве процессору или памяти не будет быстрее вычислять и обрабатывать что-то, если он получит информацию быстрее?

В принципе это возможно? И если это так...Есть ли у этой идеи авторские права на нее? :)

Если это не так, я хотел бы знать, почему окончательно, если это можно объяснить. Спасибо :)

3 ответа3

2

Идея иметь несколько уровней вместо 0 и 1 была опробована.

например, троичный компьютер, который имеет три уровня 0,1, -1.

http://en.wikipedia.org/wiki/Ternary_computer

На этот похожий вопрос есть хороший подробный ответ.

https://stackoverflow.com/questions/764439/why-binary-and-not-ternary-computing

0

Для расчета более двух состояний (true/false) вам необходима многозначная логика (см. Fuzzylogic, например, в Википедии https://en.wikipedia.org/wiki/Fuzzy_logic).

На сегодняшний день вы не можете четко разделить три или более условий (true/-/false) в массово производимых транзисторах из-за технических ограничений, поэтому компьютерам приходится работать с двузначной логикой.

0

Похоже, вы предлагаете аналоговый компьютер, который работает с диапазоном значений, а не с цифровыми. Я не думаю, что одно по сути лучше другого, но варианты использования разные. Кроме того, я бы предположил из очевидного успеха цифровых компьютеров, что, возможно, они более адаптируемы и полезны для решения общих задач, чем аналоговые разновидности.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .