<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Zeichenkodierung</id>
	<title>Zeichenkodierung - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Zeichenkodierung"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Zeichenkodierung&amp;action=history"/>
	<updated>2026-06-03T11:55:00Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Zeichenkodierung&amp;diff=60937&amp;oldid=prev</id>
		<title>imported&gt;Wassermaus: /* Differenzierung der Begriffe durch Einführung des Unicodes */</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Zeichenkodierung&amp;diff=60937&amp;oldid=prev"/>
		<updated>2025-04-29T19:01:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Differenzierung der Begriffe durch Einführung des Unicodes&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Eine &amp;#039;&amp;#039;&amp;#039;Zeichenkodierung&amp;#039;&amp;#039;&amp;#039; ({{enS|character encoding}}, kurz &amp;#039;&amp;#039;encoding&amp;#039;&amp;#039;) erlaubt die eindeutige Zuordnung von [[Schriftzeichen]] (i. A. [[Buchstabe]]n oder [[Ziffer]]n) und [[Symbol]]en innerhalb eines [[Zeichensatz]]es. In der [[Elektronische Datenverarbeitung|elektronischen Datenverarbeitung]] werden Zeichen über einen Zahlenwert kodiert, um sie zu [[Datenübertragung|übertragen]] oder zu [[Datenspeicher|speichern]]. Der deutsche Umlaut Ü wird zum Beispiel im [[ISO 8859-1|ISO-8859-1]]-Zeichensatz mit dem Dezimalwert 220 kodiert. Im [[Extended Binary Coded Decimals Interchange Code|EBCDIC]]-Zeichensatz kodiert derselbe Wert 220 die geschweifte Klammer &amp;lt;code&amp;gt;}&amp;lt;/code&amp;gt;. Zur richtigen Darstellung eines Zeichens muss also die Zeichenkodierung bekannt sein; der Zahlenwert allein reicht nicht aus.&lt;br /&gt;
