Menu English Ukrainian Russe Accueil

Bibliothèque technique gratuite pour les amateurs et les professionnels Bibliothèque technique gratuite


Machine à calculer. Histoire de l'invention et de la production

L'histoire de la technologie, de la technologie, des objets qui nous entourent

Annuaire / L'histoire de la technologie, de la technologie, des objets qui nous entourent

Commentaires sur l'article Commentaires sur l'article

La mécanisation et la mécanisation des opérations informatiques est l'une des réalisations techniques fondamentales du deuxième tiers du XXe siècle. De même que l'apparition des premières machines à filer marque le début de la grande révolution industrielle des XVIIIe-XIXe siècles, la création d'un calculateur électronique devient annonciatrice de la grandiose révolution scientifique, technique et informatique de la seconde moitié du XXe siècle. .

Cet événement important a été précédé d'une longue préhistoire. Les premières tentatives d'assemblage d'une machine à calculer ont été faites dès le XVIIe siècle, et les appareils informatiques les plus simples, comme un boulier et un compte, sont apparus encore plus tôt - dans l'Antiquité et au Moyen Âge.

Machine à calculer
Abaque

Bien qu'un dispositif informatique automatique appartienne au genre des machines, il ne peut être assimilé à des machines industrielles, par exemple un tour ou une machine à tisser, car, contrairement à eux, il ne fonctionne pas avec un matériau physique (fils ou ébauches de bois), mais avec des idéaux qui n'existent pas dans la nature par nombres. Par conséquent, le créateur de n'importe quelle machine informatique (qu'il s'agisse de la machine à additionner la plus simple ou du supercalculateur le plus récent) est confronté à des problèmes spécifiques qui ne se posent pas aux inventeurs dans d'autres domaines de la technologie.

Ils peuvent être formulés comme suit : 1. Comment représenter physiquement (objectivement) des nombres dans une machine ? 2. Comment saisir les données numériques initiales ? 3. Comment simuler la performance des opérations arithmétiques ? 4. Comment présenter les données d'entrée et les résultats des calculs à la calculatrice ?

L'un des premiers à surmonter ces problèmes fut le célèbre scientifique et penseur français Blaise Pascal. Il avait 18 ans lorsqu'il a commencé à travailler à la création d'une machine spéciale avec laquelle une personne qui ne connaissait même pas les règles de l'arithmétique pouvait effectuer quatre actions de base. La sœur de Pascal, qui a été témoin de son travail, écrira plus tard : « Ce travail fatiguait mon frère, mais non pas à cause de l'effort de l'activité mentale et non à cause des mécanismes dont l'invention ne lui a pas demandé beaucoup d'efforts, mais parce que les ouvriers avec difficile de le comprendre." Et ce n'est pas surprenant. La mécanique de précision venait de naître et la qualité exigée par Pascal dépassait les capacités de ses maîtres. Par conséquent, l'inventeur lui-même devait souvent prendre une lime et un marteau ou un puzzle pour savoir comment modifier une conception intéressante mais complexe conformément aux qualifications du maître.

Machine à calculer
Sommateur Pascal

Le premier modèle de travail de la machine a été achevé en 1642. Elle n'a pas satisfait Pascal et il a immédiatement commencé à en concevoir un nouveau. "Je n'ai pas économisé", écrira-t-il plus tard à propos de sa voiture, "ni le temps, ni la main-d'œuvre, ni l'argent pour la mettre en état d'être utile ... J'ai eu la patience de fabriquer jusqu'à 50 modèles différents ... " Enfin, en 1645, ses efforts furent couronnés d'un succès complet - Pascal assembla une voiture qui le satisfaisait à tous points de vue.

Quel était ce premier ordinateur de l'histoire et comment les tâches énumérées ci-dessus ont-elles été résolues ? Le mécanisme de la machine était enfermé dans une légère boîte en laiton. Sur son capot supérieur, il y avait 8 trous ronds, autour desquels une échelle circulaire était appliquée. L'échelle du trou le plus à droite était divisée en 12 parties égales, l'échelle du trou à côté était divisée en 20 parties, les six trous restants avaient une division décimale. Une telle graduation correspondait à la division de la livre, principale unité monétaire française de l'époque : 1 sous = 1/20 livre et 1 denier = 1/12 sous. Dans les trous, des roues de réglage des engrenages étaient visibles, situées sous le plan du capot supérieur. Le nombre de dents de chaque roue était égal au nombre de divisions d'échelle du trou correspondant.

Machine à calculer
Dispositif d'une catégorie de la machine Pascal

Les nombres ont été saisis de la manière suivante. Chaque roue tournait indépendamment de l'autre sur son propre axe. La rotation a été effectuée à l'aide d'une goupille d'entraînement, qui a été insérée entre deux dents adjacentes. La goupille faisait tourner la roue jusqu'à ce qu'elle heurte une butée fixe fixée au bas du couvercle et faisant saillie dans le trou à gauche du chiffre « 1 » du cadran. Si, par exemple, une goupille était placée entre les dents 3 et 4 et que la roue tournait complètement, elle tournait alors les 3/10 de son cercle complet. La rotation de chaque roue était transmise par un mécanisme interne à des tambours cylindriques dont les axes étaient situés horizontalement. Des rangées de chiffres ont été appliquées sur la surface latérale des tambours.

L'addition des nombres, si leur somme ne dépassait pas 9, était très simple et correspondait à l'addition d'angles qui leur étaient proportionnels. Lors de l'addition de grands nombres, une opération appelée le transfert de dix au chiffre le plus élevé devait être effectuée. Les personnes qui comptent dans une colonne ou sur un boulier devraient le faire dans leur esprit. La machine de Pascal effectuait automatiquement le transfert, et c'était sa caractéristique la plus importante.

Les éléments de la machine appartenant à la même catégorie étaient la roue de réglage N, le tambour numérique I et le compteur, composé de quatre couronnes B, d'une roue dentée K et d'un mécanisme de transmission des dizaines.

Machine à calculer
Mécanisme de transmission des dizaines dans la machine de Pascal

A noter que les roues B1, B2 et K n'ont pas d'importance fondamentale pour le fonctionnement de la machine et ne servaient qu'à transférer le mouvement de la roue de réglage N au tambour numérique I. Mais les roues B3 et B4 faisaient partie intégrante de la compteur et étaient donc appelés "roues de comptage". Les roues de comptage de deux catégories adjacentes A1 et A2 étaient montées rigidement sur les essieux. Le mécanisme de transmission des dizaines, que Pascal appelait la "fronde", avait le dispositif suivant. Sur la roue de comptage B1 du grade junior de la machine Pascal, il y avait des tiges C1 qui, lorsque l'axe A1 tournait, s'engageaient avec les dents de la fourchette M située à l'extrémité du levier à deux genoux D1. Ce levier tournait librement sur l'axe A2 de la catégorie senior, tandis que la fourche portait un cliquet à ressort. Lorsque, lors de la rotation de l'axe A1, la roue B1 a atteint la position correspondant au chiffre 6, les tiges C1 se sont engagées avec les dents de la fourchette, et au moment où elle est passée de 9 à 0, la fourchette a glissé hors de engagement et, sous l'action de son propre poids, tomba en traînant un chien. Ce dernier a en même temps poussé la roue de comptage B2 de l'ordre le plus élevé d'un pas en avant (c'est-à-dire en la faisant tourner de 2 degrés avec l'axe A36). Le levier H, qui se terminait par une dent en forme d'axe, jouait le rôle d'un crochet qui empêchait la roue B1 de tourner dans le sens opposé lorsque la fourche était relevée.

Le mécanisme de transfert ne fonctionnait qu'avec un seul sens de rotation des roues de comptage et ne permettait pas d'effectuer l'opération de soustraction en faisant tourner les roues dans le sens opposé. Par conséquent, Pascal a remplacé la soustraction par l'addition par un complément décimal. Soit, par exemple, qu'il faille soustraire 532 à 87. La méthode d'addition conduit aux actions suivantes : 532-87=532-(100-13)=(532+13)-100=445. Vous devez juste vous rappeler de soustraire 100. Sur une machine qui avait un certain nombre de chiffres, cependant, on ne pouvait pas s'en soucier. En effet, soustrayons 532-87 sur une machine six bits. Alors 000532+999913=1000445. Mais la toute première unité sera perdue d'elle-même, car le transfert de la sixième catégorie n'a nulle part où aller.

La multiplication a également été réduite à l'addition. Ainsi, par exemple, si vous vouliez multiplier 365 par 132, vous deviez effectuer l'opération d'addition cinq fois :

365
х132
----
365
365
3650
3650
3650
36500
-----
48180

Mais comme la machine de Pascal introduisait le terme à chaque fois, il était extrêmement difficile de l'utiliser pour effectuer cette opération arithmétique.

