Premier Ordinateur ?

Quel est le premier ordinateur de l’histoire ?

Demandez quel est le premier ordinateur de l’histoire et vous obtiendrez probablement plusieurs réponses : le Z3, Colossus, ENIAC, le Manchester Baby ou encore EDSAC.

À première vue, cela semble étrange. Une machine a bien dû être la première.Le problème vient du mot « ordinateur ». Faut-il qu’une machine soit programmable ? Électronique ? Numérique ? Capable de résoudre différents types de problèmes ? Doit-elle conserver son programme en mémoire comme un ordinateur moderne ?Selon le critère choisi, le vainqueur change.

Il n’existe donc pas un premier ordinateur incontestable, mais plusieurs machines qui ont chacune franchi une étape décisive vers l’ordinateur moderne.


Avant de chercher le premier, définissons « ordinateur »

Pour comparer les machines des années 1940, il faut d’abord séparer plusieurs caractéristiques que nous associons aujourd’hui naturellement dans un même appareil.

Programmable

Une machine est programmable lorsqu’on peut modifier la suite des opérations qu’elle doit effectuer sans reconstruire entièrement son mécanisme.

Le programme peut être fourni par un ruban perforé, des commutateurs, des câbles ou, plus tard, directement depuis une mémoire.

Numérique

Une machine numérique manipule des valeurs discrètes, contrairement à un calculateur analogique qui représente les grandeurs par des phénomènes continus comme des tensions ou des rotations.

Numérique ne signifie d’ailleurs pas nécessairement binaire : le Z3 utilise le binaire, alors qu’ENIAC travaille principalement en décimal.

Électronique

Une machine électronique effectue ses opérations à l’aide de composants comme les tubes à vide, beaucoup plus rapides que les relais électromécaniques.

Une machine peut donc être numérique et programmable sans être électronique.

Généraliste

Un ordinateur généraliste n’est pas construit pour résoudre un seul problème précis. En changeant son programme, on peut lui faire effectuer différents types de calculs.

Cette distinction est essentielle pour comprendre pourquoi Colossus et ENIAC ne revendiquent pas exactement la même place.

À programme enregistré

Enfin vient une idée aujourd’hui tellement normale qu’on oublie combien elle fut révolutionnaire : conserver les instructions du programme dans la mémoire de l’ordinateur.

Avant cela, changer de programme peut signifier changer un ruban, repositionner des commutateurs ou modifier des connexions électriques.

C’est ce dernier critère qui rapproche vraiment ces premières machines de l’ordinateur que nous connaissons aujourd’hui.


1941 : le Z3 de Konrad Zuse

Le Z3 est achevé par l’ingénieur allemand Konrad Zuse en 1941. Il effectue automatiquement des calculs numériques en binaire et son programme est fourni par un ruban perforé.

Sa logique repose cependant sur environ 2 300 relais électromécaniques.

Autrement dit, le Z3 calcule avec de l’électricité, mais ses opérations logiques sont réalisées par de minuscules interrupteurs mécaniques commandés électriquement. Il n’est donc pas électronique.

Le Deutsches Museum le présente comme la première machine de calcul entièrement fonctionnelle, automatique et librement programmable de ce type, et comme le premier ordinateur binaire programmable.

Le Z3 est généralement considéré comme le premier ordinateur numérique programmable automatique fonctionnel. Il n’est cependant pas électronique : ses calculs sont réalisés à l’aide de relais électromécaniques. Si l’on cherche le premier ordinateur électronique programmable, il faut donc se tourner vers une autre machine, notamment Colossus.


1944 : Colossus entre dans la course

Pendant la Seconde Guerre mondiale, les Britanniques doivent analyser les communications allemandes chiffrées par le système Lorenz.

À Bletchley Park, le mathématicien Max Newman et l’ingénieur Tommy Flowers participent au développement d’une machine extrêmement novatrice : Colossus.

Le premier Colossus devient opérationnel au début de 1944.

Cette fois, les relais cèdent largement la place aux tubes électroniques. Colossus peut traiter les informations à une vitesse inaccessible aux machines électromécaniques.

Il est également programmable, mais pas comme un ordinateur actuel. Des commutateurs et des connexions permettent de modifier les opérations exécutées.

Il possède cependant une limite majeure : Colossus a été conçu pour une tâche spécialisée de cryptanalyse. On ne pouvait pas décider un matin de l’utiliser pour gérer une entreprise ou résoudre n’importe quel problème scientifique.

Le National Museum of Computing résume bien sa position : Colossus réunit pour la première fois trois propriétés importantes — électronique, numérique et programmable — mais sa programmabilité reste limitée par rapport aux machines modernes.

