Diese Arbeit behandelt das Thema der Zeichensätze und bezieht dabei die Historik, den ASCII-Zeichensatz als auch die ASCII-Erweiterungen ein. Weiterhin wird der Unicode erläutert als auch verschiedene Zahlensysteme. Ein Repertoire an Zeichen nennt man Zeichensatz. Es enthält Zahlen, Buchstaben, Umlaute, Satzzeichen, Symbole, Sonderzeichen, Steuerzeichen und Formelzeichen. Bei einem kodierten Zeichensatz wird jedem Zeichen ein fester Code zugewiesen. Anwendung finden Zeichensätze vor allem in Computersystemen, welche nur binäre Codes speichern und verarbeiten können.
1833 baute Samuel Morse den ersten elektromagnetischen Schreibtelegrafen mit einem Zeichenvorrat an 10 Ziffern. Zum Codieren und Decodieren wurden Tabellen verwendet. 5 Jahre später entwarf Alfred Lewis Vail einen Code, der auch Buchstaben enthielt. Lange Zeit galt dieses Verfahren als Standard in der Telegrafie, bis 1870 Jean Maurice Émili Baudot einen 5-Bit-Code und passende Sende- und Empfangsgeräte entwickelte. Mit den 32 Wertigkeiten dieses Codes konnten nicht alle Buchstaben, Zahlen und sonstige Zeichen dargestellt werden, also erarbeitete Baudot ein System mit einer Doppelbelegung und zwei Schriftsätzen. Donald Murray passte diesen Code später an alphanumerische Tastaturen an. Als Vorläufer für den ASCII-Zeichensatz gilt ein US-amerikanisches Militärprojekt aus den 1950er und 1960er Jahren namens Fielddata.
1. Zeichensätze
Ein Repertoire an Zeichen nennt man Zeichensatz. Es enthält Zahlen, Buchstaben, Umlaute, Satzzeichen, Symbole, Sonderzeichen, Steuerzeichen und Formelzeichen. Bei einem kodierten Zeichensatz wird jedem Zeichen ein fester Code zugewiesen. Anwendung finden Zeichensätze vor allem in Computersystemen, welche nur binäre Codes speichern und verarbeiten können.1
1.1 Historik
1833 baute Samuel Morse den ersten elektromagnetischen Schreibtelegrafen mit einem Zeichenvorrat an 10 Ziffern. Zum Codieren und Decodieren wurden Tabellen verwendet. 5 Jahre später entwarf Alfred Lewis Vail einen Code, der auch Buchstaben enthielt. Lange Zeit gait dieses Verfahren als Standard in der Telegrafie, bis 1870 Jean Maurice Emili Baudot einen 5-Bit-Code und passende Sende- und Empfangsgeräte entwickelte. Mit den 32 Wertigkeiten dieses Codes konnten nicht alle Buchstaben, Zahlen und sonstige Zeichen dargestellt werden, also erarbeitete Baudot ein System mit einer Doppelbelegung und zwei Schriftsätzen. Donald Murray passte diesen Code später an alphanumerische Tastaturen an. Als Vorläufer für den ASCII-Zeichensatz gilt ein US-amerikanisches Militärprojekt aus den 1950er und 1960er Jahren namens Fielddata.2
1.2 ASCII-Zeichensatz
Der mit 7-Bit codierte ASCII-Zeichensatz gilt als wichtigste Grundlage und umfasst 128 Zeichen. In den 1960er Jahren entwickelte IBM, insbesondere Robert Bemer diesen Code, 1968 wurde er standarisiert. ‚ASCII‘ steht für ‚American Standard Code for Information Interchange‘, übersetzt ‚Amerikanischer Standard-Code für den Informationsaustausch‘. Zu Beginn entsprach der ASCII-Zeichensatz einfach einer Durchnummerierung aller Zeichen und Funktionen einer amerikanischen Schreibmaschine. Die Zeichen 00 bis 1F, also die ersten 32 Zeichen in der ASCII-Tabelle sind Steuerzeichen. Diese werden von verschiedenen Programmen teilweise unterschiedlich genutzt. So gibt es für den Zeilenumbruch keine einheitliche Nummerierung, UNIX verwendet das Steuerzeichen LF, also Line Feed, während Windows eine Kombination aus Carriage Return und Line Feed benutzt. In Textverarbeitungsprogrammen wie Open Office oder Microsoft Word stellt das kein Problem dar, hier sind die Zeilenumbrüche geschützt. Die Tabelle zeigt den ASCII-Zeichensatz mit einer Zuordnung zum hexadezimalen Zahlensystem:
Abbildung in dieser Leseprobe nicht enthalten
Abb. 1: ASCII-Zeichensatz im hexadezimalen Zahlensystem
1.3 ASCII-Erweiterungen
Bis zu den 1980er Jahren war der ASCII-Zeichensatz universe!! in Gebrauch und landerspezifische Zeichen wie beispielsweise das „a" mussten umgeschrieben werden. Die zunehmende Nutzung im Berufsalltag und der weltweiten Vernetzund durch das Internet verlangten nach einheitlichen Erweiterungen und so wurde der 7-Bit-Code, der ohnehin in 8-Bit großen Einheiten gespeichert wurde, um 128 Zeichen erweitert. IBM war das erste Unternehmen, das den „erweiterten ASCII-Zeichensatz" entwickelte. Eine andere Erweiterung ist der ANSI-Zeichensatz (ANSI: American National Standards Institute) von Microsoft. Dieser enthält die wesentlichen diakritischen Zeichen der west- und mitteleuropaischen Sprachen und auGerdem einige Grafikzeichen. Andere Unternehmen entwickelten andere Zeichensätze, sodass es immer wieder zu Problemen kam und aufterdem waren immer noch nicht alle landerspezifischen Zeichen untergebracht. Das führte zu dem Entwurf von universell angepassten Zeichensätzen, sogenannten Codepages; betriebssystemunabhängige Lösungen, die als internationale Norm gelten. So enthalt der Zeichensatz „ISO-Latin-1" alle in Westeuropa benotigten Zeichen. Auch hier entstanden Probleme in der Konvertierung und Kompatibilät zwischen den verschiendenen Erweiterungen.3
2. Unicode
Ein weiterer und weitgehend erfolgreicher Lösungsansatz ist die Entwicklung des Unicode, der zum Ziel hat, alle Zeichen jeder Sprache und aller Anwendungsbereiche zu inkludieren, sodass dieser betriebssystem- und länderunabhängig eingesetzt werden kann. Da dies sehr viel mehr Zeichen beinhaltet als beispielsweise der ASCII-Zeichensatz, gibt es verschiedene Formate. Unicode selbst weist jedem Codepoint, also einem Zahlenwert innerhalb des Codes, eine bestimmte Codierung zu, die Definition dieser Codepoints zu codierten Zeichen geschieht in den Umwandlungsformaten (UTF, Unicode Transformation Format). 1991 wurde der Unicode-Standard veröffentlicht und fünf Jahre darauf von der Internatio-nalen Organisation für Normung (ISO) aufgenommen. Das erste Betriebssystem, das den Unicode nutze, war Windows NT 4.0. Jedes Unicode-Zeichen besitzt einen eigenen, nicht veränderbaren Code, einen Zeichennamen und dokumentierte Zeicheneigenschaften. Der Zeichensatz wird ständig um weitere Zeichen ergänzt, für das gesamte Regelwerk ist das sogenannte Unicode Konsortium zuständig. Zeichen, die in das Regelwerk aufgenommen werden, bleiben gespeichert.
2.1 UCS- Formate
UCS steht für Universal Coded Character Set, Unicode gilt als eine synonyme Bezeichnung für diesen Ausdruck. Für verschiedene Ansprüche gibt es unterschiedliche Formate. Unicode führt etwa 140000 Zeichen, wofür eine Codierung mit einem Byte (1 Byte = 8 Bits = 28 = 256 mögliche Zustände) bei Weitem nicht ausreichend ist. Eine direkte Möglichkeit, alle Zeichen in einem einzigen Zeichensatz darzustellen, bietet die Codierung mit je 4 Byte pro Zeichen. Die durchgängige Codierung mit 4 Byte wäre allerdings eine Verschwendung an Speicherplatz, denn die meist verwendeten Zeichen finden sich zu Beginn des alphanumerischen Zeichensatzes.
Der Unicode wird in Ebenen unterteilt, die in Böcke gegliedert sind. In der Tabelle sind einige Beispiele aufgeführt, sortiert nach den Parametern Ebene, Block, Positionen in hexadezimaler Schreibweise und Anzahl der enthaltenen Zeichen.
Abbildung in dieser Leseprobe nicht enthalten
Die Mehrsprachige Basis-Ebene (BMP) enthält die wichtigsten Zeichen lebender Sprachen, Piktogramme und Symbole. In der Mehrsprachigen Zusatzebene (SMP) finden sich Zeichen toter Sprachen und mehrere Symbole und Bildzeichen. Weitere Ebenen sind die Jdeografische Zusatzebene' (SIP), einige nicht belegte Ebenen, eine Zusatzebene zur besonderen Verwendung und privat genutzte Bereiche. Was Unicode als Standard nicht enthält, sind konstruierte Sprachen wie Klingonisch und manche historische Zeichen, für solche Fälle sind dann die privaten Bereiche vorgesehen. Die Ebene SIP enthält Sammlungen an CJK-Ideogrammen, also Schriftzeichen aus dem chinesischen, japanischen und koreanischen Sprachraum, die ganze Begriffe anstatt nur einzelne Lautungen repräsentieren.
Abbildung in dieser Leseprobe nicht enthalten
Abb. 2/1: Auswahl wichtiger Blöcke in der BMP
Abbildung in dieser Leseprobe nicht enthalten
Abb. 2/2: Auswahl wichtiger Blöcke in der BMP
UTF-8 Dieses Format ist am weitesten verbreitet wenn es um das Speichern und Übertragen von Textdaten geht. Die variable Anzahl an Bytes für die Darstellung der Zeichen macht UTF-8 zu einer flexiblen und effizienten Losung. Der eindeutige Vorteil besteht in der Abwärts-Kompatibilität mit dem ASCII-Zeichensatz, der sich in diesem Format mit nur einem Byte darstellen lässt. Das heißt, Systeme und Programme, die nur den ASCII-Code „verstehen", funktionieren auch mit UTF-8. Bei höherwertigen Zeichen erfolgt die Darstellung durch längere Bytefolgen. Ein Nachteil ist die Problematik bei der Verarbeitung innerhalb von Programmen, die für ihre Algorithmen auf eine gleichbleibende Anzahl der Bytes pro Zeichen angewiesen sind.
UTF-16 Das ursprüngliche Unicode-Format wurde mit je 2 Byte pro Zeichen codiert. Die feste Breite ist von Vorteil für die Verarbeitung in Programmen und die Speichergröße ist vertretbar, daher ist UTF-16 für manche Anwendungen ein guter Kompromiss. Eine Möglichkeit, mit UTF-16 mehr Zeichen zu codieren als ursprünglich vorgesehen ist die Darstellung durch Zweibytewörter. Dazu wird von der Nummer des darzustellenden Zeichens die Zahl 65536 (10000 hex) subtrahiert. Daraus entstehen zwei Blöcke zu je 10 Bit, denen jeweils eine Bitfolge (dem ersten Block Bitfolge 110110, dem zweiten 110111) vorangestellt wird; das erste der Zweibytewörter wird als High-Surrogate und das zweite als Low-Surrogate bezeichnet. Für diesen Vorgang, mit dem sich die Unicode-Zeichen U+10000 bis U+10FFFF darstellen lassen, sind bestimmte Codebereiche reserviert. Der geringe Bedarf nach dieser Erweiterung machte eine Aufnahme in die ISO uberflussig, hier existiert nach wie vor das Format mit der durchgängigen Codierung von 2 Byte pro Zeichen; allerdings ist dieses Wissen von Bedeutung für die Konvertierung zwischen ver-schiedenen Formaten.
UTF-32 Ein weiteres Unicode-Format, welches eine Darstellung der Zeichen durch je 4 Byte vorsieht. Es kommt eher selten zum Einsatz, der Speicherplatzbedarf ist hierbei sehr hoch. UTF-32 ist jedoch der direkteste Weg, alle in Unicode vorkommenden Zeichen in einem Format darzustellen.
2.2 Unicode Konsortium
Das Unicode Konsortium gilt als gemeinnütziges Unternehmen mit Sitz in Kalifornien, welches für die Entwicklung und Verwaltung von Internationalisierungsstandards wie dem Unicode-Standard zuständig ist. Mitglieder sind unter anderem große Unternehmen wie Adobe, Facebook und Apple und interessierte Einzelpersonen, außerdem arbeitet das Konsortium eng mit der ISO und der IEC (International Electrotechnical Comission) zusammen. Mehrere Ausschüsse beraten über die Entwicklung und Herausgabe neuer Zeichen und stellen die Interoperabilität¹ und die syntaktische² Validität³ sicher. Das bedeutet, verschiedene ineinandergreifende Systeme halten gemeinsame Standards ein und innerhalb dieser Standards stimmen empirische Messungen mit dem theoretischen Messkonzept überein. Auch entscheidet es über die Aufnahme neuer Emojis im Unicode-Standard.
2.3 Emojis
„Emoji" ist Japanisch und bedeutet „Piktogramm", denn genau das sind die kleinen Bilder, stilisierte Darstellungen von Gegenstanden, Tieren, Personen mit verschiedenen Emotionsausdrücken und vieles mehr. Im Prinzip kann jede Person ein Emoji vorschlagen, über die Aufnahme in den Unicode Standard entscheidet das Konsortium nach verschiedenen Kriterien. Zum einen muss die Bedeutung des Piktogrammes gut erkennbar sein, außerdem ist eine überzeugende Begründung für den Bedarf notwendig. Dieser Bedarf wird unter anderem durch Anfragen in Suchmaschinen belegt. Verboten bei der Darstellung sind Gottheiten, Marken-Logos und Abbildungen lebender Personen. Schafft es ein Emoji in den Unicode-Standard, wird ihm eine Codierung, also ein fester Platz zugewiesen und Unicode stellt das Piktogramm in seiner Grundform Unternehmen wie Apple oder Samsung zur Verfügung, welche sich um die Darstellung in den von ihnen entwickelten Programmen kümmern. Mittlerweile gibt es über 1800 Emojis, die auf verschiedene Blöcke aufgeteilt sind. So findet man das grinsende Gesicht in dem Block .Smileys', wahrend der Regenbogen und andere piktografische Symbole sich im Block daruber befinden.
Abbildung in dieser Leseprobe nicht enthalten
Abb. 3: Piktogramme in ihrer Grundform
[...]
1 Interoperabilität: Fähigkeit unterschiedlicher Systeme, möglichst nahtlos zusammenzuarbeiten
2 Syntax: Gesamtheit der Regeln, die innerhalb einer Programmiersprache zur exakten Formulierung eines Programms erforderlich sind
3 Validitat: Kriterium fur die Giite eines Tests oder einer Messung (Quelle: Duden)
- Quote paper
- Fabienne Vivien Bucher (Author), 2020, Zeichensätze in Computersystemen. Zahlensysteme, ASCII und Unicode, Munich, GRIN Verlag, https://www.grin.com/document/913372
-
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X.