Warum wird in den neuesten Betriebssystemen Unicode anstelle von ASCII verwendet?
Antwort1
Weil es eine einfache und einheitliche Zuordnung aller aktuell verwendeten Zeichen ermöglicht, ohne dass die Codepages gewechselt werden müssen. Außerdem meinen Sie wahrscheinlich EASCII oder ANSI (oder ein anderes Derivat mit 256 Zeichen).
Ein Beispiel: Vor einiger Zeit (also ohne Unicode) wäre es unmöglich gewesen, Russisch und Tschechisch auf demselben System zu verwenden, da die Codepages in Konflikt geraten wären. Daher wären Dateinamen (und andere Objekte) für beide Sprachen falsch angezeigt worden, je nachdem, welche Codepage gerade ausgewählt war.
Unicode mildert das und fügt einige andere Konzepte hinzu. Für einen guten Überblick kann ich „Unicode Explained“ von O'Reilly empfehlen. Außerdem wurde es von jemandem geschrieben, dem Internationalisierung am Herzen liegt, was man – selbst heute noch – von vielen englischen Muttersprachlern nicht behaupten kann, da ASCII (0..127) für alle englischen Sätze verwendet werden kann und selbst bei Verwendung von EASCII keine Codepage-Probleme auftreten, solange man bei einfachen lateinischen Buchstaben bleibt.
Obwohl die Implementierungen unterschiedlich sind (Debian verwendet UTF-8, während neuere Windows-Versionen UTF-16 verwenden und ältere NT-basierte Windows-Versionen UCS-2, eine Untermenge von UTF-16, verwenden), beseitigt Unicode alle durch Codepages auferlegten Einschränkungen.Dieein Killerargument für den Einsatz.
Wenn Sie sich für die Programmierung interessieren, schauen Sie sich ICU an.
Antwort2
Kurze Antwort: Weil Unicode mehr Zeichen unterstützt als ASCII.
AusWikipedia:
Unicode soll den Bedarf an einer praktikablen, zuverlässigen weltweiten Textkodierung decken. Unicode könnte man grob als „Wide-Body-ASCII“ beschreiben, das auf 16 Bit erweitert wurde, um die Zeichen aller lebenden Sprachen der Welt abzudecken. Bei einem richtig entwickelten Design sind 16 Bit pro Zeichen für diesen Zweck mehr als ausreichend.
Antwort3
UTF-8 wurde von Grund auf so entwickelt, dass es abwärtskompatibel mit ASCII ist. Jedes 7-Bit-ASCII-System wurde sofort zu einem einfachen UTF-8-System (auch wenn es nicht unbedingt mehr als die 127 Zeichen des einfachen ASCII verarbeiten konnte).
UTF-8 erweitert das ASCII-System, indem es die Zusammenfügung mehrerer Bytes zu einem einzigen Zeichen ermöglicht. Dadurch können Computer viele Hunderttausende verschiedener Zeichen verarbeiten. Ziel ist es, alle Zeichen aller Alphabete aller Sprachen in einer großen Zeichentabelle zusammenfassen zu können.
http://en.wikipedia.org/wiki/UTF-8erklärt im Detail, wie alles funktioniert.