Colossus est généralement considéré comme le premier ordinateur électronique numérique programmable. Mais pas comme le premier ordinateur électronique généraliste.


1945-1946 : ENIAC change encore la définition

Aux États-Unis, John Mauchly et J. Presper Eckert développent à l’université de Pennsylvanie une machine beaucoup plus imposante : ENIAC.

ENIAC devient opérationnel à la fin de 1945 et est présenté publiquement en février 1946. La machine comporte précisément 17 468 tubes à vide, ce que l’on arrondit souvent à « environ 18 000 tubes ».

Elle est électronique et numérique, mais contrairement au Z3, elle n’utilise pas principalement le binaire : ses accumulateurs travaillent en décimal.

Surtout, ENIAC est conçu comme une machine généraliste. Il avait été financé pour accélérer les calculs balistiques de l’armée américaine, mais son architecture permet d’effectuer de nombreux autres calculs scientifiques.

C’est une différence fondamentale avec Colossus.


Programmer ENIAC signifie encore manipuler la machine

ENIAC possède pourtant une faiblesse surprenante pour un lecteur moderne : dans sa conception initiale, le programme n’est pas conservé dans sa mémoire.

Pour préparer un nouveau calcul, les programmeuses doivent configurer des commutateurs et relier différentes unités à l’aide de câbles.

On ne tape donc pas :

LOAD programme
RUN

On transforme physiquement la manière dont les signaux circulent dans la machine.

Cette programmation demande une compréhension très fine du problème et du fonctionnement d’ENIAC. Les six programmeuses initiales — Jean Bartik, Betty Holberton, Kay McNulty, Marlyn Meltzer, Frances Spence et Ruth Teitelbaum — jouent ainsi un rôle essentiel dans son exploitation.

ENIAC peut changer de problème, mais changer son programme reste une opération lourde.

C’est pourquoi dire simplement : « ENIAC est le premier ordinateur » est une simplification.

Une formulation beaucoup plus précise serait : ENIAC est le premier grand ordinateur électronique numérique programmable et généraliste.


L’idée qui change tout : mettre aussi le programme en mémoire

Pendant le développement d’ENIAC, les ingénieurs comprennent déjà que cette programmation externe constitue un obstacle.

Une idée beaucoup plus puissante apparaît : et si les instructions étaient stockées dans une mémoire électronique comme les données ?

Le programme devient alors lui-même une information manipulable par la machine.

Avant :

Programme → câbles / commutateurs
Données   → mémoire ou dispositifs d’entrée

Avec le programme enregistré :

Mémoire
├── instructions
└── données

Changer de programme ne nécessite plus de recâbler la machine. Il suffit de charger d’autres instructions.

Cette idée est formalisée en 1945 dans le célèbre First Draft of a Report on the EDVAC, rédigé par John von Neumann à partir des discussions autour du projet EDVAC auxquelles participent notamment Eckert, Mauchly et d’autres membres de l’équipe.

Elle donnera naissance à ce que l’on appelle couramment l’architecture de von Neumann.

Il faut toutefois être précis : l’idée du programme enregistré ne peut pas être attribuée simplement à une seule personne. Le rapport de von Neumann joue un rôle immense dans sa diffusion, mais il s’inscrit dans des travaux collectifs et dans des réflexions antérieures sur les machines programmables.


Le programme devient une donnée comme les autres

Le changement paraît subtil, mais ses conséquences sont considérables.

Une instruction peut désormais être représentée par un nombre en mémoire :

00110110 01001011

Pour le processeur, une suite de bits peut représenter une valeur numérique ou une instruction selon la manière dont elle est interprétée.

C’est l’un des fondements de l’informatique moderne.

Cela rend également possible une propriété remarquable : un programme peut produire, charger ou modifier d’autres programmes.

Les compilateurs, les systèmes d’exploitation, les chargeurs et une grande partie du logiciel moderne reposent indirectement sur cette séparation entre la machine physique et les instructions conservées en mémoire.


1948 : le Manchester Baby franchit la barrière

Le 21 juin 1948, à l’université de Manchester, une petite machine expérimentale exécute un programme.

Son nom officiel est Small-Scale Experimental Machine, ou SSEM. Elle est beaucoup plus connue sous son surnom : Manchester Baby.

À première vue, elle paraît moins impressionnante qu’ENIAC.

Et pourtant, elle réalise quelque chose qu’ENIAC n’avait pas été conçu pour faire : elle lit et exécute un programme conservé dans sa propre mémoire électronique.

