La séquence
Apprenons à notre machine à transformer un caractère majuscule en
caractère minuscule correspondant. Rappelons d'abord que, dans les
codages standards comme
ASCII
et
UTF8
, le caractère
A
majuscule
a pour nom "Latin Capital Letter A" et pour numéro
65
. Le caractère
a
minuscule a pour numéro
97
. Croyez-nous sur parole,
65
s'écrit
01000001
et
97
s'écrit
01100001
. C'est remarquable car, pour
passer de l'un à l'autre, seul le 6ème chiffre en partant de la droite,
un
0
, est transformé en
1
. Ceci est vrai pour toutes les lettres
de notre alphabet latin et le passage de majuscule à minuscule
consiste juste à changer un
0
par un
1
à la sixième position. L'unité de calcul
sait
réaliser cette opération. Notons le lien très
fort entre le codage, très astucieux qui a été inventé, et les capacités de la
machine. Notons aussi que changer ce 6ème chiffre correspond également
à ajouter 32 (65+32 vaut 97). Nous sommes donc capables de décrire le
traitement que doit réaliser la machine pour transformer une
majuscule, dont le code binaire est stocké dans sa mémoire à une
adresse connue, en minuscule avec l'algorithme suivant :
Accéder à l'adresse mémoire pour trouver le codage du numéro du symbole
Ajouter 32 (changer le 6ème chiffre du codage binaire de 0 en 1)
Ranger le résultat dans la mémoire à la même adresse
Nous retrouvons dans cet exemple l'organisation de la machine avec ses adresses, sa mémoire, son unité de calcul (pour ajouter 32) et son unité de contrôle. L'unité de contrôle doit juste assurer que ces 3 instructions soient réalisées successivement dans cet ordre, en séquence . Nous sommes donc arrivés à définir sur notre ordinateur un traitement ayant un sens pour nous (remplacer une majuscule par une minuscule) à partir de la représentation numérique d'une information et grâce à une combinaison d'instructions en séquence. La séquence est le premier mode de combinaison utile pour décrire des algorithmes .