:TI-BASIS: Zahlensysteme und Adressrechnen
|
Die Speicherzellen in gebräuchlichen Datenverarbeitungs-Systemen können zwei Zustände (Zeichen) annehmen:
Low oder High, 0 oder 1. Daher muss die zu verabeitende Information in diese binäre Darstellung umgewandelt, kodiert werden: |
||||||
| Klaus Beuth, Elektronik 4 Digitaltechnik: |
|
Eine Speicherzelle wird Bit genannt. Weil ein Bit nur zwei verschiedene Werte annehmen kann auch binäre Stelle, es gibt nur die Ziffern 0 und 1:
| Unter einem Bit versteht man eine binäre Stelle. Diese kann 0 oder 1 sein. |
|---|
Problem: Die Zahlen 0..3 sollen kodiert werden. Das sind 4 Werte, mit einer Speicherzelle ist das so nicht möglich - die kann ja nur 0 oder 1. Man braucht zwei Stellen (Bits), damit sind 4 Kombinationen möglich!
|
Auf der einen Seite haben wir nun 4 Kombinationen von 2 Bits auf der anderen die 4 Zahlen 0..3.
Welche Bit-Kombination entspricht nun einer Zahl? Die Zahlen müssen als Bit-Kombination kodiert werden. |
|
|
Es gibt 4! = 1*2*3*4 = 24 Möglichkeiten einer Kodierung!
Verteile 4 verschiedene Hüte auf 4 Haken [Permutation, Fakultät]. Angewendet werden jedoch nur einige wenige der vielen möglichen binären Kodes. Eine besonders einfache Zuordnung ist das Dualsystem. |
| Dualsystem (Stellenwertsystem) | Für Menschen: Oktalsystem -8er | Für Menschen: Hexadezimalsystem -16er (Sedezimalsystem) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Man ordnet jeder Stelle einer Zahl eine Wertigkeit zu, pro Stelle zwei verschiedene Ziffern: 0,1 | Da so viele Einsen für Menschen schlecht lesbar waren, gruppierte man bei der Darstellung 3 Dual-Stellen zu einer Oktal-Stelle zusammen, pro Stelle 8 verschiedene Ziffern: 0,1,2,3,4,5,6,7 | Das Oktalsystem hat sich als nicht besonders praktisch erwiesen, daher gruppiert man heute 4 Dual-Stellen zu einer Hex-Stelle zusammen, pro Stelle 16 verschiedene Ziffern: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Geschickterweise lassen sich je 4 Bit (16 Zustände) zu einer Hex-Stelle zusammenfassen, man bezeichnet 4 Bit daher als ein Nibble, oder Halbbyte. |
|
Problem: 011110112 -> ?10
|
Übungen
10102 -> 8+2 = 1010 |
Problem: 12310 -> 111 10112
123 : 2 = 61 Rest: 1 61 : 2 = 30 Rest: 1 30 : 2 = 15 Rest: 0 15 : 2 = 7 Rest: 1 7 : 2 = 3 Rest: 1 3 : 2 = 1 Rest: 1 1 : 2 = 0 Rest: 1 |
Übung: 7710 -> 100 11012
77 : 2 = 38 Rest: 1
38 : 2 = 19 Rest: 0
19 : 2 = 9 Rest: 1
9 : 2 = 4 Rest: 1
4 : 2 = 2 Rest: 0
2 : 2 = 1 Rest: 0
1 : 2 = 0 Rest: 1
|
Übung: 3510 -> 10 00112
35 : 2 = 17 Rest: 1
17 : 2 = 8 Rest: 1
8 : 2 = 4 Rest: 0
4 : 2 = 2 Rest: 0
2 : 2 = 1 Rest: 0
1 : 2 = 0 Rest: 1
|
|
Dual -> HexProblem: 1101 01112 -> D716Bilde von rechts nach links Vierergruppen und wandle immer 4 Bit in Hexziffer um: Dualzahl 1101 0111 Hexziffer D 7 |
Übungen 10102 -> A16 000100012 -> 1116 |
|||||||||||||||||||||||||||||||||||||||||||||||||||
Hex -> DualProblem: D716 -> 1101 01112 Wandle Hexziffern in Dualzahlen um: Hexzahl D 7 Dualzahl 1101 0111 |
Übungen 1216 -> 0001 00102 AFFE16 -> 1010 1111 1111 11102 |
||||||||||||||||||||||||||||||||||||||||||||||||||||
Hex -> DezimalProblem: D716 -> 21510Multipliziere entsprechend der Wertigkeit: (D=13) 13 * 161 + 7 * 160 = 208 + 7 = 215 |
Übungen 1216 -> 16+2 = 1810 AA16 -> 160 + 10 = 17010 |
Problem: 12310 -> 7B16
123 : 16 = 7 Rest: 11 -> B 7 : 16 = 0 Rest: 7 -> 7 |
Übung: 7710 -> 4D16
77 : 16 = 4 Rest: 13 -> D
4 : 16 = 0 Rest: 4 -> 4
|
Übung: 3510 -> 2316
35 : 16 = 2 Rest: 3 -> 3
2 : 16 = 0 Rest: 2 -> 2
|
Weitere Umrechnungen:
Das Informatiker-Kilo wiegt 1024. Um dies zu kennzeichen werden neuerdings die Abkürzugen um ein 'i' erweitert: KiBiByte für KiloBinaryByte oder kurz KiB.
| Beispiel Klassisch | Größe | Abkürzung neu | Beispiele |
|---|---|---|---|
| Kilo 1 KB | 210 = 1024 | Ki | 1 KiB für 1024 Byte |
| Mega 1 MB | 220 | Mi | 1 MiB für 10242 Byte |
| Giga 1 GB | 230 | Gi | 1 GiB für 10243 Byte |
| Terra 1 TB | 240 | Ti | 1 TiB für 10244 Byte |
Links zur Vertiefung: http://de.wikipedia.org/wiki/Kibibyte http://de.wikipedia.org/wiki/Datenmenge
| Adressen n | Rechnung | Leitungen | Adressbereich Binär | Adressbereich HEX |
|---|---|---|---|---|
| 2 | log2 2 = | 1 | 0 .. 1 | 0 .. 1 |
| 16 | log2 16 = | 4 | 0 .. 1111 | 0 .. F |
| 256 | log2 256 = | 8 | 0 .. 1111 1111 | 0 .. FF |
| 1k = 1.024 | log2 1024 = | 10 | 0 .. 11 1111 1111 | 0 .. 3 FF |
| 64k = 65536 | log2 65536 = | 16 | 0 .. 1111 1111 1111 1111 | 0 .. FF FF |
| 1M = 1.048.576 | log2 1M = | 20 | 0 .. 20 Einsen | 0 .. F FF FF |
| 1G = 1.073.741.824 | log2 1G = | 30 | 0 .. 30 Einsen | 0 .. 3F FF FF FF |
Gegeben ist ein byteweise organisierter Speicher mit 1 MiB. Der Speicher soll in 1 KiB grossen Blöcken (Seiten) verwaltet werden.
| 1 MiB Speicher 20 Leitungen | |
|---|---|
| 1 Ki Seiten 10 Leitungen | 1 KiB 10 Leitungen |
Gegeben ist eine 2 GiB Festplatte, bestehend aus einer durchlaufenden Anzahl von Sektoren der Größe 512 Byte.