&lt;br /&gt;
Zahlenwerte aus Zeichenkodierungen lassen sich auf verschiedene Art speichern oder übertragen, z.&amp;amp;nbsp;B. als [[Morsecode|Morsezeichen]], verschieden hohe Töne ([[Faxgerät]]), verschieden hohe [[Elektrische Spannung|Spannungen]].&lt;br /&gt;
&lt;br /&gt;
[[Binärcode|Binäre]] Systeme hatten seit jeher eine besondere Bedeutung, da mit steigender Anzahl der Basiselemente des Codes die Gefahr von Verwechslungen steigt.&lt;br /&gt;
&lt;br /&gt;
In älterer Fachliteratur wird mitunter auch gleichbedeutend der Begriff &amp;#039;&amp;#039;&amp;#039;Zeichenverschlüsselung&amp;#039;&amp;#039;&amp;#039; verwendet, wenn den Zeichen (Schlüssel-)Nummern zugeordnet werden; aufgrund der möglichen fälschlichen Zuordnung in den Bereich der [[Kryptographie]] wird diese Bezeichnung heute kaum noch verwendet.&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Die Anfänge dieser Technik liegen in der [[Antike]]. Zum Beispiel informierte [[Agamemnon]] seine Truppen von einem Schiff aus mit dem Licht eines Feuers darüber, dass er die Invasion [[Troja]]s starten wollte. Bekannt sind ferner [[Rauchzeichen]] bei den [[Indianer]]n oder Nachrichtenübermittlung durch [[Trommelzeichen]] in [[Afrika]].&lt;br /&gt;
&lt;br /&gt;
Insbesondere zur Verständigung von [[Flotte (Marine)|Schiffsverbänden]] in der [[Nautik]] wurden die Techniken später verfeinert. [[Sir Walter Raleigh]] erfand für die Verständigung seines [[Geschwader]]s auf der Südamerikafahrt 1617 eine Art Vorläufer der Flaggencodierung.&lt;br /&gt;
&lt;br /&gt;
Im Jahr 1648 schließlich war es [[England]]s späterer König [[Jakob II. (England)|James II.]], der das erste [[Flaggenalphabet|Signalflaggensystem]] in der britischen Marine einführte.&lt;br /&gt;
&lt;br /&gt;
Nach der Erfindung der [[Telegrafie]] benötigte man auch hier eine Zeichenkodierung. Aus den ursprünglichen Ideen des Engländers [[Alfred Brain]] entstanden 1837 der originale [[Morsecode]] und 1844 der modifizierte Morsecode.&lt;br /&gt;
&lt;br /&gt;
Das [[CCITT]] (Comité Consultatif International Telegraphique et Telephonique) war schließlich die erste Institution, die einen standardisierten [[Zeichensatz]] definierte. Dabei basierte dieser Zeichensatz auf einem von [[Jean-Maurice-Émile Baudot]] 1870 entwickelten 5er-Code-Alphabet für seinen [[Synchrontelegraph]]en, dem [[Baudot-Code]], dessen Prinzip noch heute verwendet wird.&lt;br /&gt;
&lt;br /&gt;
== Computer und Datenaustausch ==&lt;br /&gt;
Mit der Entwicklung des [[Computer]]s begann die Umsetzung der im Grunde schon seit dem [[Baudot-Code]] verwendeten binären Zeichenkodierung in [[Bit]]-Folgen, bzw. intern meist in verschiedene [[elektrische Spannung]]swerte als Unterscheidungskriterium, ganz analog zu der bisher zur Unterscheidung der Signalwerte genutzten Tonhöhe oder Signaldauer.&lt;br /&gt;
&lt;br /&gt;
Um diesen Bit-Folgen darstellbare Zeichen zuzuordnen, mussten Übersetzungstabellen, sogenannte &amp;#039;&amp;#039;Zeichensätze&amp;#039;&amp;#039;, engl. &amp;#039;&amp;#039;Charsets&amp;#039;&amp;#039;, festgelegt werden. 1963 wurde eine erste 7-Bit-Version des [[American Standard Code for Information Interchange|ASCII]]-Codes durch die [[American National Standards Institute|ASA]] (American Standards Association) definiert, um eine Vereinheitlichung der Zeichenkodierung zu erreichen. Obwohl [[IBM]] an der Definition mitgearbeitet hatte, führte man 1964 einen eigenen 8-Bit-Zeichencode [[Extended Binary Coded Decimals Interchange Code|EBCDIC]] ein. Beide finden bis heute in der Computertechnik Verwendung.&lt;br /&gt;
&lt;br /&gt;
Da für viele Sprachen jeweils unterschiedliche [[Diakritisches Zeichen|diakritische Zeichen]] benötigt werden, mit denen Buchstaben des [[Lateinisches Schriftsystem|lateinischen Schriftsystems]] modifiziert werden, gibt es für viele Sprachgruppen jeweils eigene Zeichensätze. Die [[International Organization for Standardization|ISO]] hat mit der Normenreihe [[ISO 8859]] Zeichenkodierungen für alle europäischen Sprachen (einschließlich [[Türkische Sprache|Türkisch]]) und [[Arabische Sprache|Arabisch]], [[Hebräische Sprache|Hebräisch]] sowie [[Thailändische Sprache|Thai]] standardisiert.&lt;br /&gt;
&lt;br /&gt;
Das [[Unicode Consortium]] schließlich veröffentlichte 1991 eine erste Fassung des gleichnamigen [[Standard]]s, der es sich zum Ziel gesetzt hat, alle Zeichen aller Sprachen in Codeform zu definieren. [[Unicode]] ist gleichzeitig die internationale [[Normung|Norm]] [[ISO 10646]].&lt;br /&gt;
&lt;br /&gt;
Bevor ein Text elektronisch verarbeitet wird, muss der verwendete Zeichensatz und die Zeichenkodierung festgelegt werden. Dazu dienen beispielsweise folgende Angaben:&lt;br /&gt;
&lt;br /&gt;
* Definition des Zeichensatzes in einer [[Hypertext Markup Language|HTML]]-Seite&lt;br /&gt;
 &amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=UTF-8&amp;quot;&amp;gt;&lt;br /&gt;
* Definition des Zeichensatzes in den Kopfzeilen (Headern) einer [[E-Mail]] oder eines [[Hypertext Transfer Protocol|HTTP]]-Pakets&lt;br /&gt;
 Content-Type: text/plain; charset=ISO-8859-1&lt;br /&gt;
