Warum können Computerschaltungen nur zwei Zustände erkennen?

Computer können nur Binärzahlen (also 0 oder 1) verstehen. Ich möchte wissen, gibt es eine Möglichkeit, dass Computer mehr als 2 Zustände verstehen können. Ich weiß, dass es viel schwieriger ist, Komponenten zu bauen, die mehr als zwei Zustände/Ebenen/was auch immer verwenden. Wenn wir mehr als zwei Zustände haben, könnten wir natürlich mehr Daten pro Bit speichern, genau wie unser Dezimalzahlensystem weit mehr Daten in einer einzigen Ziffer enthalten kann.

Quantencomputing ist ein Bereich, der immer mehr Aufmerksamkeit erhält. Die Idee ist, ein Qubit (Quantenbit) anstelle eines binären Bits zu verwenden. Ein Qubit kann mehrere Zustände gleichzeitig annehmen, aber die Technologie hat noch einen langen Weg vor sich. Hier sind einige Informationen dazu: en.m.wikipedia.org/wiki/Quantum_computer
Sicherlich verstehen Menschen Binäres, Computer haben nicht die Fähigkeit zum Verstehen. Aber zu Ihrer Frage, die frühen digitalen Computer arbeiteten nicht mit binären Darstellungen, sondern mit dezimaler Darstellung: en.wikipedia.org/wiki/Decimal_computer
Ich denke, die Antwort auf Ihre Frage lautet weitgehend: Weil wir sie so gestalten .
Ich denke, diese Frage scheint nicht zum Thema zu gehören, da es um Informatik geht.
verwandt, wenn nicht doppelt: Warum verwenden Computer nur 0 und 1? Ein weiterer Bezug zu StackOverflow: Warum binäres und nicht ternäres Rechnen?
siehe auch ternary computing wikipedia
Es ist kein Off-Topic, es ist eine technische Frage oder vielleicht eine CS-Frage mit einer technischen Antwort: Wirtschaft. In Computer Organization 101 wurde mir beigebracht, dass Binärdateien einfach die effizienteste Art sind, Silizium zu verwenden. Der Legende nach experimentierten die Russen in den 1960er Jahren mit ternären Computern.
auch etwas mit dieser Frage verwandt . Gibt es etwas niedrigeres als den Bitpegel von 1 und 0? cs.se

Antworten (8)

Der Hauptgrund ist, dass es einfach viel einfacher ist, Schaltungen herzustellen, die sich immer in einem von zwei Zuständen befinden, als sie zwischen Zuständen unterstützen zu lassen. Die zusätzliche Komplexität, die Kosten und der Geschwindigkeitsnachteil zum Komprimieren von mehr Zuständen in ein einziges Signal überwiegen jeden Vorteil, der durch die Komprimierung gewonnen wird.

Ein wichtiger Vorteil der Verwendung von nur zwei Zuständen besteht darin, dass jedes Signal beliebig um die Mitte herum verstärkt werden kann. Dies führt dazu, dass der Verstärkerausgang auf das eine oder andere Extrem zuschlägt. Die Verstärkung kann daher stark variieren und kann beliebig groß gemacht werden.

Stellen Sie sich ein menschliches Analogon davon vor. Wenn Sie einen Lichtschalter an der Wand haben, der entweder ein- oder ausgeschaltet ist, können Sie ihn schlagen, um ihn in den anderen Zustand zu versetzen. Es spielt keine Rolle, ob Sie noch ein wenig darauf drücken, wenn es dort ankommt, da es eine mechanische Begrenzung eingebaut hat. Sie können gerade genug darauf drücken, um es umzuschalten, oder viel mehr, solange Sie es tun. t physisch brechen. Stellen Sie sich nun vor, der Schalter hätte 3 oder mehr Zustände und Sie wollten ihn auf einen der Zwischenzustände setzen. Sie müssten viel vorsichtiger sein, um genau die richtige Menge an Kraft oder Bewegung anzuwenden. Zu viel und du landest im nächsten Zustand. Sie können es nicht mehr einfach und schnell schlagen.

