Google Play badge

ascii


ASCII : Comment les ordinateurs stockent les lettres et les symboles

La grande idée

Les ordinateurs utilisent des nombres. Les humains utilisent des lettres et des symboles. Il nous faut un intermédiaire. L'ASCII est cet intermédiaire. L'ASCII transforme chaque lettre ou symbole en un nombre. L'ordinateur stocke ce nombre. À la lecture, l'ordinateur affiche à nouveau la lettre. C'est ainsi que fonctionne le texte dans de nombreux fichiers et applications.

Pourquoi les ordinateurs ont besoin d'un code

Un ordinateur fonctionne à l'électricité. Il perçoit deux états : allumé et éteint. Ces états sont appelés bits . Un bit est soit un 0, soit un 1. Plusieurs bits combinés forment des nombres plus grands. Huit bits forment un octet . Grâce aux bits, nous pouvons compter. Le comptage nous permet de nommer les choses. Le code ASCII utilise le comptage pour nommer les lettres et les symboles.

Un bit permet deux choix. Deux bits permettent quatre choix. Mathématiquement, ce concept s'exprime par \(\;2^n\) . Pour \(n=7\) on obtient 2⁷ = 128 choix. Pour \(n=8\) \(2^8 = 256\) \(2^7 = 128\) . L'ASCII utilise 7 bits, ce qui donne 128 caractères nommés. Par la suite, des ensembles de 8 bits, soit 256 caractères, ont été créés. On parle alors d'ASCII étendu .

Que signifie ASCII ?

ASCII signifie American Standard Code for Information Interchange (Code standard américain pour l'échange d'informations) . Apparu dans les années 1960, il a été conçu pour les premières imprimantes, téléscripteurs et ordinateurs. Il attribue un numéro à chaque lettre, chiffre, espace et à certains symboles. Il attribue également des numéros spéciaux à des actions comme le saut de ligne . La première version utilisait 7 bits, soit les nombres de 0 à 127.

Que contient l'ASCII ?
Exemples de cartes simples

Remarquez une chose intéressante : les lettres minuscules ont 32 caractères de plus que leurs majuscules correspondantes. Par exemple, \(\;97 - 65 = 32\) Ainsi, « a » a 32 caractères de plus que « A », « b » a 32 caractères de plus que « B », et ainsi de suite. Cette propriété simplifie certaines tâches informatiques.

caractères de contrôle en clair

Lorsque vous appuyez sur la touche Entrée, votre ordinateur peut envoyer un saut de ligne (LF), un retour chariot (CR) ou les deux, selon le système. De nombreux outils Internet utilisent le saut de ligne. Certains anciens systèmes utilisaient simultanément le retour chariot et le saut de ligne.

Vues décimale, binaire et hexadécimale

On peut écrire les nombres de différentes manières. Le système décimal est le système de numération le plus courant, utilisant les chiffres de 0 à 9. Le système binaire n'utilise que 0 et 1. Le système hexadécimal utilise les chiffres de 0 à 9 et les lettres de A à F.

Comment le binaire produit-il 65 pour 'A' ? Regardez les bits dans 01000001. Le bit le plus à gauche vaut 128. Ensuite, 64, 32, 16, 8, 4, 2, 1. Seuls 64 et 1 sont activés. Donc \(01000001_{(2)} = 0\times128 + 1\times64 + 0\times32 + 0\times16 + 0\times8 + 0\times4 + 0\times2 + 1\times1 = 65\) .

Du clavier à l'écran

Appuyez sur une touche. Le clavier envoie un code à l'ordinateur. Le système le convertit en un numéro de caractère. Pour de nombreuses touches, ce numéro correspond au code ASCII. L'application stocke ce numéro en mémoire. Lors de l'affichage du texte, elle recherche le numéro et dessine la lettre correspondante. À l'enregistrement, les numéros sont enregistrés dans le fichier.

Comment un texte circule sur un réseau

Prenons l'exemple du message « Salut ! » . Les lettres sont H, i et !. Leurs codes ASCII sont 72, 105 et 33. En binaire, cela correspond à 01001000, 01101001 et 00100001. Le réseau envoie ces bits. Le destinataire les lit et voit les nombres correspondants. Il affiche alors à nouveau H, i et !. C'est ainsi que fonctionnent les messages texte simples.

