Zur Codierung von Zeichen kann man unterschiedliche Codes verwenden. Zwei davon sind der ASCII-Code und der Unicode. Die ersten 128 (0 … 127) Zeichen von Unicode und ASCII-Code sind identisch.
Der ASCII-Code verwendet nur 7 bit für die Zeichencodierung. Da für die Übertragung von Zeichen im Allgemeinen mindestens 8 bit (1 Byte) verwendet werden, bot es sich an, den bisher ungenutzten Bereich von 128 … 255 mit verschiedenen Erweiterungen für länderspezifische Zeichen zu belegen.
Beispiel:
Das Zeichen mit dem Code 0xE4 (Dezimal 228) entspricht in der Zeichencodierung ISO 8859-1 (Latin-1) dem Zeichen ä. In der Zeichencodierung Codepage 720 (Arabisch) entspricht der Code dem Zeichen غ.
Da die unterschiedlichen Code-Tabellen zu Problemen führten, strebte man eine Vereinheitlichung an. Aus diesen Bestrebungen entstand der Unicode. Für die Binärdarstellung der Unicode-Zeichen wird meist UTF-8 verwendet. Bei UTF-8 werden die Zeichen mit variabler Länge codiert. Die Zeichen mit dem Code 0 … 127 werden durch ein Byte repräsentiert. Alle anderen Zeichen werden durch mindestens 2 Byte dargestellt.