Diskussion:UTF-8

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 5 Monaten von RokerHRO in Abschnitt Unbeschränkt lange Byteketten
Zur Navigation springen Zur Suche springen
Zum Archiv

7-Bit-ASCII ist gleichzeitig UTF-8 und hochgradig kompatibel zu bisherigen 8-Bit-Zeichensätzen - Satz falsch?[Quelltext bearbeiten]

Entweder ist der Satz nicht deutsch oder ich verstehe ihn nicht... Im ersten Fall ist er zu korrigieren, im zweiten Fall nicht. Wie kann ein 7-Bit Zeichensatz gleichzeitig UTF-8 sein?

7-Bit-ASCII ist zu UTF-8 und zu bisherigen 8-Bit-Zeichensätzen hochgradig kompatibel (Das müßte so stimmen, da UTF-8 ja kein 8-Bit-Zeichensatz ist, da ja auch mehrere Bytes ein Zeichen darstellen können)

Und da es eigentlich um die Eigenschaften von UTF-8 geht: UTF-8 ist zu 7-Bit-ASCII und zu bisherigen 8-Bit-Zeichensätzen hochgradig kompatibel

--JackPilot (Diskussion) 10:09, 25. Feb. 2021 (CET)Beantworten

Das Problem liegt wohl darin, dass eine Aussage "X ist kompatibel zu Y" verschieden interpretiert werden kann:
1.) X ist ein Subset von Y. Daten, die im Format X vorliegen, können von Programmen, die Format Y erwarten, gelesen werden.
2.) X ist ein Superset von Y, aber wenn ein Text nur die Zeichen abbildet, die in Y enthalten sind, werden sie so abgespeichert, dass Programme, die nur Y verstehen, damit klakommen.
In unserem konkreten Fall also:
1. ASCII ist ein Subset von UTF-8. Reine ASCII-Daten werden von Programmen, die UTF-8 erwarten, problemlos verarbeitet.
2. UTF-8 ist ein Superset von ASCII. Ein UTF-8-Text, der nur ASCII-Zeichen enthält, kodiert sie so, dass auch Programme, die ASCII-Text erwarten, ihn verarbeiten können.
--RokerHRO (Diskussion) 23:38, 25. Feb. 2021 (CET)Beantworten

Deine Erklärung verstehe ich :-)

ASCII --> UTF-8 funktioniert

UTF-8 (Nur ASCII) --> ASCII funktioniert

UTF-8 (Non ASCII) --> ASCII Fehler

--JackPilot (Diskussion) 09:57, 26. Feb. 2021 (CET)Beantworten

Nichtsdestotrotz ist der Satz schwer verständlich. Und weiter oben ist es ja schon besser erklärt: UTF-8 ist in den ersten 128 Zeichen ... deckungsgleich mit ASCII. Ich nehme den Satz mal raus weil zu unklar. -- Gerd Fahrenhorst (Diskussion) 14:56, 26. Feb. 2021 (CET)Beantworten

Unbeschränkt lange Byteketten[Quelltext bearbeiten]

Der Satz »Algorithmus lässt theoretisch unbeschränkt lange Byteketten zu« könnte m. E. noch eine Erklärung vertragen, wie es weitergeht, wenn das Startbyte FF ist. Ich vermute mal, dass dann bei sieben Folgebytes das erste Folgebyte mit 100xxxxx beginnen müsste, bei acht Folgebytes mit 1010xxxx usw., aber offensichtlich wäre diese Konvention nicht, deshalb sollte man sie erwähnen, oder? Ich kann es auch gerne selbst reinschreiben, wenn mir jemand bestätigt, dass es so ist. --Philipp Sªsse (Diskussion) 08:27, 3. Nov. 2023 (CET)Beantworten

Die Formulierung im Artikel war Quatsch. Oder ließ zumindest Raum für unnötige Spekulationen. Im ursprünglichen Entwurf für UTF-8 (und den ersten Implementierungen) waren Start-Bytes bis FDhex erlaubt, die eine 6-Byte-Sequen einleiteten, mit denen insgesamt 31-Bit-Werte kodiert werden konnten. Die Werte FEhex und FFhex als Start-Byte waren nie in einem offiziellen UTF-8-Standard definiert.
Die im Artikel nachfolgende Tabelle gibt das auch so wieder.
Ich habe darum die missverständliche Formulierung im Artikel korrigiert und hoffe, es bestehen nun keine Fragen mehr. :-)
--RokerHRO (Diskussion) 08:59, 3. Nov. 2023 (CET)Beantworten
Danke! Könntest du “Entsprechend lange Bytefolgen und große Werte gelten heute als unzulässige Codes und sind …” noch etwas klarer schreiben? Also etwa “… vier Bytes lange Byteketten auf. Längere Byteketten gelten…”. Das Wort “entsprechend” könnte missverstanden werden. Gruß von der Wassermaus (Diskussion) 10:08, 3. Nov. 2023 (CET)Beantworten
Das Wort „heute“ ist wohl auch missverständlich.
  • Es meint: zurzeit
  • Also nicht: „Früher war das mal so, aber heutzutage nicht mehr …“
  • Sondern: Weil momentan nur bis 1FFFF definiert sind, kann es keine zusätzlichen Bits nutzen. Wenn aber jeder Stern in der Galaxie oder jeder Mensch auf dem Planeten seinen persönlichen Icon und Codepoint bekäme, dann doch wieder.
sind zurzeit unzulässige Codes
VG --PerfektesChaos 10:51, 3. Nov. 2023 (CET)Beantworten
Der Artikel stellt halt den aktuellen Stand dar. Mit "heute" ist gemeint: "seit der Veröffentlichung des RFC 3629 im November 2003" also vor 20 Jahren. Dieser Standard definiert bis heute UTF-8. Wenn/falls es irgendwann mal ein Update geben sollte, werden wir diesen Wikipedia-Artikel eben entsprechend anpassen. Bis dahin ist das alles Spekulation. --RokerHRO (Diskussion) 21:11, 10. Nov. 2023 (CET)Beantworten