Computer sind Rechner, die mit Bytes arbeiten. Bytes sind Zahlen im Bereich von 0-255. Um mit Buchstaben zu arbeiten, muss jedem Buchstabe eine Zahl zugewiesen werden. Das geschieht mittels Zuordnungstabellen.
Zeichenkodierung ist die Zuordnung eines sprachlichen Zeichens zu einer computerinternen Repräsentation (Speicherstelle) oder wie ein Zeichen in Bits und Bytes dargestellt wird. Das bedeutet auch, welches Zeichen, welcher Taste zugeordnet wird.
Welches Zeichen zu welcher Bitfolge gehört, wird in Codetabellen/ Zeichensätzen gespeichert. Es gibt verschiedene Zeichensätze und Zeichencodierungen. Der Zeichensatz, also die Menge aller verwendbaren Zeichen für HTML Dokumente ist Unicode.
Wenn man nichts weiter unternimmt, werden die Editoren, Browser eine voreingestellte Codierung nehmen. Dadurch entsteht das Problem, dass alle beteiligten Systeme nun raten müssen, welche Codierung eingesetzt wird. Besser ist also den Zeichensatz anzugeben und der ist bei HTML Seiten in westlichen Sprachen UTF-8.
UTF-8 ist in den ersten 178 Zeichen deckungsgleich mit ASCII. UTF-8 ist die am weitesten verbreitete Zeichencodierung für Unicode Zeichen. UTF-8 ist der Standard im Internet und wird auf 86% aller Webseiten eingesetzt. Die Seite sollte auch im Editor als UTF-8 gespeichert sein.
siehe Zeichenkodierung Selfhtml
Unicode ist ein System welches langfristig alle Zeichen und Elemente aller Schriftkulturen enthalten soll. Für jedes Zeichen wird hier ein Code festgelegt. Dadurch sollen alle Probleme mit unterschiedlichen und inkompatiblen Zeichencodierungen beseitigt werden. Unicode wird stängig ergänzt.
Jedes Zeichen bekommt eine Codepoint Nummer. Diese Codepoints werden in Codeblöcke gruppiert, die aus 65536 Zeichen bestehen.
Die ersten Unicodeversionen hatten nur Codepoints bis FFFF (Hexwert). Dieser Umfang wurde durch die große Anzahl asiatischer Schriftzeichen schnell gesprengt. Der Zeichenvorrat wurde dann erweitert auf 1.112.064 Zeichen erweitert. Aktuell werden davon 144.697 Zeichen verwendet.
Die Codepointgruppe aus der Anfangszeit bis Unicode 3.0 bildet die Ebene 0, die sogenannten BMP Basic Mulitlingual Plane
2-Byte 65.536 Zeichen (BMP) Basic Multilingual Plane
Unicode Charts http://unicode-table.com
https://www.compart.com/de/unicode/
Beim Speichern der Html Datei in einem Editor wählen Sie UTF-8 Zeichencodierung / encoding.
siehe auch Notepad++ mit und ohne BOM
Geben Sie folgendes Metatag im Headbereich der HTML Datei an, damit die HTML-Seite in UTF-8 dargestellt wird.
Dieses Meta Tag wurde in Html 5 eingeführt. Der Metatag sollte ziemlich am Anfang stehen.
<meta charset="utf-8">
Wenn Sie Zeichen benutzen wollen die zur HTML Syntax gehören, sollten Sie die entsprechenden Entitäten nutzen:
Ersetzen Sie < durch <
(lower than)
Ersetzen Sie > durch >
(greater than)
Ersetzen Sie & durch &
Ampersand
Ersetzen Sie " durch "
(quotation mark / Anführungszeichen)
Erzeugen Sie ein Leerzeichen durch
(no break space / kein Umbruch Leerzeichen)
Zeichen, die im Zeichensatz, den Sie bei der Zeichencodierung festlegen, nicht vorkommen, oder auch Zeichen, die Sie auf der Tastatur nicht finden, können Sie mit sogenannten Entities umschreiben.
Zeichen aus dem Zeichenvorrat von Unicode können Sie durch eine numerische Notation umschreiben:
2
2
Hierbei steht 50 für den dezimalen Wert des Zeichens. 0032 ist der hexadezimale Wert. Sie können unter einer der folgenden URLs die Werte nachschauen:
http://unicode-table.comoder hier http://unicode.org/charts oder hier selfHtml Zeichentabelle
Oder in der Zeichentabelle von Windows, Start, Programme, Zubehör, Systemprogramme, Zeichentabelle
Ein Beispiel: das Copyrightzeichen wird in der Unicode Tabelle auf 2 Arten angezeigt:
U+00A9
©
Die Unicode Nummer wird als hexdezimale Zahl angezeigt 00A9. Das entspricht der dezimalen Zahl 169. Es wäre also auch möglich das Copyrightzeichen auf folgende Art zu umschreiben: ©
siehe Wiki Zeichencodierung / Bytes
Die Grundeinheiten im Computer sind bit und byte. Ein Bit kann 2 Zustände repräsentieren 0 1. Ein Byte oder 8-Bit kann 28 also 256 Werte haben. Da die 0 dazugehört, ist das dezimal ausgedrückt von 0 bis 255.
Im Arbeitsspeicher stehen beim Einlesen einer Datei nur Byte-Werte und keine sprachlichen oder lesbaren Zeichen. Die Aufgabe übernehmen Zeichencodierungen, indem sie mittels einer Codetabelle jedem Wert ein Zeichen zuweisen. Die Menge der Zeichen wird Zeichenvorrat genannt.
Beim Aufkommen der Personal Computer benutzten die Computer 7-Bit das sind 128 Zustände. Die Kodierung, die den Durchbruch schaffte war die ASCII Kodierung (American Standard Code for Information Interchange) Die ersten 32 Zeichen sind Steuerzeichen. Die weiteren sind darstellbare, druckbare Zeichen wie Ziffern, Buchstaben, Satzzeichen im amerikanischen Sprachgebrauch.
Dann kamen Computer mit 8-Bit langen Grundeinheiten (256 Zeichen). Es wurden neue Zeichenkodierungen geschaffen, um die weiteren Zeichen zu belegen. Einen Standard erschuf die internationale Standardisierungs-Organisation ISO, die sogenannte ISO-8859- Familie. Für den europäischen Sprachgebrauch ist hier die ISO-8859-1 Kodierung zu nennen, auch Latin-1 genannt. Sie enthält verschiedene Sonderzeichen europäischer Sprachen: deutsche Umlaute, französische Accent Zeichen, spanische Zeichen, Tilde, kaufmännische Zeichen, wissenschaftliche Zeichen. Es gibt also verschieden ISO-8859 Kodierungen für verschiedene Sprachen.
Die ISO-Kodierungen bereiten Probleme, wenn man in einem Dokument verschiedene Sprachen darstellen will. Außerdem gibt es Sprachen die mehr als 256 Zeichen haben. Die Lösung für alle Probleme ist das Unicode System.