Manchester Baby

Manchester Baby

Le Manchester Baby, officiellement Small-Scale Experimental Machine (SSEM), est un ordinateur expérimental construit à l’Université de Manchester par Frederic C. Williams, Tom Kilburn et Geoff Tootill.
Le 21 juin 1948, il devient le premier ordinateur électronique numérique à exécuter avec succès un programme enregistré dans sa mémoire électronique. Cette expérience constitue une étape majeure dans l’histoire de l’informatique.
Avec le Manchester Baby, les instructions du programme sont conservées en mémoire comme les données qu’elles manipulent. Changer de programme ne nécessite donc plus de définir une nouvelle suite d’opérations par une reconfiguration physique de la machine : il suffit de modifier les instructions enregistrées en mémoire.


Fiche rapide

  • Nom officiel : Small-Scale Experimental Machine (SSEM)
  • Surnom : Manchester Baby
  • Institution : Université de Manchester
  • Premier programme réussi : 21 juin 1948
  • Principaux concepteurs : Frederic C. Williams, Tom Kilburn et Geoff Tootill
  • Architecture : binaire, mots de 32 bits
  • Mémoire : 32 mots de 32 bits, soit 1 024 bits
  • Technologie mémoire : tube Williams-Kilburn
  • Jeu d’instructions initial : 7 instructions
  • Vitesse : environ 1,2 milliseconde par instruction
  • Type : ordinateur expérimental à programme enregistré

Ces caractéristiques paraissent extrêmement modestes aujourd’hui. Pourtant, elles suffisent à démontrer qu’un ordinateur électronique peut conserver ses instructions en mémoire et les exécuter automatiquement.


Un ordinateur construit pour tester une mémoire

Le Manchester Baby n’est pas conçu à l’origine pour devenir un ordinateur scientifique destiné à une utilisation quotidienne. Son objectif principal est plus précis : tester une nouvelle mémoire électronique.

À partir de 1946, Frederic Williams travaille sur l’utilisation d’un tube cathodique pour conserver des informations binaires. Avec Tom Kilburn, il exploite les charges électriques produites sur l’écran du tube afin de représenter des 0 et des 1.

Cette technologie, connue sous le nom de tube Williams-Kilburn, présente un avantage essentiel : l’ordinateur peut accéder électroniquement aux informations enregistrées sans attendre leur passage séquentiel comme avec certaines autres technologies de mémoire de l’époque.

Cependant, réussir à mémoriser des bits ne suffit pas. Il faut encore démontrer que cette mémoire peut fonctionner de manière suffisamment fiable pour contenir un véritable programme.

Les chercheurs décident donc de construire une petite machine autour d’elle. Le Manchester Baby est ainsi, à l’origine, un banc d’essai de mémoire devenu ordinateur.


Seulement 32 mots de mémoire

La mémoire principale du Baby contient seulement 32 mots de 32 bits, soit un total de 1 024 bits.

Cette capacité est minuscule, mais elle possède une propriété fondamentale : un emplacement mémoire peut contenir aussi bien une donnée qu’une instruction.

Le programme et les données peuvent donc cohabiter dans la même mémoire électronique.

Plusieurs tubes cathodiques participent au fonctionnement de la machine. Certains conservent les informations nécessaires aux calculs et au déroulement du programme, tandis qu’un autre permet à l’opérateur d’observer visuellement le contenu d’une mémoire sous la forme de points lumineux.

Le principe peut être résumé simplement : programme + données → mémoire électronique → processeur


21 juin 1948 : le programme fonctionne

Le 21 juin 1948, Tom Kilburn fait exécuter au Baby un programme destiné à rechercher le plus grand facteur propre d’un nombre.

Le programme comporte seulement 17 instructions. Comme le Baby ne dispose pas d’instruction de division, il procède par soustractions successives.

Le principe consiste à tester différents nombres comme diviseurs possibles. Pour chacun d’eux, la machine soustrait plusieurs fois cette valeur au nombre de départ. Si elle atteint exactement zéro, le nombre testé est un facteur.

Par exemple, pour le nombre 12, la machine peut tester successivement 11, 10, 9, 8, 7 puis 6. Avec 6, elle obtient :

12 - 6 = 6
6 - 6 = 0

Le programme conclut alors que 6 est le plus grand facteur propre de 12.

Ce programme est historiquement important car il démontre qu’un ordinateur électronique peut conserver ses instructions en mémoire et les exécuter automatiquement, sans qu’il soit nécessaire de modifier physiquement son câblage.