Pages de codes ASCII étendues

On souhaitait davantage de symboles. On voulait des lettres comme é, ñ et ø, ainsi que des symboles monétaires comme €. Le jeu de 7 bits ne comportait que 128 symboles. On est donc passé à 8 bits. Avec 8 bits, on obtient \(2^8 = 256\) symboles. La moitié supérieure, de 128 à 255, était réservée aux lettres et symboles supplémentaires. Mais un problème se posait : différents groupes choisissaient des nombres différents pour ces lettres et symboles supplémentaires. Ces choix constituent les pages de codes .

Comme les pages de codes diffèrent, un même nombre peut afficher un symbole différent sur un autre ordinateur. Ce phénomène, appelé mojibake , donne l'impression de caractères étranges. C'est l'une des raisons pour lesquelles le monde est passé à Unicode.

ASCII et Unicode

Unicode est une norme majeure permettant d'afficher de nombreuses langues, des symboles mathématiques et des émojis. Elle peut contenir plus d'un million de symboles. Il existe plusieurs méthodes de stockage pour Unicode, dont l' UTF-8 , très répandue.

Combien d'octets utilise le texte ?

En ASCII, chaque caractère utilise un octet. Le mot « chat » utilise donc 3 octets. La phrase « salut maman » comporte 6 caractères, espace compris, et utilise donc 6 octets. En termes simples, \(\textrm{octets ASCII} = \textrm{nombre de caractères}\)

Ordre de tri avec ASCII

Les ordinateurs trient souvent les chaînes de caractères en fonction de leur numéro de caractère. L'ordre ASCII regroupe les éléments d'une certaine manière.

Cela signifie que Zoo précède Apple si l'on compare simplement les valeurs ASCII. Le tri se fait par valeurs numériques, et non par prononciation.

Codes ASCII courants à connaître

Notez que l' esperluette est &. Son code ASCII est 38. Le signe plus + est 43. Le signe moins - est 45.

Des utilisations concrètes dans la technologie du quotidien
Motifs ASCII qui aident
Comment créer des images avec l'ASCII

On peut créer des images uniquement à l'aide de caractères ASCII . Voici un petit visage réalisé avec des caractères ASCII.

:-) Un simple sourire
(^_^) Visage amical
o_O Surpris

Chaque face est composée uniquement de caractères comme le deux-points, le tiret et les parenthèses. Ni couleurs ni formes. Juste du texte.

L'histoire en bref, en termes simples

L'ASCII est issu des téléscripteurs et des premiers ordinateurs. En 1963, une première version fut adoptée. Elle permit à de nombreuses machines différentes de communiquer entre elles. Grâce à un code unique, une lettre comme le A représentait le même nombre partout. Cela simplifia l'envoi de messages et l'impression de textes.

Quand l'ASCII ne suffit pas

L'ASCII ne possède que 128 caractères. C'est insuffisant pour toutes les langues. Il ne peut pas afficher le chinois, l'hindi, l'arabe, ni de nombreux autres systèmes d'écriture. Il ne peut pas non plus afficher les émojis, ni de nombreux symboles mathématiques et musicaux. Pour cela, on utilise Unicode. Unicode peut afficher de nombreux systèmes d'écriture et symboles. L'UTF-8 est un format de stockage pour ces caractères. L'avantage est que tout le texte ASCII fonctionne correctement avec l'UTF-8. Les systèmes modernes peuvent donc lire facilement les anciens fichiers ASCII.

Comment les applications gèrent l'ASCII aujourd'hui

La plupart des applications attendent un encodage UTF-8. Cependant, lorsqu'un fichier ne contient que des lettres et des symboles ASCII, il reste identique en UTF-8. Les programmeurs apprécient cette simplicité. Les pages web, les API et de nombreux outils utilisent l'UTF-8, qui inclut l'ASCII sans modification.

faits numériques simples et mathématiques conviviales

