Les fondements de l'informatique

Informations

Communiquées, stockées et transformées, les informations comptent parmi les 4 grands concepts sur lesquels repose l’informatique.
L’Homme calcule depuis plus de 2000 ans avec 10 chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. On parle alors de base 10 (décimale). Les nombres sont constitués de paquets. Par exemple, 5398 exprime un entier naturel formé de 4 paquets : 1 paquet de 8 unités, 1 paquet de 9 dizaines, 1 paquet de 3 centaines et un dernier de 5 milliers.

En informatique, on utilise la base 2, un système de numération dit binaire qui ne possède que 2 chiffres : 0 et 1. On utilise le même principe de paquets. Par exemple, le nombre treize s’écrit 1101. De droite à gauche, 1 unité, 0 deuzaine, 1 quatraine et 1 huitaine. Ainsi, le nombre 13 est formé d’1 huitaine, 1 quatraine et 1 unité (8 + 4 + 1).

À eux seuls, les deux nombres 0 et 1 permettent à un ordinateur de représenter du texte, des images et des sons !
D’autres civilisations plus anciennes ont utilisé d’autres bases : les sumériens utilisaient la base 60 (sexagésimale), encore utilisée dans le système horaire actuel pour les minutes et les secondes ; les anglo-saxons ont utilisé jusqu’en 1960 la base 12 (duodécimale) dans leur système monétaire (un shilling = 12 pences).

Algorithmes

Les algorithmes comptent parmi les 4 grands concepts sur lesquels repose l’informatique.

Pour qu’un ordinateur exécute des tâches, il doit appliquer à des informations (images, textes, nombres, …) des procédures écrites par un utilisateur. Ces procédures, qu’on appelle algorithmes sont comme des recettes de cuisine : il faut appliquer fidèlement les instructions les unes après les autres, jusqu’au bout.

Mais pour les appliquer, pas besoin d’un ordinateur ! Dans l’Égypte antique, on résolvait déjà la plupart des problèmes géométriques de partage de terrains agricoles en utilisant des algorithmes. Le mot « algorithmes » vient d’ailleurs du savant perse Al-Khwarizmi, né en 789, c’est à dire plus de 1000 ans avant que les plans des premiers types de machines mécaniques pouvant les exécuter ! Lorsque l’on écrit un algorithme, il y a plusieurs choses auxquelles il faut faire attention. Est-on sûr que l’ordinateur va toujours réussir à l’exécuter jusqu’au bout ? Est-on certain que lorsque l’on obtient un résultat, il s’agit bien de celui souhaité ? Est-il possible de trouver un autre algorithme qui donnera un résultat plus rapidement ? De combien de mémoire a-t-on besoin pour l’exécuter ? C’est à ces questions que l’algorithmique cherche à répondre.

Langages

Un ordinateur peut faire bien des choses, mais encore faut-il les lui expliquer ! Et pour cela, il est nécessaire de s’exprimer dans un langage suffisamment clair et explicite. Cette notion de langage est l’un des 4 grands concepts sur lesquels repose l’informatique.

Nos langues sont malheureusement bien trop complexes pour qu’un ordinateur puisse les comprendre. En effet une machine ne peut lire que des 0 et des 1 (des bits), mais pour un humain, écrire sous cette forme est très difficile car il est facile de confondre 001001101 et 001101001…

C’est pour cela que l’on a inventé les langages informatiques, qui sont des intermédiaires bien moins ambigus que le français, mais bien plus faciles à apprendre pour un humain que le binaire.

Comme dans le langage naturel (celui utilisé par l’Homme), le langage informatique utilise une grammaire spécifique définie grâce aux travaux de Noam Chomsky. Cette grammaire précise comment combiner des opérations élémentaires simples (appelées instructions) pour construire un programme. C’est le compilateur qui traduit ensuite les instructions de l’utilisateur pour les rendre compréhensibles par l’ordinateur.

Il existe beaucoup de langages de programmation, parmi lesquels Java, C, Python, Caml, Fortran, Cobol, etc.

C’est une femme, Ada Lovelace, qui a écrit le premier programme informatique sur la machine analytique, un ancêtre de l’ordinateur, inventée par Charles Babbage en 1834 !

Machines

Les machines à calculer, appelées plus communément ordinateurs, sont présentes partout autour de nous : dans nos téléphones, nos voitures nos maisons…. et même jusque dans nos réfrigérateurs ! Zoom sur la notion de machines, un des 4 concepts sur lesquels repose l’informatiques.

Depuis des milliers d’années, l’Homme utilise des outils pour l’aider à calculer. Il a d’abord utilisé sa main pour compter sur ses doigts, puis a créé d’autres outils : boulier, règle à calcul, cartes perforées… Puis sont apparus les calculateurs mécaniques programmables, motorisés au 19e siècle grâce à l’électricité. En 1946, l’ENIAC premier ordinateur électronique, peut effectuer 100 000 additions par seconde ! Les ordinateurs ont acquis depuis une bien meilleure puissance de calcul, mais la manière dont ils sont encore majoritairement conçus aujourd’hui repose sur une architecture inventée en 1945 par le mathématicien et physicien John Bon Neumann. Cette architecture sépare le processeur ( qui effectue les calculs) de la mémoire (qui stocke leurs résultats), le tout étant relié par un dispositif de transmission de données appelé bus de communication.

Toutes ces machines fonctionnent grâce à des circuits électriques élémentaires appelés portes logiques, complétées par d’autres circuits comme les mémoires. En combinant ces circuits élémentaires, il est possible de produire des machines capables d’effectuer des opérations de plus en plus complexes (additions, multiplications,…) jusqu’à arriver aux ordinateurs que l’on connaît.

Actuellement des scientifiques tentent de concevoir un nouveau type de machines, basées sur la physique quantique, qui pourraient réaliser en quelques semaines des calculs qu’un ordinateur traditionnel mettrait aujourd’hui plus de 10 000 ans à résoudre !