[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Umrechung



Hallo Wulf,
> Im Jahr 1964 hat die Firma IBM im Zusammenhang mit der Entwicklung der
> IBM 360 festgelegt, dass ein Byte acht Bits umfasst. Vorher waren auch
> noch andere Werte in Gebrauch, zum Beispiel fuenf Bits. Gruss,

Dass man aus diesem Grund mit einem Byte 256 verschiedene Zeichen
abbilden kann, ist bekannt. Dass man mit so wenigen Zeichen unmoeglich
alle Schriftsprachen dieser Welt abdecken kann, ist auch klar. So
entstanden die verschiedenen Zeichensaetze fuer den PC. Fuer Sprachen wie
Chinesisch, Koreanisch und andere Sprachen mit vielen Schriftzeichen
wurden und werden seit jeher daher zwei Byte fuer ein Zeichen verwendet.
Fuer diese Zwei-Byte-Sprachen ist natuerlich Spezialsoftware erforderlich.

Um mit den vielen unterschiedlichen Zeichensaetzen aufzuraeumen und einen
einheitlichen Standard fuer alle Schriftsprachen der Welt zu schaffen,
wurde das Unicode-System entwickelt. Der Unicode soll zukuenftig alle
veralteten Pc und Iso-Zeichensaetze abloesen. Einige Betriebssysteme wie
Windows NT arbeiten bereits intern mit Unicode.

Aber jetzt kommt meine eigentliche Frage:

Im Unicode-System ist die abfolge von hoeherwertigem und niederwertigem
Byte genauestens geregelt. Das muss auch so sein, damit Applikationen die
immer zwei Byte grossen Zeichen richtig deuten koennen. Aber weshalb fasst
man immer zwei Byte zu einer 16-Bit-Einheit zusammen. Weshalb hat man
nicht das Byte vergroessert, so dass es selbst aus 16 Bit besteht? Das waere
doch viel einfacher. Das Byte haette 16 Bit. Der Datentyp char waere 16 Bit
breit, und fuer bestimmte Operationen koennte man ein short Char
einfuehren.
So hat man es als Programmierer im Unicode-System immernoch mit
dem veralteten Byte und dem DoppelByte zu tun. Meiner Meinung nach waere
mit einem 16-bittigen Byte auch das portieren von herkoemmlichen
Programmen auf Unicode wesentlich einfacher. Char koennte Char bleiben.
Lediglich die Kompiler muesste man aendern. So aber muss alles geaendert
werden, der Compiler und die Applikationen selbst. Liegt das vielleicht
daran, dass die Software in diesem Fall schneller war als die Hardware?
Immerhin waere kein Prozessor dieser Welt zu den neuen Datentypen
kompatibel.