L’essentiel est ailleurs : les instructions sont déjà présentes dans la mémoire électronique lorsque l’exécution commence. La machine les lit successivement et détermine ainsi elle-même les opérations à effectuer.

Pour la première fois, un ordinateur électronique numérique exécute avec succès un programme conservé dans sa propre mémoire.

Cette démonstration valide concrètement le principe du programme enregistré, qui deviendra ensuite une caractéristique fondamentale de la plupart des ordinateurs.


Comment programme-t-on le Manchester Baby ?

L’utilisation de la machine reste très éloignée de celle d’un ordinateur moderne.

Les instructions sont introduites directement dans la mémoire à l’aide d’un ensemble d’interrupteurs. Chaque instruction doit être représentée sous forme binaire puis saisie bit par bit.

L’opérateur peut ensuite observer certaines informations sur un tube cathodique. Les points affichés permettent de visualiser l’état des bits enregistrés.

Il n’existe alors :

  • ni clavier informatique moderne ;
  • ni éditeur de texte ;
  • ni langage de programmation évolué ;
  • ni système d’exploitation ;
  • ni fichier contenant le programme.

Programmer signifie donc manipuler directement les instructions binaires de la machine.

Cette méthode est laborieuse, mais elle possède déjà une différence essentielle avec certaines machines précédentes : le programme est une information enregistrée que l’on peut modifier sans reconstruire ni recâbler l’ensemble du calculateur.

Un jeu de seulement sept instructions

Le Manchester Baby dispose d’un jeu extrêmement réduit de sept opérations différentes. Pourtant, cela suffit pour écrire des programmes comportant des calculs, des boucles et des tests.

  • JMP — saute à une autre instruction du programme ;
  • JRP — effectue un saut relatif par rapport à la position courante ;
  • LDN — charge dans l’accumulateur l’opposé d’une valeur stockée en mémoire ; (C’est lié à l’architecture particulière du Manchester Baby, qui repose beaucoup sur la soustraction plutôt que sur l’addition.)
  • STO — enregistre le contenu de l’accumulateur dans la mémoire ;
  • SUB — soustrait une valeur en mémoire du contenu de l’accumulateur ;
  • CMP — saute l’instruction suivante si le contenu de l’accumulateur est négatif ;
  • STP — arrête l’exécution du programme.

Le Baby ne possède même pas d’instruction d’addition. Pour additionner deux nombres, il faut utiliser la soustraction d’un nombre négatif : par exemple 1 + 3 = 1 − (−3).

Les instructions sont codées sur 3 bits, ce qui permet théoriquement huit codes différents. Cependant, deux codes réalisent la même opération de soustraction : la machine dispose donc bien de sept opérations distinctes.

Malgré cette simplicité, le programmeur peut déjà construire des boucles et prendre des décisions grâce aux instructions de saut et au test conditionnel. Le Manchester Baby démontre ainsi qu’un petit nombre d’instructions élémentaires suffit pour réaliser des calculs complexes.

Pourquoi le programme enregistré change-t-il tout ?

Le principe paraît aujourd’hui évident : lorsqu’on lance un logiciel, celui-ci est chargé en mémoire puis exécuté par le processeur.

À la fin des années 1940, cette organisation est encore nouvelle.

Le programme peut désormais être représenté par des nombres binaires, exactement comme les données qu’il traite. Il devient donc une information que l’on peut charger, conserver et modifier.

La séparation entre le matériel et le logiciel devient beaucoup plus nette :

même ordinateur + programme différent = tâche différente

Le Manchester Baby n’est pas le premier ordinateur électronique ni le premier calculateur programmable de l’histoire. Son importance est plus précise : il démontre avec succès le fonctionnement d’un ordinateur électronique numérique à programme enregistré en mémoire.


Du Baby au Manchester Mark 1

Une fois le principe validé, l’équipe de Manchester ne cherche pas à transformer durablement le Baby en machine de production.

Les chercheurs développent rapidement un ordinateur beaucoup plus complet : le Manchester Mark 1.

Celui-ci reprend notamment le principe de la mémoire électronique à programme enregistré, mais avec davantage de mémoire, davantage d’instructions et des possibilités d’utilisation beaucoup plus importantes.

Les travaux menés à Manchester débouchent ensuite sur le Ferranti Mark 1, construit industriellement au début des années 1950.

Le chemin est donc particulièrement direct :

Manchester Baby → Manchester Mark 1 → Ferranti Mark 1