L'ASCII utilise un jeu de 7 bits. Cela représente jusqu'à \(2^7 = 128\) caractères différents. Un jeu étendu sur 8 bits en \(2^8 = 256\) Si votre texte ne contient que des caractères ASCII et qu'il comporte \(n\) caractères, il utilise \(n\) octets. Dans un message très court comme « OK », \(n = 2\) Il utilise donc 2 octets lorsqu'il est stocké en ASCII ou en UTF-8.

Voir les caractères cachés

Certains caractères ASCII ont une fonction sans s'afficher. L'espace, par exemple, ne laisse aucun caractère. En revanche, LF et CR déplacent le curseur. La tabulation permet de sauter une ligne. Lorsqu'on ouvre un fichier dans un éditeur spécifique, LF peut s'afficher comme un saut de ligne (\n). Ce symbole ne fait pas partie du registre ASCII ; il s'agit d'une façon pour l'éditeur d'afficher le saut de ligne.

Des exemples simples qui paraissent réels
Éléments à surveiller
Comment les appareils utilisent l'ASCII en quelques étapes simples

Imaginez une étiqueteuse qui imprime des noms. Elle lit le nom sous forme de caractères. Elle convertit chaque caractère en un nombre ASCII. Elle stocke ces nombres en mémoire. Elle imprime les lettres en cherchant comment dessiner chaque nombre. Si elle rencontre LF (10), elle passe à la ligne suivante avant d'imprimer la suite.

Comparaison de trois façons d'écrire le code d'un caractère

Observez à nouveau le caractère « ! ». On peut écrire son code de trois manières : décimal : 33 ; binaire : 00100001 ; hexadécimal : 21. Mathématiquement, \(\;33_{(10)} = 00100001_{(2)} = 21_{(16)}\) . Chaque format représente la même valeur. Les applications choisissent le format adapté à leurs besoins. Les humains lisent généralement les nombres en décimal, tandis que les ordinateurs préfèrent le binaire. L’hexadécimal est une représentation abrégée des nombres binaires.

Pourquoi l'ASCII a-t-il duré si longtemps ?

L'ASCII est compact et lisible. Créé très tôt, il a servi de base à de nombreux outils et protocoles. Les 128 premiers codes Unicode correspondant à l'ASCII, ce système fonctionne encore aujourd'hui. C'est pourquoi vous pouvez ouvrir d'anciens fichiers texte sur un téléphone ou un ordinateur portable récent et y voir les mêmes caractères.

Mini-présentation : lecture d'un court fichier

Ouvrez un fichier contenant le texte « Hello » . Les octets sont les nombres ASCII 72 101 108 108 111. En binaire, cela donne : 01001000 01100101 01101100 01101100 01101111. L’application lit chaque nombre et affiche « Hello » à l’écran. Si le nombre suivant est 10, elle passe à la ligne suivante avant d’afficher le texte suivant. Le processus est ainsi simple et fiable.

Quand choisir uniquement l'ASCII
Symboles clés que les gens utilisent fréquemment
Vérification rapide des idées de bits avec de très petits nombres

Prenons le nombre 10. En binaire, il s'écrit 00001010. En décimal, il représente dix. En ASCII, 10 correspond à LF, le saut de ligne. Cela montre qu'un même nombre peut être représenté de différentes manières. Sa signification dépend de son utilisation. Si l'on considère qu'il s'agit d'un code de caractère, alors 10 signifie LF. Si l'on considère qu'il s'agit simplement d'un nombre de pommes, alors il représente dix pommes. Le contexte est essentiel.

Pour résumer, voici un dernier exemple.

Nous allons envoyer le mot « Soleil » d'un appareil à un autre. Les codes sont : « S » 83, « u » 117 et « n » 110. En binaire, 83 correspond à 01010011, 117 à 01110101 et 110 à 01101110. Les bits circulent sous forme de signaux marche/arrêt. L'autre appareil reconvertit les bits en nombres, puis ces nombres en lettres. Il affiche alors le mot « Soleil » . Si le code suivant est 32, il s'agit d'un espace. Si le suivant est 33, il s'agit d'un point d'exclamation (« ! »). Ces règles restent les mêmes à chaque transmission. C'est là toute la puissance d'un code partagé.

Download Primer to continue