Zahlensysteme

Exercise 1: Zahlensysteme

In welchem Zahlensystem rechnen wir? Welche Ziffern brauchen wir dafür?

Solution

Wir rechnen im Dezimalsystem, dem 1010er-System. Wie der Name sagt, brauchen wir in diesem Positionssystem 1010 Ziffern: 0,1,2,,8,90, 1, 2, \dots, 8, 9.

Eine kurze Geschichte der Zahlen

Es ist nicht genau bekannt, seit wann die Menschen Zahlen benutzen. Die ersten Darstellungen von Zahlen waren wahrscheinlich Striche. Man spricht hier von einem unären Zahlensystem, weil alle Zahlen mit nur einem Zeichen (Strich) dargestellt werden.

Exercise 2: 5er-Paket

Weshalb fasst man just fünf Striche zu einem Bündel zusammen?

Solution

Vermutlich kommt dies vom Zählen mit den Fingern.

Zahlen in Babylonien (ca. 2000 v. Chr.)

Die Babylonier verwendeten als eines der ersten Völker ein sogenanntes Positionssystem in Keilschrift. Der Wert eines Zeichens hängt auch von dessen Position ab. Während wir heute in unserem Dezimalsystem (Basis 1010) die Ziffern 0,1,2,,90, 1, 2, \dots, 9 verwenden, nutzten die Babylonier ein Sechzigersystem. Für die Darstellung der Zahlen von 11 bis 5959 kombinierten sie lediglich zwei Symbole: eines für die Einer und eines für die Zehner. Ein eigenes Zeichen für die Null gab es anfangs nicht, was zu Zweideutigkeiten führte: So sahen die Darstellungen für 11 und 6060 (11 bzw. 60160^1) identisch aus und mussten aus dem Kontext erschlossen werden. Später wurde für innere Leerstellen ein Platzhalter eingeführt, aber nicht am Ende einer Zahl.

Exercise 3: Babylonier

Welches Zahlensystem verwendeten die Babylonier? Wie alt ist dieses System etwa?

Solution

Die Babylonier verwendeten seit ca. 2000 v. Chr. das 6060er-System, auch Sexagesimalsystem genannt. Überbleibsel davon stecken beispielsweise in der Zeit- (Minuten, Sekunden) oder Winkelmessung (Grad, Minuten, Sekunden).

Zahlen in Indien und Arabien

Die Ziffern, wie wir sie heute verwenden, haben ihren Ursprung in Indien und Arabien. Sie wurden unter anderem durch Kaufleute wie Fibonacci im 13. Jahrhundert nach Europa gebracht, konnten sich aber erst später gegen die römischen Zahlen durchsetzen.

Note 1

Eine grossartige Leistung des menschlichen Geistes stellt die Erfindung der Zahl Null dar. Für die Menschen war es lange Zeit unvorstellbar, ein Zeichen für "Nichts" zu gebrauchen. Bei Positionssystemen ist ein Zeichen für Null als Platzhalter aber unentbehrlich.

Römische Zahlen

Römische Zahlen sind ein antikes Zahlensystem, das die Römer verwendeten. Es basiert auf sieben Grundziffern, die aus dem lateinischen Alphabet stammen. Jede Grundziffer hat einen festen Wert.

Römisches Zeichen Wert
I\texttt{I} 1
V\texttt{V} 5
X\texttt{X} 10
L\texttt{L} 50
C\texttt{C} 100
D\texttt{D} 500
M\texttt{M} 1000

Um Zahlen darzustellen, werden die Zeichen kombiniert:

VI=5+1=6\texttt{VI} = 5 + 1 = 6 LXX=50+10+10=70\texttt{LXX} = 50 + 10 + 10 = 70 IV=51=4\texttt{IV} = 5 - 1 = 4 XC=10010=90\texttt{XC} = 100 - 10 = 90
Exercise 4: Römer

Lerne die römischen Zahlen von 11 bis 20002000 zu schreiben.

Solution

Von I\texttt{I} bis M\texttt{M} kann man diese Ziffern kombinieren. Beachte, dass nie mehr als drei gleichartige Ziffern nebeneinander stehen. Steht aber eine minderwertige Ziffer links einer höherwertigen, so wird ihr Wert abgezogen.

Exercise 5: Jahreszahlen

Schreibe das aktuelle Jahr mit römischen Zahlzeichen sowie die Zahl 18481848.

Solution

Selbstkontrolle und MDCCCXLVIII\texttt{MDCCCXLVIII}

Positionssystem

Ein Zahlensystem wird zur Darstellung von Zahlen verwendet. Eine Zahl wird dabei nach den Regeln des Zahlensystems als Folge von Ziffern dargestellt. Man unterscheidet im Wesentlichen zwischen Additionssystemen und Stellenwertsystemen (Positionssystemen).

