MINT lernen

Textaufgaben: ASCII & Unicode

Eine Textdatei Byte für Byte entziffern und prüfen, was mit internationalen Namen in Latin-1 und UTF-8 passiert.

Dein Fortschritt:
0 / 0 Aufgaben
1

Die geheimnisvolle Notiz

AFB I–II

Im Ordner der Informatik-AG liegt eine winzige Datei notiz.txt, die als reiner ASCII-Text gespeichert wurde. Ein Hex-Editor zeigt ihren vollständigen Inhalt als sieben Bytes. Im normalen Texteditor sieht man dagegen nur sechs Zeichen, verteilt auf zwei Zeilen.

Der Inhalt im Hex-Editor
notiz.txt · 7 Byte4C06F17322130A44754F6
Die kleinen Zahlen darunter geben die Position des Bytes in der Datei an.
  1. Ordnen Sie jedem der sieben Bytes mithilfe der ASCII-Codebereiche sein Zeichen zu und geben Sie den Text an.
  2. Erläutern Sie, warum die Datei sieben Byte belegt, obwohl im Editor nur sechs Zeichen zu sehen sind.

Hinweise

Hinweis zu Aufgabe a)
Rechne jedes Byte erst ins Dezimalsystem um. Großbuchstaben beginnen bei 65 (A), Kleinbuchstaben bei 97 (a); zähle von dort aus weiter.
Hinweis zu Aufgabe b)
Schau dir das fünfte Byte genau an: In welchem Codebereich liegt es?

Erwartungshorizont

Erwartungshorizont zu Aufgabe a)

4C = 76 → L; 6F = 111 → o; 73 = 115 → s; 21 = 33 → !; 0A = 10 → Zeilenumbruch; 47 = 71 → G; 4F = 79 → O.

Der Text lautet „Los!“, in der nächsten Zeile „GO“.

Erwartungshorizont zu Aufgabe b)

Das Byte 0A = 10 liegt im Bereich 0–31 der Steuerzeichen. Code 10 stellt nichts dar, sondern beginnt eine neue Zeile.

Trotzdem wird es wie jedes ASCII-Zeichen in einem ganzen Byte gespeichert (7 Bit Inhalt, 1 Byte Platz). Sechs sichtbare Zeichen + ein Steuerzeichen = 7 Byte.

2

Die Teilnehmerliste des Schüleraustauschs

AFB II–III

Die Schule organisiert einen Austausch mit Partnerschulen in Polen und Frankreich. Die alte Verwaltungssoftware speichert Namen in Latin-1, also mit genau einem Byte pro Zeichen. Latin-1 enthält viele westeuropäische Sonderzeichen, aber keine polnischen Buchstaben wie Ł.

In UTF-8 belegen ASCII-Zeichen (auch das Leerzeichen) 1 Byte, alle übrigen Buchstaben dieser Liste jeweils 2 Byte. Die Schulleitung überlegt, die Verwaltung auf UTF-8 umzustellen, obwohl die Dateien dadurch etwas größer werden.

Auszug aus der Anmeldeliste
Austausch 2026/271.Zoë Müller2.Łukasz Wójcik3.Léa Dubois4.Ben Groß Latin-1 enthält: ä ö ü ß é ë ó … aber nicht: Ł ł ę ś …
Namen in der Schreibweise der Anmeldeformulare.
  1. Bestimmen Sie für jeden der vier Namen die Anzahl der Byte in UTF-8.
  2. Untersuchen Sie, welche Namen die alte Software korrekt speichern kann und was geschieht, wenn eine UTF-8-Datei mit diesen Namen von der alten Software als Latin-1 gelesen wird.
  3. Diskutieren Sie, ob sich die Umstellung auf UTF-8 lohnt.

Hinweise

Hinweis zu Aufgabe a)
Zähle zuerst alle Zeichen einschließlich Leerzeichen und addiere dann für jedes Nicht-ASCII-Zeichen ein weiteres Byte.
Hinweis zu Aufgabe b)
Latin-1 liest jedes Byte als ein eigenes Zeichen. Wie viele Zeichen sieht es also bei einem ü, das in UTF-8 aus zwei Bytes besteht?
Hinweis zu Aufgabe c)
Mögliche Kriterien: Korrektheit der Namen, Speicherbedarf, Verträglichkeit mit alten Dateien, Zukunftssicherheit, Aufwand der Umstellung.

Erwartungshorizont

Erwartungshorizont zu Aufgabe a)

Zoë Müller: 10 Zeichen, davon ë und ü doppelt → 12 Byte.

Łukasz Wójcik: 13 Zeichen, davon Ł und ó doppelt → 15 Byte.

Léa Dubois: 10 Zeichen, davon é doppelt → 11 Byte.

Ben Groß: 8 Zeichen, davon ß doppelt → 9 Byte.

Erwartungshorizont zu Aufgabe b)

Korrekt speicherbar in Latin-1: Zoë Müller, Léa Dubois, Ben Groß. „Łukasz Wójcik“ nicht – für Ł gibt es keinen Platz in der Tabelle, es würde durch ein Ersatzzeichen wie „?“ ersetzt.

Liest die alte Software eine UTF-8-Datei als Latin-1, wird jedes Zwei-Byte-Zeichen als zwei einzelne Zeichen angezeigt: Aus „Müller“ wird z. B. „Müller“. Es entsteht Zeichensalat (Mojibake); ASCII-Zeichen bleiben dagegen korrekt, weil sie in beiden Codierungen gleich sind.

Erwartungshorizont zu Aufgabe c)

Pro UTF-8: alle Namen korrekt, weltweit üblicher Standard, reine ASCII-Dateien bleiben gültig, künftig jede Schrift möglich.

Contra: Dateien werden etwas größer (hier nur 1–2 Byte pro Name), alte Latin-1-Dateien müssen einmal umgewandelt werden, sonst entsteht Zeichensalat; Zeichenzahl und Bytezahl stimmen nicht mehr überein.

Vollständig ist eine Diskussion mit Argumenten beider Seiten und einem begründeten Ergebnis – fachlich naheliegend: umstellen, weil korrekte Namen wichtiger sind als wenige Byte, bei sorgfältiger Umwandlung der alten Daten.