ASCII : ex­pli­ca­tion de l’encodage de ca­rac­tères

Le code ASCII est un codage de ca­rac­tères qui définit la re­pré­sen­ta­tion des ca­rac­tères par des appareils élec­tro­niques comme les or­di­na­teurs. Pour ce faire, les dif­fé­rents ca­rac­tères sont convertis en valeurs binaires, décimales et hexa­dé­ci­males que l’or­di­na­teur peut traiter.

Nom de domaine
Votre domaine en un clic
  • 1 cer­ti­fi­cat SSL Wildcard par contrat
  • Fonction incluse Domain Connect pour une con­fi­gu­ra­tion DNS sim­pli­fiée

Qu’est-ce que ASCII ?

ASCII est un standard pour l’affichage de ca­rac­tères à travers des dis­po­si­tifs élec­tro­niques. Pour com­prendre ce que cela signifie, il faut être conscient du fonc­tion­ne­ment réel d’un or­di­na­teur : sur un or­di­na­teur, les pro­ces­seurs de calcul sont toujours basés sur le système binaire. Cela signifie que les pro­ces­seurs d’un or­di­na­teur sont dé­ter­mi­nés par des 1 et des 0. C’est pourquoi ASCII est également construit sur ce système. La norme ASCII d’origine définit dif­fé­rents ca­rac­tères à l’intérieur de 7 bits, c’est à dire sept chiffres qui indiquent 0 ou 1.

Dé­fi­ni­tion

ASCII : il s’agit d’un encodage de ca­rac­tères, l’American Standard Code for In­for­ma­tion In­ter­change, pré­cur­seur américain de l’ISO 646 (qui définit des ensembles de ca­rac­tères à l’in­ter­na­tio­nal). ASCII est un code de 7 bits dé­fi­nis­sant 128 ca­rac­tères (27). L’encodage se compose de 33 ca­rac­tères non im­pri­mables et 95 ca­rac­tères im­pri­mables et comprend des lettres, des signes de ponc­tua­tion, des chiffres ainsi que des ca­rac­tères de contrôle Unicode.

Le huitième bit, qui ap­par­tient à un octet entier, est tra­di­tion­nel­le­ment utilisé à des fins de vé­ri­fi­ca­tion. Les versions étendues basées sur ASCII utilisent pré­ci­sé­ment ce bit pour étendre les ca­rac­tères dis­po­nibles à 256 (28).

Remarque

À l’origine, le 8ème bit devait permettre de vérifier les données pour des erreurs. Le bit de parité permet au récepteur de la séquence de bits de détecter les in­co­hé­rences. Cependant, on ne peut que constater qu’une erreur s’est produite, mais pas où se trouve exac­te­ment la cause. Par con­sé­quent, le contrôle de parité n’est guère adapté à la cor­rec­tion des erreurs.

Ainsi, chaque caractère cor­res­pond à une séquence de 0 et de 1 à sept chiffres, qui peuvent être re­pré­sen­tés par un nombre décimal ou un nombre hexa­dé­ci­mal. Les ca­rac­tères ASCII peuvent être divisés en plusieurs groupes :

  • Caractère de commandes (0–31 & 127) : les ca­rac­tères de contrôle sont des ca­rac­tères non im­pri­mables. Ils sont utilisés pour trans­mettre des commandes au PC ou à l’im­pri­mante et sont basés sur la tech­no­lo­gie de télécopie. Ces ca­rac­tères per­met­tent par exemple de placer des sauts de ligne ou des ta­bu­la­tions. Bon nombre de ces ca­rac­tères ne sont plus utilisés aujourd’hui.
  • Ca­rac­tères spéciaux (32–47 / 58–64 / 91–96 / 123–126) : les ca­rac­tères spéciaux com­pren­nent tous les ca­rac­tères im­pri­mables qui ne sont ni des lettres ni des chiffres, tels que les signes de ponc­tua­tion ou les ca­rac­tères tech­niques et ma­thé­ma­tiques. ASCII inclut également le caractère blanc, qui est considéré comme un caractère non visible mais im­pri­mable, et n’ap­par­tient donc pas aux ca­rac­tères de contrôle comme on pourrait le soup­çon­ner.
  • Nombres (30–39) : les nombres com­pren­nent les dix chiffres arabes de zéro à neuf.

Lettres (65–90 / 97–122) : les lettres sont divisées en deux blocs, le premier groupe contenant les ma­jus­cules et le second les mi­nus­cules.

Conseil

Pour convertir fa­ci­le­ment dif­fé­rents ca­rac­tères en code ASCII, un coup d’œil à la table ASCII, qui contient les valeurs binaires, décimales et hexa­dé­ci­males de chaque caractère, s’impose.

Exemple : les ca­rac­tères ASCII