Eine ähnliche Komplexität ist erforderlich, um den Pegel eines Signals auf einen Zwischenzustand einzustellen. Das kostet Teile, Strom und braucht Zeit. Dann haben Sie wieder mehr Komplexität, um das Signal zu interpretieren, wenn Sie seinen Wert verwenden möchten. Das könnte man machen, lohnt sich aber nicht.

Ein weiteres Problem ist, dass das Halten eines Signals auf einem Zwischenpegel wahrscheinlich mehr Energie erfordern würde. Bei einem hohen oder niedrigen Signal können Sie sich vorstellen, dass das Signal über einen von zwei Schaltern mit Strom oder Masse verbunden ist. Diese benötigen keinen Strom, um vollständig ein- oder ausgeschaltet zu bleiben, aber jede Schaltung, die ein Signal dazwischen hält, hat diesen Vorteil nicht und würde sehr wahrscheinlich eine konstante Standby-Leistung erfordern, um dies so zu halten.

Es gibt tatsächlich Fälle, in denen heute mehr als zwei Ebenen verwendet werden, um digitale Daten zu codieren. Es gibt einige Massen-Flash-Speicher, die nach diesem Prinzip arbeiten. Daten werden in Ladungsstapeln gespeichert. Diese Stapel können mehr als 2 Größen haben. Es erfordert zusätzliche Komplexität, die Größe der Stapel zu decodieren, wenn ein Lesevorgang durchgeführt wird, aber im Fall von großen Flash-Speichern wird diese zusätzliche Komplexität nur wenige Male in Leseschaltkreisen aufgewendet, während die Komprimierungseinsparungen auf viele Millionen Bits angewendet werden. der tausch lohnt sich also.

Tatsächlich gibt es seit der Jahrhundertwende viele Computer, die viele Zustände pro Bit verwenden. Sie werden analoge Computer genannt. Eigentlich gilt der Rechenschieber als analoger Computer und es gibt ihn schon seit Jahrhunderten. Suchen Sie einfach im Internet nach Informationen.

+1, weil es kein Lachen ist, es ist wahr! „Computer“ war einmal eine Berufsbezeichnung .

Eine kurze, aber hilfreiche Beschreibung, ob es möglich ist, ternäre, dezimale oder andere Basis- N Rechenschemata finden Sie in der Mitte dieses Artikels von Mark Chu-Carroll .

Noch wichtiger ist, dass er erklärt, warum es praktisch keinen Vorteil bringt, größere zu verwenden N in der Basis- N Darstellungen. Die Argumentation, dass die Verwendung von Basis- N für groß N mehr Daten pro Bit zulässt ist zwar technisch richtig, hilft aber in der Praxis nicht weiter. In ähnlicher Weise gibt es eine offensichtliche Bijektion zwischen englischsprachigen Sätzen und visuellen Symbolen, von der man naiv argumentieren könnte, dass sie eine Form der Informationskomprimierung darstellen würde (da jeder Satz auf ein einzelnes Symbol komprimiert werden könnte), aber Sie sind dadurch verletzt Sie müssen eine riesige Nachschlagetabelle mit sich herumtragen, also ist es eine Art Betrug.

Wenn wir mehr als zwei Zustände haben, könnten wir natürlich mehr Daten pro Bit halten, ...

Aber nur, weil Sie die Bedeutung von "Bit" neu definieren. Gemäß der Informationstheorie ändern Sie nicht den Informationsgehalt, sondern lediglich die Einheit, mit der Sie ihn messen. Tatsächlich ändern Sie es von Bit zu Ban oder ungefähr 3,32 Bit :)

