web-dev-qa-db-fra.com

ASCII vs Unicode + UTF-8

Je lisais Le minimum absolu de Joel Spolsky sur le codage des caractères . Je crois comprendre que ASCII est un schéma de point de code + codage, et à l'époque moderne, nous utilisons Unicode comme schéma de point de code et UTF-8 comme schéma de codage. Est-ce correct ?

38
Quest Monger

Oui, sauf que UTF-8 est un schéma de codage an. D'autres schémas de codage incluent UTF-16 (avec deux ordres d'octets différents) et UTF-32. (Pour une certaine confusion, un schéma UTF-16 est appelé "Unicode" dans le logiciel Microsoft.)

Et, pour être exact, l'American National Standard qui définit ASCII spécifie une collection de caractères et leur codage en quantités de 7 bits, sans spécifier un codage de transfert particulier en termes d'octets. Dans le passé , il a été utilisé de différentes manières, par exemple pour que cinq ASCII soient regroupés dans une unité de stockage de 36 bits ou pour que les octets de 8 bits utilisent les octets supplémentaires à des fins de vérification (bit de parité) ou pour le contrôle des transferts. Mais de nos jours ASCII est utilisé pour qu'un caractère ASCII soit codé comme un octet de 8 bits avec le premier bit mis à zéro). est le schéma de codage standard de facto et impliqué dans un grand nombre de spécifications, mais à proprement parler ne fait pas partie de la norme ASCII.

29
Jukka K. Korpela

Dans les temps modernes, ASCII est maintenant un sous-ensemble de UTF-8, pas son propre schéma. UTF-8 est rétrocompatible avec ASCII.

39
Remy Lebeau