Convertisseur ASCII en texte

Décodez les codes de caractères ASCII et découvrez où commence Unicode.

Chaque lettre que vous lisez sur l’écran représente un nombre. Le système reçoit 72, 101, 108, 108, 111 et les affiche « Hello ». C’est le code ASCII. Mais si le système rencontre 233 (le code de « é »), il ne sait pas quoi faire, car ASCII pur ne connaît que les nombres jusqu’à 127. C’est là qu’intervient Unicode.

Pourquoi ASCII s’arrête et Unicode continue

ASCII a été conçu en 1963 pour l’anglais et les symboles techniques. Les sept bits donnaient exactement 128 codes (de 0 à 127). Quand des pays non-anglais ont voulu envoyer du texte avec leurs accents et leurs caractères spéciaux, il a fallu imaginer comment les représenter.

Unicode est venu résoudre ce problème en codant plus de 140 000 caractères du monde entier. Mais pour rester compatible avec les anciens systèmes, Unicode inclut ASCII comme un sous-ensemble parfait : le code 65 reste « A » dans les deux mondes.

Quand un décodage produit du charabia

Vous trouvez en ligne une suite de nombres : « 195, 169, 108, 101 ». Vous les entrez dans un convertisseur ASCII. Vous obtenez du charabia. Pourquoi ? Parce que ces nombres ne sont pas du pur ASCII. Les valeurs 195 et 169 ne sont pas dans la plage ASCII (0-127). Elles forment ensemble le code UTF-8 pour « é ».

UTF-8 est l’encodage moderne qui représente Unicode sous forme d’une suite d’octets. Le « é » prend 2 octets (195, 169), tandis que « e » en prend 1 (101). Le piège : si on traite chaque octet comme un caractère ASCII seul, on perd la structure.

Les limites du pur ASCII

  • Aucun accent : pas de é, è, ê, ë, à, ù, c’edille.
  • Aucun symbole monétaire non-anglais : ni €, ni £, ni ¥.
  • Aucun emoji : ils relèvent tous d’Unicode.
  • Les codes HTML comme &#233 ; pour « é » contournent cette limite en utilisant une notation de secours.
  • Les Alt codes sur Windows (Alt+233 pour « é ») utilisent une autre page qui n’est pas ASCII standard.

Pratique courante : HTML et les entités

Si vous travaillez en HTML et que vous devez afficher un texte en français, vous pouvez : 1) dire au navigateur d’utiliser UTF-8 (via la balise <meta charset="utf-8">) et taper directement « é » ; ou 2) utiliser l’entité HTML &eacute;, qui fonctionne même si la page n’est pas en UTF-8. Les deux fonctionnent. La première méthode est plus moderne.

Ceux qui travaillent avec du texte importé ou du code legacy rencontrent souvent des fichiers en Latin-1 (ISO-8859-1), une extension d’ASCII à 256 caractères pour l’Europe de l’Ouest. Convertir correctement entre Latin-1 et UTF-8 reste un motif de bugs fréquent.

Questions sur ASCII, Unicode et décodage

Qu’est-ce qu’un octet, et c’est quoi le rapport avec ASCII ?

Un octet est 8 bits. ASCII utilise 7 bits, donc 1 bit est inutilisé. Les extensions ont utilisé ce 8e bit pour ajouter des caractères. Unicode, lui, utilise souvent plusieurs octets par caractère (UTF-8, UTF-16, etc.).

Si j’ai une liste de nombres, comment savoir si c’est ASCII ou UTF-8 ?

En regardant les valeurs. Si tous les nombres sont entre 0 et 127, c’est du pur ASCII. S’il y en a au-delà de 127, c’est une extension. Pour UTF-8, les nombres au-delà de 127 viennent généralement en paires ou en groupes.

Pourquoi certains fichiers s’ouvrent avec du charabia ?

Parce que le programme suppose un encodage (ISO-8859-1, UTF-8, Windows-1252) et que le fichier est en réalité dans un autre. C’est le problème classique quand on ouvre un vieux fichier texte avec un éditeur moderne.

L’ASCII minuscule et l’ASCII majuscule, c’est pareil ?

Non. « A » est le code 65, « a » est le code 97. Ils ne partagent aucun bit en commun dans leur représentation binaire. Le mythe selon lequel on peut transformer une majuscule en minuscule en changeant un seul bit vient de la table ASCII, où c’est presque vrai pour les lettres (mais pas pour tout).

Quels caractères ASCII sont vraiment impossibles à taper sur un clavier ?

Les codes 0 à 31 (commandes de contrôle) ne représentent pas des caractères affichables. Vous pouvez les insérer en copiant-collant ou en utilisant un Alt code, mais pas en tapant directement sur le clavier.

Cookie
Nous nous soucions de vos données et aimerions utiliser des cookies pour améliorer votre expérience.