- Dyadik
-
Zahlen
0 bis 15 (Nibble)
im DualsystemNull: 0 Eins: 1 Zwei: 10 Drei: 11 Vier: 100 Fünf: 101 Sechs: 110 Sieben: 111 Acht: 1000 Neun: 1001 Zehn: 1010 Elf: 1011 Zwölf: 1100 Dreizehn: 1101 Vierzehn: 1110 Fünfzehn: 1111 Das Dualsystem (lat. dualis = zwei enthaltend), auch Zweiersystem oder Binärsystem genannt, ist ein Zahlensystem das nur zwei verschiedene Ziffern zur Darstellung von Zahlen benutzt.[1]
Im gewöhnlich verwendeten Dezimalsystem werden die Ziffern 0 bis 9 verwendet. Im Dualsystem hingegen werden Zahlen nur mit Ziffern, welche die Werte Null oder Eins annehmen, dargestellt. Oft werden für diese Ziffern die Symbole 0 und 1 verwendet. Die Zahlen Null bis Fünfzehn zum Beispiel sehen dann wie in der rechts stehenden Liste aus.
Das Dualsystem ist das Stellenwertsystem mit der Basis 2, also die dyadische (2-adische) Darstellung von Zahlen (Dyadik).
Es ist auf Grund seiner Bedeutung in der Digitaltechnik neben dem Dezimalsystem das wichtigste Zahlensystem.
Die Zahlen, die durch das Dualsystem dargestellt werden, heißen Dualzahlen oder Binärzahlen. Letztere ist die allgemeinere Bezeichnung, da diese auch einfach für binärcodierte Zahlen stehen kann. Der Begriff Binärzahl spezifiziert die Darstellungsweise einer Zahl also nicht näher, er sagt nur aus, dass zwei verschiedene Ziffern verwendet werden.
Inhaltsverzeichnis
Definition und Darstellung
Eine Dualzahl wird durch die Ziffern zi dargestellt. Die Ziffern werden wie im gewöhnlich verwendeten Dezimalsystem ohne Trennzeichen hintereinander geschrieben, ihr Stellenwert entspricht allerdings der zur Stelle passenden Zweierpotenz und nicht der Zehnerpotenz.
Es wird also die höchstwertige Stelle mit dem Wert zm ganz links und die niederwertigeren Stellen mit den Werten zm − 1 bis z0 in absteigender Reihenfolge rechts davon aufgeschrieben. Zur Darstellung von rationalen oder reellen Zahlen folgen dann nach einem trennenden Komma die Stellen z − 1 bis z − n, die den gebrochenen Anteil der Zahl darstellen:
Der Wert Z der Dualzahl ergibt sich durch Addition dieser Ziffern, welche vorher jeweils mit ihrem Stellenwert 2i multipliziert werden:
- .
Gewöhnlich werden analog zu anderen Zahlensystemen die Symbole 0 und 1 zur Darstellung der beiden Ziffern verwendet.
In älterer Literatur mit Bezug zur elektronischen Datenverarbeitung werden manchmal die Symbole Low (L) und High (H) anstelle von 0 und 1 verwendet. Low steht dann meist für den Wert Null und High für den Wert Eins. Diese Zuordnung nennt sich positive Logik, bei negativer Logik werden die Werte andersherum zugeordnet.
Auch die Symbole L für den Wert Eins und 0 für den Wert Null finden Verwendung.
Negative Zahlen werden wie im Dezimalsystem mit einem vorangestellten Minus (−) geschrieben.
Beispiele
Die Ziffernfolge 1101 zum Beispiel, stellt nicht (wie im Dezimalsystem) die Tausendeinhundertundeins dar, sondern die Dreizehn, denn im Dualsystem berechnet sich der Wert durch
und nicht wie im Dezimalsystem durch
- .
Die Klammerung der Resultate mit der tiefgestellten 2 beziehungsweise der 10 gibt die Basis des verwendeten Stellenwertsystems an. So kann leicht erkannt werden, ob die Zahl im Dual- oder im Dezimalsystem dargestellt ist. In der Literatur werden die eckigen Klammern oft weggelassen und die tiefergestellte Zahl wird dann manchmal in runde Klammern gesetzt. Ebenfalls möglich ist die Kennzeichnung durch den nachgestellten Großbuchstaben B (für binary, engl. für binär).
Verschiedene Darstellungsformen der Zahl dreiundzwanzig im Dualsystem:
- [10111]2
- 101112
- 10111(2)
- 10111B
- 0b10111
- HLHHH
- L0LLL
Maximale Werte
Der maximale Wert einer Dualzahl mit n Stellen ist 2n − 1. Eine vierstellige Dualzahl kann also höchstens den Wert 24 − 1, also 16 − 1 = 15 haben.
Konsequenterweise kann man im Dualsystem mit seinen 10 Fingern bis max. 210 − 1, also bis 1023 zählen.
Geschichte
Der alt-indische Mathematiker Pingala stellte die erste bekannte Beschreibung eines Zahlensystems bestehend aus zwei Zeichen im 3. Jahrhundert v. Chr. vor. Dieses Zahlensystem kannte allerdings keine Null.
Eine Serie von acht Trigrammen und 64 Hexagrammen sind aus dem alt-chinesischen und daoistischen Text I Ching bekannt. Der chinesische Gelehrte und Philosoph Shao Yong entwickelte im 11. Jahrhundert daraus eine systematische Anordnung von Hexagrammen, die die Folge von 0 bis 63 darstellt und eine Methode, um dieselbe zu erzeugen. Es gibt jedoch keine Hinweise, dass Shao es verstand, Berechnungen im Dualsystem vorzunehmen oder das Konzept des Stellenwertes erkannt hatte.
Das Dualsystem, also das Stellenwertsystem mit der Basis Zwei, wurde von Gottfried Wilhelm Leibniz am Anfang des 18. Jahrhunderts in seinem Artikel Explication de l'Arithmétique Binaire (Histoire de l´ Academie Royale des Sciences 1703, veröffentlicht in Paris 1705[2]) vollständig dokumentiert. Leibniz bestätigt darin außerdem die Ansicht Joachim Bouvets, eines Missionars am chinesischen Kaiserhof, der die Tri- und Hexagramme des Fu Hsi (siehe Abbildung: „Zeichen des Fu Hsi“) bei bestimmter Leserichtung als Zahlzeichen interpretiert hat. Er sah darin ein archaisches Binärsystem, das in Vergessenheit geraten ist. Diese Deutung gilt inzwischen als sehr unwahrscheinlich. Leibniz hatte aber auch in Europa Vorgänger[3]. Eine frühere Behandlung des Dualsystems und anderer Stellensysteme von Thomas Harriot wurde von diesem nicht veröffentlicht sondern fand sich erst im Nachlass.[4]. Die erste Veröffentlichung des Dualsystems in Europa ist wahrscheinlich in Mathesis Biceps vetus et nova 1670 vom späteren spanischen Bischof Juan Caramuel y Lobkowitz (1606–1682), der ebenfalls gleichzeitig auch Zahlen zu anderen Basen behandelt. Auch Blaise Pascal merkte schon in De numeris multiplicibus (1654, 1665) an, dass die Basis 10 keine Notwendigkeit ist.
1854 veröffentlichte der britische Mathematiker George Boole eine richtungsweisende Arbeit, die detailliert ein logisches System beschreibt, das als Boolesche Algebra bekannt wurde. Sein logisches System bereitete der Realisierung von elektronischen Schaltkreisen den Weg, welche Arithmetik im Dualsystem implementieren.
1937 fertigte Claude Shannon seine Master-Abschlussarbeit am MIT an, die erstmals die Boolesche Algebra und die Arithmetik im Dualsystem in elektronischen Relais und Schaltern realisierte. Unter dem Titel „A Symbolic Analysis of Relay and Switching Circuits“ hat Shannons Arbeit die Konstruktion digitaler Schaltkreise begründet.
Im November 1937 vollendete George Stibitz, der später bei den Bell Labs arbeitete, seinen Relais-gestützten Rechner „Modell K“ (nach „K“ für „Küche“, wo er ihn zusammengebaut hat), der die Addition im Dualsystem beherrschte.
1941 konstruierte Konrad Zuse den ersten programmierbaren Binärrechner, den Z3.
Anwendung
Leibniz empfand schon Ende des 17. Jahrhunderts die Dyadik (dyo, griech. = Zwei), also die Darstellung von Zahlen im Dualsystem, die er entwickelte, als sehr wichtig. Er sah darin ein so überzeugendes Sinnbild des christlichen Glaubens, dass er damit den chinesischen Kaiser Kangxi überzeugen wollte. Dazu schrieb er an den französischen Jesuitenpater Bouvet:
- „Zu Beginn des ersten Tages war die 1, das heißt Gott. Zu Beginn des zweiten Tages die 2, denn Himmel und Erde wurden während des ersten geschaffen. Schließlich zu Beginn des siebenten Tages war schon alles da; deshalb ist der letzte Tag der vollkommenste und der Sabbat, denn an ihm ist alles geschaffen und erfüllt, und deshalb schreibt sich die 7 111, also ohne Null. Und nur wenn man die Zahlen bloß mit 0 und 1 schreibt, erkennt man die Vollkommenheit des siebenten Tages, der als heilig gilt, und von dem noch bemerkenswert ist, dass seine Charaktere einen Bezug zur Dreifaltigkeit haben.“
Etwas weltlicher fiel hingegen seine Beschreibung in einem Brief an den Herzog Rudolf von Braunschweig-Wolfenbüttel vom 2. Januar 1697 aus:
- „...Denn einer der Hauptpunkte des christlichen Glaubens...ist die Erschaffung aller Dinge aus dem Nichts durch die Allmacht Gottes. Nun kann man wohl sagen, daß nichts in der Welt dies besser vorstelle, ja, gleichsam demonstriere, als der Ursprung der Zahlen, wie er allhier vorgestellt ist, durch deren Ausdrückung nur und allein mit Eins und Null (oder Nichts) alle Zahlen entstehen. Es wird wohl schwerlich in der Natur und Philosophie ein besseres Vorbild dieses Geheimnisses zu finden sein... Das kommt hier um so mehr zupasse, weil die leere Tiefe und wüste Finsternis zu Null und Nichts, aber der Geist Gottes mit seinem Lichte zur allmächtigen Eins gehört. Wegen der Worte des Sinnbilds habe ich mich eine Zeiteilang bedacht und endlich für gut befunden diesen Vers zu setzen: Alles aus dem Nichts zu entwickeln genügt Eins (Omnibus ex nihilo ducendis sufficit unum).“[5]
Da die feinmechanischen Fertigkeiten der damaligen Zeit nicht ausreichten, musste Leibniz beim Bau seiner Rechenmaschinen auf das Dezimalsystem zurückgreifen.
Bei der späteren Entwicklung von elektronischen Rechenmaschinen erlangte das Dualsystem allerdings große Bedeutung, denn in der Digitaltechnik werden Zahlen durch elektrische Zustände dargestellt. Bevorzugt werden zwei komplementäre Zustände wie Strom an/Strom aus oder Spannung/Masse verwendet, da auf diese Weise sehr fehlerresistente und einfache Schaltungen zu realisieren sind (siehe Binärcode). Diese zwei Zustände lassen sich dann als Ziffern benutzen. Das Dualsystem ist die einfachste Methode, um mit Zahlen zu rechnen, die durch diese zwei Ziffern dargestellt werden.
Dualzahlen finden in der elektronischen Datenverarbeitung bei der Darstellung von Festkommazahlen oder ganzen Zahlen Verwendung. Negative Zahlen werden vor allem als Zweierkomplement dargestellt, welches nur im positiven Bereich der Dualzahlendarstellung entspricht. Seltener wird dazu das Einerkomplement verwendet, welches der invertierten Darstellung von Dualzahlen mit vorangestellter Eins entspricht. Die Darstellung von Negativen Zahlen im Einerkomplement hat den Nachteil, dass zwei Darstellungen für die Null, einmal im positiven und einmal im Negativen existieren.
Um näherungsweise rationale oder gar reelle Zahlen in der elektronischen Datenverarbeitung darzustellen, werden vorzugsweise Gleitkommadarstellungen verwendet, bei der die Zahl normalisiert und in Mantisse und Exponent aufgeteilt wird. Diese beiden Werte werden dann in Form von Dualzahlen gespeichert.
Grundrechenarten im Dualsystem
Analog zu den Zahlen im Dezimalsystem lassen sich mit Dualzahlen die gängigen arithmetischen Grundoperationen Addition, Subtraktion, Multiplikation und Division durchführen. Tatsächlich werden die benötigten Algorithmen sogar einfacher und lassen sich effizient mit logischen Schaltungen elektronisch realisieren. Die Einführung von Dualzahlen in der Rechentechnik brachte daher viele Vorteile.
Addition Beispiel 0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10Subtraktion Beispiel 0 − 0 = 0
0 − 1 = −1
1 − 0 = 1
1 − 1 = 0Multiplikation Beispiel 0 0 = 0
0 1 = 0
1 0 = 0
1 1 = 1Division Beispiel 0 / 0 = n.def.
0 / 1 = 0
1 / 0 = n.def.
1 / 1 = 1Schriftliche Addition
A B M1 M2 E 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 Die binäre Addition ist eine grundlegende Basisoperation in der Computerwelt. Will man zwei nicht negative Binärzahlen A und B addieren, kann man dies wie im Dezimalsystem tun. Nur muss man beachten, dass beim Ergebnis keine Zwei an der jeweiligen Stelle notiert wird, sondern eine Null und ein Übertrag an die nächste Stelle. Dies geschieht analog zu dem Fall einer Dezimaladdition, wenn sich eine Zehn bei der Addition einer Stelle ergibt:
Die Zahlen werden übereinander aufgeschrieben. Nun arbeitet man von rechts nach links alle Binärziffern (=Bits) von A und B simultan ab und erzeugt in jedem Zwischenschritt ein Ergebnisbit sowie ein Merkerbit (auch Übertrag genannt). Dabei werden die Bits entsprechend der Tabelle rechts zusammengezählt. In den Spalten A und B sind die Bits der zu addierenden Zahlen zu finden. In der Spalte M1 steht das Merkerbit des vorherigen Zwischenschrittes. Daraus ergibt sich (entsprechend dieser Tabelle, welche einem Volladdierer entspricht) ein Ergebnisbit (E) und ein neues Merkerbit (M2). Alle Ergebnisbits, von rechts nach links aneinandergereiht, stellen das Resultat dar. Entsteht beim letzten Zwischenschritt ein Merkerbit, so bekommt das Resultat links eine zusätzliche 1.
Am besten sieht man dies anhand eines Beispieles. Hier werden die Zahlen A und B zusammengezählt. In jedem Schritt wird ein anfallendes Merkerbit bei der nächsten Ziffer notiert.
A = 10011010 (154) B = 00110110 (54) Merker = 11111 ———————— Ergebnis = 11010000 (208) ‗‗‗‗‗‗‗‗
Schriftliche Subtraktion
Die Subtraktion verhält sich analog zur Addition.
- 0 − 0 = 0
- 0 − 1 = −1 (dargestellt als 1 und Übertrag 1)
- 1 − 0 = 1
- 1 − 1 = 0
- 0 − 1 mit Übertrag 1 = 0 mit Übertrag 1
- 1 − 1 mit Übertrag 1 = 1 mit Übertrag 1
Eine Zahl im Dualsystem kann von der anderen wie im folgenden Beispiel dargestellt subtrahiert werden:
Hier wird die Subtraktion 110 − 23 = 87 durchgeführt. Die kleinen Einsen in der dritten Reihe zeigen den Übertrag. Das Verfahren ist das Gleiche, wie es in der Schule für das Dezimalsystem unterrichtet wird. Etwas ungewohnt sieht der Fall 0 − 1 aus. Zum Beispiel im Fall 2 − 9 im Dezimalsystem, denkt man sich eine Zehnerstelle vor die Zwei, wodurch sich die Subtraktion 12 − 9 ergibt. Die gedachte Zehnerstelle wird dann als Übertrag an die nächste Stelle weitergereicht. Im Dualsystem geschieht das Gleiche. Aus 0 − 1 wird 10 − 1. Es kann als Ergebnis also eine 1 hingeschrieben werden, die vor die 0 gedachte Eins muss dann als Übertrag an die nächste Stelle geschrieben und von dieser zusätzlich abgezogen werden.
Das Verfahren funktioniert (wie auch im Dezimalsystem) nicht, wenn der Minuend kleiner ist als der Subtrahend.
Die Subtraktion einer positiven Zahl ergibt dasselbe Ergebnis wie die Addition zu einer negativen Zahl mit dem gleichen Betrag.
Schriftliche Multiplikation
Die Multiplikation wird im Dualsystem genauso durchgeführt wie im Dezimalsystem. Dadurch dass nur 0 und 1 als Ziffern vorkommen ist die schriftliche Multiplikation jedoch sogar einfacher. Das folgende Beispiel, in dem die Zahlen 1100 (12) und 1101 (13) multipliziert werden, zeigt die Vorgehensweise.
Zuerst schreibt man die Aufgabenstellung in eine Zeile und zieht zur Vereinfachung einen Strich darunter.
1100 · 1101 ———————————
Die erste Ziffer des zweiten Faktors ist eine Eins und deshalb schreibt man den ersten Faktor rechtsbündig unter diese Eins.
1100 · 1101 ——————————— 1100
Auch für alle weiteren Einsen des zweiten Faktors schreibt man den ersten Faktor rechtsbündig darunter.
1100 · 1101 ——————————— 1100 1100 0000 1100
Die so gewonnenen Zahlen zählt man dann zum Ergebnis der Multiplikation zusammen.
1100 · 1101 ——————————— 1100 + 1100 + 0000 + 1100 ——————————— 10011100 (156)
Ein besonders einfacher Fall ist die Multiplikation einer positiven Dualzahl mit der Zahl 10 (2). In diesem Fall muss lediglich an die positive Dualzahl eine 0 angehangen werden:
1101 · 10 = 11010
11010 · 10 = 110100
usw.
Für diese Rechenoperation existieren einfache Befehle in der Digitaltechnik.
Bei der Multiplikation zweier 2er Komplement Dualzahlen wird der Booth-Algorithmus benutzt.
Schriftliche Division
Bei der Division zweier 2er Komplement Dualzahlen werden folgende Algorithmen verwendet, siehe dazu Division von Dualzahlen.
Am Beispiel der Division von 1000010 / 11 (entspricht 66:3 im Dezimalsystem)
1000010 ÷ 11 = 010110 Rest 0 (= 22 im Dezimalsystem) − 011 ————— 00100 − 011 ———— 0011 − 011 ————— 000 − 00 ——— 0
Bei der Division zweier positiver Dualzahlen verbleibt immer ein Rest 1, wenn die letzte Ziffer des Dividenden eine 1 ist. Die Anwendung der Modulo-Funktion mit dem Divisor 10 (2) auf positive Dualzahlen ergibt ergibt immer 1, wenn die letzte Ziffer des Dividenden 1 ist und 0, wenn die letzte Ziffer des Dividenden 0 ist:
1101 mod 10 = 1
1100 mod 10 = 0
Für diese Rechenoperation, die einer UND-Verknüpfung mit 1 entspricht, existieren einfache Befehle in der Digitaltechnik.
Ein besonders einfacher Fall ist die Division mit Rest einer positiven Dualzahl durch die Zahl 10 (2). In diesem Fall muss lediglich die letzte Ziffer des Dividenden gestrichen werden. Ist die letzte Ziffer des Dividenden eine 1, so verschwindet dieser Rest. Entspricht bei diesem Verfahren die Anzahl der Divisionen durch 2 der Anzahl der Stellen des Dividenden, so ist das Endergebnis immer 0:
1101 ÷ 10 = 110
110 ÷ 10 = 11
11 ÷ 10 = 1
1 ÷ 10 = 0
Für diese Rechenoperation existieren einfache Befehle in der Digitaltechnik.
Umrechnen von Dualzahlen in andere Stellenwertsysteme
Durch die kleine Basis ergibt sich der Nachteil, dass Zahlen im Verhältnis zu Dezimalzahlen relativ lang und schwer zu überschauen sind (siehe Tabelle unten). Dies hat zur Verbreitung des Hexadezimalsystems geführt, welches die Basis 16 besitzt. Da 16 eine Potenz von 2 ist, ist es besonders einfach möglich, Dualzahlen in Hexadezimalzahlen umzurechnen. Dazu werden je vier Stellen der Dualzahl durch eine Hexadezimalstelle ersetzt, was auch die Länge der dargestellten Zahlen um den Faktor vier verringert. Die Hexadezimalziffern mit dem Wert 0–15 werden in der Regel durch die Ziffernsymbole 0–9 und die Großbuchstaben A–F (für die Werte 10–15) dargestellt. Dadurch sind sie verhältnismäßig gut lesbar, so lässt sich zum Beispiel leicht feststellen, dass EDA5(16) größer ist als ED7A(16) wo hingegen sich die entsprechenden Dualzahlen 1110110110100101(2) und 1110110101111010(2) nicht so schnell überblicken lassen.
Dualsystem 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 Oktalsystem 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 Dezimalsystem 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hexadezimalsystem 0 1 2 3 4 5 6 7 8 9 A B C D E F Vom Dualsystem ins Dezimalsystem
Um eine Dualzahl in die entsprechende Dezimalzahl umzurechnen, werden alle Ziffern jeweils mit ihrem Stellenwert (entsprechende Zweierpotenz) multipliziert und dann addiert.
Beispiel:
Endet die Dualzahl mit einer 1, so ist die Dezimalzahl eine ungerade Zahl. Ist die letzte Ziffer der Dualzahl eine 0, so ist die Dezimalzahl gerade.
Beispiel:
Vom Dezimalsystem ins Dualsystem
Es gibt mehrere Möglichkeiten der Umrechnung ins Dualsystem. Im Folgenden ist die Divisionsmethode (auch Modulo-Methode genannt) am Beispiel 41(10) beschrieben:
Die entsprechende Dualzahl ergibt sich durch Notation der errechneten Reste von unten nach oben: 101001(2).
Siehe auch
Fußnoten
- ↑ Nach DIN 44300, Teil 2, ist "binär" nicht gleichbedeutend mit "dual". "Dual" bezieht sich auf die Darstellung von Zahlen.
- ↑ neu herausgegeben von H.Zacher Die Hauptschriften zur Dyadik von G.W.Leibniz, Frankfurt, Vittorio Klostermann 1973
- ↑ Robert Ineichen Leibniz, Caramuel, Harriot und das Dualsystem, Mitteilungen DMV 2008
- ↑ Shirley Binary number systems before Leibniz, American Journal of Physics Bd.19, 1951, S.452
- ↑ bibliotheca Augustana
Weblinks
- Literatur über Dualsystem in Bibliothekskatalogen: DNB, GBV
- Leibniz und die Dyadik
- binaersystem.homeunix.org, eine Themenseite speziell über das Dualsystem
- Umrechnung von Zahlensystemen (u. a. dual ↔ dezimal)
- Zusammenfassung Dualarithmetik und Zahlensysteme
- Dezimalzahlen in Binärzahlen umwandeln mit Nachkommastellen
Wikimedia Foundation.