Ein Positionssystem hat eine Basis bN{1}b \in \N \setminus \{1\}. Jede Zifferposition hat einen Wert, der einer Potenz der Basis entspricht. Für die kk-te Position (kk von rechts beginnend bei 00) hat man einen Wert von bkb^k. Die Berechnung des Zahlenwertes erfolgt durch Multiplikation der einzelnen Ziffern ziz_i mit den zugehörigen Stellenwerten bib^i und Summation dieser Produkte:

z=znbn+zn1bn1++z1b1+z0b0z = z_n \cdot b^n + z_{n-1} \cdot b^{n-1} + \dots + z_1 \cdot b^1 + z_0 \cdot b^0
Example 1

Unter der Zahl 12571257 im üblichen Dezimalsystem (d. h. die Basis ist 1010) verstehen wir den Wert

1257=1103+2102+5101+71001257 = 1 \cdot 10^3 + 2 \cdot 10^2 + 5 \cdot 10^1 + 7 \cdot 10^0

Mit der Beschränkung des niedrigsten Exponenten auf 00 kann man nur ganze Zahlen darstellen. Lässt man auch negative Exponenten zu, kann man rationale Zahlen in einem Stellenwertsystem schreiben, wobei der Übergang vom nichtnegativen zum negativen Exponenten durch ein Trennzeichen markiert wird, beispielsweise einen Punkt:

121.47=1102+2101+1100+4101+7102121.47 = 1 \cdot 10^2 + 2 \cdot 10^1 + 1 \cdot 10^0 + 4 \cdot 10^{-1} + 7 \cdot 10^{-2}
Example 2: Binärsystem

Wir rechnen im Binärsystem, das die Basis 22 hat. Die Binärzahl 10(2)10_{(2)} hat im Dezimalsystem den Wert 121+020=2+0=21 \cdot 2^1 + 0 \cdot 2^0 = 2 + 0 = 2. Es gibt nur die Ziffern 00 und 11 – danach muss zur nächsthöheren Potenz gesprungen werden.

Note 2

Falls aus dem Kontext nicht hervorgeht, in welchem Zahlensystem eine Zahl interpretiert werden soll, schreiben wir dies als Index (angehängt und tiefgestellt) zur Zahl.

Example 3

Beispielsweise 1010 dezimal als 10(10)10_{(10)} oder 1010 binär – was dezimal der 22 entspricht – als 10(2)10_{(2)}.

Das Binärsystem

Exercise 6: Binärzahlen

Computer stellen Zahlen nur mit den Ziffern 00 und 11 dar, und zwar als magnetische Polung oder elektrisches Signal (Nord oder Süd bzw. Plus oder Minus). Zahlen im Zweiersystem nennen wir Binärzahlen. Die binäre Zahl 10111011 entspricht der Dezimalzahl

123+022+121+120=8+0+2+1=11.1 \cdot 2^3 + 0 \cdot 2^2 + 1 \cdot 2^1 + 1 \cdot 2^0 = 8 + 0 + 2 + 1 = 11.

Stelle die Dezimalzahlen von 11 bis 2020 im Binärsystem dar.

Solution
BIN DEC BIN DEC
0001 1 1011 11
0010 2 1100 12
0011 3 1101 13
0100 4 1110 14
0101 5 1111 15
0110 6 10000 16
0111 7 10001 17
1000 8 10010 18
1001 9 10011 19
1010 10 10100 20
Exercise 7: Ziffern

Zwei wichtige Zahlensysteme sind das Binärsystem (Basis 22) und das Hexadezimalsystem (Basis 1616). Welche Ziffern werden in diesen Systemen üblicherweise verwendet?

Solution

Im Binärsystem werden die beiden Ziffern üblicherweise mit 00 und 11 notiert; im Hexadezimalsystem behilft man sich nach 0,,90, \dots, 9 mit den Grossbuchstaben A\texttt{A}, B\texttt{B}, C\texttt{C}, D\texttt{D}, E\texttt{E}, F\texttt{F}.

Exercise 8: Bin zu Dec

Schreibe folgende Binärzahlen im Dezimalsystem:

a) 1010

b) 10001000

c) 11111111

d) 10010011001001

Solution

a) 22

b) 88

c) 1515

d) 7373

Exercise 9: Dec zu Bin

Notiere folgende Dezimalzahlen im Binärsystem:

a) 22

b) 3131

c) 1717

d) 1010

Solution

Man prüft, welche grösste Zweierpotenz in der gegebenen Dezimalzahl Platz hat, und arbeitet sich mit gleichbleibender Strategie durch die Überbleibsel.

a) 1010

b) 1111111111

c) 1000110001

d) 10101010

Note 3: Alternative: Die Restwertmethode