Frederic Williams, Tom Kilburn et Geoff Tootill ont essentiellement construit le Baby pour tester une nouvelle mémoire utilisant des tubes cathodiques, les futurs tubes de Williams-Kilburn.

Le premier programme cherche le plus grand facteur d’un nombre. Quelques jours plus tard, une version travaillant sur 218 effectue environ 2,1 millions d’instructions avant d’obtenir son résultat après 52 minutes.

L’importance de l’expérience ne vient donc pas des performances.

Elle vient du principe démontré.

Le Manchester Baby est la première machine connue à avoir exécuté avec succès un programme enregistré dans une mémoire électronique.


Mais le Baby n’est pas encore vraiment un ordinateur de travail

Le mot Baby n’est pas usurpé.

La machine est volontairement minimale. Son objectif principal est de montrer que la mémoire fonctionne et que le principe du programme enregistré est viable.

Elle ne constitue pas encore un service informatique utilisable quotidiennement par des chercheurs. C’est un prototype expérimental.

Cette distinction ajoute donc encore une question à notre définition du « premier ordinateur » : faut-il compter une machine qui démontre un principe, ou seulement une machine réellement utilisée pour travailler ?

Si l’on choisit le second critère, il faut avancer encore d’un an.


1949 : EDSAC devient un véritable outil de calcul

À l’université de Cambridge, Maurice Wilkes dirige la construction de l’EDSAC, pour Electronic Delay Storage Automatic Calculator.

Le 6 mai 1949, la machine exécute ses premiers programmes.

L’un d’eux calcule et imprime les carrés des nombres de 0 à 99. Le journal de bord original indique une durée de 2 minutes et 35 secondes.

Mais l’essentiel est ailleurs. Contrairement au Manchester Baby, EDSAC n’est pas seulement une démonstration expérimentale. Cambridge l’utilise réellement pour fournir un service de calcul aux chercheurs.

Les scientifiques peuvent écrire des programmes et utiliser la machine pour leurs travaux.

EDSAC possède donc :

  • une électronique à tubes ;
  • un fonctionnement numérique ;
  • un programme enregistré en mémoire ;
  • une vocation généraliste ;
  • et surtout un véritable usage scientifique régulier.

C’est pourquoi EDSAC est souvent présenté comme l’un des premiers ordinateurs pratiques à programme enregistré, et Cambridge le décrit comme la première machine de ce type réellement utilisable pour un service de calcul général.


Et EDVAC dans tout cela ?

Le nom EDVAC apparaît souvent dans cette histoire parce que sa conception joue un rôle fondamental dans la formalisation du programme enregistré.

Le First Draft of a Report on the EDVAC de 1945 diffuse largement cette nouvelle manière d’organiser un ordinateur.

Mais il faut distinguer l’idée d’une machine de sa réalisation.

Pendant que la construction d’EDVAC se prolonge, d’autres équipes s’inspirent des mêmes principes et réussissent à les mettre en pratique plus rapidement.

Le Manchester Baby fonctionne en 1948 et EDSAC en 1949.

EDVAC est donc essentiel dans l’histoire conceptuelle de l’ordinateur moderne, mais il n’est pas la première machine à avoir effectivement démontré le programme enregistré.


Alors, quel est vraiment le premier ordinateur ?

La meilleure réponse est probablement : posez d’abord la bonne question.

Machine Année Technologie Programmable Généraliste Programme en mémoire
Z3 1941 Électromécanique Oui Limité / discuté Non
Colossus 1944 Électronique Oui, de façon limitée Non Non
ENIAC 1945-1946 Électronique Oui Oui Non à l’origine
Manchester Baby 1948 Électronique Oui Machine expérimentale Oui
EDSAC 1949 Électronique Oui Oui Oui

On peut donc résumer ainsi :

  • Z3 : premier ordinateur numérique programmable automatique fonctionnel.
  • Colossus : premier ordinateur électronique numérique programmable, mais spécialisé.
  • ENIAC : premier grand ordinateur électronique numérique programmable généraliste.
  • Manchester Baby : première machine à exécuter un programme enregistré dans une mémoire électronique.
  • EDSAC : l’un des premiers ordinateurs pratiques et réellement exploités à programme enregistré.

Aucune de ces réponses n’est contradictoire si l’on précise le critère utilisé.


Et l’Atanasoff-Berry Computer ?

La liste pourrait même être encore plus longue.

Entre 1939 et 1942, John Atanasoff et Clifford Berry développent à l’Iowa State College l’Atanasoff-Berry Computer, ou ABC.

