2. Zeichenkodierungen


2.1 Geschichte der Zeichenkodierungen

Ich bin mir bewußt, daß diese Auflistung sowohl unvollständig als auch einigermaßen willkürlich ist - man möge mir das nachsehen.

Die erste ASCII Version wurde 1963 von der ASA (American Standards Association) verabschiedet. Diese enthielt jedoch noch nicht einmal Kleinbuchstaben. 1965 wurde eine weitere Version von ASCII verabschiedet, aber wohl nie so recht implementiert. Ende April 1965 wurde ECMA-6 von der ECMA verabschiedet. ECMA-6 ist die 7-bit Zeichenkodierung, die auch als US-ASCII oder auch als ISO 646 bzw. als DIN 66003 (Juni 1974) bekannt und weit verbreitet ist.

Mit der Zeit wurde den EDV-Treibenden das Umschreiben von Umlauten zu lästig ;) und sie entwarfen nationale Varianten von ISO 646. Das führte dazu, daß man sich z. B. in Deutschland zwischen Umlauten und eckigen sowie geschweiften Klammern entscheiden mußte oder mit Escape-Sequenzen arbeiten.

Bekannte Terminals, die ISO 646 als Zeichenkodierung verwendet haben: DEC VT52, DEC VT100

Im Jahre 1981 kam der IBM PC mit einer 8-bit-Zeichenkodierung heraus. Leider schienen die Entwickler bei der Reihenfolge der Zeichen gewürfelt zu haben. Das Ergebnis: die IBM Codepage 437.

Im Jahre 1982 wurden die ersten DEC VT220 und VT240 auf den Markt gebracht, die einen Vorläufer von ISO 8859-1 im Einsatz hatten: DEC MCS (Multinational Character Set).

Im Jahre 1985 kam der Commodore Amiga auf den Markt, der bereits damals im wesentlichen ISO 8859-1 verwendet hat. Microsoft Windows erblickte 1984 das Licht der Welt und war auch mit einer Kodierung ausgestattet, die im wesentlichen ISO 8859-1 entspricht.

Im März 1985 wurde ECMA-94 verabschiedet. Dieser Standard ist auch als ISO 8859-1 bis ISO 8859-4 bekannt. ISO 8859-1 wurde 1987 verabschiedet. Die Europäer waren mehr als 2 Jahre voraus. ;)

Im Jahre 1987 kam MS-DOS 3.3 auf den Markt und damit die IBM Codepage 850. Diese Codepage enthält sämtliche Zeichen, die auch in ISO 8859-1 vorkommen, allerdings in einer anderen Reihenfolge, so daß eine verlustfreie Konvertierung möglich wurde.

Andere Rechner haben wieder andere Zeichenkodierungen, die sich aber im Zweifel mit geringen Aufwand von/nach ISO 8859-1 wandeln lassen.

2.2 Warum ISO 8859-1?

Vorteile von ISO 8859-1 gegenüber anderen oben genannten 8-bit-Zeichenkodierungen:

Sobald ISO/IEC 10646-1 und UTF-8 (siehe unten) eingeführt werden und Verbreitung finden, wird letzteres Argument allerdings an Bedeutung verlieren. Für UTF-8 werden die Kodes zwischen 0x80 und 0x9F benötigt. Es ist daher sinnvoll, News-Software auf Dauer auf diese Tatsache einzustellen.

MS-DOS Codepages, Apple Mac Zeichenkodierungen und auch der NeXTSTEP Encoding Vector verwenden Kodes im Bereich 0x80 bis 0x9F. Das ist, wie gesagt, zum aktuellen Zeitpunkt nicht vorteilhaft.

Die Anzahl der zu unterstützenden Kodierungen sollte man aus technischen Gründen ohnehin möglichst gering halten, um die Komplexität der Programme nicht auch noch durch aufwendige Konverter zu überfrachten. Es ist schon mühselig genug, ständig von den "Hauszeichenkodierungen" in die von den RFC 2045-2049 genannten Zeichenkodierungen konvertieren zu müssen.

Allgemeine Einschränkungen von ISO 8859-1 als 8-bit-Zeichenkodierung

Diese Zeichenkodierung deckt zwar die wichtigsten Zeichen, die auf den Schreibmaschinen für über 14 (hauptsächlich westeuropäische) Sprachen zu finden sind, aber als langfristige, weltweit akzeptable Zeichenkodierung ist ISO 8859-1 ungeeignet, da z. B. nicht mal alle europäischen Sprachen abgedeckt werden. Außerdem fehlen auch für deutschsprachige Benutzer viele Zeichen, wie sie etwa im wissenschaftlichen Bereich sehr wünschenswert wären (z. B. deutsche Anführungszeichen, mathematische Symbole, usw.).

In anderen Ländern können auch andere Zeichenkodierungen von Interesse sein, so z. B. ISO 8859-2 für Tschechien und Polen etc. oder ISO 8859-7 für Griechenland. Die Russen bevorzugen koi8-r und nicht ISO 8859-5. Hier wurde wohl am "Markt" vorbei genormt. Dies aber nur am Rande zur Info.

Es sei vermerkt, daß ISO 8859-2, ISO 8859-3, ISO 8859-4, ISO 8859-9 und ISO 8859-10 die für Deutsch notwendigen Umlaute nicht nur beinhalten, sondern vor allen Dingen mit den gleichen Kodes. Wer also osteuropäische Texte genauso lesen können möchte wie deutsche, dem sei ISO 8859-2 empfohlen. ISO 8859-9 für Leute, die türkische und deutsche Texte lesen können wollen.

Auf lange Sicht

Als langfristige Lösung bietet sich ISO/IEC 10646-1/Unicode 2.0 an. Entwickler von Usenet-Software sollten sich mit dieser Alternative vertraut machen, insbesondere mit der UTF-8 Kodierung, die für das Usenet besonders geeignet erscheint, da ASCII-Texte ohne Veränderung dargestellt werden können.

Weitere Informationen zum Thema ISO/IEC 10646-1:1993 und UTF-8 finden Entwickler und andere Interessierte in Anhang V.

Zurück zum Inhaltsverzeichnis


Last modified 2001-09-14 by Kosta Kostis