Avec ASCII, le système convertit les nombres binaires en ca­rac­tères im­pri­mables et non im­pri­mables selon une norme spécifiée. En jetant un coup d’œil à la table ASCII, on peut trouver pour dif­fé­rentes valeurs nu­mé­riques les ca­rac­tères qu’elles re­pré­sen­tent.

Exemple :

Le nombre binaire 01000001 peut être écrit en décimal avec le code 65 et en hexa­dé­ci­mal avec le code 41. Le caractère qui est codé avec ce nombre est un « A ». Si vous continuez à compter vers le bas, vous trouverez les lettres ma­jus­cules listées dans l’ordre al­pha­bé­tique. L’exemple du mot « ASCII » cor­res­pon­drait donc aux valeurs nu­mé­riques suivantes :

  A S C I I
binaire 01000001 01010011 01000011 01001001 01001001
décimal 65 83 67 73 73
hexa­dé­ci­mal 41 53 43 49 49
Conseil

Sous Windows, vous pouvez saisir des ca­rac­tères Unicode, et donc aussi des ca­rac­tères ASCII, à l’aide d’une com­bi­nai­son de touches. Pour ce faire, maintenez la touche Alt enfoncée et saisissez la valeur décimale du caractère à l’aide du pavé numérique.

Code ASCII : domaines d’ap­pli­ca­tion

Même aujourd’hui, ASCII est encore largement utilisé, bien qu’UTF-8 soit pro­ba­ble­ment devenu plus important pour la re­pré­sen­ta­tion du texte. Cependant, ce n’est qu’aux alentours de 2008 que l’Unicode a remplacé le codage de ca­rac­tères plus ancien dans le World Wide Web.

L’avantage d’UTF-8 est que le code est vir­tuel­le­ment rétro-com­pa­tible : ASCII est un sous-ensemble d’UTF-8 et donc les 128 premiers ca­rac­tères sont iden­tiques. Étant donné que l’ASCII peut être considéré comme le plus petit dé­no­mi­na­teur commun de la plupart des nouveaux for­mu­laires de codage, l’ancien codage est toujours utilisé dans les courriels et les URL.

Remarque

Les uti­li­sa­teurs peuvent main­te­nant aussi utiliser Unicode pour créer des emails, et les noms de domaine peuvent même être utilisés aujourd’hui grâce aux noms de domaine in­ter­na­tio­na­li­sés. Dans les deux cas, cependant, le texte doit être converti au format ASCII avant de pouvoir être transféré. Ceci est fait au­to­ma­ti­que­ment, de sorte que l’uti­li­sa­teur ne remarque rien.

De plus, l’ASCII a longtemps été utilisé à des fins plus ar­tis­tiques que tech­niques : l’art ASCII est un art qui utilise uni­que­ment des ca­rac­tères im­pri­mables de la table ASCII pour créer des images. Le spectre s’étend du lettrage aux tableaux réels en passant par des simples figures de lignes. Les artistes ASCII utilisent pour cela les dif­fé­rents niveaux de lu­mi­no­sité des ca­rac­tères in­di­vi­duels. Même les ombres peuvent être affichées de cette façon.

Bref his­to­rique du code ASCII

L’American Standards As­so­cia­tion (ASA, désormais connue sous le nom d’ANSI pour American National Standards Institute) a approuvé l’American Standard Code for In­for­ma­tion In­ter­change (ASCII) en 1963. Elle a ainsi mis en place des di­rec­tives con­traig­nantes sur la manière dont les appareils élec­tro­niques doivent re­pro­duire les ca­rac­tères. Étant donné qu’il s’agit d’une norme purement amé­ri­caine, on l’appelle souvent US-ASCII.

On peut notamment con­si­dé­rer le code Morse comme son pré­dé­ces­seur, ou encore les codages utilisés pour le télex : un code normalisé (par exemple, une séquence fixe de signaux acous­tiques) est traduit en texte. Comme les or­di­na­teurs ne peuvent pas gérer notre alphabet non plus puisque leurs pro­ces­seurs internes sont basés sur un système binaire, ASCII a été introduit.

À ce jour, la norme de ca­rac­tères n’a été que quel­que­fois modifiée afin de l’adapter aux nouvelles exigences. Ainsi, il existe des versions étendues qui utilisent un huitième Bit, de sorte que les ca­rac­tères spé­ci­fiques nationaux, comme le « ç » ou les accents, soient affichés. La norme ISO 88591-1 Latin-1, toujours très populaire, est basée sur le code ASCII.

Un chan­ge­ment entre l’alphabet latin et, par exemple, les ca­rac­tères arabes est im­pos­sible. C’est pourquoi les jeux de ca­rac­tères basés sur Unicode tels que UTF-8 sont largement répandus : Unicode offre de l’espace pour plus d’un million de ca­rac­tères dif­fé­rents. UTF-8 est également com­pa­tible avec ASCII, c’est-à-dire qu’il encode les 128 premiers ca­rac­tères de la même façon.

Aller au menu principal