Cette machine utilise déjà l’électronique, le calcul numérique binaire et une forme de mémoire régénérative. Elle est donc parfois présentée comme le premier calculateur électronique numérique. Mais elle est construite pour un problème précis — résoudre des systèmes d’équations linéaires — et n’est pas une machine programmable généraliste.

Sa présence dans le débat montre une nouvelle fois pourquoi le mot « premier » doit toujours être accompagné de critères.


Pourquoi les sources ne donnent-elles pas toutes la même réponse ?

Parce qu’elles ne posent pas exactement la même question.
Une source qui privilégie la programmabilité mettra facilement le Z3 en avant. Une autre qui insiste sur l’électronique choisira Colossus ou l’Atanasoff-Berry Computer selon la définition retenue. Si le critère central devient la capacité à résoudre différents problèmes, ENIAC prend une place particulière. Si l’on considère que l’ordinateur moderne doit conserver son programme en mémoire, le Manchester Baby devient l’étape décisive.
Enfin, si l’on demande quelle machine à programme enregistré a réellement fourni un service informatique quotidien, EDSAC devient un candidat beaucoup plus convaincant.

Le désaccord est donc souvent moins historique que sémantique.
Les historiens parlent des mêmes machines, mais ne mettent pas toujours le même adjectif derrière le mot « ordinateur ».


Une succession d’inventions plutôt qu’un instant unique

Chercher absolument une machine qui aurait soudainement « inventé l’ordinateur » donne une image trompeuse de l’histoire.

Entre 1941 et 1949, plusieurs problèmes sont résolus successivement :

  • rendre le calcul automatique ;
  • rendre la machine programmable ;
  • passer des relais à l’électronique ;
  • construire une machine généraliste ;
  • placer les instructions dans une mémoire ;
  • et enfin transformer le prototype en véritable outil de travail.

Chacune de ces étapes rapproche la machine de ce que nous appelons aujourd’hui un ordinateur.

Il n’y a donc pas un premier ordinateur, mais plusieurs premières étapes qui construisent progressivement l’ordinateur moderne.


Repères chronologiques

  • 1941 : le Z3 de Konrad Zuse fonctionne en Allemagne.
  • 1944 : Colossus entre en service à Bletchley Park.
  • Fin 1945 : ENIAC devient opérationnel.
  • 14 février 1946 : présentation publique d’ENIAC.
  • 21 juin 1948 : le Manchester Baby exécute son premier programme enregistré.
  • 6 mai 1949 : EDSAC exécute ses premiers programmes à Cambridge.

Sources et références

Publications similaires

  • VAX-11/780

    Le VAX-11/780, présenté par Digital Equipment Corporation (DEC) en 1977, est le premier ordinateur de la famille VAX. Avec son architecture 32 bits et son système d’exploitation VMS, il marque une rupture majeure dans l’histoire de DEC.Après le succès du PDP-11, DEC ne cherche plus seulement à construire des mini-ordinateurs plus rapides. L’entreprise veut créer…

  • |

    SDS 940

    Le SDS 940 est un ordinateur 24 bits commercialisé par Scientific Data Systems à partir de 1966. Issu des travaux du Project Genie menés à l’université de Californie à Berkeley, il occupe une place importante dans l’histoire du temps partagé et de l’informatique interactive. Avec cette machine, plusieurs utilisateurs peuvent se connecter simultanément à un…

  • PDP-11

    Le PDP-11 est une famille de mini-ordinateurs 16 bits commercialisée par Digital Equipment Corporation (DEC) à partir de 1970. Avec son architecture cohérente, son bus UNIBUS et son vaste écosystème logiciel, il devient l’une des familles d’ordinateurs les plus importantes des années 1970. Plus compact et moins coûteux que les grands systèmes centraux de l’époque,…

  • |

    Amstrad CPC 6128

    Le CPC 6128 : l’aboutissement de la gamme Amstrad 8 bits Le Amstrad CPC 6128, lancé en 1985, représente l’aboutissement de la première génération des micro-ordinateurs CPC. Il conserve le processeur Zilog Z80A et l’architecture générale de ses prédécesseurs, mais leur apporte deux améliorations importantes : 128 Ko de mémoire vive et un lecteur de…

  • Pilot ACE

    Le Pilot ACE (Automatic Computing Engine) est un ordinateur expérimental construit au National Physical Laboratory (NPL), au Royaume-Uni. Il exécute son premier programme le 10 mai 1950. La machine trouve son origine dans le projet d’ordinateur conçu quelques années plus tôt par Alan Turing. Son idée est ambitieuse : construire une machine électronique à programme…