La prochaine étape du développement de la technologie informatique est associée au nom du célèbre mathématicien allemand Leibniz. En 1672, Leibniz rend visite au physicien et inventeur hollandais Huygens et constate combien de temps et d'efforts lui sont retirés par divers calculs mathématiques. Puis Leibniz a eu l'idée de créer une machine à additionner. « Il est indigne de gens aussi merveilleux », écrit-il, « comme des esclaves, de perdre du temps sur un travail de calcul qui pourrait être confié à quiconque utilise des machines ». Cependant, la création d'une telle machine a nécessité toute son ingéniosité de la part de Leibniz. Sa célèbre machine à additionner à 12 chiffres n'est apparue qu'en 1694 et a coûté une somme ronde - 24000 XNUMX thalers.

Le mécanisme de la machine était basé sur le rouleau étagé inventé par Leibniz, qui était un cylindre auquel étaient appliquées des dents de différentes longueurs. Dans une machine à additionner 12 bits, il y avait 12 rouleaux de ce type - un pour chaque chiffre du nombre.

Machine à calculer
Rouleau étagé Leibniz

L'arithmomètre se composait de deux parties - fixe et mobile. Le compteur principal 12 bits et le rouleau étagé du périphérique d'entrée ont été placés dans le compteur fixe. La partie installation de cet appareil, composée de huit petits cercles numériques, était située dans la partie mobile de la machine. Au centre de chaque cercle se trouvait un essieu, sur lequel une roue dentée E était montée sous le capot de la machine, et une flèche était installée au-dessus du capot, qui tournait avec l'essieu. La fin de la flèche peut être placée contre n'importe quel nombre du cercle.

Machine à calculer

Machine à calculer
Machine à additionner Leibniz

La saisie des données dans la machine a été effectuée à l'aide d'un mécanisme spécial. Le rouleau étagé S était monté sur un axe à quatre côtés avec un filetage de type crémaillère. Ce rail engageait une roue à dix dents E, sur la circonférence de laquelle les chiffres 0, 1 ... 9 étaient appliqués. En tournant cette roue pour que l'un ou l'autre chiffre apparaisse dans la fente du couvercle, le rouleau étagé est déplacé parallèlement à l'axe de la roue dentée F du compteur principal. Si après cela, le rouleau a été tourné à 360 degrés, alors un, deux, etc. ont été engagés avec la roue F. les étapes les plus longues, en fonction de l'ampleur du changement. En conséquence, la roue F a tourné 0, 1... 9 parties d'un tour complet ; le disque ou le rouleau R a également été tourné.Avec la prochaine révolution du rouleau, le même nombre a de nouveau été transféré au compteur.

Les machines à calculer de Pascal et de Leibniz, ainsi que quelques autres apparues au XVIIIe siècle, n'étaient pas largement utilisées. Ils étaient complexes, coûteux et le besoin du public pour de telles machines n'était pas encore très aigu. Cependant, à mesure que la production et la société se développaient, un tel besoin commençait à se faire sentir de plus en plus, en particulier lors de la compilation de divers tableaux mathématiques. Les tables arithmétiques, trigonométriques et logarithmiques se sont généralisées en Europe à la fin du XVIIIe - début du XIXe siècle ; les banques et les bureaux de crédit utilisaient des tables d'intérêts et les compagnies d'assurance des tables de mortalité. Mais les tables astronomiques et de navigation étaient d'une importance absolument exceptionnelle (surtout pour l'Angleterre - la "grande puissance maritime").

Les prédictions des astronomes concernant la position des corps célestes étaient à l'époque le seul moyen par lequel les marins pouvaient localiser leurs navires en haute mer. Ces tableaux ont été inclus dans le "Calendrier marin", qui a été publié chaque année. Chaque édition nécessitait l'énorme travail de dizaines et de centaines de compteurs. Inutile de dire à quel point il était important d'éviter les erreurs dans la compilation de ces tableaux. Mais il y avait encore des erreurs. Des centaines, voire des milliers de données incorrectes contenaient également les tables les plus courantes - celles logarithmiques. Les éditeurs de ces tables ont été contraints de maintenir une équipe spéciale de relecteurs qui vérifiaient les calculs reçus. Mais cela n'a pas sauvé des erreurs.

