1NSI : Histoire des Ordinateurs : L'EDSAC⚓︎
EDSAC, \(1949\)⚓︎
Introduction⚓︎
Invention⚓︎
L'EDSAC - Electronic Delay Storage Calculator, est une machine électronique anglaise , programmable, à programme enregistré (sur ruban de papier). Conçu dès \(1946\), construit et opérationnel en mai \(1949\), date où sont exécutés les premiers programmes, par le mathématicien anglais Maurice Wilkes , directeur du Laboratoire de Mathématiques/Informatique de l'Université de Cambridge. Il lit le rapport sur l'EDVAC de John Von Neumann publié en \(1945\). La petite histoire dit qu'il a dû le lire en une nuit, car il devait le rendre le lendemain et il n'y avait pas de photocopies. Il s'aperçoit instantanément que ce rapport décrit l'architecture logique des ordinateurs de demain, et veut participer à la construction de telles machines. En août \(1946\), il se rend en bateau aux États-Unis pour assister aux Conférences / Lectures sur ce sujet à la Moore School of Electrical Engineering de l'Université de Pennsylvanie, mais le bateau subit des retards, et il ne parvient à suivre que les deux dernières semaines de Conférences. Durant les \(5\) jours de son voyage de retour en Angleterre, en \(1946, \)il dessine les schémas de ce qui deviendra l'EDSAC, en s'inspirant directement de l'Architecture de Von Neumann.
Quelques caractéristiques techniques⚓︎
- \(1951\) : Maurice Wilkes développe le principe de microprogramme , ou microcode , en se rendant compte qu'une Unité Centrale de Calcul / Central Processing Unit, CPU pourrait être contrôlé par un très petit (micro) programme, très spécialisé, et stocké dans une mémoire morte (ROM) à haut débit : ceci est le premier jalon intelectuel de la notion de mémoire morte (ROM). L'EDSAC 2 en \(1958\), sera néanmoins le premier à en bénéficier
- En \(1951\) également, David Wheeler (ainsi que Maurice Wilkes dans un article en \(1953\)) propose un mode d'adressage relatif ouvrant la voie vers des sous-programmes / subroutine . Néanmoins, pas de récursivité possible. En fait, Turing avait déjà discuté des sousprogrammes en \(1945\), dans ses propositions de design pour la machine ACE - Automatic Computing Engine (sortie : \(\approx 1955\)) du NPL - National Physical Laboratory où il travailllait à cette époque, allant même jusqu'à inventer le concept de pile d'adresse de retour, ce qui aurait autorisé la récursivité... La notion de sous-programme mène naturellement à la création de la première bilbiothèque de (sous-)programmes dès \(1951\) : calculs arithmétiques à virgules flottante, ...
- \(1952\) lecteur/enregistreur de bande magnétique, qui ne fonctionnera jamais suffisament bien pour être vraiment utilisé
- \(1953\) : ajout d'un registre d'indice.
- \(1955-1956\) : mémoire additionnelle jusqu'à \(1024\) mots
- \(1958\) mise en service de son remplaçant : l' EDSAC 2, le premier ordinateur à microprogramme (stocké en mémoire morte, ROM)
Programmation⚓︎
Le premier programme est un algorithme de calcul du carré, écrit par la canadienne Béatrice Worsley en mai \(1949\). Algorithmes d'une capacité d'environ \(800\) mots. Les programmeurs préparaient leurs programmes en assembleur sur une bande de papier perforée.
Aller Plus Loin⚓︎
- EDSAC Simulator : https://www.dcs.warwick.ac.uk/~edsac/
- EDSAC Wiki, en anglais : https://en.wikipedia.org/wiki/EDSAC
- Histoire de la microprogrammation : https://www.aconit.org/histoire/calcul_mecanique/documents/Histoire_de_la_microprogrammation.pdf