Begleitmaterial zum Unterricht M114 «Codesysteme»

Binäre-, Alphanumerische- und Barcodes

Im vorangegangenen Kapitel haben wir gelernt, dass die digitale Recheneinheit (CPU) und weitere Komponenten (Memory, HD etc.) eines PCs Daten nur in binärer Form kennen und auch bearbeiten/speichern können und zur Ein- und Ausgabe in vielen Fällen sogar auf eine vorherige Datenumwandlung (A/D oder D/A) angewiesen sind. Dabei wurden die Begriffe Bit und Byte und die Zahlensysteme Binär und Hexadezimal eingeführt.

Nun möchten wir uns damit befassen, wie Daten zwischen den elektronischen Komponenten ausgetauscht werden. Das heisst, welche Abmachungen (Codes) getroffen werden müssen, damit die Komponenten sich untereinander auch verstehen können.

1.0 Theorie in einer Experten-Rallye (auch bekannt als Gruppen-Puzzle) erarbeiten

Der Ablauf der Experten-Rallye:

  • Es werden sogenannte Stammgruppen gebildet. (Anzahl = Klassengrösse / 4)
  • Jede einzelne Person einer Stammgruppe nimmt sich einem der vier folgenden Themen an (ca. 30 Min. Studium der Theorie) und wird zum Spezialisten.
  • Die Stammgruppen entsenden nun ihre Spezialisten in die jeweilige Expertenrunde, wo das Fachgebiet besprochen, Verständnisfragen geklärt und Vorgehensweisen erörtert werden. Es wird eine kurze Präsentation vorbereitet. Der Spezialist hat sich nun zum Experten gewandelt.
  • Nun kehren die Experten in ihre Stammgruppen zurück, wo sie ihr Expertenwissen der restlichen Gruppe vortragen.
  • Es sollte anschliessend jeder Lernende in der Lage sein, die Aufgaben auf dieser Seite selbständig zu lösen.

Themen:

  1. Eigenschaften von numerischen Codes und Leitungscodes (Beispiele: BinaryCodedDecimal BCD, Aiken, 2-aus-5, Graycode, Manchester mit ↑=1 ,↓=0)
  2. Alphanumerische Codes (AmericanStandardCodeForInformationInterchange ASCII und sein Nachfolger, der Unicode UnicodeTransformationFormat UTF-8)
  3. A:Binärcode mit negativen Zahlen dank 2-er Komplement | B: Der Hammingcode als selbstkorrigierender Code
  4. Barcodes: Der eindimensionale EuropeanArticleNumber EAN-8 und der zweidimensionale QuickResponse QR

Bitte beachten: Erstellen sie in ihrer Expertengruppe ein Factsheet im Umfang von ±2 A4-Seiten, in dem sie alles Wichtige zusammenfassen und ausreichend illustrieren. Dieses Dokument wird vor Verlassen der Expertenrunde dem Dozenten vorgelegt bzw. sein Einverständnis für dessen Veröffentlichung eingeholt und danach in ausreichender Anzahl kopiert. Erst danach kann die Expertengruppe in Richtung Stammgruppe verlassen werden.

1.1 Aufgaben zu numerischen Codes

Gegeben sind die fünf folgenden numerischen Codes:

Füllen sie zu diesem Bild die folgende Tabelle aus:

1.2 Aufgabe: Manchestercode lesen

Welche 11 Bits (Data) werden hier übertragen?

1.3 Aufgabe: Hammingcode prüfen

Sie erhalten folgenden 11-bittigen Hammingcode, der ein ASCII-Zeichen repräsentieren soll: «1 1 1 0 0 1 0 1 1 0 0». Welcher Buchstabe wurde ihnen übermittelt? (Maximale Fehleranzahl ist ≤ 1)

1.4 Aufgabe: EAN-8-Barcode erstellen

Sie erhalten folgende 7-stellige Zahl: «3 1 7 7 2 4 6». Erstellen Sie einen EAN-8-Barcode. Verwenden Sie das vorgegebene Raster und vergessen Sie die Prüfziffer nicht.

1.5 Aufgaben zum alphanumerischen Code «Unicode»

Sie benötigen für diese Aufgaben Musterdateien, die sie hier herunterladen können: UnicodeSamples.zip

  1. Untersuchen sie mit einem Hexeditor und einem Texteditor ihrer Wahl die Dateien:
    Sample1_ascii (Die ASCII-Datei enthält vier Character aus dem 7-bit ASCII-Bereich)
    Sample2_utf8 (Die UTF8-Datei enthält vier Character aus dem 7-bit ASCII-Bereich)
    Sample3_ascii (Die ASCII-Datei enthält vier 8-Bit ANSI-ASCII-Zeichen, u.a. ein «ü» gemäss ISO-Standard 8859-2)
    Sample4_utf8 (Die UTF8-Datei enthält ebenfalls vier Character, u.a. das Character «ü» mit Unicode «U+00FC»)
    Sample5_utf8 (Die UTF8-Datei enthält 4 chinesische Zeichen)
  2. Was stellen sie fest bezüglich der Länge und Codierung der UTF-8 Zeichen gegenüber den ASCII-Zeichen?
  3. Können sie den Text in Sample5_utf8 entschlüsseln?
  4. Erstellen sie ein Word-File mit Schriftzeichen, die ihre PC-Tastatur nicht zur Verfügung stellt. Z.B. das Euro-Zeichen. Benutzen sie die im Theorieteil vorgestellten UTF-8 Eingabemethoden

1.6 Zusatzaufgabe: Header einer MP3-Audiodatei mit einem Hexeditor analysieren

Bei dieser Aufgabe werden wir uns mit einem Dateiformat, nämlich dem «MP3» oder eigentlich «MPEG-1 Audio Layer III» bzw. «MPEG-2 Audio Layer III» (was alles dasselbe bedeutet) beschäftigen.  Sie sollen dabei mit einem Hex-Editor den Dateiinhalt untersuchen. Sie erhalten das zu analysierende MP3-File hier: Hula-Hoop.mp3. (Übrigens ein Soundschnipsel aus dem Animationsfilm Madagascar-2

Analysieren sie das MP3-File mit einem Hex-Editor ihrer Wahl. (Hinweise zu Hex-Editoren liefert die englischsprachige Wikipedia unter "Comparison of hex editors"). Beachten sie dabei folgendes: Ein MP3-File besteht abwechselnd aus MP3-Headern und MP3-Daten. Ein MP3-File kann von einem ID3-Tag umschlossen sein. Ebenfalls kann das File ganz am Anfang XMP-Metadaten besitzen!. Der MP3-Header ist aber eindeutig mit einleitend 11+1 gesetzten Bits gekennzeichnet, also FFF.
(Das MP3-Fileformat wird sowohl auf der deutschen, wie auch der englischen Wikipedia exakt beschrieben)

  • Spielen sie das Audiofile ab
  • Welche Zusatzinformationen können sie mit dem Hex-Editor aus den ID3-Tag's herauslesen?
  • Analysieren sie den MP3-Header und nennen sie die darin gespeicherten Audioparameter (Codec, Samplingrate, Sampling-Frequen etc.)

Und hier noch ein Hinweis, wo sie im Hexdump suchen sollten:

Musterlösungen (Passwortgeschützt)