La situation était si grave que le gouvernement britannique - le premier au monde - a pris soin de créer un ordinateur spécial pour compiler de tels tableaux. Le développement de la machine (on l'appelle une machine à différence) a été confié au célèbre mathématicien et inventeur anglais Charles Babbage. En 1822, un modèle de travail a été réalisé. Étant donné que l'importance de l'invention de Babbage, ainsi que l'importance de la méthode de calcul de la machine développée par lui, est très grande, nous devrions nous attarder plus en détail sur la structure du moteur de différence.

Considérons d'abord, avec un exemple simple, la méthode proposée par Babbage pour compiler les tables. Disons que vous voulez calculer la table des puissances quatrièmes des membres de la série naturelle 1, 2, 3...

Machine à calculer

Supposons qu'un tel tableau ait déjà été calculé pour certains membres de la série dans la colonne 1 - et que les valeurs résultantes soient entrées dans la colonne 2. Soustrayez la valeur précédente de chaque valeur suivante. Vous obtiendrez une valeur séquentielle des premières différences (colonne 3). Après avoir fait la même opération avec les premières différences, on obtient les deuxièmes différences (colonne 4), les troisièmes (colonne 5) et, enfin, les quatrièmes (colonne 6). Dans ce cas, les quatrièmes différences s'avèrent être constantes : la colonne 6 est constituée du même nombre 24. Et ce n'est pas un accident, mais une conséquence d'un théorème important : si une fonction (dans ce cas, c'est une fonction y (x)=x4, où x appartient à l'ensemble des nombres naturels) est un polynôme de nième degré, alors dans un tableau à pas constant ses nièmes différences seront constantes.

Maintenant, il est facile de deviner que vous pouvez obtenir le tableau requis en fonction de la première ligne en utilisant l'addition. Par exemple, pour continuer le tableau commencé d'une ligne de plus, vous devez effectuer des ajouts :

156 + = 24 180

590 + = 180 770

1695 + = 770 2465

4096 + = 2465 6561

Le moteur de différences de Babbage utilisait les mêmes roues de comptage décimales que celles de Pascal. Des registres constitués d'un ensemble de telles roues ont été utilisés pour représenter le nombre. Chaque colonne du tableau, à l'exception de 1, contenant un nombre de nombres naturels, avait son propre registre ; au total il y en avait sept dans la machine, puisqu'elle était censée calculer des fonctions à différences sixièmes constantes. Chaque registre se composait de 18 roues numériques en fonction du nombre de chiffres du nombre affiché et de plusieurs roues supplémentaires utilisées comme compte-tours à d'autres fins auxiliaires.

Si tous les registres de la machine stockaient les valeurs correspondant à la dernière ligne de notre tableau, alors pour obtenir la valeur suivante de la fonction dans la colonne 2, il fallait effectuer séquentiellement un nombre d'ajouts égal au nombre d'ajouts de les différences disponibles. L'ajout dans le moteur de différence s'est déroulé en deux temps. Les registres contenant les termes étaient décalés pour que les dents des roues de comptage s'engrènent. Après cela, les roues de l'un des registres ont tourné dans le sens opposé jusqu'à ce que chacune d'elles atteigne zéro. Cette étape s'appelait la phase d'addition.

A l'issue de cette étape, dans chaque chiffre du deuxième registre, la somme des chiffres de ce chiffre a été obtenue, mais jusqu'à présent sans tenir compte d'éventuels transferts de chiffre à chiffre. Le transfert a eu lieu à l'étape suivante, qui s'appelait la phase de transfert, et s'est déroulée comme ceci. Lors du passage de chaque roue dans la phase d'addition de 9 à 0, un verrou spécial a été libéré dans cette décharge. Dans la phase de transfert, tous les verrous ont été remis à leur place par des leviers spéciaux, qui ont simultanément tourné la roue du rang le plus élevé suivant d'un pas. Chacune de ces rotations pourrait, à son tour, provoquer une transition de 9 à 0 dans l'un des chiffres et, par conséquent, la libération du verrou, qui est revenu à nouveau à sa place, effectuant un transfert vers le chiffre suivant. Ainsi, la remise en place des bascules s'est faite séquentiellement, à partir du chiffre le moins significatif du registre.

Un tel système est appelé addition avec transfert successif. Toutes les autres opérations arithmétiques ont été effectuées par addition. Lors de la soustraction, les roues de comptage tournaient dans le sens opposé (contrairement à la machine de Pascal, la machine à différence de Babbage permettait de le faire). La multiplication a été réduite à une addition séquentielle et la division a été réduite à une soustraction séquentielle.

La méthode décrite pourrait être utilisée non seulement pour calculer des polynômes, mais également d'autres fonctions, par exemple logarithmiques ou trigonométriques, bien que, contrairement aux polynômes, elles n'aient pas de différences principales strictement constantes. Cependant, toutes ces fonctions peuvent être représentées (développées) comme une série infinie, c'est-à-dire un simple polynôme, et le calcul de leurs valeurs en tout point peut être réduit au problème que nous avons déjà considéré. Par exemple, sin x et cos x peuvent être représentés comme des polynômes infinis :

Machine à calculer

Ces expansions sont vraies pour toutes les valeurs de fonction de 0 à p/4 (p/4=3, 14/4=0) avec une très grande précision. Pour les valeurs de x supérieures à p/785, le développement a une forme différente, mais sur chacune de ces sections, la fonction trigonométrique peut être représentée comme une sorte de polynôme. Le nombre de paires de termes de la série pris en compte dans les calculs dépend de la précision que vous souhaitez obtenir. Si, par exemple, les exigences de précision sont faibles, vous pouvez vous limiter aux deux ou quatre premiers termes de la série et ignorer le reste. Mais vous pouvez prendre plus de termes et calculer la valeur de la fonction à tout moment avec n'importe quelle précision. (Notez que 4!=2•1=2 ; 2!=3•1•2=3 ; 6!=4•1•2•3=4, etc.) Ainsi, le calcul des valeurs de n'importe quelle fonction a été réduit par Babbage à une simple opération arithmétique - l'addition. De plus, lors du passage d'une section de la fonction à une autre, lorsqu'il fallait changer la valeur de la différence, le moteur de différence appelait lui-même (il appelait après qu'un certain nombre d'étapes de calcul aient été effectuées).

La simple création d'un moteur de différence aurait donné à Babbage une place d'honneur dans l'histoire de l'informatique. Cependant, il ne s'est pas arrêté là et a commencé à développer une conception beaucoup plus complexe - un moteur analytique, qui est devenu le prédécesseur direct de tous les ordinateurs modernes. Quelle était sa spécialité ? Le fait est que la machine à différence, par essence, ne restait encore qu'une machine à additionner complexe et nécessitait pour son travail la présence constante d'une personne qui gardait l'ensemble du schéma (programme) de calculs dans sa tête et dirigeait les actions de la machine le long d'un chemin ou un autre. Il est clair que cette circonstance a été un frein certain dans l'exécution des calculs. Vers 1834, Babbage a eu l'idée : "N'est-il pas possible de créer une machine qui serait une calculatrice universelle, c'est-à-dire qui effectuerait toutes les actions sans intervention humaine et, selon la décision obtenue à un certain stade, serait elle-même choisir la voie ultérieure du calcul ?"

Essentiellement, cela signifiait la création d'une machine contrôlée par programme. Le programme qui était auparavant dans la tête de l'opérateur devait maintenant être décomposé en un ensemble de commandes simples et claires qui seraient saisies à l'avance dans la machine et contrôleraient son fonctionnement. Personne n'avait jamais essayé de créer un tel ordinateur, bien que l'idée même d'appareils contrôlés par logiciel ait déjà été réalisée à cette époque.

En 1804, l'inventeur français Joseph Jacquard invente le métier à tisser commandé par ordinateur. Le principe de son travail était le suivant. Le tissu, comme vous le savez, est un entrelacement de fils mutuellement perpendiculaires. Ce tissage est réalisé sur un métier à tisser, dans lequel les fils de chaîne (longitudinaux) sont enfilés à travers les yeux - trous dans les boucles de fil, et les fils transversaux sont tirés à travers cette chaîne dans un certain ordre à l'aide d'une navette. Avec le tissage le plus simple, les boucles montent à travers une, et les fils de chaîne qui les traversent montent en conséquence. Entre les fils soulevés et restant en place, un espace se forme dans lequel la navette tire le fil de trame (transversal) derrière elle. Après cela, les boucles surélevées sont abaissées et les autres sont relevées. Avec un motif de tissage plus complexe, les fils devaient être soulevés dans diverses autres combinaisons. Le tisserand abaissait et relevait manuellement les fils de chaîne, ce qui prenait généralement beaucoup de temps.

Après 30 ans de travail acharné, Jacquard a inventé un mécanisme permettant d'automatiser le mouvement des boucles selon une loi donnée à l'aide d'un jeu de cartes en carton perforées - des cartes perforées. Dans la machine de Jacquard, les yeux étaient reliés par de longues aiguilles reposant sur une carte perforée. Rencontrant des trous, les aiguilles se sont déplacées vers le haut, à la suite de quoi les yeux qui leur étaient associés se sont levés. Si les aiguilles reposaient sur les cartes à l'endroit où il n'y avait pas de trous, elles restaient en place, tenant les yeux reliés à elles de la même manière. Ainsi, l'espace pour la navette, et donc le motif de tissage des fils, était déterminé par un ensemble de trous sur les cartes de contrôle correspondantes.

Babbage avait l'intention d'utiliser le même principe de contrôle des cartes perforées dans son moteur d'analyse. Il travailla sur son appareil pendant près de quarante ans : de 1834 jusqu'à la fin de sa vie en 1871, mais il ne put le terminer. Cependant, après lui, il y avait plus de 200 dessins de la machine et de ses composants individuels, accompagnés de nombreuses notes détaillées expliquant leur travail. Tous ces matériaux sont d'un grand intérêt et constituent l'un des exemples les plus étonnants de prospective scientifique dans l'histoire de la technologie.

Selon Babbage, le moteur analytique aurait dû inclure quatre blocs principaux.

Machine à calculer
Structure du moteur analytique de Babbage

Le premier appareil, que Babbage appelait le "moulin", était conçu pour effectuer quatre opérations arithmétiques de base. Le deuxième appareil - "entrepôt" - était destiné à stocker les nombres (résultats initiaux, intermédiaires et finaux). Les nombres initiaux ont été envoyés à l'unité arithmétique, et les résultats intermédiaires et finaux en ont été obtenus. L'élément principal de ces deux blocs était des registres de roues de comptage décimales. Chacun d'eux pourrait être placé dans l'une des dix positions et ainsi "se souvenir" d'une décimale.

La mémoire de la machine devait comprendre 1000 registres avec 50 roues numériques chacune, c'est-à-dire qu'elle pouvait stocker 1000 nombres à cinquante chiffres. La vitesse des calculs effectués dépendait directement de la vitesse de rotation des roues numériques. Babbage a supposé que l'ajout de deux nombres de 50 bits prendrait 1 seconde. Pour transférer des nombres de la mémoire vers un appareil arithmétique et vice versa, il était censé utiliser des crémaillères, censées s'engrener avec les dents des roues. Chaque rail s'est déplacé jusqu'à ce que la roue soit en position zéro. Le mouvement était transmis par des tiges et des connexions à un dispositif arithmétique, où il était utilisé au moyen d'un autre rail pour déplacer l'une des roues du registre à la position souhaitée. Le fonctionnement de base du moteur d'analyse, comme celui de la différence, était l'addition, et le reste s'y réduisait. Pour faire tourner de nombreux engrenages, une force externe importante était nécessaire, ce que Babbage espérait obtenir grâce à l'utilisation d'une machine à vapeur.

Le troisième dispositif, qui contrôlait la séquence des opérations, le transfert des numéros sur lesquels les opérations étaient effectuées et la sortie des résultats, était structurellement constitué de deux mécanismes de cartes perforées jacquard. Les cartes perforées de Babbage différaient des cartes perforées de Jacquard, qui ne contrôlaient qu'une seule opération - soulever le fil pour obtenir le motif souhaité dans le processus de fabrication du tissu. La gestion du moteur analytique comprenait divers types d'opérations, chacune nécessitant un type particulier de cartes perforées. Babbage a identifié trois principaux types de cartes perforées : opérationnelles (ou cartes d'opération), variables (ou cartes variables) et numériques. Des cartes perforées opérationnelles contrôlaient la machine. Selon les commandes frappées sur eux, l'addition, la soustraction, la multiplication et la division des nombres qui se trouvaient dans l'appareil arithmétique ont eu lieu.

L'une des idées les plus clairvoyantes de Babbage était l'introduction d'une commande de branche conditionnelle dans l'ensemble des commandes données par la séquence de cartes perforées opérationnelles. En soi, le contrôle du programme (sans l'utilisation d'un saut conditionnel) ne serait pas suffisant pour implémenter efficacement un travail de calcul complexe. La séquence linéaire des opérations est strictement définie en tous points. Cette route est connue dans ses moindres détails jusqu'au bout. Le concept de "saut conditionnel" signifie la transition de l'ordinateur vers une autre section du programme, si une certaine condition est précédemment remplie. Ayant la possibilité d'utiliser l'instruction de branche conditionnelle, le compilateur du programme informatique n'était pas tenu de savoir à quelle étape du calcul le signe qui influence le choix du déroulement du calcul changera.

L'utilisation d'une transition conditionnelle a permis d'analyser la situation actuelle à chaque bifurcation de la route et, sur cette base, de choisir l'un ou l'autre chemin. Les commandes conditionnelles peuvent avoir une forme très différente : comparer des nombres, sélectionner les valeurs numériques requises, déterminer le signe d'un nombre, etc. La machine a effectué des opérations arithmétiques, a comparé les nombres reçus les uns aux autres et, conformément à cela, a effectué d'autres opérations. Ainsi, la machine pourrait passer à une autre partie du programme, sauter certaines commandes, ou reprendre l'exécution d'une partie du programme, c'est-à-dire organiser un cycle. L'introduction de l'instruction de branche conditionnelle a marqué le début de l'utilisation d'opérations logiques, et pas seulement de calcul, dans la machine.

Machine à calculer

A l'aide du deuxième type de cartes perforées - variables (ou, dans la terminologie de Babbage, "cartes de variables"), les nombres étaient transférés entre la mémoire et un dispositif arithmétique. Ces cartes n'indiquaient pas les numéros eux-mêmes, mais uniquement les numéros des registres de mémoire, c'est-à-dire des cellules pour stocker un numéro. Babbage a appelé les registres de mémoire "variables", indiquant que le contenu du registre change en fonction du nombre qui y est stocké.

Le moteur analytique de Babbage utilisait trois types de cartes de variables : pour transférer un nombre vers une unité arithmétique et le stocker davantage en mémoire, pour une opération similaire, mais sans le stocker en mémoire, et pour entrer un nombre en mémoire. Ils sont appelés: 1) "carte zéro" (le numéro est appelé à partir du registre de mémoire, après quoi la valeur zéro est définie dans le registre); 2) "carte de sauvegarde" (le numéro est appelé de la mémoire sans modifier le contenu du registre); 3) "carte de réception" (le numéro est transféré de l'unité arithmétique à la mémoire et écrit dans l'un des registres). Lorsque la machine fonctionnait, il y avait en moyenne trois cartes variables par carte perforée opérationnelle. Ils indiquaient les numéros des cellules de mémoire (adresses, dans la terminologie moderne) dans lesquelles les deux nombres originaux étaient stockés, et le numéro de la cellule où le résultat était écrit.

