Zeichensatztabelle

Texte, Wörter und Zeichen werden in Computern durch Zahlen repräsentiert, daher ist es notwendig, eine Zuordnung von Zahlen und Zeichen herzustellen. Diese Zuordnung wird durch eine Zeichensatztabelle definiert, die den darstellbaren Zeichen und Steuerzeichen Zahlenwerte zuordnet. Alternative Begriffe für Zeichensatztabelle sind Codepage oder Character Map.

Während eine Zeichensatztabelle die Zuordnung von Zahlen zu Zeichen definiert, speichern Fonts das Aussehen der Zeichen. Für die Darstellung von Text auf Computern sind üblicherweise also sowohl eine Zeichensatztabelle wie auch ein Font notwendig.

Geschichte

Historische Zeichensatztabellen unterliegen häufig einer Beschränkung auf 256 Zeichen, was wiederum bedingt, dass eine Zeichensatztabelle mit 256 Zeichen neben dem lateinischen Alphabet meist nur ein weiteres Alphabet speichern kann. Die Verwendung dieser frühen, einfachen Zeichensatztabellen führte aber zu Problemen. In manchen Zeichensatztabellen sind nicht alle Zeichen ausreichend dokumentiert, oder bestimmte Einträge der Zeichensatztabelle werden unterschiedlich genutzt. Ferner kann ein Text häufig nur eine Zeichensatztabelle benutzen, wodurch es schwierig wird, Zeichen anderer Sprachen in den Text zu integrieren. Um diese Probleme zu lösen, wurde Unicode eingeführt. Im Gegensatz zu normalen Zeichensatztabellen trennt Unicode zwischen der Zuordnung von Zahlen (sog. Codepoints) zu Zeichen und der Codierung der Zeichen. Die verschiedenen Codierungsschemata von Unicode können aber ihrerseits wieder als Zeichensatztabellen verstanden werden.

Die Darstellung von Texten oder Dateinamen mit der falschen Zeichensatztabelle führt zur Darstellung falscher Zeichen. In deutschen Texten leiden darunter häufig die Umlaute oder das Eszett, auch wenn der Text im Wesentlichen lesbar bleibt. Texte mit anderen Schriftsystemen werden bei Anzeige mit der falschen Zeichensatztabelle hingegen unlesbar (Mojibake).

Beispiele

IBM PC (OEM) Zeichensatztabellen

Diese Zeichensatztabellen sollten nur zur Kompatibilität mit bestehenden Dokumenten und System genutzt werden. Für neue Systeme und Texte empfiehlt sich die Verwendung von Unicode.

DBCS/MBCS

Diese Codepages erlauben die Speicherung asiatischer Zeichen, bei denen die aus 8 Bit resultierenden 256 Zeichen nicht ausreichen. Dazu werden 16-Bit-Tupel verwendet (DBCS/MBCS), die bis zu 65536 unterschiedliche Zeichen erlauben.

Wichtige Zeichensatztabellen

Für effiziente Verarbeitung auf Computern werden Zeichensatztabellen durch Zahlen identifiziert. Die Nummerierung der Zeichensatztabellen ist allerdings nicht genormt, so dass verschiedene Computer oder Betriebssysteme unterschiedliche Zahlen verwenden können.

Codepage-NummerBedeutungZeichencodierung
437Die ursprüngliche Zeichensatztabelle des IBM-PCchar (8 Bit)
720Arabisches Alphabetchar (8 Bit)
737Griechisches Alphabetchar (8 Bit)
775Estnisches Alphabet, Litauisches Alphabet und Lettisches Alphabetchar (8 Bit)
819„Latin-1“, entspricht ISO 8859-1char (8 Bit)
850„Multilingual (DOS-Latin-1)“, westeuropäische Sprachenchar (8 Bit)
852Slawische Sprachen (Latin-2), zentraleuropäische und osteuropäische Sprachenchar (8 Bit)
855Kyrillisches Alphabetchar (8 Bit)
857Türkisches Alphabetchar (8 Bit)
858„Multilingual“ mit Eurozeichenchar (8 Bit)
860Lateinisches Alphabet mit portugiesischen Sonderzeichenchar (8 Bit)
861Isländisches Alphabetchar (8 Bit)
862Hebräisches Alphabetchar (8 Bit)
863Lateinisches Alphabet mit französischen Sonderzeichenchar (8 Bit)
864Arabisches Alphabetchar (8 Bit)
865Dänisch und Norwegisch – unterscheidet sich von 437 nur durch Ø (ø) anstelle von ¥ und ¢char (8 Bit)
866Kyrillisches Alphabetchar (8 Bit)
869Griechisches Alphabetchar (8 Bit)
874Thai-Alphabetchar (8 Bit)
932Japanische Schreibsysteme (DBCS)Gemischt 8- und 16 Bit
936GBK für chinesische Kurzzeichen (DBCS)Gemischt 8- und 16 Bit
949Hangul/Koreanische Schriftzeichen (DBCS)Gemischt 8- und 16 Bit
950Chinesische Langzeichen (DBCS)Gemischt 8- und 16 Bit
1200UTF-16 LE little-endian (Unicode)Tupel von 16-Bit-Worten
1201UTF-16 BE big-endian (Unicode)Tupel von 16-Bit-Worten
1250Zentral- und osteuropäische Sprachenchar (8 Bit)
1251Kyrillisches Alphabetchar (8 Bit)
1252Westeuropäische Sprachenchar (8 Bit)
1253Griechisches Alphabetchar (8 Bit)
1254Türkisches Alphabetchar (8 Bit)
1255Hebräisches Alphabetchar (8 Bit)
1256Arabisches Alphabetchar (8 Bit)
1257Baltische Sprachenchar (8 Bit)
1258Vietnamesische Sprachenchar (8 Bit)
10000Macintosh Romanchar (8 Bit)
10007Macintosh Kyrillischchar (8 Bit)
10029Macintosh, Zentraleuropäische Sprachenchar (8 Bit)
20127US-ASCIIchar (7 Bit)
28591ISO-8859-1char (8 Bit)
65000UTF-7 (Unicode)Tupel von 8-Bit-Worten
65001UTF-8 (Unicode)Tupel von 8-Bit-Worten

Siehe auch

Weblinks