• [^] # Re: Codage des caractères ?

    Posté par . En réponse à la dépêche Appel à commentaires sur le référentiel général d'interopérabilité. Évalué à 4.

    Pas de problème, normalement ;-)

    UTF-8 permet de représenter le code d'un caractère jusqu'à 21 bits, ces 21 bits sont répartis dans 4 octets.

    Il serait possible d'étendre UTF-8 pour coder jusqu'à 31 bits, mais la norme d'aujourd'hui l'interdit (cela ferai 6 octets pour les caractères de code élevé).

    En UTF-16, c'est plus compliqué, parce qu'on fait l'extension sur une plage de non-caractères (qui deviennent alors non-représentable, mais les utilise-t'on si ce sont des non-caractères), il est possible de représenter 20 bits, auquels viennent s'ajouter les 16 bits des caractères ordinaire (à l'exception de la plage des non-caractères).

    En UCS-2, on peut représenter 16 bits

    En UCS-4 on peut représenter 32 bits

    En UTF-32, qui est un sous-ensemble de UCS-4, on peut représenter un peu moins de 21 bits, (de U+0 à U+10FFFF), parce que la norme interdit d'aller plus loin.

    Finalement nous n'avons aucun mécanisme qui permettent de représenter un caractère de code arbitraire, quelque soit les extensions que nous feront à la norme Unicode si elle évolue encore.