Vous avez probablement entendu le mot 'ASCII' au moins une fois, même si vous n'êtes pas développeur. Que ce soit en naviguant sur le web et en voyant des caractères s'afficher comme une langue étrangère, ou à travers des messages d'erreur techniques comme "Le code ASCII n'est pas compatible".
Qu'est-ce qui fait que ce code ASCII est considéré comme la 'langue commune' du monde numérique? Aujourd'hui, nous allons explorer le code ASCII, un accord fondamental grâce auquel les ordinateurs comprennent notre langue humaine.
1. Les ordinateurs ne comprennent que les chiffres
Les lettres que nous voyons à l'écran, comme 'A', 'B', 'C', ne sont en réalité pas perçues par les ordinateurs comme des images ou des caractères. Les ordinateurs ne peuvent comprendre que 0 et 1 (binaire), car ils sont essentiellement des calculatrices.
Alors, comment les caractères que nous tapons sur le clavier sont-ils stockés par l'ordinateur? Il est nécessaire d'avoir un "accord" entre l'humain et l'ordinateur.
"Convenons que le nombre 65 sera appelé la lettre 'A'."
"Et que 97 sera notre 'a' en minuscule."
Ce tableau qui organise systématiquement cet accord est ce que l'on appelle le code ASCII (American Standard Code for Information Interchange). Comme son nom l'indique, c'est un code standard américain pour l'échange d'informations.
2. La structure du code ASCII : la magie des 7 bits
Le code ASCII a été établi dans les années 1960. À l'époque, les ressources informatiques étaient extrêmement limitées, il était donc crucial d'exprimer les caractères de manière aussi efficace que possible. C'est pourquoi ils ont choisi 7 bits.
-
Au total 128 caractères : Le nombre de combinaisons pouvant être exprimé avec 7 bits est $2^7$, soit un total de 128 allant de 0 à 127.
-
Composants :
-
Caractères de contrôle (0~31) : Ils ne s’affichent pas à l’écran mais gèrent la communication, le saut de ligne (Line Feed), la tabulation (Tab), etc.
-
Caractères affichables (32~127) : Ils incluent des symboles spéciaux, des chiffres (0-9), des lettres majuscules latines (A-Z) et des lettres minuscules (a-z).
-
3. Pourquoi utilisons-nous encore l'ASCII?
Bien que la technologie moderne ait progressé de manière incroyable, le code ASCII demeure les racines du monde numérique. Quelle en est la raison?
1) Le roi de la compatibilité
Le format d'encodage de caractères le plus moderne et largement utilisé, UTF-8, est parfaitement compatible avec le code ASCII. Dans un document UTF-8, le 'A' en anglais possède exactement les mêmes données que le code ASCII. Grâce à cela, aucun problème n'apparaît lors des échanges de données en anglais entre des systèmes très anciens et les plus récents.
2) Les bases de la programmation
Lorsqu'il s'agit de manipuler des caractères en programmation, les règles des valeurs ASCII sont très utiles.
-
'A' est 65 et 'a' est 97.
-
La différence entre ces deux valeurs est exactement 32.
Les développeurs utilisent ces règles numériques pour convertir les majuscules en minuscules et organiser les données efficacement.
3) Les données les plus légères
Comme tous les caractères sont traités en 1 octet, les documents composés uniquement de lettres anglaises (latines) ont une taille très petite et une vitesse de traitement rapide. C'est la raison pour laquelle la plupart des protocoles de communication Internet dans le monde (comme HTTP) sont basés sur l'ASCII.
4. L'héritage de l'ASCII : L'art ASCII (ASCII Art)
Le code ASCII a permis de créer une culture au-delà d'un simple protocole de communication. À l'époque des environnements de terminal qui ne supportaient pas les graphiques, les gens dessinaient avec uniquement les caractères du clavier. Dans le drame japonais "電車男" (Densha Otoko), diffusé à la fin des années 1990 et au début des années 2000, un personnage se distingue par la création d'énormes œuvres d'art en ASCII.
|\---/|
| o_o |
\_^_/
Cette culture qui permet de produire des expressions pleines d'esprit avec seulement 128 caractères reste encore présente aujourd'hui dans les commentaires des développeurs dans le code source ou leur signature d'e-mail.

5. La limite décisive de l'ASCII : Le monde n'utilise pas seulement l'anglais
Cependant, l'ASCII présente un inconvénient majeur. Il s'appelle même "Standard américain (American Standard)".
Avec seulement 7 bits, il n'y a absolument aucun espace pour contenir des caractères asiatiques comme les kanji, hangul et japonais (CJK), et d'autres caractères de cultures qui n'utilisent pas l'alphabet latin tels que l'arabe, l'hindi ou le cyrillique.
À cause de cela, dans le passé, chaque sphère linguistique devait créer son propre système d'encodage (comme EUC-KR, Shift_JIS, Big5, etc.). Si des pays utilisant des systèmes différents échangeaient des données, les caractères s'affichaient souvent de manière illisible, comme 뷁 ou □□, un phénomène connu sous le nom de mojibake (文字化け).
Finalement, il est devenu nécessaire d'avoir une nouvelle norme capable d'unifier tous les caractères du monde, et c'est ainsi qu'est né le Unicode. Fait intéressant, la toute première position (de 0 à 127) de ce vaste Unicode est toujours occupée par le code ASCII, en hommage au début de l'histoire numérique.
Résumé
-
Définition : Un accord standard initial qui associe les chiffres (0~127) aux caractères.
-
Caractéristiques : Contient uniquement l'alphabet latin, des chiffres et des caractères spéciaux de base.
-
Limites : Ne peut pas représenter des caractères non latins comme le CJK (chinois, japonais, coréen) ou l'arabe.
Le code ASCII n'est pas simplement une série de chiffres. C'est l'effort et l'efficacité des premiers informaticiens qui ont tenté de traduire le langage humain en langage machine, et il constitue l'alphabet le plus fondamental de l'ère numérique.
Prévision du prochain article
Nous allons quitter l'espace confiné du code ASCII pour examiner le principe de l'Unicode, un énorme accord qui comprend toutes les langues du monde et même des emojis (😊). Si vous vous demandez pourquoi vos caractères se cassent, attendez-vous à lire le prochain post!
Aucun commentaire.