Die Schaltungskosten zum Verwalten und Erkennen von drei aktiven Zuständen wären in den meisten Fällen mehr als doppelt so hoch wie die, die für die Handhabung von zwei erforderlich wären. Überlegen Sie, wie ein Zwei-Zustands-Inverter so konstruiert ist, dass man ein High oder Low durch eine beliebige gerade Anzahl von Invertern leiten kann und nach einer gewissen Verzögerung mit dem ursprünglichen Logikpegel endet. Versuchen Sie nun, einen zu entwerfen, der eine Eins-von-Drei-Spannungsauswahl durchlaufen kann, die auf ähnliche Weise zuverlässig übermittelt werden kann. Wenn die Verlustleistung kein Problem wäre, gibt es einige Möglichkeiten, dies einigermaßen vernünftig zu erreichen, aber die Zwei-Zustands-Logik wird in den meisten Fällen viel einfacher zu entwerfen sein.

Ein gängiges Beispiel für digitale Schaltungen, die mehr als zwei Zustände pro "Bit" verwenden, ist Flash-Speicher, insbesondere MLC-Flash (Multi-Level-Cell). Um die Kosten zu senken, verwendet dieser Flash-Speicher mehr als zwei Zustände in einer Speicherzelle, um mehr als ein binäres Informationsbit darzustellen. Dies untergräbt eines der Hauptprobleme der nicht-binären digitalen Logik, nämlich dass ein Transistor, der zwischen Aus und Sättigung liegt, zusätzliche Energie verbraucht (wie von Vememo festgestellt), da die Flash-Zellen im Leerlauf keine Energie verbrauchen.

Der Nachteil von MLC-Flash gegenüber SLC-Flash (Single-Level-Cell) ist die stark reduzierte Lebensdauer in Bezug auf die Anzahl möglicher Löschzyklen, bevor sich die Zellen verschlechtern und nicht mehr korrekt programmiert werden können.

Ich habe mich vor einiger Zeit selbst darüber gewundert. Es gibt viele mögliche Antworten, aber der vielleicht praktischste Grund ist der Stromverbrauch. Ein typischer Transistor, der in einer modernen integrierten Schaltung verwendet wird, verbraucht nahezu keine Leistung, wenn er sich entweder im logischen Zustand 0oder im 1Zustand befindet. (Entweder ist die Kollektor-Emitter-Spannung nahezu null oder der Kollektorstrom ist nahezu null.)

Daher können wir in einem modernen Chip sagen, dass ein Transistor nur dann beträchtliche Mengen an Energie verbraucht, wenn er zwischen den beiden Zuständen wechselt, und sehr wenig Energie verbraucht, wenn er einen bestimmten Zustand hält.

Stellen Sie sich vor, wenn es mehr als zwei mögliche Zustände gäbe (andere Werte "dazwischen"), würden Transistoren um Größenordnungen mehr Strom verbrauchen, selbst wenn das System nichts tut, was die Sache wirtschaftlich undurchführbar macht. Dies ist (einer der Gründe), warum die überwiegende Mehrheit unserer digitalen Schaltungen binär ist.

ENIAC war Basis 10, also ist es nicht nur möglich, andere Basen als 2 zu verwenden, Basis 10 wurde zuerst verwendet.

Laut "50 Years of Army Computing: From ENIAC to MSRC" war EDVAC Basis 8 und ORDVAC I und II waren Basis 16.

Ich glaube nicht, dass dies die Frage beantwortet. Die in den ENIAC-, EDVAC- und ORDVAC-Schaltungen verwendeten Vakuumröhren, Dioden und Relais hatten eigentlich nur zwei Zustände, ein und aus. Wie im Wikipedia-Artikel über ENIAC beschrieben, waren die Register auf ENIAC "dezimal" in dem Sinne, dass sie eine Dezimalziffer speicherten, die codiert war, welche von 10 binären Flip-Flops im Zustand "1" waren, während alle anderen im Zustand "0" waren " Zustand. Digitaldesigner verwenden diese Technik immer noch. Sie nennen es normalerweise "One-Hot-Codierung".
Ich stimme dem zu, was Sie sagen. Ich denke, es hängt davon ab, wie Sie "verstehen" in der Frage interpretieren.