CRDP

Accueil > Les numéros > DocSciences 5 : Les clés de la révolution numérique

Nom de code : binaire

L’ordinateur ne comprend pas le moindre mot ! N’oublions pas que ses ancêtres sont des machines à calculer ; il faut donc lui parler dans sa langue maternelle… les chiffres !
Et pas n’importe lesquels : 0 et 1 sont ses préférés…

L’homme est un être vivant qui capte, qui stocke, qui traite, qui émet de l’information (images, sons, odeurs...). Nos sens nous permettent de les capter, notre cerveau de les stocker et de les traiter. Ainsi, nous sommes capables d’entendre une chanson, de la mémoriser, de la comparer avec d’autres, puis, si nous en faisons notre préférée du moment, de la rechanter de nombreuses fois.

Si l’on veut utiliser un ordinateur pour capter, pour traiter, pour stocker, pour émettre de l’information, il est d’abord nécessaire de la mettre sous une forme que la machine peut, non pas comprendre, mais manipuler : c’est la phase de codage, préalable et nécessaire à tout traitement informatique.

Nous sommes familiers de ces opérations de codage : quand nous écrivons ou lisons, nous utilisons un des nombreux codages basés sur des caractères (des hiéroglyphes égyptiens aux pictogrammes chinois). Quand nous comptons, nous utilisons un codage basé sur des nombres (avec, là aussi, des représentations multiples à travers les âges).

LA BASE DU CODAGE

Un ordinateur utilise l’énergie électrique pour fonctionner. Plus précisément, on distingue deux états, haut et bas, associés à deux potentiels électriques, 0 et 12 Volts. D’un point de vue logique (au sens mathématique du terme), on considère que ces deux états correspondent à deux valeurs, à deux bits : 0 (absence de courant) et 1 (présence de courant). On manipule donc des valeurs et des opérations dites « binaires » régies par des règles formelles appelées « algèbre de Boole » (Voir en bas de page). Remarquons au passage qu’un codage n’est pas seulement une représentation, mais aussi une interprétation. Prenons un exemple : en base deux, c’est-à-dire en numération binaire, le nombre 13 se décompose en 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 et s’écrit donc 1101 (cf. p. 4). Si nous souhaitons maintenant coder des entiers négatifs, une façon simple est de réserver la première valeur binaire pour stocker le signe : 0 pour + et 1 pour −. Si nous voulons coder − 9, nous l’écrirons donc 1101. On voit bien qu’une même configuration binaire peut être interprétée de plusieurs façons.

DES CHIFFRES ET DES LETTRES

Considérons maintenant un premier type d’information basique. Dès l’invention de l’informatique, les ordinateurs ont pu manipuler des textes composés de caractères, que ce soit pour la saisie des commandes sur un clavier ou pour l’impression des résultats sur le papier. Il a donc fallu adopter une convention commune qui soit utilisée par tous les ordinateurs. Ainsi, est né en 1961 le code ASCII (American Standard Code for Information Interchange) qui associe une valeur numérique à chaque caractère de l’alphabet : 65 pour A, 66 pour B… Mis au point pour traiter la langue anglaise, il fut ensuite enrichi pour coder aussi des caractères accentués.

Ce codage est très simple parce qu’il met en relation un ensemble fini de caractères avec un ensemble fini de valeurs, on parle alors d’« ensemble discret ». En revanche, si nous voulons traiter un type d’information plus complexe, par exemple une information de nature continue, comme le son, il est nécessaire d’abord de l’échantillonner, c’est-à-dire de lui associer un nombre fini de valeurs la représentant.

Symétriquement, on sait ensuite reconstruire l’information originale à partir de ces échantillons. Publié en 1993, le codage MP3 est bâti sur ce principe. Il fait partie des « codecs » (mot construit à partir de « compression-décompression  ») qui sont les procédés servant à compresser et à décompresser de l’information.

Au moment de l’encodage en MP3, on ne conserve du signal musical qu’un ensemble fini de valeurs, des échantillons, que l’on stocke sur nos disques durs ou nos clés USB. Puis, lors de la décompression, au moment de l’écoute, le logiciel reconstruit la musique à partir de ces échantillons sans que l’oreille humaine ne perçoive une quelconque perte de qualité.

On sait étendre ce principe à des données encore plus complexes comme des images. L’échantillonnage est alors réalisé sur plusieurs dimensions spatiales.

LE PIGMENT INFORMATIQUE

Prenons l’exemple des jeux vidéo qui, quelle que soit leur nature, sont tous basés sur des images affichées sur un écran. Que cet écran soit d’ordinateur ou bien de télévision, qu’il soit cathodique ou plat, sa surface est composée d’un ensemble de points élémentaires appelés « pixels » (contraction de picture element en anglais). Ces pixels sont organisés de façon très régulière en lignes et colonnes à la façon d’un tableau.

Dans le cas le plus simple, celui d’une image monochrome (pixels uniquement noirs ou blancs), on utilise un codage basique où le blanc est représenté par la valeur 0 et le noir par 1. Pour une image en couleurs, il suffit de définir une fonction associant une valeur unique à une couleur donnée (8 pour le bleu nuit, 45 pour le vert clair…). En fait, pour des raisons principalement technologiques, les couleurs sont codées à partir de 3 composantes de base : le rouge, le vert et le bleu (RVB). Ainsi, le rouge s’exprimera (1, 0, 0), le jaune (0, 1, 1)…

Au final, une image étant constituée d’un tableau de pixels et un pixel étant associé à une couleur, on en déduit facilement qu’une image est une matrice de valeurs numériques (les anglophones l’appellent bit-map). On parle alors d’image numérique, et surtout pas d’image virtuelle puisque son support lui est bien réel.


Algèbre de Boole :
Règles de calcul, inventées par George Boole en 1854, qui traduisent une pensée logique sous forme mathématique : « vrai/faux », « oui/non », « circuit ouvert/fermé » et, en binaire, « 0/1 ». Retour au texte.

En savoir plus

Sites Web :