Gibt es eine Alternative zu Bits als kleinste Dateneinheit? Etwas, das nicht nur 0 oder 1 sein wird, sondern tatsächlich viele mögliche Zustände dazwischen enthält? Wäre es nicht natürlicher, solche Schwimmer aufzubewahren?
Gibt es eine Alternative zu Bits als kleinste Dateneinheit? Etwas, das nicht nur 0 oder 1 sein wird, sondern tatsächlich viele mögliche Zustände dazwischen enthält? Wäre es nicht natürlicher, solche Schwimmer aufzubewahren?
Antworten:
Natürlich ist es sowohl theoretisch als auch praktisch möglich.
Theoretisch gibt es zwei Klassen von Alternativen: digitale Zahlensysteme mit einer anderen Basis als 2 (tatsächlich ist das Dezimalsystem, wie wir es kennen, ein solches System); und nicht digitale Zahlensysteme. Mathematisch gesprochen handelt es sich um diskrete vs. kontinuierliche Domänen.
In der Praxis wurden beide Optionen untersucht. Einige der frühen Digitalcomputer (z. B. ENIAC) verwendeten Dezimalcodierungen anstelle der mittlerweile allgegenwärtigen Binärcodierung. andere Basen, z. B. ternäre, sollten ebenso realisierbar (oder nicht realisierbar) sein. Die esoterische Programmiersprache Malbolge basiert auf einem theoretischen ternären Computer; Obwohl meistens satirisch, gibt es keinen technischen Grund, warum es nicht funktionieren sollte. Die Speicherung und Verarbeitung im kontinuierlichen Bereich wurde in der Vergangenheit auf analogen Computern durchgeführt, auf denen Sie Größen als Frequenzen und / oder Amplituden von oszillierenden Signalen codieren und dann Berechnungen durchführen konnten, indem Sie alle Arten von Modulationen auf diese Signale anwenden. Heute macht das Quantencomputing die Theorie hinter kontinuierlichen Speicherzellen wieder interessant.
So oder so bleibt das Bit als theoretisch kleinste Informationseinheit bestehen, da jede Alternative mehr Informationen als ein einzelnes Ja / Nein codieren kann und noch niemand eine kleinere theoretische Einheit gefunden hat (und ich erwarte nicht, dass dies geschieht irgendwann bald).
double
Some of the early digital computers employed decimal encodings rather than the now ubiquitous binary encoding
- Tatsächlich werden heute noch Dezimalcodierungen verwendet. es heißt BCD . Das BIOS in den meisten Computern verwendet es (für dezimalbasierte Datumsangaben) sowie die meisten Billigrechner, da es weniger Schaltkreise erfordert (dh billiger ist) , um alles in BCD zu tun, als es in Binärform und mit a zu tun ist Binär-Dezimal-Umsetzer.
Sie beschreiben im Grunde genommen ein analoges Signal, das in Sensoren verwendet wird, aber selten für interne Berechnungen. Das Problem ist, dass Rauschen die Qualität verschlechtert. Sie müssen einen schwer zu kommunizierenden Referenzpunkt sehr genau kalibrieren, und die Übertragung ist problematisch, da sie mit zunehmender Entfernung an Stärke verliert.
Wenn Sie sich für analoges Rechnen interessieren, können Sie in den meisten Grundkursen zum Thema "Einführung in die Elektronik" beispielsweise Operationsverstärker-Integratoren bauen . Sie sind einfach genug, um auch ohne formelle Anweisung zu bauen.
Sie können auch mehrere digitale Zustände auf demselben Knoten speichern. Beispielsweise können Sie anstelle von 0-2,5 Volt als Null und 2,5-5,0 Volt als Eins einen dritten Zustand dazwischen hinzufügen. Dies erhöht jedoch die Komplexität und die Störanfälligkeit erheblich.
Diese werden Qubits genannt und in Quantencomputern verwendet. Weitere Informationen dazu finden Sie im Wikipedia- Eintrag . Es wird geforscht, um solche Computer stabil und wirtschaftlich machbar zu machen.
Ein Grund, warum wir Bits verwenden, ist, dass es uns hilft, Informationen genau zu speichern und abzurufen.
Die reale Welt ist analog, daher sind alle Informationen, die Computer weitergeben oder speichern, letztendlich analog . Zum Beispiel ein Strom mit einer bestimmten Spannung an einem Draht oder eine magnetische Ladung mit einer bestimmten Stärke an einer Scheibe oder eine Vertiefung mit einer bestimmten Tiefe an einer Laserscheibe.
Die Frage ist: Wie genau können Sie diese analogen Informationen messen ? Stellen Sie sich vor, ein Strom auf einer Leitung könnte wie folgt als eine beliebige Dezimalzahl interpretiert werden:
Dieses System würde es uns ermöglichen, eine Menge Daten in ein paar Stromimpulsen weiterzuleiten, oder? Aber es gibt ein Problem: Wir müssen sehr sicher sein, wie hoch die Spannung ist. Wenn Temperatur, Magnete, kosmische Strahlung oder was auch immer Schwankungen verursachen, können wir die falsche Zahl ablesen. Und je genauer wir messen wollen, desto größer ist das Risiko. Stellen Sie sich vor, ein 1-Millivolt-Unterschied wäre signifikant!
Stattdessen verwenden wir normalerweise eine digitale Interpretation . Alles über einer Schwelle ist wahr und alles unter ist falsch. Wir können also Fragen stellen wie "Gibt es überhaupt Strom?" statt " Genau wie viel Strom gibt es?"
Jedes einzelne Bit kann mit Zuversicht gemessen werden, da wir nur "im richtigen Ballpark" sein müssen. Und wenn wir viele Bits verwenden, können wir immer noch viele Informationen erhalten.
Es gibt auch ternäre Computer anstelle von binären. http://en.wikipedia.org/wiki/Ternary_computer
Ein ternärer Computer (auch Trinary-Computer genannt ) ist ein Computer, der ternäre Logik (drei mögliche Werte) anstelle der gebräuchlicheren binären Logik (zwei mögliche Werte) in seinen Berechnungen verwendet.
Es mag für uns natürlicher sein, aber es gibt bestimmte Gründe, warum Binär für digitale Schaltungen und damit für Programmiersprachen gewählt wurde. Wenn Sie zwei Zustände haben, müssen Sie nur zwischen zwei Volt-Einstellungen unterscheiden, z. B. 0V und 5V. Für jede weitere Erhöhung des Radix (der Basis) müssten Sie diesen Bereich weiter aufteilen, um Werte zu erhalten, die nicht voneinander zu unterscheiden sind. Sie könnten den Spannungsbereich erhöhen, aber das hat die unangenehme Angewohnheit, Schaltkreise zu schmelzen.
Wenn Sie den Hardwaretyp für digitale Schaltungen ändern möchten, stehen Ihnen vielfältigere Optionen zur Verfügung. Dezimalstellen wurden früher in mechanischen Computern verwendet, da Zahnräder eine viel höhere Wärmetoleranz aufweisen und viel ausgeprägter sind als Elektronenladungen. Quantencomputer haben, wie an anderer Stelle erwähnt, andere Möglichkeiten, mit Dingen umzugehen. Optische Computer sind möglicherweise auch in der Lage, Dinge zu tun, mit denen wir uns zuvor nicht befasst haben, und magnetische Computer sind ebenfalls eine Möglichkeit.
Ich denke, Sie könnten heutzutage Objekte bauen, die eine beliebige Anzahl von Zuständen enthalten oder sogar mit analogen Daten arbeiten. Ein komplettes System aufzubauen und alle logischen Komponenten zum Laufen zu bringen, um eine voll funktionsfähige und programmierbare Architektur zu erhalten, wäre eine Menge Arbeit und ein finanzielles Risiko für jedes Unternehmen, diese Aufgabe zu übernehmen.
Ich denke, ENIAC war die letzte Architektur, die Ringzähler mit zehn Positionen zum Speichern von Ziffern verwendete. Obwohl ich mich irren könnte und nicht sicher bin, wie sehr dies die anderen Teile der Maschine beeinflusste.
Die Speicherung kann als Übertragung in die Zukunft betrachtet werden, alle Übertragungsprobleme mit kontinuierlichen (analogen) Medien werden auftreten.
Das Speichern dieser Zustände könnte trivial sein (ein Drei-Wege-Schalter oder eine Art Gitter) und das physische Speichern dieser Zustände ist ein Thema, das von vielen Antworten abgedeckt wird, viel besser als ich.
Mein Hauptanliegen ist, wie dieser gespeicherte Zustand codiert wird, und es scheint, dass es eine hohe Wahrscheinlichkeit gibt, dass diese Aufgabe eine Narrenaufgabe ist, da Bits für die Darstellung praktischer kontinuierlicher Daten ausreichen, abhängig von der Genauigkeit, die Sie benötigen, fügen Sie immer mehr Bits hinzu.
Wirklich kontinuierliche Daten können auf diese Weise nicht gespeichert werden, aber Gleichungen, um sie zu berechnen, z
1/3
kann aufbewahrt werden.
Ein Hinweis und eine Ahnung sind kleinere Informationen als ein bisschen. In der Regel sind mehrere Hinweise erforderlich, um den endgültigen Wert eines Bits zu ermitteln. Inklings sind schlimmer: Egal wie viele Sie addieren, Sie können den Wert des resultierenden Bits immer noch nicht genau kennen.
Im Ernst, es gibt mehrwertige Logiken, bei denen die Grundeinheit einen von n Zuständen haben kann, wobei n> 2 ist. Sie könnten diese Einheiten so betrachten, dass sie weniger Informationen enthalten als ein Bit im Sinne des vorhergehenden Absatzes, aber aus einer Informationstheorie Aus der Sicht müsste man sagen, dass sie mehr tragen. Beispielsweise benötigen Sie zwei Bits, um die gleiche Menge an Informationen darzustellen, die ein einzelner Wert in einer vierwertigen Logik enthalten könnte.
Die optimale numerische Basis ist e , aber da der einfachste Weg zur Darstellung einer Zahl in der digitalen Elektronik zwei Zustände aufweist (hohe Spannung = 1, niedrige Spannung = 0), wurde die Darstellung einer binären Zahl gewählt.
e
ohne auch das Nat zu erwähnen ? Zum Schämen.
Es gibt eine kleinere mögliche Dateneinheit. Ich kenne keinen offiziellen Namen dafür, nennen wir es ein un.
Bit ist ein intelligentes Kombinationswort für "Binary digIT", dh es hat zwei mögliche Zustände. Es muss also eine Art Ziffer mit nur einem möglichen Zustand geben.
Mal sehen, was das bedeutet. Es bedeutet, dass Sie nur mit Nullen arbeiten müssen.
Wie würdest du zählen? In jedem x-base-System erhöhen Sie den Wert, bis Ihnen die Ziffern ausgehen, und fügen dann eine Ziffer hinzu, um eine Zahl zu bilden. Wenn Sie nur eine Ziffer haben, würden Ihnen sofort die Ziffern ausgehen.
Null = 0 Eins = 00 Zwei = 000 usw.
Das ist definitiv natürlicher: mehr ist mehr! Es ist perfekt auf eine beliebige Anzahl von Dingen abgestimmt. Wie viele Kartoffeln? 00000 Das sind vier Kartoffeln. Warten Sie eine Minute ... das ist nacheinander. Wenn Ihnen das nicht gefällt, können Sie den Wert von 0 auf 1 ändern. Dann ist es ganz natürlich: keine Null ist keine, eine Null ist eine, zwei Null ist zwei, und so weiter.
Dies ist jedoch für eine Festkörpermaschine unpraktisch. Ziffern müssten physisch platziert und entfernt werden, und sie lassen sich nicht gut skalieren.
Ich kann keine endgültige englische Referenz finden, aber soweit ich mich an Information Theory Class erinnere, ist das Bit eine grundlegende Informationseinheit. Ein bisschen Information ist die Information, die Sie erhalten, nachdem Sie eine faire Münze geworfen haben (50% Wahrscheinlichkeit für jede Seite). Alles andere kann darauf reduziert werden.
Selbst wenn Sie ein Gerät mit mehreren Status verwenden, kann es immer auf Bits reduziert werden.