Чому комп'ютери використовують лише 0 і 1?


15

Чому комп'ютери використовують лише 0 і 1? Чи не додавання інших чисел, таких як 2 або 3, пришвидшить комп’ютери? Також 2 і 3 можна використовувати для скорочення бітової довжини цілих чисел (2 і 3 можна використовувати для закінчення цілого числа, так що для числа 1 потрібні лише два біти).

Чому бінарний комп'ютер є більш кращим?




1
Щоб змусити їх робити міцно за наявності шуму
Спайк напруги

Відповіді:


28

Це не пришвидшило б їх. Тепер легко: зробити базові логічні ворота, такі як NAND, логічні входи або підтягують вихід до Vdd, або на землю. Якщо ви використовуєте проміжні рівні, вам знадобиться FET, щоб перейти на рівні, такі як Vdd / 2 або Vdd / 4. Це вимагало б більшої кількості енергії та вимагало б більш акуратних робочих компонентів, яким потрібно більше часу, щоб досягти остаточного рівня. Якщо ви введете більше значень в одну одиницю даних, необхідна точність збільшиться, як і час узгодження. Бінарна система, що використовується зараз, просто підштовхує FET до Vcc.

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

Зауважте, що існують Flash-пристрої, які використовують кілька рівнів для зберігання більше 1 біта в одній комірці пам'яті, це MLC (Multi-Level Cell) Flash. Це не збільшує швидкість, але пакує більше даних на одному чіпі.


1
Невже не є захист від шуму одна з головних причин? Принаймні, це, мабуть, головна причина для цифрових проти аналогових.
exscape

@exscape - оновив мою відповідь. Краще зараз? Дякую за відгук
stevenvh

Чому це не прискорить їх? Маючи більш ніж дві цифри, ми могли б зберігати дані в меншому просторі, наприклад, чотири у двійковій = 100 - потрібні 3 фізичні місця - у потрійному чотирьох = 11 - потрібні фізичні місця. Тож у потрійній системі процесору доведеться обробляти меншу кількість регістрів, що зробить це відносно швидше.
user31782

5

Бінарне зберігання та обчислення дуже дешеві, невеликі та швидкі. Цей текст може бути надто спрощеним, але я думаю, що він доходить до суті:

Читання двійкової комірки пам’яті складається лише з одного простого компаратора, який виконує свою роботу: високий / низький. Обчислення зводиться до дуже простих таблиць з чотирьох вхідних комбінацій (00, 01, 10, 11) до двох бітових виходів (0 і 1).

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

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

Всі ці речі у поєднанні означають: набагато ефективніше розмістити мільярди двійкових воріт на мікросхемі, ніж лише півмільярда четвертинних.


2

Об’їжджайте свій будинок, або якщо у вас немає будь-якого з цих типів комутаторів, перейдіть до магазину обладнання, подивіться, наскільки легко чи важко ставити і залишати вимикач посередині у вимкненому режимі, додавши третій стан, тепер спробуйте щоб побачити, чи не можете ви зайняти визначні позиції. Ще один приклад: візьміть пляшку коксу або пивну пляшку або будь-який інший предмет, який має циліндричну форму, і покладіть її на бік, а потім збалансуйте мармур на вершині, наскільки легко і швидко і стабільно цей збалансований мармур?

використовувати транзистор як перемикач дуже просто, підвести його до однієї рейкової або іншої, легко відчути вихід. Тепер, якщо ви намагалися, щоб усі транзистори не були вимкненими, а натомість відкалібровані на різні діапазони, по одному для кожного стану (крім увімкненого та виключеного, два середніх стану, як ви пропонуєте). Тепер вся система повинна бути набагато точнішою, дорогішою, піддаватися помилкам і збоям тощо.

В основному це було спробувано, або кілька ранніх комп'ютерів намагалися бути десятковими (10 рівнів напруги), не вдалося. будь це трубний транзистор або кремній, значно простіше, дешевше, швидше, надійніше використовувати транзистор як комутатор і мати лише два стани, нижню і верхню рейку.


У моїй музичній системі є регулятор гучності, який працює від 1 до 10. Вибрати точний гучність дуже просто. Я розумію це вперше кожен раз, коли його використовую. Тож за вашою логікою було б найкраще мати десяткові транзистори.
intrepidis