Eine systematischere Methode zur Umrechnung von Dezimal- in Binärzahlen ist die Restwertmethode. Dabei wird die Dezimalzahl wiederholt durch 22 geteilt und der jeweilige Rest (00 oder 11) notiert. Dies wird so lange fortgesetzt, bis das Ergebnis der Division 00 ist. Die Binärzahl ergibt sich dann aus den notierten Resten, von unten nach oben gelesen.

Example 4

Umrechnung von 1313:

13:2=66:2=33:2=11:2=0\begin{align} 13 : 2 &= 6 \tag{Rest 1} \\ 6 : 2 &= 3 \tag{Rest 0} \\ 3 : 2 &= 1 \tag{Rest 1} \\ 1 : 2 &= 0 \tag{Rest 1} \end{align}

Liest man die Reste von unten nach oben, erhält man 11011101. Also ist 13=1101(2)13 = 1101_{(2)}.

Exercise 10: 🧩

Zeige, dass der oben beschriebene Divisionsalgorithmus funktioniert.

Solution

Betrachte eine Zahl zNz \in \N in ihrer Darstellung zur Basis bb. Es gilt 0ci<b0 \leq c_i < b.

z=cnbn+cn1bn1++c1b+c0z = c_n \cdot b^n + c_{n-1} \cdot b^{n-1} + \dots + c_1 \cdot b + c_0

Bei Division durch bb erhalten wir als Rest c0c_0, da alle anderen Summanden Vielfache von bb sind. Wir fahren mit dem ganzzahligen Quotienten fort:

z1=cnbn1+cn1bn2++c1z_1 = c_n \cdot b^{n-1} + c_{n-1} \cdot b^{n-2} + \dots + c_1

Erneute Division durch bb liefert c1c_1. So fährt man fort, um nacheinander alle cic_i zu erhalten. Schliesslich notieren wir:

z=(cncn1c1c0)(b)z = (c_n c_{n-1} \dots c_1 c_0)_{(b)}
Exercise 11: Dec zu Bin II

Finde für die Dezimalzahlen 3434 und 3737 die Binärschreibweise.

Solution

100010100010 und 100101100101.

Exercise 12: 🧩

Stelle die Zahl π\pi binär mit sechs Nachkommastellen dar.

Solution

Es gilt 3=11(2)3 = 11_{(2)}. Weiter haben 232^{-3} und 262^{-6} in den Nachkommastellen Platz:

11.00100111.001001\dots

Hexadezimalsystem

In der Informatik verwendet man manchmal statt des Binärsystems das 1616er-System (Hexadezimalsystem). Dadurch können Werte übersichtlicher geschrieben werden und die Umrechnung ist wegen 16=2416 = 2^4 sehr einfach. Man braucht nun 1616 Ziffern:

0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.0, 1, 2, 3, 4, 5, 6, 7, 8, 9, \texttt{A}, \texttt{B}, \texttt{C}, \texttt{D}, \texttt{E}, \texttt{F}.
Exercise 13: Hex zu Dec und Bin

Welche Werte haben 1A(16)1\texttt{A}_{(16)} und ABC(16)\texttt{ABC}_{(16)} dezimal bzw. binär?

Solution

Es ist 1A(16)=261\texttt{A}_{(16)} = 26, binär ist das 11010(2)11010_{(2)}. ABC(16)=2748\texttt{ABC}_{(16)} = 2748. Für die Binärdarstellung schreibe ich direkt 4er-Pakete um: ABC(16)=101010111100(2)\texttt{ABC}_{(16)} = 101010111100_{(2)}.

Exercise 14: Dec zu Hex

Notiere die Dezimalzahl 100100 im Hexadezimalsystem.

Solution

Die Umrechnung ergibt sich aus 100=616+4=64(16)100 = 6 \cdot 16 + 4 = 64_{(16)}.

Exercise 15: Hex zu Dec II

Welchen Wert haben folgende Hexadezimalzahlen im Dezimalsystem?

a) 10(16)10_{(16)}

b) A(16)\texttt{A}_{(16)}

c) 1A(16)1\texttt{A}_{(16)}

d) DEF(16)\texttt{DEF}_{(16)}

Solution

a) 1616

b) 1010

c) 2626

d) 35673567

Exercise 16: Dec zu Hex II

Schreibe folgende Dezimalzahlen im Hexadezimalsystem:

a) 1010

b) 100100

c) 1616

d) 257257

Solution

a) Die 1010 entspricht dem Hexadezimalsymbol A\texttt{A}, also A(16)\texttt{A}_{(16)}.

b) 64(16)64_{(16)}

c) 10(16)10_{(16)}

d) 101(16)101_{(16)}

Exercise 17: Der direkte Draht