Une expérience destinée initialement à tester une mémoire contribue ainsi à l’apparition de l’une des premières générations d’ordinateurs électroniques commercialisés.


Quel rôle joue Alan Turing ?

Alan Turing n’est pas le concepteur du Manchester Baby. La construction de la machine est principalement associée à Frederic Williams, Tom Kilburn et Geoff Tootill.

Turing rejoint l’Université de Manchester en septembre 1948, quelques mois après l’exécution historique du premier programme.

Il s’intéresse cependant aux travaux de l’équipe avant même son arrivée. Une routine de division longue qu’il prépare pour la machine est notamment reprise, corrigée et mise au point par Geoff Tootill.

Par la suite, Turing participe davantage aux développements informatiques de Manchester, en particulier autour des machines qui succèdent au Baby.

Il faut donc distinguer son influence sur les travaux de Manchester de la conception proprement dite du SSEM.


Pourquoi le Manchester Baby est-il important ?

  • Programme enregistré : il exécute avec succès des instructions conservées dans une mémoire électronique.
  • Mémoire électronique : il démontre que le tube Williams-Kilburn peut servir de mémoire opérationnelle à un ordinateur.
  • Programme et données : les deux peuvent être conservés dans la même mémoire.
  • Souplesse : changer de programme revient à modifier les instructions enregistrées plutôt qu’à reconfigurer physiquement la séquence de calcul.
  • Validation expérimentale : une idée architecturale devient une machine réellement fonctionnelle.
  • Héritage : ses travaux conduisent directement au Manchester Mark 1 puis au Ferranti Mark 1.

Le Manchester Baby n’est donc pas remarquable par sa puissance. Il l’est parce qu’il démontre concrètement une idée qui devient fondamentale : un ordinateur peut conserver en mémoire les instructions qui déterminent son fonctionnement.


Repères chronologiques

  • 1946 : Frederic Williams commence ses recherches sur la mémoire à tube cathodique.
  • 1947 : Williams et Kilburn développent les principes de la mémoire qui deviendra le tube Williams-Kilburn.
  • Début 1948 : construction de la Small-Scale Experimental Machine.
  • 21 juin 1948 : premier programme enregistré exécuté avec succès.
  • Septembre 1948 : Alan Turing rejoint l’Université de Manchester.
  • 1948-1949 : développement du Manchester Mark 1.
  • 1951 : le Ferranti Mark 1, issu des travaux menés à Manchester, est commercialisé.

Pour aller plus loin

Le Manchester Baby s’inscrit dans une période où plusieurs équipes cherchent à transformer le principe du programme enregistré en ordinateurs réellement utilisables. Pour poursuivre cette histoire, voir également les articles consacrés  à Alan Turing, au Pilot ACE et à l’IAS Machine.


En couverture : Réplique du « Baby » au Musée des sciences et de l’industrie de Castlefield, à Manchester photo par Logg Tandy, CC BY 4.0, Link

Publications similaires

  • TX-0

    Le TX-0 (Transistor eXperimental – 0) est un ordinateur expérimental conçu et construit au MIT Lincoln Laboratory et mis en service en 1956. Son nom signifie littéralement « ordinateur transistorisé zéro » : il ne s’agit pas d’un produit commercial, mais d’un prototype scientifique destiné à valider deux paris technologiques majeurs — la logique entièrement…

  • 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…

  • TX-2

    Le TX-2 est un ordinateur expérimental 36 bits conçu au MIT Lincoln Laboratory et mis en service en 1958. Successeur du TX-0, il constitue l’une des machines transistorisées les plus ambitieuses de la fin des années 1950.Contrairement à un ordinateur commercial, le TX-2 est avant tout une plateforme de recherche. Les ingénieurs l’utilisent pour expérimenter…

  • IAS Machine

    L’IAS Machine est un ordinateur électronique expérimental construit à l’Institute for Advanced Study de Princeton, aux États-Unis, sous la direction de John von Neumann. Le projet débute à la fin de 1945, la machine effectue ses premiers calculs en 1951 et devient pleinement opérationnelle en 1952. Son importance historique ne vient pas du fait qu’elle…

  • Whirlwind I

    Le Whirlwind I est un ordinateur expérimental développé au Massachusetts Institute of Technology (MIT) à partir de 1944 et mis en service en 1951. À l’origine, il ne devait pourtant pas devenir un ordinateur généraliste : l’US Navy souhaitait disposer d’un simulateur de vol capable de reproduire le comportement de différents avions. Pour être crédible,…