2.1.5 Digitale Repräsentation von Informationen
Was haben Ihre Musikvideos und Urlaubsbilder mit GIS gemeinsam?
Der zentrale Vorteil digitaler Medien ist neben der (die entsprechenden technischen Geräte vorausgesetzt) beliebigen Verfügbarkeit (einschließlich Übermittlung, Kopierbarkeit, etc.) die Beliebigkeit der repräsentierten Inhalte. Das heißt, für die technische Repräsentation ist es gleichgültig, ob Sie eine Sonate von Bach, ein Urlaubsbild oder doch lieber eine Anfahrtsskizze für den Kinobesuch nutzen wollen. Ein Nutzer wird nach Möglichkeit nicht mit der Frage, wie diese Informationen oder Daten vorliegen, konfrontiert. Neben der Attraktivität der Inhalte ist der Siegeszug der digitalen Repräsentation von Wirklichkeit vor allem durch diese Vielseitigkeit erklärbar.
Trotz der Bemühungen um einen intuitiven Umgang mit digitalen Medien ist es für GIS-Anwender sinnvoll ein wenig hinter die digitalen Kulissen zu schauen. Bei diesem Blick steht der Term digital im Zentrum des Interesses. Er stammt von lat. digitus (Finger, Zeiger) und korrespondiert zunächst mit unserem 10 Finger Zählsystem (Dezimalsystem). Nun arbeiten Computer aber nicht mit einem dezimalen (0-9) sondern mit einem binären Zählsystem, das lediglich die Zustände 0 und 1 kennt. Streng genommen ist also der Term digital für computergerecht kodierte Informartion nicht ganz korrekt. Dennoch wird digital und binär synonym verwendet und insbesondere im Zusammenhang mit Geoinformatik ist damit immer das binäre Zählsystem gemeint.
Jenseits dieser absolut grundsätzlichen binären Kodierung digitaler Medien, auf die später noch einzugehen ist, werden seit Beginn der Informatik die unterschiedlichsten Standards (Formate) entwickelt, um analoge oder digital aufbereitete Informationen computergerecht möglichst einfach verfügbar zu machen. Diese Formate (häufig Dateiformate genannt) ermöglichen den jeweils durch dieses Format definierten Zugriff auf die im Medium enthaltenen Daten, meist in Zusammenhang mit spezifischer Software. Für Texte gibt es beispielsweise unterschiedliche Formate der Textverarbeitungsprogramme bzw. unterschiedliche Kodierungsvorschriften für die Zeichen (ASCII, DOC, DOCX, ODT...). Für Bilder sind viele Formate verfügbar (GIF, TIFF, JPEG ...). Für Musik werden unterschiedlichste Formate (MIDI, mp3, ogg vorbis...) eingesetzt und Filme werden völlig unterschiedlich kodiert (MPEG, AVI...). Allen diesen Formaten liegt ein Ziel zugrunde: Unter Berücksichtigung die Informationen (Inhalte) binär (0,1) die abzubildende Wirklichkeit repräsentieren zu müssen. Das heißt eine geeignete, standardisierte Übersetzungsvorschrift zur flexiblen Speicherung und Bearbeitung im binären Zählsystem zu bieten. Üblich ist, dass neben der softwarespezifischen Eigenheit mit jedem Dateiformat jeweils spezielle Vorteile und Nachteile verbunden sind.
Wie bereits erwähnt wurde, können Prozessoren (CPU) Daten und Befehle nur in Binär- oder 0/1-Darstellung verarbeiten. Da digitale Daten maschinenlesbar kodiert/dekodiert werden, müssen konstruierbare und dekonstruierbare Übersetzungsvorschriften für diesen Vorgang existieren. Die Grundlage für das Binärsystem und die binäre Arithmetik wurde von Gottfried Wilhelm Leibnitz (1646 – 1716) gelegt. Die Verknüpfung der binären Arithmetik mit der binären Logik wurde von George Boole (1815 – 1864) auf der Grundlage der seit dem Altertum bekannten formalen Logik realisiert. Schließlich konzipierte Claude Elwood Shannon (1916 – 2001) seinerseits wiederum auf Grundlage der Boole'schen Algebra die maschinengerechte Umsetzung mit mechanischen Schaltern bzw. der elektrischen Variante, den Schaltrelais.
Um die Frage "Wie funktioniert das binäre Repräsetationssystem im Computer?" beantworten zu können müssen wir uns zunächst mit der binären Arithmetik beschäftigen, die aufgrund ihrer engen Analogie zur elektrischen Schaltung leicht verständlich ist.
Betrachten wir einen einfachen elektrischen Stromkreis mit Glühbirnen als Verbraucher, so fließt der Strom vom Pluspol zum Minuspol und versorgt den Leuchtkörper mit Strom – als Resultat leuchtet die Lampe. Dieser Zustand kann z.B. mit einer 1 repräsentiert werden. Ist der Stromkreis nicht geschlossen und der Leuchtkörper leuchtet nicht, kann dies mit einer 0 repräsentiert werden (vgl. Abb)
Abbildung 15: Serienschaltung ohne Schalter als Zeichnung (links) und Schaltbild (rechts). Quelle: J. Berens Klasse 4c 2007
Da uns nicht die Leuchtkraft einer Leuchtquelle interessiert, abstrahieren wir diese Vorstellung auf die beiden Grundformen der Schaltung (vgl. Abb):
- Schalter offen = binärer Rechenwert 0; binärer Logikwert = FALSCH
- Schalter geschlossen = binärer Rechenwert 1; binärer Logikwert = WAHR
Abbildung 16: Schaltbild für Schalter offen, rot = Spannung, blau = ohne Spannung (GIS.MA 2009)Abbildung 17: Schaltbild für Schalter geschlossen rot = Spannung (GIS.MA 2009)
Da der anliegende Strom als Eingangssignal und der ausgehende Strom als Ausgangssignal definiert werden kann, ist der unterschiedliche Zustand des Ausgangssignals (0,1) eine Funktion des Eingangssignals. Diese Funktion bzw. dieser Zustand wird ein Bit (binary digit) genannt. Mit Hilfe dieser Repräsentation lassen sich, eine geeignete Kodierungsvorschrift vorausgesetzt, alle denkbaren Informationen ver- und entschlüsseln und auch speichern.
Die flexible Bearbeitung auch der komplexesten Funktionen basiert auf drei Grundschaltungen (UND, ODER, NICHT). Diese können in beliebigen Kombinationen alle notwendigen Funktionen zur automatisierten Verarbeitung von Daten kodieren (auf die zugrunde liegende Informationstheorie bzw. Schaltlogik und formale Logik wird intensiver in Lektion 5 eingegangen). Da ein Bit nur eine Zustandsänderung abbilden kann, wird für die angewandte Datenverarbeitung mit Computern die Speicher- oder Datenmenge (in Bits), die notwendig ist um ein beliebiges Zeichen aus dem Basis-Zeichensatz abzubilden, zusammengefasst. Diese Zusammenfassung von Bits wird mit dem Kunstwort Byte benannt. Aktuell wird unter Byte die geordnete oder nicht-geordnete Zusammenfassung von 8 Bit verstanden. Damit können 27 = 256 unterschiedliche Zustände (oder Zeichen) kodiert werden.
Potenz von 2 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 |
Bit Nummer | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
8 Bit Kodierung | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Vor dem historisch bedingten Hintergrund knapper und teurer Speicher wurde diese Kodierung verwendet, um mit Hilfe einer sogenannten Nachschlagtabelle (look up table) für alphanumerische Zeichen und Informationen, der sogenannte American Standard Code for Information Interchange (ASCII) 256 Ziffern, Buchstaben, Grafik-Zeichen und Steuerbefehle einheitlich zu kodieren. Ausser der binären Kodierung findet auch die Darstellungsart von Daten in der hexadezimalen Schreibweise Verwendung. In der nachfolgenden Tabelle finden Sie daher beispielhaft in der ersten Spalte die Zeichenkodierung und in den folgenden Spalten drei Repäsentationssysteme (dezimal, binär, hexadezimal) dargestellt. Vorteil der hexdezimalen Kodierung ist die Tatsache, dass mit 2 Zeichen 256 Zustände kodiert werden können. Sie finden daher in der "Computer-Welt" relativ häufig eine hexadezimale Darstellung binärer Daten.
Zeichen | Dezimal | Binär | Hexadezimal |
CR (carriage return) | 13 | 00001101 | 0D |
0 | 48 | 00110000 | 30 |
1 | 49 | 00110001 | 31 |
A | 65 | 01000001 | 41 |
a | 97 | 01100001 | 61 |
Datentypen
Es ist bekannt, dass im Alltag Computer extrem flexibel eingesetzt werden. Die binäre Kodierung wird im Hinblick auf diese Anforderung üblicherweise nicht nur zu Bytes zusammengefasst sondern mit spezifischen Datentypen abgebildet. Die Wirkungsweise lässt sich an einem Beispiel verdeutlichen.
Betrachtet man einen Text, so ist dieser eigentlich eine Gruppe verketteter, einzelner Zeichen. Praktisch werden mehrere Bytes (1Byte=1ASCII-Zeichen) zu dieser Zeichenkette zusammengefügt. Der Satz: „Marburg ist eine beliebte Kleinstadt“ benötigt bei einer Kodierung mit Hilfe der ASCII-Tabelle 36 Bytes Speicherplatz. Die Zahl „127“ benötigt auf gleiche Weise kodiert drei Byte Speicherplatz. Da wir zuvor gelernt haben, dass sich die Zahl 127 binär mit einem Byte (10000001) darstellen lässt, sind für die Darstellung und Verarbeitung von Zahlen ASCII-kodierte Zeichenketten offensichtlich nicht sinnvoll. Es scheint daher angebracht zu sein, weitere Typen von Nachschlagtabellen zur Verfügung zu haben
Diese Typisierung von Daten (oder einfach Datentypen) ist schon alleine in Bezug auf die optimale Nutzung von Speicherplatz sinnvoll. Es gibt jedoch noch eine Reihe weiterer Gründe für Datentypen. In der Regel liegen die Werte der Merkmale von Geoobjekten in unterschiedlichen Maßskalen vor (metrisch, ordinal, nominal). Nun kann man mit metrischen Werten rechnen, mit ordinalen Werten jedoch nicht. Datentypen sind folglich auch sinnvoll, um Operationen auf den bzw. mit den Speicherinhalten einfacher zu gestalten.
In der Informatik bzw. Geoinformatik ist der Datentyp daher eine formale Beschreibung des Wertebereiches der Datenobjekte und der darauf definierten möglichen Operationen (Funktionen). Sogenannte formale Datentypen (=unabhängig von einer Programmiersprache oder Software wie GIS) werden als abstrakte Datentypen bezeichnet. Hingegen werden die in einer Programmiersprache (oder GI-System) definierten Datentypen als reale Datentypen bezeichnet. Die wichtigsten in der Geoinformatik vorkommenden Datentypen sind mit ihrem gebräuchlichen Fachterm und ihrer deutschen Übersetzung in der nachfolgenden Tabelle zusammengestellt:
Datentyp | Wertebereich | Speichereinheit | Dezimalsystem |
INTEGER (Ganzzahl) | Teilmenge der ganzen Zahlen | 2 Byte | -32.768 bis +32.767 |
FLOAT/REAL (Fließkomma-Zahl) | Teilmenge der reellen Zahlen | 4 Byte |
-3.4E-38 bis -1.2E38 für negative Zahlen 3.4E-38 bis 1.2E38 für positive Zahlen |
BOOLEAN (Logik) | Wertebereich: {wahr, falsch | 1 Bit | 0,1 |
STRING/CHARACTER (Zeichen) | Wertebereich: alphanumerische Zeichentabelle (ASCII, UTF8, etc.) | 1 Byte | Jeweilige Zeichentabelle |
Daten und Datentypen und Datenformate mal anders
Die verschiedenen binären Repräsentationen in Form von Dateiformaten sind Ihnen aus ihrem "digitalen Alltag" bekannt. Um die Zusammenhänge etwas zu verdeutlichen, durchsuchen Sie bitte die Festplatte des gerade genutzten PCs oder das Internet nach Dateien mit den folgenden Dateiformaten:
- DOC/DOCX (Microsoft Word Dateiformat)
- MP3 (MPEG-1 Audio Layer 3, Dateiformat zur verlustbehafteten Kompression von Audiodaten)
- EXE (ausführbares Programm unter Windows/DOS Betriebssystemen)
- JPG/JPEG (Rasterbildformat vor allem von Digitalkameras)
Öffnen Sie diese Dateien nacheinander aber NICHT mit einem Doppelklick, sondern z.B. mit dem PSPAD EDITOR
über den Menüpunkt: Dateien im HEX Editor..
.
HEXadezimal-Editoren sind Softwarewerkzeuge, die in der Lage sind beliebige
Dateien zu öffnen. Sie stellen den binären Inhalt als Hexadzimalzeichen und
häufig auch als ASCII-Zeihcen dar. Näheres zu HEX-Editoren finden sie z.B. unter
http://de.wikipedia.org/wiki/Hex-Editor
Denken Sie nach...
- Warum, glauben Sie, werden Sie in dieser Vorlesung mit digitalen Formaten und Repräsentationen behelligt?
- Versuchen Sie den Vorgang des Doppelklicks aus der zuvor gestellten Aufgabe anhand des Sender- und Empfängermodells zu interpretieren.
- Versuchen Sie diese Interpretation auch für das Öffnen der Dateien mit dem HEX-Editor vorzunehmen.
- Warum denken Sie, kann sowohl der HEX Editor als auch der Media Player die Musikdatei öffnen aber z.B. Staroffice nicht?
- Navigieren Sie zur folgenden Webadresse: http://www.lastfm.de/music/Johann+Sebastian+Bach/_/Toccata+and+Fugue+in+D+Minor. Versuchen Sie sich zu vergegenwärtigen was in diesem Zusammenhang die "Echtwelt" ist (oder war), und wie die Ihnen vorliegende digitale Repräsentation in diesen Zusammenhang einzuordnen ist.
- Welche weiteren Repräsentation von Bachs „Toccata und Fuge in D Minor“ können Sie sich vorstellen?