Machine à calculer
La carte numérotée de Babbage

Les cartes perforées numériques représentaient le principal type de cartes perforées de la machine analytique. Avec leur aide, des nombres initiaux ont été saisis pour résoudre un certain problème et de nouvelles données qui pourraient être nécessaires au cours des calculs.

Après avoir effectué les calculs proposés, la machine a assommé la réponse sur une carte perforée séparée. L'opérateur a ajouté ces cartes perforées dans l'ordre de leurs numéros et les a ensuite utilisées dans son travail (elles étaient, pour ainsi dire, sa mémoire externe). Par exemple, lorsqu'au cours des calculs la machine avait besoin de la valeur du logarithme 2303, elle l'affichait dans une fenêtre spéciale et lançait un appel. L'opérateur a trouvé la carte perforée requise avec la valeur de ce logarithme et l'a entrée dans la machine. "Toutes les cartes", a écrit Babbage, "une fois utilisées et conçues pour une tâche, peuvent être utilisées pour résoudre les mêmes problèmes avec d'autres données, il n'est donc pas nécessaire de les préparer une seconde fois - elles peuvent être soigneusement conservées pour une utilisation future ; au fil du temps, la machine aura votre propre bibliothèque.

Le quatrième bloc était destiné à recevoir les numéros initiaux et à émettre les résultats finaux et se composait de plusieurs appareils qui fournissent des opérations d'E / S. Les nombres initiaux ont été entrés dans la machine par l'opérateur et entrés dans son dispositif de stockage, à partir duquel les résultats finaux ont été extraits et sortis. La machine pourrait imprimer la réponse sur une carte perforée ou l'imprimer sur papier.

En conclusion, il convient de noter que si le développement du matériel du moteur d'analyse est associé exclusivement au nom de Babbage, la programmation de la résolution de problèmes sur cette machine porte le nom de sa bonne amie - Lady Ada Lovelace, la fille de le grand poète anglais Byron, qui aimait passionnément les mathématiques et comprenait parfaitement les problèmes scientifiques et techniques complexes. En 1842, un article du jeune mathématicien Menabrea a été publié en Italie décrivant le moteur analytique de Babbage. En 1843, Lady Lovelace a traduit cet article en anglais avec des commentaires étendus et profonds. Pour illustrer le fonctionnement de la machine, Lady Lovelace a joint à l'article un programme qu'elle avait compilé pour calculer les nombres de Bernoulli. Son commentaire est essentiellement le tout premier travail sur la programmation.

Le moteur analytique s'est avéré être un appareil très coûteux et complexe. Le gouvernement britannique, qui finançait initialement le travail de Babbage, a rapidement refusé de l'aider, de sorte qu'il n'a jamais pu terminer son travail. La complexité de cette machine était-elle justifiée ? Pas dans tout. De nombreuses opérations (en particulier l'entrée-sortie des nombres et leur transmission d'un appareil à l'autre) seraient grandement simplifiées si Babbage utilisait des signaux électriques. Cependant, sa machine a été conçue comme un appareil purement mécanique sans aucun élément électrique, ce qui a souvent mis son inventeur dans une position très difficile. Pendant ce temps, le relais électromécanique, qui deviendra plus tard l'élément principal des ordinateurs, avait déjà été inventé à cette époque : il fut inventé en 1831 simultanément par Henry et Salvatore dal Negro.

L'utilisation des relais électromécaniques dans l'informatique remonte à l'invention de l'Américain Herman Gollerith, qui a créé un ensemble d'appareils destinés à traiter de grandes quantités de données (par exemple, des résultats de recensement). Le besoin d'une telle machine était très grand. Par exemple, les résultats du recensement de 1880 ont été traités aux États-Unis pendant 7 ans. Un temps aussi important s'expliquait par le fait qu'il fallait trier un grand nombre de cartes (une pour chacun des 5 millions d'habitants) avec un très grand - 50 rubriques - un ensemble de réponses aux questions posées dans la carte. Gollerith était au courant de ces problèmes - il était lui-même un employé du US Census Bureau - une agence statistique chargée de mener des recensements de la population et de traiter leurs résultats.

Travaillant beaucoup sur le tri des cartes, Gollerith a eu l'idée de mécaniser ce processus. Tout d'abord, il a remplacé les cartes par des cartes perforées, c'est-à-dire qu'au lieu de marquer au crayon l'option de réponse, il a proposé de percer un trou. À cette fin, il a développé une carte perforée spéciale de 80 colonnes, sur laquelle toutes les informations sur une personne enregistrées lors du recensement ont été appliquées sous forme de poinçons. (La forme de cette carte perforée n'a pas beaucoup changé depuis lors.) Habituellement, une bande de carte perforée était utilisée pour répondre à une question, ce qui permettait d'enregistrer dix réponses (par exemple, à une question sur la religion). Dans certains cas (par exemple, la question sur l'âge), deux colonnes pouvaient être utilisées, ce qui donnait cent réponses.

La deuxième idée de Gollerith était une conséquence de la première - il a créé le premier complexe de comptage et de perforation au monde, qui comprenait un perforateur d'entrée (pour percer des trous) et une tabulatrice avec un dispositif pour trier les cartes perforées. La perforation était effectuée manuellement sur un poinçon, composé d'un corps en fonte avec un récepteur pour une carte et le poinçon lui-même. Une plaque avec plusieurs rangées de trous a été placée au-dessus du récepteur; lorsque la poignée du poinçon était pressée sur l'un d'eux, la carte sous la plaque était perforée de la manière requise. Un coup de poing complexe percé un groupe de cartes avec des données communes avec une seule touche de la main. La machine de tri se composait de plusieurs boîtes avec couvercles. Les cartes étaient poussées à la main entre un ensemble de goupilles élastiques et des réservoirs remplis de mercure. Lorsque la goupille est tombée dans le trou, elle a touché le mercure et a complété le circuit électrique. Au même moment, le couvercle d'une certaine boîte a été soulevé et l'opérateur y a mis une carte. La tabulatrice (ou machine à additionner) sentait des trous sur des cartes perforées, les prenant comme nombres correspondants et les comptant. Le principe de son fonctionnement était similaire à une machine de tri et reposait sur l'utilisation d'un relais électromécanique (des goupilles élastiques et des coupelles à mercure étaient également utilisées comme elles). Lorsque les tiges, lors du mouvement des cartes perforées, sont tombées à travers les trous dans des gobelets contenant du mercure, le circuit électrique a été fermé et un signal électrique a été transmis au compteur, qui a ajouté une nouvelle unité au nombre qu'il contient. Chaque compteur avait un cadran avec une flèche qui se déplaçait d'une unité d'échelle lorsqu'un trou était détecté. Si le tabulateur avait 80 jetons, il pourrait calculer simultanément les résultats pour 8 questions (avec dix réponses possibles pour chacune d'elles). Pour calculer les résultats des 8 questions suivantes, la même carte perforée a de nouveau été passée dans la tabulatrice par son autre section. Jusqu'à 1000 cartes par heure ont été triées en un seul passage.

Le premier brevet (pour une idée) reçu par Gollerith en 1884. En 1887, sa machine a été testée à Baltimore lors de la compilation des tables de mortalité de la population. En 1889, le test décisif du système a eu lieu - un recensement d'essai a été effectué dans quatre districts de la ville de San Louis. La machine de Gollerith était loin devant les deux systèmes manuels concurrents (elle fonctionnait 10 fois plus vite). Après cela, le gouvernement américain a conclu un accord avec Gollerith pour fournir du matériel pour le recensement de 1890. Les résultats de ce recensement, grâce à la tabulatrice, ont été traités en seulement deux ans. En conséquence, la machine a très rapidement acquis une reconnaissance internationale et a été utilisée dans de nombreux pays pour le traitement des données de recensement de la population.

En 1902, Gollerith crée une tabulatrice automatique, dans laquelle les cartes ne sont pas alimentées manuellement, mais automatiquement, et modernise sa machine de tri. En 1908, il a créé un modèle fondamentalement nouveau de la machine à additionner. Au lieu de coupelles contenant du mercure, des brosses de contact ont été utilisées ici, à l'aide desquelles les circuits électriques des électroaimants ont été fermés. Ce dernier assurait la connexion et la déconnexion de l'arbre en rotation continue avec les roues numériques du compteur totalisateur. Les roues numériques tournaient à travers des engrenages à partir d'un arbre en rotation continue qui portait des embrayages à crabots coulissants contrôlés par des électroaimants. Lorsqu'un trou a été trouvé sous la brosse de contact, le circuit électrique de l'électroaimant correspondant a été fermé et il a allumé l'embrayage, qui reliait la roue numérique à l'arbre rotatif, après quoi le contenu du compteur dans cette catégorie a augmenté d'un nombre proportionnel à un tour de roue. Le transfert des dizaines s'effectuait à peu près de la même manière que dans la machine à différences de Babbage.

Le travail commencé par Gollerith se poursuit à ce jour. En 1896, il fonde la Tabulayting Machine Company, une entreprise spécialisée dans la production de machines perforées et de cartes perforées. En 1911, après que Gollerith ait quitté l'activité entrepreneuriale, son entreprise a fusionné avec trois autres et a été transformée en la société mondiale désormais largement connue IBM, le plus grand développeur dans le domaine de la technologie informatique.

La tabulatrice de Gollerith a été la première à utiliser des éléments électromécaniques. Le développement ultérieur de la technologie informatique a été associé à une application large et multiforme de l'électricité. En 1938, l'ingénieur allemand Konrad Zuse a créé le tout premier ordinateur électronique à relais Z1 sur des relais téléphoniques (l'appareil d'enregistrement qu'il contient est resté mécanique). En 1939, un modèle Z2 plus avancé est apparu et en 1941, Zuse a assemblé le premier ordinateur de travail au monde avec contrôle de programme, qui utilisait un système binaire. Toutes ces machines sont mortes pendant la guerre et n'ont donc pas eu beaucoup d'impact sur l'histoire ultérieure de l'informatique.

Indépendamment de Zuse, Howard Aiken était engagé dans la construction d'ordinateurs relais aux États-Unis. En tant qu'étudiant diplômé à l'Université de Harvard, Aiken a été obligé de faire beaucoup de calculs complexes tout en travaillant sur sa thèse. Pour réduire le temps de travail informatique, il a commencé à inventer des machines simples pour la solution automatique de problèmes particuliers. Finalement, il a eu l'idée d'un ordinateur universel automatique capable de résoudre un large éventail de problèmes scientifiques. En 1937, IBM s'intéresse à son projet. Une équipe d'ingénieurs a été désignée pour aider Aiken. Bientôt, les travaux de construction de la machine Mark-1 ont commencé. Les relais, les compteurs, les dispositifs d'entrée et de sortie à contact et à carte perforée étaient des éléments standard des tabulateurs fabriqués par IBM. En 1944, la voiture a été assemblée et donnée à l'Université de Harvard.

"Mark-1" est resté une machine de type transitionnel. Il a largement utilisé des éléments mécaniques pour représenter des nombres et des éléments électromécaniques pour contrôler le fonctionnement de la machine. Comme dans le moteur analytique de Babbage, les nombres étaient stockés dans des registres constitués de roues de comptage à dix dents. Au total, "Mark-1" avait 72 registres et, en plus, une mémoire supplémentaire de 60 registres formés par des commutateurs mécaniques. Les constantes ont été saisies manuellement dans cette mémoire supplémentaire - des nombres qui n'ont pas changé pendant le calcul. Chaque registre contenait 24 roues, dont 23 utilisées pour représenter le nombre lui-même et une pour représenter son signe.

Les registres avaient un mécanisme de transfert des dizaines et étaient donc utilisés non seulement pour stocker des nombres, mais aussi pour effectuer des opérations sur eux : un nombre situé dans un registre pouvait être transféré dans un autre et ajouté (ou soustrait) au nombre qui s'y trouvait. Ces opérations ont été réalisées comme suit. A travers les roues de comptage formant le registre passait un arbre en rotation continue, et n'importe quelle roue pouvait être reliée à cet arbre à l'aide d'interrupteurs électromécaniques pendant un temps constituant une certaine partie de sa révolution. Une brosse (contact de lecture) était attachée à chaque numéro, qui, lorsque la roue tournait, courait le long d'un contact fixe à dix segments. Cela permettait d'obtenir l'équivalent électrique du chiffre stocké dans un bit donné du registre.

Pour effectuer l'opération de sommation, des liaisons telles ont été établies entre les balais du premier registre et le mécanisme de commutation du deuxième registre que les roues de ce dernier ont été reliées à l'arbre pendant une partie de la période de rotation proportionnelle aux nombres dans le correspondant chiffres du premier registre. Tous les interrupteurs étaient automatiquement éteints à la fin de la phase d'ajout, qui n'occupait pas plus de la moitié de la période de rotation. Le mécanisme de sommation lui-même ne différait pas essentiellement de l'additionneur des tabulateurs Gollerite.

La multiplication et la division ont été effectuées dans un appareil séparé. De plus, la machine avait des blocs intégrés pour calculer les fonctions sin x, log x et quelques autres. La vitesse d'exécution des opérations arithmétiques en moyenne: addition et soustraction - 0 seconde, multiplication - 3 secondes, division - 5 secondes. Autrement dit, "Mark-7" équivalait à environ 15 opérateurs travaillant avec des machines à calculer manuelles.

Le travail du "Mark-1" était contrôlé par des commandes saisies à l'aide d'une bande perforée. Chaque commande a été codée en perçant des trous dans 24 colonnes le long de la bande et lue à l'aide de brosses de contact. Le poinçonnage sur des cartes perforées a été converti en un ensemble d'impulsions. L'ensemble des signaux électriques obtenus à la suite du "sondage" des positions d'une ligne donnée détermine les actions de la machine à un pas de calcul donné. Sur la base de ces commandes, le dispositif de contrôle assurait l'exécution automatique de tous les calculs de ce programme : il récupérait des nombres dans des cellules de mémoire, donnait la commande pour l'opération arithmétique requise, envoyait les résultats des calculs à un dispositif de mémoire, etc. Aiken a utilisé des machines à écrire et des perforateurs comme périphérique de sortie.

Après le lancement du Mark 1, Aiken et son équipe ont commencé à travailler sur le Mark 2, se terminant en 1947. Cette machine n'avait plus de roues numériques mécaniques et des relais électriques étaient utilisés pour mémoriser des nombres, effectuer des opérations arithmétiques et des opérations de contrôle - il y en avait 13 2 au total. Les nombres dans "Mark-XNUMX" étaient représentés sous forme binaire.

Le système binaire a été proposé par Leibniz, qui le considérait comme le plus pratique à utiliser dans les ordinateurs. (Un traité sur ce sujet a été écrit en 1703.) Il a également développé l'arithmétique des nombres binaires. Dans le système binaire, tout comme dans le système décimal auquel nous sommes habitués, la valeur de chaque chiffre est déterminée par sa position, seulement au lieu de l'ensemble habituel de dix chiffres, seuls deux sont utilisés : 0 et 1. Afin de comprendre la notation binaire d'un nombre, regardons d'abord la signification de la notation décimale bien connue. Par exemple, le nombre 2901 peut être représenté comme suit :

C'est-à-dire que les nombres : 2, 9, 0, 1 indiquent le nombre d'unités dans chacune des décimales du nombre. Si le système binaire est pris au lieu du système décimal, chaque chiffre indiquera combien d'unités sont contenues dans chacun des chiffres binaires. Par exemple, le nombre 13 s'écrit en binaire comme ceci :

Le système binaire est assez lourd (par exemple, le nombre 9000 comportera 14 chiffres), mais il est très pratique pour effectuer des opérations arithmétiques. Toute la table de multiplication qu'il contient est réduite à une seule égalité 1 * 1 \u1d 1, et l'addition n'a que trois règles: 0) 0 + 0 donne 2; 0) 1+1 donne 3 ; 1) 1+0 donne 1 et transfère XNUMX au bit le plus significatif.

Par exemple:

01010+
01011 =
10101

L'approbation du système binaire en informatique était due à l'existence d'analogues techniques simples d'un chiffre binaire - des relais électriques pouvant se trouver dans l'un des deux états stables, le premier étant aligné sur 0, l'autre sur 1 La transmission d'un nombre binaire par impulsions électriques d'un appareil machine à un autre est également très pratique. Pour cela, seules deux impulsions de formes différentes suffisent (voire une seule, si l'absence de signal est considérée comme nulle).

Il convient de noter que les machines à relais, créées à l'aube de l'histoire des ordinateurs, n'ont pas été utilisées longtemps en informatique, car elles étaient relativement lentes. De même que dans une machine mécanique la vitesse des calculs était déterminée par la vitesse à laquelle tournaient les roues numériques, de même le temps de fonctionnement d'un circuit composé d'un relais était égal au temps qu'il fallait au relais pour s'actionner et se déclencher. Pendant ce temps, même les relais les plus rapides ne pouvaient pas effectuer plus de 50 opérations par seconde. Par exemple, dans Mark-2, les opérations d'addition et de soustraction prenaient en moyenne 0,125 seconde et la multiplication prenait 0,25 seconde. Les analogues électroniques des relais électromécaniques - déclencheurs de lampe à vide - avaient une vitesse beaucoup plus grande. Ils sont devenus les éléments de base de la première génération d'ordinateurs.

Machine à calculer
Train d'impulsions pour le nombre 25 sous forme binaire

La gâchette a été inventée en 1919 par l'ingénieur russe Bonch-Bruevich et indépendamment par les Américains Eccles et Jordan. Cet élément électronique contenait deux lampes et pouvait à tout moment se trouver dans l'un des deux états stables. C'était un relais électronique, c'est-à-dire qu'en présence d'un signal d'impulsion de commande, il activait la ligne ou le circuit de courant électrique souhaité. Comme un relais électromécanique, il pourrait être utilisé pour représenter un seul chiffre binaire.

Machine à calculer
Schéma d'un relais électronique (déclencheur)

Considérons le principe de fonctionnement d'un relais électronique, composé de deux tubes à vide-triodes L1 et L2, qui peuvent être situés dans un cylindre. La tension de l'anode L1 à travers la résistance R1 est fournie à la grille L2, et la tension de l'anode L2 est fournie à la grille L1 à travers la résistance R2. Selon la position dans laquelle se trouve le déclencheur, il donne un niveau de tension bas ou haut à la sortie. Supposons d'abord que la lampe L1 est ouverte et que L2 est fermée. Alors la tension à l'anode d'une lampe ouverte est petite par rapport à la tension à l'anode d'une lampe fermée. En effet, puisque la lampe ouverte L1 conduit le courant, alors la majeure partie de la tension d'anode chute (selon la loi d'Ohm u = i • R) à haute résistance d'anode Ra, et sur la lampe elle-même (connectée en série avec elle) seulement une petite partie des chutes de tension. Inversement, dans une lampe fermée, le courant d'anode est nul et toute la tension de la source de tension d'anode chute aux bornes de la lampe. Par conséquent, beaucoup moins de chutes de tension de l'anode d'une lampe ouverte L1 vers la grille d'une lampe fermée que de l'anode d'une lampe fermée L2 vers la grille L1. La tension négative Ec appliquée aux grilles des deux lampes est choisie de telle sorte qu'au début la lampe L2 soit fermée, malgré la présence d'une petite tension positive appliquée de l'anode de la lampe ouverte L1 à la grille L2. La lampe L1 est initialement ouverte, car la tension positive appliquée à la grille depuis l'anode L2 est bien supérieure à Ec. Ainsi, en raison de la connexion entre les lampes à travers les résistances R1 et R2, l'état initial est stable et persistera aussi longtemps que vous le souhaitez.

Considérons maintenant ce qui se passera dans le circuit si une tension négative est appliquée de l'extérieur à la grille d'une lampe ouverte L1 sous la forme d'une courte impulsion de courant d'une amplitude telle qu'elle se ferme. Avec une diminution du courant d'anode i1, la tension à l'anode de la lampe L1 augmentera fortement et, par conséquent, la tension positive sur la grille L2 augmentera. Cela entraînera l'apparition du courant d'anode i2 à travers la lampe L2, grâce à quoi la tension d'anode sur la lampe L2 diminuera. L'abaissement de la tension positive sur la grille L1 entraînera une diminution encore plus importante du courant dans L1, etc. À la suite d'un tel processus de croissance semblable à une avalanche de courant décroissant dans L1 et de courant croissant dans L2, la lampe L1 se fermera et la lampe L2 s'ouvrira. Ainsi, le circuit se déplacera vers une nouvelle position d'équilibre stable, qui sera maintenue pendant un temps arbitrairement long : l'impulsion appliquée à l'entrée 1 est « mémorisée ». Le retour du relais électronique à son état d'origine peut être effectué en appliquant une impulsion de tension négative à l'entrée. La gâchette a donc deux positions d'équilibre stables : l'état initial, dans lequel L1 est ouvert et L2 est fermé, et l'état dit "excité", dans lequel L1 est fermé et L2 est ouvert. Le temps de transfert d'un déclencheur d'un état à un autre est très court. Les condensateurs C1 et C2 servent à accélérer le fonctionnement de la lampe.

L'idée d'un ordinateur dans lequel des tubes à vide seraient utilisés comme dispositif de stockage appartient au scientifique américain John Mauchly. Dans les années 30, il a fabriqué plusieurs appareils informatiques simples sur des déclencheurs. Cependant, pour la première fois, un autre mathématicien américain, John Atanasov, a utilisé des tubes électroniques pour créer un ordinateur. Sa voiture était déjà presque terminée en 1942. Mais en raison de la guerre, le financement des travaux a été interrompu. L'année suivante, 1943, alors qu'il travaillait à la Moore School of Electrical Engineering de l'Université de Pennsylvanie, Mauchly, avec Presper Eckert, développa son propre projet d'ordinateur électronique. Le US Ordnance Department s'est intéressé à ce travail et a commandé la construction de la machine à l'Université de Pennsylvanie. Mauchli a été nommé chef de l'œuvre. Pour l'aider, 11 ingénieurs supplémentaires (dont Eckert), 200 techniciens et un grand nombre d'ouvriers ont été affectés. Pendant deux ans et demi, jusqu'en 1946, cette équipe travaille à la création d'un « intégrateur et calculateur numérique électronique » - l'ENIAC. C'était une énorme structure, couvrant une superficie de 135 mètres carrés, ayant une masse de 30 tonnes et une consommation d'énergie de 150 kilowatts. La machine se composait de quarante panneaux contenant 18000 1500 tubes à vide et 0 0028 relais. Cependant, l'utilisation de tubes à vide au lieu d'éléments mécaniques et électromécaniques a permis une forte augmentation de la vitesse. L'ENIAC n'a passé que 0 seconde pour la multiplication et 0002 seconde pour l'addition, c'est-à-dire qu'elle a fonctionné mille fois plus vite que les machines à relais les plus avancées.

Le dispositif ENIAC en termes généraux était le suivant. Tous les dix déclencheurs y étaient connectés en un anneau, formant un compteur décimal, qui agissait comme une roue de comptage d'une machine mécanique. Dix de ces anneaux plus deux déclencheurs pour représenter le signe d'un nombre formaient un registre de stockage. Au total, l'ENIAC disposait de vingt registres de ce type. Chaque registre était équipé d'un circuit pour transmettre des dizaines et pouvait être utilisé pour effectuer des sommations et des soustractions. D'autres opérations arithmétiques ont été effectuées dans des blocs spéciaux. Les nombres étaient transmis d'une partie de la machine à une autre par des groupes de 11 conducteurs - un pour chaque décimale et signe du nombre. La valeur du chiffre transmis était égale au nombre d'impulsions traversant ce conducteur. Le fonctionnement des blocs individuels de la machine était contrôlé par un oscillateur maître qui générait une séquence de certains signaux qui "ouvraient" et "fermaient" les blocs correspondants de la machine électronique.

La saisie des nombres dans la machine se faisait à l'aide de cartes perforées. Le contrôle logiciel a été effectué au moyen de prises et de champs de composition (tableau de commutation) - de cette manière, les différents blocs de la machine étaient connectés les uns aux autres. C'était l'une des lacunes importantes de la conception décrite. Il a fallu plusieurs jours pour préparer la machine au travail - connecter les blocs sur la carte de commutation, alors que la tâche était parfois résolue en quelques minutes seulement. En général, l'ENIAC était encore un ordinateur peu fiable et imparfait. Elle échouait souvent, et la recherche d'un dysfonctionnement était parfois retardée de plusieurs jours. De plus, cette machine ne pouvait pas stocker d'informations.

Pour éliminer le dernier inconvénient, Eckert en 1944 a proposé l'idée d'un programme stocké en mémoire. Ce fut l'une des découvertes techniques les plus importantes de l'histoire de l'informatique. Son essence était que les commandes du programme devaient être présentées sous la forme d'un code numérique, c'est-à-dire codées dans le système binaire (comme des nombres) et entrées dans la machine, où elles seraient stockées avec les nombres d'origine. Pour mémoriser ces commandes et opérations avec eux, il était censé utiliser les mêmes appareils - déclencheurs, que pour les actions avec des nombres. De la mémoire, les commandes individuelles devaient être extraites vers le dispositif de contrôle, où leur contenu était décodé et utilisé pour transférer des nombres de la mémoire vers un dispositif arithmétique pour effectuer des opérations sur eux et renvoyer les résultats en mémoire.

Pendant ce temps, après la fin de la Seconde Guerre mondiale, de nouveaux ordinateurs électroniques ont commencé à apparaître les uns après les autres. En 1948, les Britanniques Kilburn et Williams de l'Université de Manchester ont créé la machine MARK-1, dans laquelle l'idée d'un programme stocké a été mise en œuvre pour la première fois. En 1947, Eckert et Mouchli fondent leur propre entreprise et, en 1951, ils lancent la production en série de leurs machines UNIVAC-1. En 1951, le premier ordinateur soviétique MESM de l'académicien Lebedev est apparu. Enfin, en 1952, IBM sort son premier ordinateur industriel, l'IBM 701. Toutes ces machines avaient beaucoup en commun dans leur conception. Nous allons maintenant parler de ces principes généraux de fonctionnement de tous les ordinateurs de la première génération.

Les ordinateurs électroniques, comme vous le savez, ont fait une véritable révolution dans le domaine de l'application des mathématiques pour résoudre les problèmes les plus importants de la physique, de la mécanique, de l'astronomie, de la chimie et d'autres sciences exactes. Ces processus qui étaient auparavant complètement incalculables ont commencé à être modélisés avec succès sur des ordinateurs. La solution de tout problème était réduite aux étapes successives suivantes : 1) en fonction de la valeur de l'essence physique, chimique et autre de tout processus à l'étude, le problème était formulé sous la forme de formules algébriques, d'équations différentielles ou intégrales, ou autres relations mathématiques; 2) en utilisant des méthodes numériques, le problème a été réduit à une suite d'opérations arithmétiques simples ; 3) un programme a été compilé qui a déterminé l'ordre strict d'exécution des actions dans la séquence établie. (L'ordinateur effectuait, en principe, la même procédure qu'une personne travaillant sur une machine à additionner, mais des milliers ou des dizaines de milliers de fois plus rapidement.) Les instructions du programme compilé étaient écrites à l'aide d'un code spécial. Chacune de ces commandes déterminait une action spécifique de la part de la machine.

Toute commande, à l'exception du code de l'opération en cours d'exécution, contenait des adresses. Habituellement, il y en avait trois - les numéros de cellules de mémoire, d'où les deux numéros initiaux ont été pris (1ère et 2ème adresse), puis le numéro de la cellule où le résultat a été envoyé (3ème adresse). Ainsi, par exemple, la commande +/17/25/32 indique que les nombres des 17e et 25e cellules doivent être additionnés et le résultat envoyé à la 32e cellule. Une commande unicast pourrait également être utilisée. Dans ce cas, pour effectuer une opération arithmétique sur deux nombres et envoyer le résultat, trois commandes étaient nécessaires : la première commande appelait l'un des nombres de la mémoire à l'unité arithmétique, la commande suivante appelait le deuxième nombre et effectuait l'opération spécifiée sur nombres, la troisième commande envoyait le résultat en mémoire. Ainsi, le travail de l'ordinateur a été effectué au niveau du programme.

Les processus de calcul se sont déroulés comme suit. Le fonctionnement de l'ordinateur était contrôlé à l'aide de clés et de commutateurs électroniques, appelés circuits logiques, et chaque clé électronique, après avoir reçu un signal d'impulsion de tension de commande, activait la ligne ou le circuit de courant électrique souhaité. La clé électronique la plus simple pourrait déjà être une lampe à électrons à trois électrodes, qui se verrouille lorsqu'une tension négative importante est appliquée à sa grille, et s'ouvre si une tension positive est appliquée à la grille. Dans ce cas, son fonctionnement peut être représenté comme une vanne de régulation qui passe à travers elle-même l'impulsion A lorsqu'une impulsion de régulation B est appliquée à sa deuxième entrée. Lorsqu'il n'y a qu'une seule impulsion de courant A ou B, la vanne est fermée et l'impulsion ne pas passer à sa sortie. Ainsi, seulement lorsque les deux impulsions A et B coïncident dans le temps, une impulsion apparaîtra à la sortie. Un tel circuit est appelé un circuit de coïncidence, ou un circuit "et" logique. Parallèlement à cela, tout un ensemble d'autres circuits logiques est utilisé dans l'ordinateur. Par exemple, le circuit "ou", qui donne une impulsion de sortie lorsqu'il apparaît sur la ligne A ou B, ou simultanément sur les deux lignes. Un autre schéma logique est le schéma "non". Elle interdit au contraire le passage de l'impulsion à travers la valve, si une autre impulsion d'inhibition est appliquée simultanément, bloquant la lampe.

En utilisant ces deux circuits, vous pouvez assembler un additionneur à un bit. Supposons que les impulsions A et B soient transmises simultanément aux circuits "non" et "et", et que le bus "somme" (fil) soit connecté au circuit "non" et le bus "carry" au circuit "et" . Supposons qu'une impulsion (c'est-à-dire une) est reçue à l'entrée A, mais qu'aucune entrée n'est reçue à l'entrée B. Ensuite, "non" manquera l'impulsion vers le bus "somme", et le circuit "et" ne la manquera pas, c'est-à-dire que le bit lira "1", ce qui correspond à la règle d'addition binaire. Supposons que les entrées A et B reçoivent des impulsions en même temps. Cela signifie que le code du numéro A est "1" et que le code de B est également "1". Le circuit "non" ne manquera pas deux signaux et la sortie "somme" sera "0". Mais le circuit "et" les ignorera et il y aura une impulsion sur le bus "transfert", c'est-à-dire "1 " sera transféré à l'additionneur du bit adjacent.

Dans les premiers ordinateurs, les déclencheurs servaient d'élément principal de mémoire et d'additionneur arithmétique. Le circuit de déclenchement, comme nous nous en souvenons, avait deux états d'équilibre stables. En attribuant une valeur de code de "0" à un état et une valeur de code de "1" à un autre, il était possible d'utiliser des cellules de déclenchement pour stocker temporairement des codes. Dans les sommateurs, lorsqu'une impulsion est appliquée à l'entrée de comptage de la gâchette, elle passe d'un état d'équilibre à un autre, qui respecte parfaitement les règles d'addition pour un chiffre binaire (0+0=0 ; 0+1=1 ; 1+0=1 ; 1+1=0 et transfert de un au bit de poids fort). Dans ce cas, la position initiale du déclencheur était considérée comme le code du premier nombre et l'impulsion appliquée était considérée comme le code du deuxième nombre. Le résultat a été formé sur la cellule de déclenchement. Pour mettre en oeuvre un circuit de sommation pour plusieurs chiffres binaires, il fallait assurer le transfert d'une unité d'un chiffre à l'autre, qui était effectué par un circuit spécial.

L'additionneur était la partie principale de l'unité arithmétique de la machine. L'additionneur pour l'addition parallèle de codes numériques à la fois pour tous les chiffres avait autant d'additionneurs à un chiffre que le code numérique contenait de chiffres binaires. Les nombres ajoutés A et B sont entrés dans l'additionneur à partir de dispositifs de mémoire et y ont été stockés à l'aide de bascules. Les registres se composaient également d'un certain nombre de bascules interconnectées T1, T2, T3, T'1, T'2, etc., dans lesquelles le code numérique était fourni par le dispositif d'enregistrement en parallèle pour tous les chiffres. Chaque bascule mémorisait un code à un chiffre, il fallait donc n relais électroniques pour mémoriser un nombre à n chiffres binaires. Les codes des nombres stockés dans les registres étaient additionnés simultanément pour chaque chiffre à l'aide d'additionneurs S1, S2, S3, etc., dont le nombre était égal au nombre de chiffres. Chaque additionneur d'un bit avait trois entrées. Les codes des nombres A et B du même chiffre ont été introduits dans les première et deuxième entrées. La troisième entrée servait à transmettre le code de transfert du chiffre précédent.

Machine à calculer
Circuit additionneur parallèle

À la suite de l'addition des codes d'un bit donné, le code somme a été obtenu sur le bus de sortie de l'additionneur, et le code "1" ou "0" pour le transfert vers le bit suivant a été obtenu sur le bus "transfert". Supposons, par exemple, qu'il fallait additionner deux nombres A=5 (en code binaire 0101) et B=3 (en code binaire 0011). Lorsque ces nombres ont été ajoutés en parallèle, les codes A1=2, A3=1, A1=2, A0=3 et B1=4, B0=1, B1=2, B1=3 ont été respectivement appliqués aux entrées A0, A4 et A0 de l'additionneur. En additionnant les codes du premier chiffre dans l'additionneur S1, nous obtenons 1+1=0 et le code de transfert "1" au chiffre suivant. L'additionneur S2 a ajouté trois codes : les codes A2, B2 et le code de portage de l'additionneur précédent S1. En conséquence, nous obtenons 0+1+1=0 et le code de transfert "1" au troisième chiffre suivant.

L'additionneur S3 additionne les codes du troisième chiffre des nombres A et B et le code de transfert "1" du deuxième chiffre, c'est-à-dire que nous aurons 1 + 0 + 1 = 0 et que nous transférerons à nouveau au quatrième chiffre suivant. Suite à l'addition sur les pneus "somme", on obtient le code 1000, qui correspond au chiffre 8.

En 1951, Joy Forrester apporta une amélioration importante à la conception de l'ordinateur en brevetant la mémoire sur les noyaux magnétiques, qui pouvait mémoriser et stocker les impulsions qui leur étaient appliquées pendant une durée arbitrairement longue.

Machine à calculer
Enroulements à noyau de ferrite

Les noyaux étaient fabriqués à partir de ferrite, obtenue en mélangeant de l'oxyde de fer avec d'autres impuretés. Il y avait trois enroulements sur le noyau. Les enroulements 1 et 2 servaient à magnétiser le noyau dans un sens ou dans l'autre en leur appliquant des impulsions de polarité différente. L'enroulement 3 était l'enroulement de sortie de la cellule, dans lequel le courant était induit lorsque le noyau était remagnétisé. Dans chaque noyau, au moyen de sa magnétisation, un enregistrement d'une impulsion a été stocké, correspondant à un chiffre d'un certain nombre. À partir des cœurs connectés dans un certain ordre, il était toujours possible de sélectionner le nombre souhaité à grande vitesse. Ainsi, si un signal positif a été appliqué à travers l'enroulement du noyau, alors le noyau est magnétisé positivement, avec un signal négatif, la magnétisation était négative. Ainsi, l'état du cœur a été caractérisé par le signal enregistré.

Lors de la lecture à travers l'enroulement, un signal d'une certaine polarité a été appliqué, par exemple positif. Si auparavant le noyau était magnétisé négativement, il était alors remagnétisé - et un courant électrique est apparu dans l'enroulement de sortie (selon la loi de l'induction électromagnétique), qui a été amplifié par l'amplificateur. Si le noyau était magnétisé positivement, il n'y avait aucun changement dans son état - et aucun signal électrique n'apparaissait dans l'enroulement de sortie. Après avoir sélectionné le code, il était nécessaire de restaurer l'état d'origine du noyau, ce qui était effectué par un circuit spécial. Ce type de dispositif de stockage permettait d'échantillonner des nombres en quelques microsecondes.

De grandes quantités d'informations étaient stockées sur des supports externes, tels que des bandes magnétiques. L'enregistrement des impulsions électriques ici était similaire à l'enregistrement du son sur un magnétophone: des impulsions de courant passaient à travers les têtes magnétiques, qui magnétisaient les endroits correspondants de la bande passante. Lors de la lecture, le champ d'aimantation résiduelle, passant sous les têtes, y induit des signaux électriques, qui sont amplifiés et introduits dans la machine. De la même manière, les informations étaient enregistrées sur un tambour magnétique recouvert d'un matériau ferromagnétique. Dans ce cas, les informations pourraient être trouvées plus rapidement.

Auteur : Ryzhov K.V.

 Nous recommandons des articles intéressants section L'histoire de la technologie, de la technologie, des objets qui nous entourent:

▪ Roue et chariot

▪ Moteur diesel

▪ Velcro

Voir d'autres articles section L'histoire de la technologie, de la technologie, des objets qui nous entourent.

Lire et écrire utile commentaires sur cet article.

<< Retour

Dernières nouvelles de la science et de la technologie, nouvelle électronique :

Une nouvelle façon de contrôler et de manipuler les signaux optiques 05.05.2024

Le monde moderne de la science et de la technologie se développe rapidement et chaque jour de nouvelles méthodes et technologies apparaissent qui nous ouvrent de nouvelles perspectives dans divers domaines. L'une de ces innovations est le développement par des scientifiques allemands d'une nouvelle façon de contrôler les signaux optiques, qui pourrait conduire à des progrès significatifs dans le domaine de la photonique. Des recherches récentes ont permis à des scientifiques allemands de créer une lame d'onde accordable à l'intérieur d'un guide d'ondes en silice fondue. Cette méthode, basée sur l'utilisation d'une couche de cristaux liquides, permet de modifier efficacement la polarisation de la lumière traversant un guide d'ondes. Cette avancée technologique ouvre de nouvelles perspectives pour le développement de dispositifs photoniques compacts et efficaces, capables de traiter de gros volumes de données. Le contrôle électro-optique de la polarisation assuré par la nouvelle méthode pourrait constituer la base d'une nouvelle classe de dispositifs photoniques intégrés. Cela ouvre de grandes opportunités pour ...>>

Clavier Primium Sénèque 05.05.2024

Les claviers font partie intégrante de notre travail informatique quotidien. Cependant, l’un des principaux problèmes auxquels sont confrontés les utilisateurs est le bruit, notamment dans le cas des modèles haut de gamme. Mais avec le nouveau clavier Seneca de Norbauer & Co, cela pourrait changer. Seneca n'est pas seulement un clavier, c'est le résultat de cinq années de travail de développement pour créer l'appareil idéal. Chaque aspect de ce clavier, des propriétés acoustiques aux caractéristiques mécaniques, a été soigneusement étudié et équilibré. L'une des principales caractéristiques du Seneca réside dans ses stabilisateurs silencieux, qui résolvent le problème de bruit commun à de nombreux claviers. De plus, le clavier prend en charge différentes largeurs de touches, ce qui le rend pratique pour tout utilisateur. Bien que Seneca ne soit pas encore disponible à l'achat, sa sortie est prévue pour la fin de l'été. Le Seneca de Norbauer & Co représente de nouvelles normes en matière de conception de clavier. Son ...>>

Inauguration du plus haut observatoire astronomique du monde 04.05.2024

L'exploration de l'espace et de ses mystères est une tâche qui attire l'attention des astronomes du monde entier. Dans l’air pur des hautes montagnes, loin de la pollution lumineuse des villes, les étoiles et les planètes dévoilent leurs secrets avec plus de clarté. Une nouvelle page s'ouvre dans l'histoire de l'astronomie avec l'ouverture du plus haut observatoire astronomique du monde, l'Observatoire Atacama de l'Université de Tokyo. L'Observatoire d'Atacama, situé à 5640 XNUMX mètres d'altitude, ouvre de nouvelles opportunités aux astronomes dans l'étude de l'espace. Ce site est devenu l'emplacement le plus élevé pour un télescope au sol, offrant aux chercheurs un outil unique pour étudier les ondes infrarouges dans l'Univers. Bien que l'emplacement en haute altitude offre un ciel plus clair et moins d'interférences de l'atmosphère, la construction d'un observatoire en haute montagne présente d'énormes difficultés et défis. Cependant, malgré les difficultés, le nouvel observatoire ouvre de larges perspectives de recherche aux astronomes. ...>>

Nouvelles aléatoires de l'Archive

Les chats copient le comportement de leurs maîtres 24.02.2019

Au fil du temps, les traits de caractère des chats deviennent similaires aux traits de comportement de leurs propriétaires. Cette conclusion a été faite par des scientifiques de l'Université britannique de Lincoln.

D'après une étude de la Animal Behavior Clinic de l'Université Lincoln, il n'y a presque aucune différence à cet égard entre les chiens et les chats. De plus, l'influence humaine sur un chat ressemble souvent au lien qui se forme entre parents et enfants.

Pour cette étude, les scientifiques Daniel Mills et Lauren Finca ont interrogé 3,3 XNUMX propriétaires de chats et ont trouvé des liens entre le comportement de leurs animaux de compagnie - leur affection, leur agressivité ou la fréquence à laquelle ils aiguisaient leurs griffes sur les meubles.

"Un lien a été établi entre un névrosisme accru du propriétaire et une probabilité plus élevée que les chats développent des 'problèmes de comportement', se manifestant par des comportements plus agressifs, anxieux ou craintifs, des comportements plus douloureux en réponse au stress, des maladies plus fréquentes et un surpoids", indique l'étude. .

Ainsi, par exemple, chez les propriétaires souffrant d'une nervosité aiguë, les chats se comportaient plus souvent de la même manière et avaient tendance à être en surpoids. Dans le même temps, chez les personnes amicales et calmes, les chats entraient facilement en contact et n'avaient aucun problème de surpoids.

Les experts Cat ont hautement apprécié les résultats du travail effectué par leurs collègues. "Étant des créatures très sensibles, ils sont très influencés par les gens qui les entourent. Ils sont les plus étroitement liés à leurs propriétaires et s'influencent mutuellement", a commenté Danielle Gan-Moore, professeur de médecine féline à l'Université d'Édimbourg, sur l'étude.

Autres nouvelles intéressantes :

▪ Photomatrices de graphène prometteuses

▪ Architecture du processeur LoongArch

▪ Le bracelet électronique Jawbone UP suit votre santé

▪ La peau en plastique ressent la force du toucher

▪ Marc de café pour la construction de routes

Fil d'actualité de la science et de la technologie, nouvelle électronique

 

Matériaux intéressants de la bibliothèque technique gratuite :

▪ section du site Matériel électrique. Sélection d'articles

▪ article d'Isocrate. Aphorismes célèbres

▪ article Comment Ernest Rutherford a-t-il classé les sciences ? Réponse détaillée

▪ article Entretien et réparation des groupes frigorifiques au fréon et des équipements des locaux frigorifiques. Instruction standard sur la protection du travail

▪ article Contrôle de la luminosité dans un lampadaire. Encyclopédie de l'électronique radio et de l'électrotechnique

▪ article Elastique cassé. Concentrer le secret

Laissez votre commentaire sur cet article :

Nom:


E-mail (facultatif) :


commenter:





Toutes les langues de cette page

Page principale | bibliothèque | Articles | Plan du site | Avis sur le site

www.diagramme.com.ua

www.diagramme.com.ua
2000-2024