Почему компьютеры используют только 0 и 1?


15

Почему компьютеры используют только 0 и 1? Не ускорят ли компьютеры добавление других чисел, таких как 2 или 3? Кроме того, 2 и 3 могут использоваться для сокращения длины в битах целых чисел (2 и 3 могут использоваться для окончания целого числа, так что число 1 требует только один два бита).

Почему бинарный компьютер более предпочтителен?




1
Чтобы сделать их надежной преформой в присутствии шума
скачок напряжения

Ответы:


28

Это не ускорит их. Теперь это легко: сделать базовые логические элементы типа NAND, чтобы логические входы выводили выход на Vdd или на землю. Если вы будете использовать промежуточные уровни, вам понадобятся полевые транзисторы, чтобы перейти на уровни вроде Vdd / 2 или Vdd / 4. Это потребовало бы больше энергии и потребовало бы более точно работающих компонентов, что потребовало бы больше времени для достижения окончательного уровня. Если бы вы поместили больше значений в один блок данных, требуемая точность увеличилась бы, как и время установления. Бинарная система, используемая сейчас, просто толкает FET к Vcc.

exscape упоминает помехоустойчивость, и это то, к чему относится точность: насколько сигнал может отклоняться от номинального. В двоичной системе это может составлять почти 50% или более 0,5 В в процессоре 1,2 В. Если вы используете 4 различных уровня, они разнесены всего на 300 мВ, то помехоустойчивость не может быть лучше 150 мВ, возможно 100 мВ.

Обратите внимание, что есть флэш-устройства, которые используют несколько уровней для хранения более 1 бита в одной ячейке памяти, это MLC (многоуровневая ячейка) Flash. Это не увеличивает скорость, но упаковывает больше данных на одном чипе.


1
Не является ли помехозащищенность одной из главных причин? Это, по крайней мере, вероятно, главная причина для цифрового против аналогового.
Exscape

@exscape - обновил мой ответ. Теперь лучше? Спасибо за отзыв
Стивенв

Почему это не ускоряет их? Имея более двух цифр, мы можем хранить данные в меньшем пространстве, например, четыре в двоичном = 100 - требуется 3 физических местоположения - в троичной четверке = 11 - требуется буксировка физических местоположений. Таким образом, в троичной системе процессору придется обрабатывать меньшее количество регистров, что сделает его относительно быстрым.
user31782

5

Хранение и вычисления на двоичном уровне очень дешево, мало и быстро. Этот текст может быть упрощённым, но я думаю, он доходит до сути:

Чтение ячейки двоичной памяти состоит из одного простого компаратора, выполняющего свою работу: высокий / низкий. Вычисления сводятся к очень простым таблицам из четырех входных комбинаций (00, 01, 10, 11) и двухбитовых выходных данных (0 и 1) в основном.

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

Как обсуждалось в другом ответе, вся установка также должна быть построена более точно, чтобы сохранить помехоустойчивость.

Все эти вещи в совокупности означают: гораздо эффективнее разместить в чипе миллиарды двоичных вентилей, чем полмиллиарда четвертичных.


2

Обойдите свой дом или, если у вас нет таких коммутаторов, сходите в магазин бытовой техники, посмотрите, как легко или сложно поставить и оставить выключатель посередине выключенного, добавив третье состояние, теперь попробуйте чтобы увидеть, если вы не можете сделать для выдающихся позиций. Другой пример: возьмите банку с колой, бутылку пива или любой другой цилиндрический предмет и положите его на бок, а затем уравновесите мрамор сверху, насколько легко, быстро и устойчиво это сбалансированный мрамор?

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

В основном это пробовали, или некоторые ранние компьютеры пытались быть десятичными (10 уровней напряжения), это не удалось. будь то трубчатый транзистор или кремниевый, значительно проще, дешевле, быстрее, надежнее использовать транзистор в качестве переключателя и иметь только два состояния: нижняя и верхняя.


