Le développement de l’informatique a nécessité de nombreuses avancées dans des domaines variés tant technologiques que théoriques.
En 1642, Blaise Pascale est le premier à avoir conçu une machine à calculer mécanique, capable d’effectuer les quatre opérations élémentaires sur les entiers: addition, soustraction, multiplication, division.
Au début du XXe siècle, on commence à utiliser l’électricité pour réaliser des calculateurs.
D’abord des machines électromécaniques comme le Z3 allemand achevé en 1941. On le dit électromécanique, car il utilisait des relais électromécaniques fonctionnant à une fréquence de 5 à 10 Hz.(Source Wikipedia)
On remplace rapidement les relais électromécaniques par des tubes à vides comme dans l’ENIAC.
Le transistor est considéré comme un énorme progrès face au tube électronique : beaucoup plus petit, plus léger et plus robuste, fonctionnant avec des tensions faibles, autorisant une alimentation par piles, il fonctionne presque instantanément une fois mis sous tension, contrairement aux tubes électroniques qui demandaient une dizaine de secondes de chauffage, généraient une consommation importante et nécessitaient une source de tension élevée (plusieurs centaines de volts). Wikipedia
Au fur et à mesure que les machines évoluaient, on est venu à se poser beaucoup plus théorique: “Une machine peut-elle tout calculer?”, “Existe-t-il une machine capable de décider si une proposition mathématique est vraie ou fausse?”.
Pour répondre à ces questions, Alan Turing propose en 1937 un modèle de machine appelé aujourd’hui machine de Turing. Cette machine a les caractéristiques suivantes:
Elle possède un ruban infini que lequel on dispose des données. La machine peut lire les données, les traiter et en écrire d’autres. Au bout d’un certain temps, il se peut qu’elle s’arrête, et on peut alors lire le résultat.
Turing démontre grâce à cette machine théorique qu’il existe certains problèmes que la machine n’est pas capable de résoudre.
On considère aujourd’hui l’ordinateur comme une réalisation concrète d’une machine de Turing universelle, c’est-à-dire une machine traitant des informations et capable de prendre comme donnée n’importe quel algorithme et de l’exécuter.
Le premier ordinateur électronique conçu pour être une machine de Turing est l’EINAC réalisé en 1943. Son architecture fut décrite par John von Neumann et sert de base, à quelques améliorations près, à l’architecture de tous les ordinateurs depuis.
Cette architecture est centrée autour de deux composants principaux: