IBM 704
L’IBM 704 au MIT : quand la programmation scientifique se standardise (1956–1957)
L’IBM 704, introduit en 1954, est l’un des premiers ordinateurs scientifiques majeurs.
Au MIT, son utilisation favorise l’apparition d’outils logiciels partagés comme SAP et FORTRAN.
Ainsi, cette machine marque une étape importante dans l’histoire de la programmation.
À la charnière 1956-1957, l’IBM 704 marque un tournant.
La programmation ne se fait plus seulement « au plus près du métal ».
Elle s’appuie désormais sur des méthodes, des outils et des bibliothèques partagés entre centres de calcul.
Au MIT Computation Center, cette évolution est très visible.
Des notes de cours publiées en octobre 1957 décrivent la machine et les méthodes de programmation.
Elles expliquent également le rôle de SHARE dans la standardisation des logiciels.
SHARE est expliqué plus bas dans l’article.
Une machine scientifique 36 bits pensée pour le calcul
L’IBM 704 est introduit en 1954 comme ordinateur scientifique.
Il possède un mot machine de 36 bits.
Surtout, il intègre un calcul en virgule flottante directement en matériel.
Cette innovation améliore fortement les performances pour les calculs scientifiques.
Au MIT, le cours Coding for the MIT-IBM 704 Computer (1957) rappelle un principe fondamental.
Les instructions et les données utilisent le même format de mot de 36 bits.
Elles sont donc indistinguables par nature.
Seul l’usage détermine leur interprétation.
Les notes décrivent aussi la structure des instructions.
Chaque instruction comprend un opcode, un champ de tag pour l’indexation et un champ d’adresse.
Cette organisation influence directement la manière d’écrire les programmes.
Par exemple, elle facilite l’utilisation de tableaux et de boucles indexées.
L’installation du MIT : mémoire cœur et tambour magnétique
Les documents du MIT donnent une image précise d’un centre de calcul à la fin des années 1950.
La machine se trouve dans le Karl T. Compton Laboratory.
Des équipements EAM complètent l’installation.
La mémoire principale contient 8192 mots.
Elle utilise la technologie de mémoire à tores magnétiques.
De plus, le système possède un tambour magnétique de 8192 mots.
Ce tambour sert d’extension de mémoire.
Cependant, le tambour reste plus lent que la mémoire centrale.
Son temps d’accès dépend de la rotation du cylindre.
Les programmeurs doivent donc organiser soigneusement leurs données.
En pratique, les boucles critiques sont placées en mémoire centrale.
Le tambour sert plutôt de zone de travail.
Enfin, les bandes magnétiques sont utilisées pour le stockage et l’archivage.
SHARE : partager les logiciels entre centres de calcul
SHARE est une organisation d’utilisateurs d’ordinateurs IBM.
Elle est créée en 1955.
Son objectif est simple : permettre aux centres de calcul d’échanger leurs programmes.
Grâce à SHARE, les utilisateurs peuvent partager des bibliothèques logicielles.
Ils diffusent également des standards de programmation et des conventions techniques.
Ainsi, un programme développé dans un centre peut être utilisé ailleurs.
Les documents du MIT montrent bien ce fonctionnement.
Ils mentionnent des catalogues de sous-programmes SHARE.
Ils décrivent aussi l’utilisation de bandes contenant des bibliothèques de routines.
Cette organisation introduit une idée nouvelle.
Le logiciel devient un ressource collective.
Il est documenté, classé et distribué entre institutions.
SAP : l’assembleur standard du système
L’un des outils essentiels du système est l’assembleur SAP.
Ce nom signifie Symbolic Assembly Program.
Il permet de traduire un langage symbolique en instructions machine.
SAP est développé par Roy Nutt.
Il travaille alors chez United Aircraft Corporation.
Le programme apparaît vers 1956 et suit les spécifications SHARE.
Cet assembleur simplifie fortement le travail des programmeurs.
Par exemple, il attribue automatiquement les adresses aux étiquettes.
Il traduit aussi les mnémoniques en instructions machine.
- assigner des adresses numériques aux étiquettes ;
- traduire les mnémoniques comme
CLA; - convertir des constantes numériques ;
- inclure des routines depuis une bibliothèque ;
- produire un listing et une table de symboles.
Le fonctionnement de SAP repose sur deux passes.
La première construit la table des symboles.
La seconde génère le code machine final.
Exemple historique : listing d’assemblage SAP
Les listings montrent à la fois l’adresse mémoire et l’instruction en octal.
La ligne contient aussi le code symbolique correspondant.
Cette double représentation facilite le débogage.
FORTRAN : une révolution dans la programmation scientifique
Les documents du MIT mentionnent également l’arrivée de
FORTRAN.
Ce langage apparaît en 1957 sur l’IBM 704.
FORTRAN change profondément la manière de programmer.
Au lieu d’écrire directement des instructions machine, le programmeur décrit des formules mathématiques.
Le compilateur traduit ensuite ces expressions en code machine.
Le compilateur FORTRAN est très complexe pour l’époque.
Il contient des dizaines de milliers d’instructions.
Cependant, il permet d’écrire des programmes scientifiques beaucoup plus rapidement.
À la fin des années 1950, trois niveaux coexistent donc :
- le langage machine ;
- l’assembleur SAP ;
- le langage FORTRAN.
Chaque niveau correspond à un compromis différent entre contrôle, performance et productivité.
Un tournant dans l’histoire du logiciel
Ces documents montrent un changement profond dans l’informatique.
L’ordinateur n’est plus seulement une machine.
Il devient le centre d’un véritable écosystème logiciel.
Au MIT Computation Center, on observe plusieurs évolutions importantes :
- une organisation structurée du centre de calcul ;
- des standards logiciels partagés entre institutions ;
- des outils de programmation de plus en plus sophistiqués ;
- l’apparition de langages de haut niveau comme FORTRAN.
Ainsi, le logiciel devient progressivement un objet collectif.
Il est partagé, documenté et amélioré par une communauté d’utilisateurs.
Cette évolution annonce déjà les pratiques modernes du développement logiciel.
