1. Introduction¶
Dans ce chapitre on s’intéresse à la manière dont un ordinateur représente l’information afin de pouvoir la traiter automatiquement.
Le saviez-vous ?
Le mot informatique est la concaténation de «information» et «automatique».
En informatique, l’information est un élément de connaissance (texte, image, son, …) susceptible d’être numérisé, stocké et/ou transmis à l’aide d’un support et d’un mode de codification normalisé.
Une des questions centrales de ce chapitre est d’identifier les caractéristiques de la transformation appliquée au réel donnant une représentation suffisamment précise pour permettre aux ordinateurs de la traiter de manière fiable.
Mais avant de découvrir le code choisi pour représenter l’information à l’intérieur d’un ordinateur, passons en revue un certain nombre d’alphabets et de systèmes de représentation de l’information qui ont été utilisés au cours de l’histoire.
1.1. Alphabets et systèmes de communication¶
Alphabets anciens et traditionnels¶
Depuis qu’elle existe, l’espèce humaine a créé de nombreux alphabets, ainsi que de nombreux systèmes de communication. Depuis les sumériens qui utilisaient des pictogrammes et l’écriture cunéiforme, en passant par les égyptiens et leurs hiéroglyphes, les chinois et leurs idéogrammes pour arriver aux symboles de nos alphabets actuels, l’espèce humaine n’a eu de cesse de mettre au point des systèmes pour représenter l’information et la transmettre.
Différentes représentations de la même information
Nombres en chiffres classiques, romains, lettres
Mot en différentes langues, morse, idéogrammes
Symboles danger, stop, paix
On trouve des exemples célèbres et bien documentés de systèmes de communication depuis l’Antiquité grecque.
Le carré de Polybe¶
Utilisé en Grèce Antique pour transmettre des messages entre cités voisines, ce système utilisait des torches enflammées en guise de signaux.
Cinq torches «à gauche», cinq torches «à droite», étaient séparées par un espace suffisamment grand pour être identifiables à longue distance. Une torche pouvait être soit allumée, soit éteinte. Le nombre de torches allumées à gauche, de 1 à 5, représentait la ligne d’un tableau de décodage, le nombre de torches allumées à droite représentait la colonne de ce même tableau.
Anecdote
Dans l’exemple ci-dessus, on utilise les lettres de l’alphabet, mais il est plus probable qu’à l’époque les cités voisines utilisaient des expressions toutes faites dans chacune des cases, comme «l’ennemi est à nos portes» ou «envoyez-nous de l’aide».
Le télégraphe de Chappe¶
Grâce à l’invention du télescope au XVIIe siècle, les distances avec lesquelles les villes pouvaient communiquer entre elles ont largement augmenté. L’information a commencé à circuler à une vitesse étonnante. Des messages pouvaient être transmis sur une longue distance par l’intermédiaire de relais espacés d’une dizaine de kilomètres et situés sur des hauteurs.
Claude Chappe, inventeur français, développe en 1794 un télégraphe capable de relier des villes entre elles sur plusieurs dizaines de kilomètres grâce à un système de bras mobiles, qui ressemblent aux signaux que pourrait faire un être humain sur le tarmac d’un aéroport.
Anecdote
Le piratage du télégraphe Chappe est un détournement du réseau de télégraphie optique français entrepris par deux hommes d’affaires bordelais, Louis et François Blanc, entre 1834 et 1836, afin de connaître avant tout le monde le prix de certaines actions à la Bourse de Paris.
Le piratage a été rendu possible par la corruption d’un agent télégraphique de Tours, qui ajoutait discrètement le prix actuel des actions aux messages envoyés par l’État.
Le Morse¶
Grâce à la découverte de l’électricité au début du XIXe siècle, et les améliorations techniques faites pour la capturer et la transmettre, on a pu utiliser le réseau électrique pour envoyer des messages. En 1832, nait le code Morse, qui s’impose rapidement comme un standard de communication.
Bien sûr, le Morse peut être utilisé aussi avec des signaux lumineux, ou sonores, mais la plupart du temps il est utilisé sur les lignes électriques qui se développent à l’époque.
Vous trouverez ici un traducteur du langage naturel vers le Morse.
Micro-activité
Amusez-vous avec votre assistant vocal en lui demandant par exemple : «Salut Siri. Quel est le code Morse pour j’ai envie de dormir ?».
Si vous observez le code Morse, vous remarquerez que les signaux utilisés pour représenter les lettres ne suivent pas simplement l’ordre de l’alphabet, puisqu’il est plus économique de coder les lettres les plus fréquentes avec les codes les plus courts.
Le saviez-vous ?
À l’époque où les transmissions télégraphiques en code Morse sont payées à l’unité d’information, donc la lettre, des codex spécifiques sont développés par les utilisateurs pour utiliser le moins de caractères possibles. C’est exactement la même situation qui s’est produite avec l’arrivée des SMS dans les années 1990, où les utilisateurs payaient au caractère. Aujourd’hui, même s’il est rare de payer à l’unité d’information, ce genre de raccourcis existent encore, mais surtout pour un avantage de vitesse.
Le désavantage de ces codex d’abréviations est leur faible degré de standardisation. Comment savoir quel codex est utilisé ? Et surtout : comment faire pour que tout le monde s’accorde sur le codex ?
La réponse à cette question est l’apport le plus essentiel de l’introduction du code binaire, et des standards de représentation de l’information qui l’ont suivi : un langage pour les contrôler tous.
Le binaire¶
À partir du moment où le Morse a été inventé comme système de codage et de transmission de l’information par l’électricité, il ne manquait plus que quelques éléments pour commencer à construire les ordinateurs.
Une pièce technologique, qui permettrait de transmettre pour ainsi dire cette information : le transistor (voir architecture des ordinateurs).
Un code plus élaboré que le Morse pour pouvoir représenter tous les types d’informations possibles à partir d’une alternative entre deux états : courant ou pas courant ; allumé ou éteint ; vrai ou faux ; 1 ou 0.
Ce code est le code binaire. Il permet, en utilisant uniquement des 0 et des 1, de représenter n’importe quel type d’information : des chiffres, du texte, des images, du son, des vidéos, etc.