1
У ряді регуляторів на стереосистемах є два сигнали, кодовані сірим кольором, бінарні, а зміни стану вказують на збільшення чи зменшення напрямку (обертовий кодер). Інші аналоги ADC, що оцифровує позицію на одиниці та нулі. Дуже старий або дуже пурист може не перейти в цифровий режим і подати цей дільник напруги прямо в аналоговий підсилювач. Але я підозрюю, що більшість з них, як правило, ви можете сказати.
old_timer

2

Зрозуміло, що це можна зробити. Усі цифрові сховища на цій планеті є 4-державними. ДНК кодує дані як одну з чотирьох пар основ на біт, розташовану в байтах по 3 біта кожна. Тому кожен байт може мати 64 різні стани.

 

† За винятком нескінченно малої фракції, штучно створеної однією з життєвих форм життєдіяльності.


@Dmit: Так, але є ще чотири можливі комбінації. Візьміть одну з двох ниток ізольовано, і у вас є чотири варіанти на кожному ділянці - A, G, C або T. Факт, що визначається іншим ланцюжком, не має значення. Якщо те, що ви говорите, вірно, тоді було б лише 8 варіантів на "байт", коли їх дійсно 64, хоча не всі ці коди використовуються, а деякі є зайвими. Цікаво, що мітохондрії та хлоропласти мають різні кодування від байтів до амінокислот, ніж наша ядерна ДНК.
Олін Латроп

@Dmit: По-іншому, AT відрізняється від TA, а CG відрізняється від GC.
Олін Латроп

Ти маєш рацію, вибач.
Дмитро Григор’єв

0

Двійкові системи числення складаються з 0 і 1, як відомо. Інші популярні або раніше використовувані системи числення були восьмеричною, шістнадцятковою та десятковою системою числення. Двійкові, восьмеричні, десяткові та шістнадцяткові цифри мають 2, 8, 10 та 16 цифр відповідно. Для реалізації логічних схем Бінарна система трохи менш складна. Чому? Це тому, що ми можемо розраховувати лише на дві цифри для побудови схем. Конструкція схеми порівняно простіша у виконанні. Використання системи двійкових чисел у проектуванні схем менш трудомістке, менш складна, потребує менше елементів ланцюга і в усіх аспектах є більш доступною, ніж інші. Восьмі та шістнадцяткові системи використовувались раніше при проектуванні комп'ютерів. Але вони були складними. Схеми теж були складними. Тож інженери почали використовувати Бінарну систему для згаданих раніше переваг.


Системи AFAIK, восьмигранні та шістнадцяткові апарати не використовувались апаратними засобами. Вони були і все ще (навіть восьмеричні) використовуються програмним забезпеченням, оскільки вони зручно запаковують кілька біт в одну одиницю. Напр. восьмерична цифра - це рівно три біти, а шістнадцятковий (шістнадцятковий) - це рівно 4 біти. Що б ви краще сказали 0b11111111 або 0xff?
Оскар ского

0

Чому використовується двійкова система замість десяткової системи

Гарне питання. Насправді існують комп'ютери, які не використовують двійкову систему. Ці комп'ютери, побудовані з підсилювачів, називаються комп'ютерами АНАЛОГ . Аналогові комп’ютери можуть додавати, віднімати, множувати та ділити і навіть робити деякі типи інтеграції.

Чому бінарний комп'ютер є більш кращим?

Іноді двійкові комп’ютери точніші. Також двійкові комп'ютери (як, наприклад, мій ноутбук) можуть бути в мільйони разів складнішими. Я вважаю. Аналогові комп’ютери потрібно працювати в певних обмежених умовах і давати обмежені відповіді. Ви можете зробити цифровий комп'ютер настільки складним, як вам захочеться.


-2

На додаток до інших відповідей, я розробив натурні цифрові схеми для тризначної логіки. Я думаю, що існує повний набір, який працює так само швидко, як і бінарні логічні схеми (тобто ми отримуємо 1,5-кратну ефективність); однак це має високу вартість. Схеми спалюють енергію в режимі очікування (не тільки при перемиканні), і тому у вас стільки тепла, щоб скинути, що це не варто для сучасних процесорів. Це не могло б виграти в основному автобусі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.