neuerlehrplan:gk:zahlsysteme
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| neuerlehrplan:gk:zahlsysteme [2025/11/18 21:04] – [Rechnen mit Dualzahlen] lutz | neuerlehrplan:gk:zahlsysteme [2026/03/02 17:45] (aktuell) – [1.1.1 Zahlsysteme und Zeichencodierung] lutz | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== 1.1 Zahlsysteme ====== | + | ====== |
| - | ===== Dualsystem | + | ===== Dualsysstem |
| + | **Einstieg: | ||
| Bereits in Klasse 7 haben Sie die **Dualzahlen** (oder auch **Binärzahlen**) kennengelernt. Digitale Systeme arbeiten auf Basis des **Dualsystems**, | Bereits in Klasse 7 haben Sie die **Dualzahlen** (oder auch **Binärzahlen**) kennengelernt. Digitale Systeme arbeiten auf Basis des **Dualsystems**, | ||
| Genau wie das Dezimalsystem ist das Dualsystem ein Stellenwertsystem. Im Unterschied zum Dezimalsystem, | Genau wie das Dezimalsystem ist das Dualsystem ein Stellenwertsystem. Im Unterschied zum Dezimalsystem, | ||
| - | **Beispiel 1**\\ | + | **Beispiel 1** |
| - | Darstellung der Dezimalzahl | + | Darstellung der Dezimalzahl |
| - | ^$10^4=10000$^$10^3=1000$^$10^2=100$^$10^1=10$^$10^0=1$| | + | | $10^4=10000$ |
| - | |$0$|$3$|$0$|$4$|$5$| | + | | $0$ | $3$ |
| - | **Beispiel 2**\\ | + | **Beispiel 2** |
| - | Darstellung der Binärzahl | + | Darstellung der Binärzahl |
| - | ^$2^7=128$^$2^6=64$^$2^5=32$^$2^4=16$^$2^3=8$^$2^2=4$^$2^1=2$^$2^0=1$| | + | | $2^7=128$ |
| - | |$1$|$0$|$0$|$1$|$0$|$0$|$1$|$1$| | + | | $1$ |
| - | ==== Umwandeln von Dualzahlen in Dezimalzahlen | + | Allgemein kann man ein Stellenwertsystem wie folgt definieren: |
| + | |||
| + | <WRAP center round info 60%> | ||
| + | Ein **Stellenwertsystem** wird definiert durch die Basis R und die Menge seiner Ziffern d. Eine natürliche Zahl N wird durch folgende Summe dargestellt: | ||
| + | </ | ||
| + | |||
| + | Entsprechend der obigen Beispiele kann man die Zahlen nun wie folgt schreiben: | ||
| + | |||
| + | **Beispiel 1:** $(3045)_2=3 \cdot 10^3 + 0 \cdot 10^2 + 4 \cdot 10^1 + 5 \cdot 10^0$ | ||
| + | |||
| + | **Beispiel 2:** $(10010011)_2 | ||
| + | |||
| + | |||
| + | ==== Umrechnen zwischen Dezimal- | ||
| === Umwandeln von Dualzahlen in Dezimalzahlen === | === Umwandeln von Dualzahlen in Dezimalzahlen === | ||
| Zeile 25: | Zeile 39: | ||
| Um eine Binärzahl ins Dezimalsystem umzurechnen, | Um eine Binärzahl ins Dezimalsystem umzurechnen, | ||
| - | **Beispiel 3**\\ | + | **Beispiel 3** |
| (Zahl aus Beispiel 2) | (Zahl aus Beispiel 2) | ||
| Zeile 31: | Zeile 45: | ||
| === Umwandeln von Dezimalzahlen in Dualzahlen === | === Umwandeln von Dezimalzahlen in Dualzahlen === | ||
| - | |||
| - | **Beispiel 4** | ||
| Um eine Dezimalzahl ins Binärsystem umzurechnen, | Um eine Dezimalzahl ins Binärsystem umzurechnen, | ||
| Zeile 40: | Zeile 52: | ||
| Nun trägt man bei allen auftretenden Zweierpotenzen in die Stellentafel eine 1 ein, ansonsten trägt man Nullen ein: | Nun trägt man bei allen auftretenden Zweierpotenzen in die Stellentafel eine 1 ein, ansonsten trägt man Nullen ein: | ||
| - | ^$2^7=128$^$2^6=64$^$2^5=32$^$2^4=16$^$2^3=8$^$2^2=4$^$2^1=2$^$2^0=1$| | + | | $2^7=128$ |
| - | |$1$|$0$|$0$|$1$|$1$|$1$|$0$|$0$| | + | | $1$ |
| Nun kann man die Zahl einfach aus der Stellentafel ablesen, wobei man führende Nullen weglassen kann: | Nun kann man die Zahl einfach aus der Stellentafel ablesen, wobei man führende Nullen weglassen kann: | ||
| $\rightarrow (10011100)_2$ | $\rightarrow (10011100)_2$ | ||
| + | |||
| + | {{youtube> | ||
| + | |||
| + | \\ | ||
| + | \\ | ||
| **Beispiel 5** | **Beispiel 5** | ||
| Zeile 63: | Zeile 79: | ||
| \end{array} | \end{array} | ||
| $$ | $$ | ||
| + | Die Reste ergeben nun von unten nach oben gelesen die gesuchte Dualzahl: | ||
| - | ==== Rechnen mit Dualzahlen ==== | + | $\rightarrow (10011100)_2$ |
| - | === Addition von Dualzahlen | + | ===== Hexadezimalsystem ===== |
| - | Das schriftliche Addieren von Dualzahlen | + | Dualzahlen |
| + | |||
| + | Das Alphabet des Hexadezimalsystems besteht aus den Ziffern | ||
| + | $$\mathcal{A}=\lbrace\text{0, | ||
| + | , wobei A der Dezimalzahl 10, B der Dezimalzahl 11, C der Dezimalzahl 12, D der Dezimalzahl 13, E der Dezimalzahl 14 und F der Dezimalzahl 15 entspricht. | ||
| **Beispiel 6** | **Beispiel 6** | ||
| - | $6 + 5 = (110)_2 + (101)_2 = (1011)_2 =11$ | + | Damit ergibt sich die folgende Stellentafel: |
| - | $$ | + | | $16^2=256$ | $16^1=16$ | $16^0=1$ | |
| - | \begin{array}{lr} | + | | 2 | A | 4 | |
| - | &110\\ | + | |
| - | +&101\\ | + | Die dargestellte Zahl $(2A4)_{16}$ lässt sich nun wie folgt in eine Dezimalzahl umwandeln: |
| - | \hline | + | |
| - | &\underline {\underline {1011}} \\ | + | $$(2A4)_{16} = 2 \cdot 16^2 + A \cdot 16^1 + 4 \cdot 16^0 = 2 \cdot 256 + 10 \cdot 16 + 4 \cdot 1 = 676$$ |
| - | \end{array} | + | |
| - | $$ | + | |
| **Beispiel 7** | **Beispiel 7** | ||
| - | $27 + 34 = (11011)_2 + (100010)_2 = (111101)_2 =61$ | + | Um eine Dezimalzahl in eine Hexadezimalzahl umzuwandeln kann man analog zu den Dualzahlen vorgehen und eine fortgesetzte Division durch 16 durchführen. Dies soll am Beispiel der Zahl 741 durchgeführt werden: |
| $$ | $$ | ||
| - | \begin{array}{lr} | + | \begin{array}{rcll} |
| - | &11011\\ | + | 741 : 16& |
| - | +&100010\\ | + | 46 : 16& |
| - | \hline | + | 2 : 16& |
| - | &\underline | + | |
| \end{array} | \end{array} | ||
| $$ | $$ | ||
| + | Die entstehenden Reste von unten nach oben gelesen ergeben die gesuchte hexadezimale Zahl, wobei 14 der Ziffer E entspricht: | ||
| - | === Komplement === | + | $$(2E5)_{16}$$ |
| + | Video !!! | ||
| - | Eine spezielle Operation mit Dualzahlen, die von den Dezimalzahlen her nicht gebräuchlich sind. Dabei handelt es sich um die Bildung des Komplements | + | Während das Umwandeln dezimaler Zahlen in hexadezimale Zahlen recht schwierig sein kann, kann man duale Zahlen recht einfach in hexadezimale Zahlen umwandeln. Dazu unterteilt man die Zahl von rechts beginnend in Viererblöcke, |
| - | Die zu erreichende Zweierpotenz hängt von der **Wortbreite** (maximale Länge eines Befehls, der durch den Prozessor verarbeitet werden kann). Moderne CPUs können Befehle mit einer Breite von 64 Bit verarbeiten, | + | **Beispiel 8** |
| - | Bei einer Wortbreite von 8 Bit ist das Zweierkomplement die Zahl, die zur Ausgangszahl addiert werden muss, dass die Zweierpotenz | + | $$(1000111101)_2 = \underbrace{0010}_{2} \underbrace{0011}_{3} \underbrace{1101}_{13 = \text{D}} = (23\text{D})_{16}$$ |
| - | == Bildung der Komplemente == | + | Umgekehrt funktioniert |
| - | + | ||
| - | **Beispiel 8**\\ | + | |
| - | Gegeben ist die Dualzahl $(1001000)_2 = 80$. Um das Zweierkomplement bei einer Wortbreite von 8 Bit zu bilden, führen wird die folgenden drei Schritte durch: | + | |
| - | + | ||
| - | - Ergänzen der Zahl durch führende Nullen auf 8 Stellen: $$01001000$$ | + | |
| - | - Das Einerkomplement bildet man, indem man alle Stellen der Zahl umkehrt, d.h. aus einer 0 wird eine 1 und aus einer 1 wird eine 0: | + | |
| - | - Zum Einerkomplement addiert man nun noch die Zahl 1 um das Zweierkomplement zu erhalten: $$ | + | |
| - | \begin{array}{rlr} \text{Einerkomplement: | + | |
| - | + | ||
| - | === Subtraktion von Dualzahlen === | + | |
| **Beispiel 9** | **Beispiel 9** | ||
| - | Die schriftliche Subtraktion von Dualzahlen funktioniert analog zur Subtraktion von Dezimalzahlen: | + | $$(\text{F}39)_{16}= \underbrace{\text{F}}_{1111} \underbrace{3}_{0011} \underbrace{9}_{1001} = (111100111001)_2$$ |
| - | $$ | + | Deshalb lohnt es sich, beim Umwandeln von Hexadezimalzahlen in Dezimalzahlen und umgekehrt den Umweg über die Dualzahlen zu gehen. |
| - | \begin{array}{lr} | + | |
| - | & | + | |
| - | -& | + | |
| - | \hline | + | |
| - | & | + | |
| - | \end{array} | + | |
| - | $$ | + | |
| - | **Beispiel 10** | + | Damit sind die wichtigsten Zahlsysteme der technischen Informatik vorgestellt. In den nächsten Abschnitten wird nun gezeigt, wie man sie zur Codierung von Zahlen und Zeichen im Computer verwendet. |
| - | Man kann Dualzahlen aber auch subtrahieren, | + | {{youtube> |
| - | Einerkomplement | + | ===== Umwandeln |
| - | Zweierkomplement: | + | |
| - | $$ | + | Das Dualsystem und das Hexadezimalsystem spielen in der Informatik eine besondere Rolle. Man kann sich aber auch weitere Stellenwertsystem überlegen. Z.B hatten die Maya ein Zahlsystem auf der Basis 20. Für das Umwandeln von beliebigen Stellenwertsystemen ins Zehnersystem und umgekehrt kann man nun die bereits vom Dual- und Hexadezimalsystem bekannten Algorithmen verallgemeinern. |
| - | \begin{array}{lr} | + | |
| - | & | + | |
| - | +& | + | |
| - | \hline | + | |
| - | & | + | |
| - | \end{array} | + | |
| - | $$ | + | |
| - | Auch wenn die Wortbreite größer ist, würden solange führende Nullen entstehen, bis die entsprechende Zweierpotenz ($2^{32}$ bzw. $2^{64}$) erreicht ist. | + | **Beispiel 10** |
| - | ===== Hexadezimalsystem ===== | + | Die Zahl $(154)_6$ ist eine Zahl im 6er-System (Hexasystem) mit der Basis 6 und den Ziffern $\mathcal{A}=\lbrace\text{0, |
| - | Dualzahlen sind wesentlich länger als ihre dezimalen Entsprechungen. Deshalb benutzt man in der technischen Informatik noch das Hexadezimalsystem, | + | $$(154)_6 = 1 \cdot 6^2 + 5 \cdot 6^1 + 4 \cdot 6^0 = 70$$ |
| - | Das Alphabet des Hexadezimalsystems besteht aus den Ziffern\\ | + | Verallgemeinert wird dieser Algorithmus durch die Definition eines Stellenwertsystems (siehe oben): |
| - | $$\mathcal{A}=\lbrace\text{0,1, | + | <WRAP center round info 60%> |
| - | + | Gegeben sei ein **Stellenwertsystem** mit der Basis R und der Menge seiner Ziffern d. Eine natürliche Zahl N (im Dezimalsystem) wird durch folgende Summe dargestellt: | |
| - | , wobei A der Dezimalzahl 10, B der Dezimalzahl 11, C der Dezimalzahl 12, D der Dezimalzahl 13, E der Dezimalzahl 14 und F der Dezimalzahl 15 entspricht. | + | </ |
| **Beispiel 11** | **Beispiel 11** | ||
| - | Damit ergibt sich die folgende Stellentafel: | + | Schauen wir uns nun die Umkehrung an. Um die Zahl 6 ins 6er- (Hex-) System umzuwandeln, |
| - | + | dividieren wir die Zahl fortgesetzt durch die Basis 6. Die Reste von unten nach oben gelesen ergeben die gesuchte Zahl im 6er- (Hex-) System. | |
| - | ^$16^2=256$^$16^1=16$^$16^0=1$| | + | |
| - | |2|A|4| | + | |
| - | + | ||
| - | + | ||
| - | Die dargestellte | + | |
| - | + | ||
| - | $$(2A4)_{16} = 2 \cdot 16^2 + A \cdot 16^1 + 4 \cdot 16^0 = 2 \cdot 256 + 10 \cdot 16 + 4 \cdot 1 = 676$$ | + | |
| - | + | ||
| - | **Beispiel 12** | + | |
| - | + | ||
| - | Um eine Dezimalzahl in eine Hexadezimalzahl umzuwandeln kann man analog zu den Dualzahlen vorgehen und eine fortgesetzte Division durch 16 durchführen. Dies soll am Beispiel der Zahl 741 durchgeführt werden: | + | |
| $$ | $$ | ||
| \begin{array}{rcll} | \begin{array}{rcll} | ||
| - | 741 : 16&=&46 & \text{Rest } 5 \\ | + | 70 : 6&=&11 & \text{Rest } 4 \\ |
| - | 46 : 16&=&2 & \text{Rest } 14 \\ | + | 11 : 6&=&1 & \text{Rest } 5 \\ |
| - | 2 : 16& | + | 1 : 6& |
| \end{array} | \end{array} | ||
| $$ | $$ | ||
| - | Die entstehenden Reste von unten nach oben gelesen ergeben die gesuchte hexadezimale Zahl, wobei 14 der Ziffer E entspricht: | + | $\rightarrow$ $(154)_6$ |
| - | $$(2E5)_{16}$$ | + | <WRAP center round info 60%> |
| - | Während das Umwandeln dezimaler Zahlen in hexadezimale Zahlen recht schwierig sein kann, kann man duale Zahlen recht einfach in hexadezimale Zahlen umwandeln. Dazu unterteilt man die Zahl von rechts beginnend in Viererblöcke, | + | Gegeben sei ein **Stellenwertsystem** |
| - | $$(1000111101)_2 = \underbrace{0010}_{2} \underbrace{0011}_{3} \underbrace{1101}_{13 = \text{D}} = (23\text{D})_{16}$$ | + | 1. Dividiere N durch die Basis R |
| - | Umgekehrt funktioniert | + | 2. Nummerierter ListenpunktMache |
| + | |||
| + | 3. Nummerierter ListenpunktDie sich ergebenden Reste "von unten nach oben gelesen" | ||
| + | |||
| + | </ | ||
| - | $$(\text{F}39)_{16}= \underbrace{\text{F}}_{1111} \underbrace{3}_{0011} \underbrace{9}_{1001} = (111100111001)_2$$ | ||
| - | Deshalb lohnt es sich, beim Umwandeln von Hexadezimalzahlen in Dezimalzahlen und umgekehrt den Umweg über die Dualzahlen zu gehen. | ||
| - | Damit sind die wichtigsten Zahlsysteme der technischen Informatik vorgestellt. In den nächsten Abschnitten wird nun gezeigt, wie man sie zur Codierung von Zahlen und Zeichen im Computer verwendet. | ||
neuerlehrplan/gk/zahlsysteme.1763496241.txt.gz · Zuletzt geändert: von lutz
