400 likes | 601 Views
Binärdarstellung von Information. Klaus Becker 2012. Binärdarstellung von Information . Teil 1. Information und Daten. Problem - Fußballergebnisse. Zugereister: Wie hat eigentlich der 1. FC Kaiserslautern gespielt? Einheimischer: Das sieht man doch! 5 zu 2 in Köln.
E N D
Binärdarstellung von Information Klaus Becker 2012
Teil 1 Information und Daten
Problem - Fußballergebnisse Zugereister: Wie hat eigentlich der 1. FC Kaiserslautern gespielt? Einheimischer: Das sieht man doch! 5 zu 2 in Köln. Zugereister: Wo sieht man das? Einheimischer: Da oben im Hochhaus neben dem Betze wohnen zwei Witzbolde. Die teilen uns das Ergebnis immer gleich mit. Zugereister: Aha, praktisch! Dialog in Kaiserslautern Aufgabe 1 (siehe I:1.2.1.1) (a) Welche Information wird hier dargestellt, welche nicht? Wie wird die Information dargestellt? (b) Könnte man das von den beiden Bewohnern der oberen Stockwerke entwickelte Verfahren so ergänzen, dass weitere, bisher noch nicht dargestellte Information auch noch mit Fensterbeleuchtungen dargestellt wird? Was müsste ein Zugereister wissen, um die Fensterbeleuchtung des Hochhauses richtig deuten zu können und damit die gewünschte Information gewinnen zu können? Aufgabe 2 (siehe I:1.2.1.1) Neuerdings sind unzuverlässige Mieter im Hochhaus eingezogen. Die Hausverwaltung hat beschlossen, die Zimmer während der Fußballspiele des 1.FCK automatisiert zu beleuchten. Ein Computerprogramm steuert dabei die Beleuchtung der Zimmer. Das Programm wandelt hierzu Spielzustände in fünf 8er-Blöcke bestehend aus Nullen und Einsen um. So wird z.B. der Spielzustand "4:3" so dargestellt: 10100111 10100100 11100111 00100100 00100111 (a) Versuche mit Hilfe der Animation herauszufinden, wie die 0-1-Darstellung zu verstehen ist. (b) Wie werden die Spielzustände "0:2" bzw. "6:1" entsprechend dargestellt?
Live-Ticker ... 2:5 ... Information und Daten Information muss immer in geeigneter Weise dargestellt werden, um sie als Daten maschinell weiterverarbeiten zu können. Aus Daten gewinnt man erst dann Information, wenn sie gedeutet werden können. "Kaiserslautern gewinnt in Köln! Kaiserslautern erzielt 5 Treffer, Köln nur 2." Information Darstellen Deuten Daten 10100111 10100100 11100111 00100100 00100111
Binärdarstellung von Information "Die Heimmannschaft hat 2, die Gastmannschaft 5 Tore geschossen." Information 2:5 "problemnahe" Darstellung mit Zeichen "maschinennahe" Darstellung mit Bits 00000011 00011111 technische Realisierung mit einem Zweizustandssystem
Binärdarstellung von Information Technische Systeme, die man zur Darstellung von Information nutzt, verwenden sehr oft Systemgrößen, die nur zwei Zustände einnehmen können: an / aus; geladen / ungeladen; Strom fließt / Strom fließt nicht; magnetisiert / unmagnetisiert. Solche Zweizustandssysteme sind technisch meist einfacher herzustellen als Systeme mit mehr Zuständen. Auch in Computern werden solche Zweizustandssysteme zur Darstellung von Information genutzt. Codierung der Zustände mit 0 und 1: an: 1 aus: 0 1 Byte = 8 Bit 1 Kilobyte (KB) = 1000 Byte 1 Megabyte (MB) = 1000 KB 1 Gigabyte (GB) = 1000 MB 00000011 00011111 2 Byte Unter einem Bit versteht man eine Einheit zur Informationsdarstellung, die nur zwei Werte annehmen kann: 0 und 1. Unter einem Byte versteht man eine Einheit aus 8 Bits.
Übungen Aufgabe 1 Wie viele Stockwerke würde das Hochhaus in Kaiserslautern benötigen, um mit dem angedeuteten Verfahren einen kompletten Fußball-Spieltag darzustellen? Wie viele Bytes müsste man darstellen? Aufgabe 2 Könnte man analog auch die Ergebnisse von Handball- oder Basketballspielen darstellen? Wäre das geschickt? Wie viele Bytes würde man hier zur Darstellung eines kompletten Spieltags benötigen?
Teil 2 Binärdarstellung von Zahlen
Problem - Gefängnisausbruch Wicki sitzt mal wieder im Gefängnis seine/ihre Strafe ab. Kari - die Gefängniswärterin - beobachtet seit Tagen Ungewöhnliches im Gefängnishof: Jeden Abend werden nur einge der Lampen eingeschaltet. Welche, das entscheidet der Hausmeister. Irgendetwas ist hier faul! Kari hat einen Verdacht und alarmiert Palu, den Gefängnisleiter: "Der Hausmeister und Wicki kennen sich aus ihrer gemeinsamen Schulzeit. Ich vermute, dass der Hausmeister mit den Lampen Wicki den Tagescode am Haupttor mitteilen will." Palu versucht, Kari zu beruhigen: "Aber das geht doch gar nicht. Mit den 7 Lampen kann man doch unsere 100 verschiedenen Codezahlen 0-99 nicht anzeigen!" Aufgaben: Bearbeiten Sie die Aufgaben auf I:1.2.2.1.
Dualsystem [01010011]2 = 0*128 + 1*64 + 0*32 + 1*16 + 0*8 + 0*4 + 1*2 + 1*1 = 83 Das Zweiersystem bzw. Dualsystem ist ein Stellenwertsystem, bei dem Zahlen nur mit Hilfe der beiden Ziffern (0 und 1) gebildet werden. Die Stellenwerte der Ziffern werden dabei mit Hilfe der Potenzen der Basiszahl 2 festgelegt: 20 = 1, 21 = 2, 22 = 4, 23 = 8, ...
Problem - Gefängnisausbruch Wicki und der Hausmeister haben bemerkt, dass sie unter verschärfter Beobachtung stehen. Anstatt Lampen auszutauschen, erneuert der Hausmeister jetzt jeden Tag das Graffiti an der Gefängnismauer. Irgendetwas will er Wicki damit wohl mitteilen - wahrscheinlich den Zahlencode. Aufgaben: Bearbeiten Sie die Aufgaben auf I:1.2.2.3.
Hexadezimalsystem [002C]16 = 0*4096 + 0*256 + 2*16 + 12*1 = 0 + 0 + 32 + 12 = 44 Das Sechzehnersystem bzw. Hexadezimalsystem ist ein Stellenwertsystem zur Basiszahl 16, bei dem alle Zahlen mit Hilfe von 16 Zeichen 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F dargestellt werden.
Dual- und Hexadezimalsystem Da Bitmuster im Dualsystem sich nur schwer lesen lassen und auch viel Platz beanspruchen, verwendet man oft eine Kurzschreibweise, die auf dem Hexadezimalsystem basiert: [00000000]2 = [00]16 ... ... [00101100]2 = [2C]16 ... ... [11111111]2 = [FF]16 0 0 [00101100]2 = 0*128 + 0*64 + 1*32 + 0*16 + 1*8 + 1*4 + 0*2 + 0*1 = (0*8 + 0*4 + 1*2 + 0*1)*16 + (1*8 + 1*4 + 0*2 + 0*1)*1 = 2*16 + 12*1 = [2C]16 2 C F F
Übungen Aufgabe 1 Einheimischer: "Wir kennen uns doch. Sie erinnern sich sicherlich noch, neulich in Kaiserslautern ..." Zugereister: "Ja stimmt." Einheimischer: "Übrigens, hier in Trier spielt man Basketball." Zugereister: "Und, wie ist das letzte Spiel ausgegangen?" Einheimischer: "Sieht man doch, zu Hause knapp gegen Berlin gewonnen." Zugereister: "Tatsächlich, ich glaube 84 zu 81." Dialog in Trier Aufgaben: Bearbeiten Sie Aufgabe 1 auf I:1.2.2.5.
Übungen Aufgabe 2 Bei einer Binäruhr wird die Uhrzeit nicht der üblichen Dezimalschreibweise, sondern mit Dualzahlen dargestellt. Binäruhr Aufgabe 3 Bei einer Hexuhr wird die Uhrzeit mit Hexadezimalzahlen dargestellt. Aufgaben: Bearbeiten Sie Aufgabe 2 und 3 auf I:1.2.2.5. Hexuhr
Teil 3 Binärdarstellung von Zeichen
Problem - Gefängnisausbruch Wicki sitzt nach wie vor seine/ihre Strafe ab. Bis jetzt gab es keine Gelegenheit, aus dem Gefängnis auszubrechen. Die Lage hat sich auch noch verschlechtert. Das Haupttor ist jetzt durch ein neues System abgesichert. Das Tor öffnet sich nur, wenn man das richtige Geheimwort an einem Terminal eingibt. Kari - die Gefängniswärterin - befürchtet, dass auch das neue Sicherungssystem geknackt werden kann. Kari hat die Laternenbeleuchtung der letzten Tage mitprotokolliert: 01000001 01000010 01001001 01001110 01000100 01001001 01000101 01000110 01010010 01000101 01001001 ... Aufgaben: Bearbeiten Sie die Aufgaben auf I:1.2.3.1.
ASCII-Code @ 0100 0000 40 64 A 0100 0001 41 65 B 0100 0010 42 66 C 0100 0011 43 67 D 0100 0100 44 68 E 0100 0101 45 69 F 0100 0110 46 70 G 0100 0111 47 71 H 0100 1000 48 72 I 0100 1001 49 73 J 0100 1010 4a 74 K 0100 1011 4b 75 L 0100 1100 4c 76 M 0100 1101 4d 77 N 0100 1110 4e 78 O 0100 1111 4f 79 P 0101 0000 50 80 Q 0101 0001 51 81 R 0101 0010 52 82 S 0101 0011 53 83 T 0101 0100 54 84 U 0101 0101 55 85 V 0101 0110 56 86 W 0101 0111 57 87 X 0101 1000 58 88 Y 0101 1001 59 89 Z 0101 1010 5a 90 [ 0101 1011 5b 91 \ 0101 1100 5c 92 ] 0101 1101 5d 93 ^ 0101 1110 5e 94 - 0101 1111 5f 95 Quelle: http://de.selfhtml.org/inter/zeichensaetze.htm ASCII-Code (Abk. für American Standard Code for Information Interchange): Weit verbreiteter Code zur Darstellung von Ziffern, Buchstaben und Sonderzeichen.
Problem - Währungssymbole Hier siehst du den Wert eines US-Dollars in unterschiedlichen Währungen. 0000000000110001 0000000000100100 0000000000111010 0000000000001010 0000000000110000 0000000000101110 0000000000110111 0000000000110111 0010000010101100 0000000000001010 0000000000110111 0000000000111000 0000000000101110 0000000000110001 0000000000110000 0000000010100101 0000000000001010 0000000000110011 0000000000110001 0000000000101110 0000000000110001 0000000000111000 0000010000101111 0000000000001010 0000000000110001 0000000000110001 0000000000110100 0000000000111001 0000000000101110 0000000000110101 ... ... 0010000010101001 0000000000001010 0000000000110011 0000000000101110 0000000000110111 0000000000111000 0010000010101010 1$:0.77€78,10¥31.18Я1149.5₩3.78₪ Kennst du alle hier vorkommenden Währungssymbole? Wenn nicht, dann bearbeite die folgende Aufgabe. Aufgaben: Bearbeiten Sie die Aufgaben auf I:1.2.3.6. siehe auch: http://software.ellerton.net/txt2bin/
Unicode ا, ب, ت, ث, ج, ح, خ, د, ذ, ر, ز, س, ش, ص, ض, ط, ظ, ع, غ, ف, ق, ك, ل, م, ن, ه, و, ي xa<f(x)f(a)< 06232-656-0 Andere Sprachen, andere Alphabete! Jede Sprache benutzt einen bestimmten Zeichensatz, um die Wörter der Sprache darzustellen. Wechselt man, die Sprache, so muss man gegebenenfalls spezielle Sonderzeichen (wie ö, ø, œ) oder "andere" Alphabete benutzen (s. o.). Uniode: Internationaler Standard, mit dem alle bekannten Textzeichen in einem Zeichensatz zusammengefasst werden sollen.
Unicode 260E 0010 0110 0000 1110 Uniode: Internationaler Standard, mit dem alle bekannten Textzeichen in einem Zeichensatz zusammengefasst werden sollen. Ursprünglich war der Unicode als 2-Byte-Code konzipiert, so dass man insgesamt 65.536 Zeichen darstellen konnte. Inzwischen gibt es auch eine 4-Byte-Variante mit der Möglichkeit, die Codierung weiterer Zeichen zu standardisieren. UTF (Abkürzung für Unicode Transformation Format) ist ein Verfahren zur Abbildung von Unicode-Zeichen auf Byte-Folgen. UTF-8 benutzt 8-Bit-Einheiten (Bytes) zur Darstellung von Zeichen des Unicode-Zeichensatzes. Je nach Zeichen kann diese Darstellung 1, 2, 3 oder 4 Bytes umfassen. UTF-8 benutzt ein ausgefeiltes Verfahren, um Texte, die auf dem lateinischen Alphabet basieren, mit möglichst wenig Bytes darzustellen. Alle Zeichen des ASCII-Zeichensatzes werden wie in der erweiterten ASCII-Code-Tabelle festgelegt kodiert und benötigen daher nur ein Byte zur Darstellung. Umlaute und viele andere Sonderzeichen werden mit 2 Bytes kodiert.
Exkurs: Zeichensätze in HTML <?xml version="1.0" encoding="iso-8859-1" ?>...<head> <title>Text</title> </head> <body> <h1>Viele Grüße!</h1> </body> </html> HTML- Darstellung <?xml version="1.0" encoding="iso-8859-5" ?>...<head> <title>Text</title> </head> <body> <h1>Viele Grüße!</h1> </body> </html> Beachte:Die Darstellung im Browser hängt von verschiedenen Faktoren ab: encoding-Angabe im Quelltext; Codierung, die beim Abspeichern des Quelltextes benutzt wurde;Einstellungen im Browser. Ansicht im Browser
Exkurs: Zeichensätze in HTML Ansicht im Hex-Editor
Exkurs: Zeichensätze in HTML Ansicht im Hex-Editor
Exkurs: Zeichensätze in HTML ... 11111100 11011111 ... 56 69 65 6C 65 20 47 72 FC DF 65 21 iso-8859-1 iso-8859-5 ...11011111 ß...11111100 ü... ...11011111 ќ...11111100 п... Viele Grüße! Viele Grќпe!
Übungen: Experimente m. d. Hexeditor Aufgaben: siehe I:1.2.3.4
Übungen Paul: Weißt du auch, was die Perlen bedeuten?. Pia: Keine Ahnung. Sags mir doch. Paul: Nein, das muss du selbst rausfinden. Kleiner Tipp: ASCII-Code. Pia: Aha, sehr romantisch. Was hat Paul wohl mit der Perlenkette dargestellt? Tipp: ASCII-Code
Teil 4 Binärdarstellung von Bildern
Pixelgrafik Ausschnittsvergrößerung Eine Pixelgrafik (man sagt auch Rastergrafik) setzt sich aus sehr vielen Pixeln (das sind die einzelnen Bildelemente / Rasterzellen) zusammen.
Aufgabe Was wird hier dargestellt? Haben Sie schon eine Vermutung? Was bedeuten wohl die einzelnen Angaben im Quelltext? Kopieren sie den Quelltext und speichern sie ihn mit einem Texteditor (z. B. Notepad++) unter einem geeigneten Namen mit der Dateiendung "pbm" ab (z. B. bild1.pbm). Öffnen sie dann diese Datei mit einem Bildbetrachtungsprogramm (z. B. IrfanView). Erstellen sie analog den Quelltext für eine Schwarz-Weiß-Grafik. Kontrollieren sie auch, ob die Grafik ihren Vorstellungen entspricht.
pbm-Format pbm steht für portable bitmap. Die erste Zeile P1 gekennzeichnet eine bestimmte Variante des pbm-Formats, bei der sämtliche Bildinformationen im Klartext (ASCII-Code) hingeschrieben werden. Die Angaben 24 36 in der zweiten Zeile legen die genaue Aufteilung der Pixel in Spalten und Zeilen (hier 24 Spalten und 36 Zeilen) fest. Es folgen die einzelnen Bits zur Darstellung der Pixel.
Aufgabe Was bedeuten wohl hier die einzelnen Angaben im Quelltext? Wie könnte man den hellen Fleck auf der Nase des Esels retouchieren? Skizzieren sie ein Bild mit 16 Grauwerten der Größe 4 3. Erstellen sie analog den Quelltext zu diesem Bild. Teste sie, ob das Resultat der Vorab-Skizze entspricht.
pgm-Format pgm steht für portable graymap. Die erste Zeile P2 gekennzeichnet eine bestimmte Variante des pgm-Formats. Die Angaben 24 36 in der zweiten Zeile legen die genaue Aufteilung der Pixel in Spalten und Zeilen (hier 24 Spalten und 36 Zeilen) fest. Die Zahl 255 legt die Anzahl der Graustufen fest, die also hier mit Zahlen von 0 bis 255 beschrieben werden. Es folgen die einzelnen Bits zur Darstellung der Pixel.
Aufgaben Informieren sie sich zunächst über "additive Farbmischung", z. B. bei Wikipedia. Experimentieren sie anschließend mit einem Farbmischer. Fast jedes Bildbearbeitungsprogramm stellt einen solchen Farbmischer bereit. Sie können sich aber auch ein spezielles Programm hierzu besorgen (siehe I:1.2.4.4). Wie viele Farben kann man hier darstellen? Was bedeutet die Angabe #BCE12B? Analysieren sie den Quelltext zur dargestellten Grafik. Erstellen Sie analog eine eigene Grafik.
ppm-Format ppm steht für portable pixmap. Die erste Zeile P3 gekennzeichnet eine bestimmte Variante des ppm-Formats, bei der sämtliche Bildinformationen im Klartext (ASCII-Code) hingeschrieben werden. Die Angaben 3 4 in der zweiten Zeile legen die genaue Aufteilung der Pixel in Spalten und Zeilen (hier 3 Spalten und 4 Zeilen) fest. Die Zahl 255 legt die Anzahl der Farbstufen fest, die also hier mit Zahlen von 0 bis 255 beschrieben werden. Die folgenden Zahlentripel beschreiben die Farben der einzelnen Pixel. Diese sind hier - der besseren Lesbarkeit wegen - im Quelltext genauso angeordnet wie in der beabsichtigten Bilddarstellung.
Speicheraufwand Der Speicherbedarf lässt sich wie folgt abschätzen: Die Grafik setzt sich aus 24*36 = 864 Pixeln zusammen. Für jedes Pixel wird 1 Bit benötigt. Als beträgt der Speicherbedarf etwa 864 : 8 = 108 Byte. Der berechnete Wert stimmt nicht ganz, da auch die Angaben "P1" und "24 36" abgespeichert werden. Zur Überprüfung des berechneten Werts muss die Grafik erst in das binäre pbm-Format überführt werden. Dies kann man z. B. mit dem Bildbetrachtungsprogramm IrvanView erledigen. vgl. www.inf-schule.de
Aufgaben Schätzen sie analog den Speicherbedarf des Esel-Bildes ab. Die Anzahl der Pixel bei Farbfotos hängt von der benutzten Kamera und den getroffenen Einstellungen ab. Viele Digitalkameras bieten das folgende Pixelformat an: 2560 x 1920. D. h., das Bild besteht aus 1920 Pixelzeilen mit jeweils 2560 Pixeln pro Zeile. Schätzen sie ab, wie viele Bytes zur Darstellung eines Farbfotos benutzt werden, wenn man das ppm-Format benutzt. Überprüfen sie den errechneten Wert, indem sie das Farbfoto in das ppm-Format umwandeln und sich die Dateigröße anzeigen lassen.