Da 16=2416 = 2^4 ist, entspricht jede Hexadezimalziffer genau einem 4er-Block von Binärziffern. Wandle folgende Zahlen direkt um:

a) 11100101(2)11100101_{(2)} in eine Hexadezimalzahl.

b) A7F(16)\texttt{A7F}_{(16)} in eine Binärzahl.

Solution

a) 11100101(2)E5(16)11100101_{(2)} \rightarrow \texttt{E5}_{(16)}

b) A7F(16)101001111111(2)\texttt{A7F}_{(16)} \rightarrow 101001111111_{(2)}

Exercise 18: Binäre Addition

Addiere die folgenden Binärzahlen schriftlich, wie du es vom Dezimalsystem gewohnt bist. Beachte die Überträge (z. B. 1(2)+1(2)=10(2)1_{(2)} + 1_{(2)} = 10_{(2)}).

a) 101(2)+10(2)101_{(2)} + 10_{(2)}

b) 1110(2)+1011(2)1110_{(2)} + 1011_{(2)}

Solution

a) 111(2)111_{(2)} (Dezimal: 5+2=75 + 2 = 7)

b) 11001(2)11001_{(2)} (Dezimal: 14+11=2514 + 11 = 25)

Exercise 19: Die Macht der Null

Erkläre in eigenen Worten, warum die Erfindung der Null für Stellenwertsysteme so entscheidend war. Welches konkrete Problem hatten die Babylonier ohne sie?

Solution

Die Null dient als Platzhalter. Ohne sie kann man in einem Positionssystem nicht zwischen Werten wie 2,202, 20 und 200200 unterscheiden. Die Babylonier konnten z. B. 6161 (1,1(60)1, 1_{(60)}) nicht eindeutig von 36013601 (1,0,1(60)1, 0, 1_{(60)}) unterscheiden, was zu Missverständnissen führen konnte.

Exercise 20: Farben im Web

Farben am Computer werden oft als Hexadezimal-Code im RGB-Format (Rot, Grün, Blau) angegeben. Der Code #FF8800 steht für eine Farbe. Die ersten beiden Stellen (FF) geben den Rotwert an, die nächsten beiden (88) den Grünwert und die letzten beiden (00) den Blauwert. Rechne die drei Farbwerte ins Dezimalsystem um (Wertebereich 00255255).

Solution

Rot: FF(16)=15161+15160=240+15=255\texttt{FF}_{(16)} = 15 \cdot 16^1 + 15 \cdot 16^0 = 240 + 15 = 255

Grün: 88(16)=8161+8160=128+8=13688_{(16)} = 8 \cdot 16^1 + 8 \cdot 16^0 = 128 + 8 = 136

Blau: 00(16)=000_{(16)} = 0

Das Sexagesimalsystem

Das babylonische Zahlensystem ist ein Stellenwertsystem zur Basis 6060, mit dem beliebig grosse, aber auch beliebig kleine Zahlen systematisch dargestellt werden können. Die Babylonier benutzten eine Keilschrift. Da pro "Stelle" 6060 Ziffern verwendet werden können, nennt man dieses Zahlensystem auch Sexagesimalsystem.

Interessant ist auch, dass die Babylonier ihr Stellenwertsystem für Nachkommazahlen nutzten. Dabei kam ihnen die vielfältige Teilbarkeit der Zahl 6060 zugute – dies war vermutlich auch der Grund, weshalb das Sexagesimalsystem überhaupt eingeführt wurde. Ein Zeichen für den "Punkt" war nicht vorhanden, sodass die Zuordnung der Stellen zu den 60er-Potenzen nicht eindeutig war. Welche Position z. B. die 60060^0-Stelle hat, musste aus dem Kontext erraten werden.

Eine genaue Untersuchung des Objekts fördert folgendes Schriftbild zutage. Wir erhalten so für die erste Zeile:

1600+24601+51602+106031 \cdot 60^0 + 24 \cdot 60^{-1} + 51 \cdot 60^{-2} + 10 \cdot 60^{-3}
Exercise 21: 🧩

Welche Zahl wird hier beschrieben?

Solution

Es ist 1600+24601+51602+10603=1.414212961 \cdot 60^0 + 24 \cdot 60^{-1} + 51 \cdot 60^{-2} + 10 \cdot 60^{-3} = 1.41421296\dots, was nahe bei 21.41421356\sqrt{2} \approx 1.41421356\dots liegt.

Alte Einheiten

Früher waren noch Einheiten wie das Dutzend und, wie eben bei den Babyloniern gesehen, 60er-Einheiten gebräuchlich. Folgende Tabelle, in der die Anzahl Teiler der ersten 100100 Dezimalzahlen aufgelistet ist, kann einen Hinweis liefern, wieso gerade 1212 und 6060 als Basen so beliebt waren.