В моей музыкальной системе есть ручка регулировки громкости, которая изменяется от 1 до 10. Очень легко выбрать точную громкость. Я получаю это правильно в первый раз каждый раз, когда я использую это. Так что по вашей логике было бы лучше иметь десятичные транзисторы, как кажется.
intrepidis

1
Ряд регуляторов на стереосистемах имеют два сигнала, которые имеют серый код, двоичный код, а изменения состояния указывают на увеличение или уменьшение направления (вращающийся регулятор). Другие являются аналоговыми с АЦП, который оцифровывает положение в единицы и нули. Очень старый или очень пурист может не перейти в цифровую форму и подать этот делитель напряжения прямо в аналоговый усилитель. Но я подозреваю, что большинство не делают, обычно вы можете сказать.
old_timer

2

Понятно, что это можно сделать. Все цифровое хранилище на этой планете имеет 4 состояния. ДНК кодирует данные в виде одной из четырех пар оснований на бит, расположенных в байтах по 3 бита каждая. Поэтому каждый байт может иметь 64 разных состояния.

 

† За исключением бесконечно малой доли, искусственно созданной одной из живых форм жизни.


@Dmit: Да, но есть еще четыре возможных комбинации. Возьмите одну из двух нитей изолированно, и у вас есть четыре варианта на каждом участке, A, G, C или T. Тот факт, что другая ветвь является определяемой, не имеет значения. Если то, что вы говорите, верно, тогда будет только 8 вариантов на «байт», когда действительно 64, хотя не все эти коды используются, а некоторые являются избыточными. Интересно, что митохондрии и хлоропласты имеют разные кодировки от байтов к аминокислотам, чем наша ядерная ДНК.
Олин Латроп

@Dmit: другими словами, AT отличается от TA, а CG отличается от GC.
Олин Латроп

Ты прав, прости.
Дмитрий Григорьев

0

Двоичная система счисления состоит из 0 и 1, как вы знаете. Другими популярными или ранее использовавшимися системами счисления были система счисления Octal, Hexadecimal и Decimal. Двоичные, восьмеричные, десятичные и шестнадцатеричные числа имеют 2, 8, 10 и 16 цифр соответственно. Для реализации логических схем Бинарная система немного менее сложна. Почему? Это потому, что мы можем полагаться только на две цифры для построения схем. Конструкция схемы сравнительно проще в реализации. Использование двоичной системы счисления при проектировании схем занимает меньше времени, менее сложно, требует меньшего количества элементов схемы и во всех отношениях это более доступно, чем другие. Восьмеричные и шестнадцатеричные системы использовались ранее при проектировании компьютеров. Но они были сложными. Схемотехника тоже была сложной. Поэтому инженеры начали использовать бинарную систему для ранее упомянутых преимуществ.


AFAIK, восьмеричные и шестнадцатеричные системы не использовались аппаратно. Они были и до сих пор (даже восьмеричные) используются программным обеспечением, потому что они удобно упаковывают несколько бит в одну единицу. Например. восьмеричная цифра ровно три бита, а шестнадцатеричная (шестнадцатеричная цифра) ровно 4 бита. Что бы вы предпочли сказать 0b11111111 или 0xff?
Оскар Ског

0

Почему двоичная система используется вместо десятичной системы

Хороший вопрос. На самом деле, существуют компьютеры, которые не используют двоичную систему. Эти компьютеры, созданные из операционных усилителей, называются компьютерами ANALOG . Аналоговые компьютеры могут складывать, вычитать, умножать и делить и даже выполнять некоторые виды интеграции.

Почему бинарный компьютер более предпочтителен?

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


-2

В дополнение к другим ответам я разработал собственные цифровые схемы для триальной логики. Я думаю, что существует полный набор, который работает так же быстро, как двоичные логические схемы (то есть мы получаем увеличение производительности в 1,5 раза); Однако это имеет высокую стоимость. Схемы сжигают энергию в нерабочем состоянии (не только при переключении), поэтому у вас так много тепла, что оно не стоит для современных процессоров. Это может только принести пользу на главном автобусе.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.