&lt;br /&gt;
== Grafische Darstellung ==&lt;br /&gt;
&lt;br /&gt;
Das Vorhandensein von Software für Zeichenkodierung und -dekodierung garantiert noch nicht die richtige Darstellung auf dem Computerbildschirm. Zu diesem Zweck muss auch eine [[Schriftart]] verfügbar sein, die die Zeichen des Zeichensatzes enthält.&lt;br /&gt;
&lt;br /&gt;
== Differenzierung der Begriffe durch Einführung des Unicodes ==&lt;br /&gt;
&lt;br /&gt;
Mit Einführung des [[Unicode]]s mussten die Zeichen durch mehr als ein Byte dargestellt werden, und es wurden genauere Begriffe notwendig. Derzeit werden im Deutschen die Begriffe &amp;#039;&amp;#039;Zeichensatz&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Code&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Kodierung&amp;#039;&amp;#039;, &amp;#039;&amp;#039;encoding&amp;#039;&amp;#039; manchmal synonym, manchmal differenzierend verwendet. Im Englischen existieren bereits klare Differenzierungen:&lt;br /&gt;
&lt;br /&gt;
* Ein &amp;#039;&amp;#039;Zeichensatz&amp;#039;&amp;#039; (&amp;#039;&amp;#039;character set&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;character repertoire&amp;#039;&amp;#039;) ist eine Menge &amp;#039;&amp;#039;S&amp;#039;&amp;#039; verschiedener Schriftzeichen.&lt;br /&gt;
* Eine &amp;#039;&amp;#039;Codemenge&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;Coderaum&amp;#039;&amp;#039; (&amp;#039;&amp;#039;code space&amp;#039;&amp;#039;) ist eine Menge &amp;#039;&amp;#039;M&amp;#039;&amp;#039; [[Natürliche Zahlen|numerischer Werte]], die zum Kodieren von Zeichen verfügbar sind.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://unicode.org/glossary/#codespace |titel=https://unicode.org/glossary/#codespace |abruf=2024-05-04}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Ein &amp;#039;&amp;#039;Zeichencode&amp;#039;&amp;#039; (&amp;#039;&amp;#039;ccs&amp;#039;&amp;#039;, &amp;#039;&amp;#039;coded character set&amp;#039;&amp;#039;, &amp;#039;&amp;#039;codepage&amp;#039;&amp;#039;) ist ein Zeichensatz &amp;#039;&amp;#039;S&amp;#039;&amp;#039; mit einer Codemenge &amp;#039;&amp;#039;M&amp;#039;&amp;#039; und einer [[Injektivität|injektiven]] Abbildung der Schriftzeichen in &amp;#039;&amp;#039;S&amp;#039;&amp;#039; auf die Zahlen in &amp;#039;&amp;#039;M.&amp;#039;&amp;#039; (→ keine mehrfache Zuordnung, Bildmenge &amp;#039;&amp;#039;S&amp;#039;&amp;#039; ≤ Zielmenge &amp;#039;&amp;#039;M&amp;#039;&amp;#039;)&lt;br /&gt;
* Ein &amp;#039;&amp;#039;Codepunkt&amp;#039;&amp;#039; (&amp;#039;&amp;#039;[[codepoint]]&amp;#039;&amp;#039;) ist ein einzelner Wert aus der Codemenge &amp;#039;&amp;#039;M&amp;#039;&amp;#039;.&amp;lt;ref&amp;gt;https://unicode.org/glossary/#code_point  Abgerufen am 4. Mai 2024.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Ein &amp;#039;&amp;#039;codiertes Zeichen&amp;#039;&amp;#039; (&amp;#039;&amp;#039;encoded character&amp;#039;&amp;#039;) ist ein Zeichen aus &amp;#039;&amp;#039;S&amp;#039;&amp;#039; zusammen mit seinem Codepunkt aus &amp;#039;&amp;#039;M&amp;#039;&amp;#039;. Ein Text wird durch die Codepunkte seiner Schriftzeichen dargestellt, also als Sequenz von Zahlen aus &amp;#039;&amp;#039;M.&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;https://unicode.org/glossary/#encoded_character Abgerufen am 4. Mai 2024.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Als nächstes muss man die Darstellung der Codepunkte im Rechner festlegen (&amp;#039;&amp;#039;encoding&amp;#039;&amp;#039;):&lt;br /&gt;
&lt;br /&gt;
* Eine &amp;#039;&amp;#039;Codeeinheit&amp;#039;&amp;#039; (&amp;#039;&amp;#039;code unit&amp;#039;&amp;#039;) ist die Speichergröße für die Codepunkte mit der geringsten Größe, z.&amp;amp;nbsp;B. 8&amp;amp;nbsp;Bits für [[UTF-8]] und 16&amp;amp;nbsp;Bits für [[UTF-16]].&amp;lt;ref name=&amp;quot;Unicode glossary&amp;quot;&amp;gt;{{Internetquelle |url=http://www.unicode.org/glossary |titel=Glossary of Unicode Terms |abruf=2021-01-18}}&amp;lt;/ref&amp;gt;  Ein Codepunkt wird durch ein oder mehrere Codeeinheiten dargestellt.&lt;br /&gt;
* Mit &amp;#039;&amp;#039;encoding form&amp;#039;&amp;#039; (&amp;#039;&amp;#039;character encoding form&amp;#039;&amp;#039;, &amp;#039;&amp;#039;cef&amp;#039;&amp;#039;) bezeichnet man eine Abbildung der Codepunkte auf Codeeinheiten&amp;lt;ref name=&amp;quot;Unicode glossary&amp;quot; /&amp;gt;, z.&amp;amp;nbsp;B. UTF-16. Jedem Codepunkt wird eine Codeeinheit oder eine Folge von mehreren Codeeinheiten zugeordnet, wobei die Länge nicht für alle Codepunkte gleich sein muss.&lt;br /&gt;
* Mit &amp;#039;&amp;#039;encoding scheme&amp;#039;&amp;#039; (&amp;#039;&amp;#039;character encoding scheme&amp;#039;&amp;#039;, &amp;#039;&amp;#039;ces&amp;#039;&amp;#039;) bezeichnet man Kombination von &amp;#039;&amp;#039;encoding form&amp;#039;&amp;#039; und der Byte-Reihenfolge (&amp;#039;&amp;#039;big-endian&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;little-endian&amp;#039;&amp;#039;), mit der eine &amp;#039;&amp;#039;Codeeinheit&amp;#039;&amp;#039; abgelegt wird; z.&amp;amp;nbsp;B. UTF-16LE.&lt;br /&gt;
&lt;br /&gt;
In einfachen Fällen gibt es nicht mehr als 256&amp;amp;nbsp;=&amp;amp;nbsp;2&amp;lt;sup&amp;gt;8&amp;lt;/sup&amp;gt; Codepunkte, so dass man jeden Codepunkt in einem [[Byte]] speichern kann, z.&amp;amp;nbsp;B. bei Verwendung eines der in [[ISO&amp;amp;nbsp;8859]] definierten Zeichencodes. Mit Unicode ist das nicht mehr möglich, da &amp;#039;&amp;#039;S&amp;#039;&amp;#039; weit mehr als 256&amp;amp;nbsp;Zeichen enthält. Häufige Encodings sind UTF-8, UTF-16, UCS-2 und UTF-32.&lt;br /&gt;
&lt;br /&gt;
Bei [[UTF-16]] (cef) werden die Codepunkte zwischen 0 und 2&amp;lt;sup&amp;gt;16&amp;lt;/sup&amp;gt;−1 in zwei und alle größeren in vier Byte abgespeichert. Wie bei allen &amp;#039;&amp;#039;encodings&amp;#039;&amp;#039; mit mehr als einem Byte Elementlänge gibt es mindestens die zwei Schemen(ces) UTF-16BE ([[Byte-Reihenfolge|big-endian]]) und UTF-16LE (little-endian), die sich in der Reihenfolge der Bytes in einer Codeeinheit unterscheiden.&lt;br /&gt;
&lt;br /&gt;
Bei [[UTF-32]] verwendet man immer vier Byte für jeden Codepunkt, und [[UTF-8]] verwendet je nach Codepunkt zwischen ein und vier Bytes: die Codepunkte 0 bis 127 werden in einem einzigen Byte gespeichert, so dass diese Darstellung bei den meisten Texten mit lateinischem Buchstaben platzsparend ist, denn die Zeichen mit diesen Codepunkten (Zeichen des [[American Standard Code for Information Interchange|ASCII]]) kommen mit Abstand am häufigsten vor.&lt;br /&gt;
Weitere Verfahren sind etwa: [[Standard Compression Scheme for Unicode|SCSU]], [[Binary Ordered Compression for Unicode|BOCU]] und [[Punycode]]. Komplexe Schemen können zwischen mehreren Varianten wechseln (ISO/IEC 2022).&lt;br /&gt;
&lt;br /&gt;
Um die Reihenfolge der Bytes in einer &amp;#039;&amp;#039;Codeeinheit&amp;#039;&amp;#039; unmissverständlich anzugeben, wird oft ein &amp;#039;&amp;#039;BOM&amp;#039;&amp;#039; (&amp;#039;&amp;#039;byte order mark&amp;#039;&amp;#039;) vorangestellt (&amp;lt;code&amp;gt;EF&amp;amp;nbsp;BB&amp;amp;nbsp;BF&amp;lt;/code&amp;gt; bei UTF-8; &amp;lt;code&amp;gt;FF&amp;amp;nbsp;FE&amp;lt;/code&amp;gt; bei UTF-16LE; &amp;lt;code&amp;gt;FE&amp;amp;nbsp;FF&amp;lt;/code&amp;gt; bei UTF-16BE).&lt;br /&gt;
&lt;br /&gt;
Eine &amp;#039;&amp;#039;[[Glyphe]]&amp;#039;&amp;#039; ist eine grafische Darstellung eines einzelnen Schriftzeichens.&lt;br /&gt;
&lt;br /&gt;
Beispiel: Das chinesische Schriftzeichen für Berg (山 &amp;#039;&amp;#039;[[shān]]&amp;#039;&amp;#039;) hat im Unicode den Codepunkt U+5C71 und benötigt zur Darstellung 15&amp;amp;nbsp;Bit. Mit UTF-16 als cef wird es als eine Codeeinheit abgelegt. Mit ces Big-endian steht &amp;lt;code&amp;gt;5C&amp;amp;nbsp;71&amp;lt;/code&amp;gt; im Speicher, mit Little-endian &amp;lt;code&amp;gt;71&amp;amp;nbsp;5C&amp;lt;/code&amp;gt;. Mit UTF-8 stehen die drei Codeeinheiten &amp;lt;code&amp;gt;E5&amp;amp;nbsp;B1&amp;amp;nbsp;B1&amp;lt;/code&amp;gt; im Speicher.&lt;br /&gt;
&lt;br /&gt;
Die weitaus meisten Texte sind in einer der drei Unicode-encodings UTF-8, UTF-16BE oder UTF-16LE gespeichert, was den Umgang mit Texten wesentlich erleichtert.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Code]]&lt;br /&gt;
* [[Chinesische Zeichenkodierung]]&lt;br /&gt;
* [[Mojibake]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Jacques André: &amp;#039;&amp;#039;Caractères numériques: introduction.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Cahiers GUTenberg.&amp;#039;&amp;#039; Bd. 26, Mai 1997, {{ISSN|1257-2217}}, S. 5–44, (in französischer Sprache).&lt;br /&gt;
* Yannis Haralambous: &amp;#039;&amp;#039;Fonts &amp;amp; encodings. From Unicode to advanced typography and everything in between.&amp;#039;&amp;#039; Übersetzt von P. Scott Horne. O’Reilly, Beijing u. a. 2007, ISBN 978-0-596-10242-5 (in englischer Sprache).&lt;br /&gt;
* Peter Karow: &amp;#039;&amp;#039;Digitale Schriften. Darstellung und Formate.&amp;#039;&amp;#039; 2. verbesserte Auflage. Springer, Berlin u. a. 1992, ISBN 3-540-54917-X.&lt;br /&gt;
* Mai-Linh Thi Truong, Jürgen Siebert, [[Erik Spiekermann]] (Hrsg.): &amp;#039;&amp;#039;FontBook. Digital Typeface Compendium&amp;#039;&amp;#039; (= &amp;#039;&amp;#039;FontBook&amp;#039;&amp;#039; 4). 4. überarbeitete und erweiterte Auflage. FSI FontShop International, Berlin 2006, ISBN 3-930023-04-0 (in englischer Sprache).&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* Joel Spolsky: &amp;#039;&amp;#039;[http://www.joelonsoftware.com/articles/Unicode.html The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)]&amp;#039;&amp;#039; (&amp;#039;&amp;#039;[http://www.bitloeffel.de/DOC/joelonsoftware/Unicode_de.html deutsch]&amp;#039;&amp;#039;)&lt;br /&gt;
* [http://www.kalytta.com/tools.php Character Set Converter] – Windowsprogramm zum Konvertieren von Zeichensätzen.&lt;br /&gt;
* [https://www.cqse.eu/en/blog/no-such-thing-as-plain-text/ No Such Thing As Plain Text]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Zeichenkodierung| ]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Wassermaus</name></author>
	</entry>
</feed>