En savoir plus

Du texte aux chiffres, puis aux 0 et aux 1

Un fichier texte, on dit que "c'est du texte". Mais l'ordinateur ne sait pas ce qu'est une lettre. Il ne connait que des nombres - et meme ces nombres, il les ecrit avec des 0 et des 1. Voici comment.

1. L'ordinateur ne stocke que des nombres#

Dans ta tete, la lettre A est un dessin : deux jambes et une barre. Mais dans la machine, il n'y a ni dessin, ni lettre, ni mot. Il n'y a que des nombres. La memoire d'un ordinateur, c'est un immense casier de petites cases, et chaque case contient seulement un nombre.

Alors comment ranger le mot Maya ? On se met d'accord sur une convention : "le nombre 65, ca veut dire A ; le nombre 66, ca veut dire B ; ...". Tant que tout le monde utilise la meme convention, on peut ecrire du texte avec des nombres, puis le relire. C'est exactement comme un code secret ou chaque lettre a son numero.

L'idee en une phrase
Un fichier texte, ce n'est pas des lettres : c'est une liste de nombres, plus une convention qui dit a quelle lettre correspond chaque nombre.

2. Chaque lettre est un numero#

La convention la plus connue s'appelle le code ASCII. Elle donne un numero a chaque lettre, chaque chiffre et chaque symbole du clavier. En voici une version simplifiee, juste pour voir le principe :

Quelques reperes faciles a retenir : A = 65, et les lettres se suivent (B = 66, C = 67...). L'espace porte le numero 32. Le chiffre 0 (le caractere, pas le nombre) vaut 48.

La machine a encoder : ecris un mot, vois ses nombres

En Python tu peux verifier toi-meme : ord("A") donne 65, et chr(65) redonne "A". C'est la convention en action.

print(ord("A")) # 65 print(chr(65)) # A print(ord("M")) # 77

3. Et ces nombres, en 0 et en 1#

On a dit que A = 65. Mais l'ordinateur ne sait meme pas ecrire "65" comme nous. Au plus profond, il n'a que des interrupteurs : chacun est soit eteint (0), soit allume (1). C'est tout ce qu'une puce sait faire. Un interrupteur = un bit.

Avec 8 interrupteurs cote a cote (un octet), on peut ecrire n'importe quel nombre de 0 a 255. Chaque interrupteur a une valeur : 128, 64, 32, 16, 8, 4, 2, 1. On additionne seulement ceux qui sont allumes. Manipule la machine : tape une lettre et regarde ses 8 ampoules.

Une lettre, ses 8 ampoules

Une lettre ou un chiffre :
Le voyage complet d'une lettre
A  →  le nombre 65  →  les 8 bits 01000001  →  stocke comme 8 interrupteurs dans la memoire. Quand tu ouvres le fichier, le chemin se parcourt a l'envers, et tu revois A.

C'est pour ca qu'on dit qu'un .txt et un .csv "c'est pareil" : dans les deux, ce ne sont que des octets qui representent du texte. L'extension (le truc sur les extensions) ne fait que choisir le programme qui va relire ces octets.