BE660817A - - Google Patents

Info

Publication number
BE660817A
BE660817A BE660817A BE660817A BE660817A BE 660817 A BE660817 A BE 660817A BE 660817 A BE660817 A BE 660817A BE 660817 A BE660817 A BE 660817A BE 660817 A BE660817 A BE 660817A
Authority
BE
Belgium
Prior art keywords
register
address
memory
character
transmitted
Prior art date
Application number
BE660817A
Other languages
English (en)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from FR967652A external-priority patent/FR1404464A/fr
Application filed filed Critical
Priority to BE660817A priority Critical patent/BE660817A/fr
Publication of BE660817A publication Critical patent/BE660817A/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Controls And Circuits For Display Device (AREA)

Description


   <Desc/Clms Page number 1> 
 
 EMI1.1 
 



  "SYSTEM D' :EtéJ,AGASINAGE ET DE TRAITEMENT DE DON1#ES. 



   La présente invention se rapporte à un système d'emmagasinage et de traitement de données organisé pour permettre la sélection de données contenues dans une mémoire, à partir d'adresses comportant un petit nombre de caractères et dénommées adresses réduites ou   "repères".   

 <Desc/Clms Page number 2> 

 



   Des   systèmes   d'emmagasinage et de traitement do données   ainsi   organisée, tels que celui qui a été décrit dans la demande de brevet belge déposé le 23 Juillet 1963 par la COMPAGNIE DES MACHINES BULL sous le titre : "Système d'adressage symbolique câblé", ont pour objet de sélectionner et d'extraire, selon des procédés connus, des quantités à traiter contenues dans une mémoire, au moyen de repères faisant partie d'instructions enregistrées dans cette mé- moire.

   La dite mémoire est alors prévue pour contenir trois catégories différentes de données, les données de la première catégorie   éta@@  constituées par des instructions, les données de la deuxième catégorie étant constituées par des adresses développées et les données de la troisième catégories étant constituées par des quantités à traiter. Ces systèmes sont agencés pour permettre à un repère contenu dans une   instruc-   tion qui a été extraite de la mémoire, de contrôler la sé- lection et l'extraction d'une adresse développée correepon- dante emmagasinée dans la mémoire, la dite adresse dévelop- pée permettant à son tour de contrôler la sélection et l'ex- traction d'une quantité à traiter emmagasinée dans la mémoire. 



  Ces systèmes sont particulièrement avantageux du fait que chaque repère est constitué d'un nombre très restreint de caractères et qu'il n'exige, par conséquent, qu'une place relativement réduite pour être emmagasiné dans la mémoire. 



  Dans la technique des calculateurs   électroniques,   ce mode d'adressage de la mémoire, dans lequel on utilise des repères, est parfois désigné sous le nom d'adressage symbolique. 



   Dans les machines de traitement de données utilisant les systèmes d'adressage traditionnels et travaillant sous le contrôle d'un programme enregistré dans une mémoire, on 

 <Desc/Clms Page number 3> 

 constate fréquemment, parmi les adresses qui font partie des instructions du   programme,   la présence de pluralités d'adresses identiques qui occupent une place importante dans la mémoire.

   Dans les machines de traitement de données utili- sant les systèmes dits d'adressage symbolique, au contraire, la place occupée dans la machine par une adresse développée et la plurulité des repères identiques correspondant à cette adresse développée est notablement plus réduite, ce qui permet, par suite du gain de place réalisé, d'utiliser, pour l'enregistrement du   programme,   une mémoire de capacité plus faible, tout en conservant les mêmes possibilités d'utilisation. On a constaté qu'un même repère n'est utilisé, en moyenne, que deux ou trois lois au cours alun même pro- gramme.

   Un démontre alors que, pratiquement, un système d'adressage symbolique câblé ne présente tout son intérêt que si le nombre de caractères qui constituent un repère est au plus égal à la moitié du nombre de caractères qui constituent une adresse développée. Par exemple, dans le cas où la mémoire comporte   100.000   emplacements, chaque emplacement servant à   l'enregistrement   d'un caractère, la sélection des données contenues dans les emplacements de cette mémoire s'effectue sous le contrôle d'adresses com- prises entre 00.000   et 99.999,   Chaque adresse 00.000,   00.001,     00.002,   00.003, 99.999 est, dans le cas consi- déré, constituée de cinq chiffres décimaux.

   En conséquence de ce qui a été dit plus haut, un système d'adressage symbo- lique ne pourra être avantageusement utilisé par une machine possédant une mémoire de 100.000 emplacements, que si le nombre de caractères qui constituent chaque repère est au plus égal à deux. De même, dans le cas où la capacité de la 

 <Desc/Clms Page number 4> 

 mémoire est de 1000   emplacements,   chaque adresse développée est constituée de trois chiffres décimaux et il faut alors, pour que   l'utilisation   d'un système d'adressage   symbolique   se révèle intéressant, que chaque   repère 'soit   constitué do un caractère. 



   Afin de permettre l'utilisaticn uaximum des possi- bilités de la mémoire, il est de pratique   oourante,   dans les machines de traitement de données, d'emmagasiner les données dans la mémoire soue fnrme de mots, chaque mot étant constitué d'un nombre quelconque de caractères et étant enregistré à raison d'un caractère par   emplacement   de mémoire. Toutefois,du fait que les mots ainsi   emmagasines   n'ont pas tous le même nombre de caractères, il est indis- pensable que le début et la fin de chaque mot soit aisément identifiable. A cet effet, divers modes d'identification ont été proposés.

   Dans un premier ode d'identification, on a proposé d'emmagasiner les mots les uns à la suite des autres dans la mémoire, le début de chaque mot étant iden- tifié par une "marque de mot" affectée au premier caractère de ce mot. Dans un autre mode d'identification, on a pro- posé   d'emmagasiner   les mots les une à la suite des autres dans des zones délimitées par des caractères spéciaux appe- lés caractères "drapeaux", chaque zone comportant alors plusieurs emplacements successifs.

   L'une ou l'autre de ces manières de faire permet de désigner l'un quelconque des mo+s contenus dans la mémoire, en spécifiant simplement, au moyen d'une seule adresse, selon le mode d'identification adopté, soit le premier caractère de ce mot, le dit carac-   tère   étant alors affecté d'une marque de mot, soit le caractère drapeau qui se trouve au début de la zone contenant 

 <Desc/Clms Page number 5> 

 ce mot. En modifiant successivement d'une unité la dite adresse, on peut alors sélectionner successivement chacun des caractères de ce mot jusqu'à ce que soit décelé le mot suivant. 



   Toutes ces considérations permettent de comprendre   qu'une   zone comportant plusieurs   emplacements   peut être ainsi sélectionnée au moyen d'une seule adresse et que, dans la plupart des   problèmes   à traiter, il est alors nécessaire d'utiliser autant d'adresses développées   diffé-   rentes qu'il y a de zones qui interviennent dans ces problè-   mes.   Pans les systèmes d'adressage symbolique câblés, du fait qu'un câblage permet d'établir une correspondance entre un repéreet une adresse développée, il est donc nécessaire d'utiliser autant de repères différents qu'il y a de zones qui interviennent dans un problème à traiter, 
Par ailleurs, il se révèle particulièrement avanta- geux d'adopter, pour chacun des caractères qui constituent un repère,

   le même mode de représentation que celui des autres caractères contenus dans la mémoire. On considèrera, suivant le mode de représentation généralement adopté, que chacun des caractères qui constituent un repère est repré- senté, sous   forue   codée, par une combinaison de six chiffres binaires. Avec le mode de représentaticn ainsi adopté, on peut   former   64 combinaisons binaires différentes et il est possible alors de représenter, sous une forme codée, 64 ceractères différents en attribuant conventionnellement chacune de ces combinaisons à   l'expressicn   codée de chacun de ces caractères. 



   Dans le cas où la capacité de la mémoire est grande et est plus particulièrement comprise entre   10.000   et 

 <Desc/Clms Page number 6> 

   100.000   caractères, chaque repère est constitua au maximum de deux caractères, ainsi qu'on l'a indique   précédemment.   Du fait que chacun de ces caractères est représenté par une combinaison de six chiffres binaires, on peut former jus- qu'à 4.096 combinaisons différentes et disposer ainsi de 4.096 repères différente. Pans la plupart des problèmes à traiter, ce nombre de repères suffit grandement'.

   On a constaté en effet que, dans la plupart des problèmes trai- tés, une fraction seulement de la capacité de la mémoire, de l'ordre du tiers en Moyenne, est utilisée efiectivement par les mots susceptibles   d'être   utilises dans le traitement, les deux tiers vestants servant effectivement à l'enregia- trement des adresses   développées   et des instructions du programme. Il s'ensuit que, dans le cas de la capacité de mémoire considérée, le nombre total des caractères formant les mots susceptibles d'être traités dépasse rarement   30.000.   Si on considère qu'un mot est formé, en moyenne de 7 à 8 caractères, on constate alors que le nombre maximum de zones utilisées, et par conséquent le nombre de repères différents nécessaires pour sélectionner ces zones, dépasse rarement 4.000. 



   Dans le cas où la capacité de la mémoire est pe+ite et est inférieure à 1000 caractères, chaque repère est constitué de un caractère, pour les raisons exposées   précé-   demment. Comme ce caractère est représenté par une combi-   naisor.   de six chiffres binaires, le nombre de combinaisons différentes que l'on peut former se trouve réduit à 64. En conséquence, cn ne disposera plus que de 64 repères   difié-   rente. Ce nombre est encore suffisant puisque le nombre total de caractères formant les mots susceptibles   d'être   

 <Desc/Clms Page number 7> 

 traita est   altre   de l'ordre de 300, ce qui correspond à une   cinquantaine   de zones envircn. 



   ;outefois, lorsque des   équipements   nécessitent l'u- tilisation d'une mémoire de capacité   Moyenne,   comprise par exemple entre 1.024 et 4.096 caractères, cette uanière de faire ne présente plus que des avantages très réduits. 



  En effet, dans ce cas, chaque adresse développée est cons-   titu4e   de quatre caractères, et par conséquent chaque repère ne peut être constitué de plus de deux caractères. En   chai.   sissant alors de constituer chaque repère de un caractère, on peut bien disposer de 64 reperes différents, mais ce nombre de repères se révèle insuffisant du fait que le nombre total de caractères des mots susceptibles   d'être   traités varie, selon la capacité de la   mémoire,   entre 340 et   1,350   environ.

   On sait en effet qu'il est nécessaire de disposer alors d'un nombre de repères   difiérents   compris entre 40 et 170 environ, ce qui évidemment ne peut être obtenu que si chaque repère est constitué de deux carac- tères.   Lorsque   chaque repère est constitué de deux caractères, on peut alors disposer de 4.096 repères différents, ce qui dépasse de loin toutes les possibilités d'emploi. Cependant l'utilisation de repères constitués de deux caractères ne so révèle pas satisfaisante car les moyens matériels mis alors en jeu pour permettre cette utilisation sont relati-   vement   coûteux et les dépenses ainsi engagées sont hors de proportion avec les capacités de   mémoire   envisagées. 



   La présente invention a pour but de remédier à ces inconvénients en prévoyant un système   d'emmagasinai   et de traitement de données qui permet de sélectionner des données contenues dans mie mémoire suivant un mode d'adressage 

 <Desc/Clms Page number 8> 

 symbolique câblé, ce système étant plus particulièrement avantageux lorsqu'il est utilisé avec des mémoires de moyenne capacité dont la capacité est comprise, par exemple, entre   1.024   et 4.096 caractères. De plus, les données que l'invention permet de sélectionner suivant ce mode   d'adres-   sage sont constituées, non seulement par deo quantités à traiter, mais aussi par des instructions.

   La possibilité de sélectionner une instruction   à   partir d'un repère facilite   énormément la   tâche du   programmeur   lors de la rédaction du programme et lui évite, en particulier, d'avoir à se préoc- ouper de la localisation des instructions dans la mémoire. 



   Une   mémoire   de capacité moyenne utilisant le système selon l'invention se   caractérise   en ce qu'elle doit être organisée pour pouvoir emmagasiner des caractères, chaque caractere (lettre, chiffre décimal, signe divers) étant représenté, sous sa forme codée, par une combinaison de six chiffres binaires. 



   L'un des objets de la présente   inventicn   concerne plus particulièrement, dans une machine de traitement de données, un système   d'emmagasinage   et de traitement de données comportant une mémoire à acces direct munie de moyens de sélection   d'emplacements   d'enregistrement,la dite mémoire contenant, dans une première partie, des instructions de   programme   pouvant être sélectionnées sous le contrôle d'une adresse provenant d'un premier   registre   d'adresse dénommée registre d'adresses de programme et transmise aux susdits moyens de sélection, chaque instruction comprenant un caractère indicatif d'une opération à effectuer et au moins une adresse réduite constituée de un caractère et dénommée repère, la dite mémoire contenant en outre,

   dans 

 <Desc/Clms Page number 9> 

 une deuxième partie des adresses dites   développées   compor- tant deux caractères et pouvant être sélectionnées à partir des dits repères, puis extraites de la mémoire pour mer- mettre de sélectionner ensuite des quantités   à   traiter con- tenues dans une troisième partie de la mémoire, un caractère indicatif d'opération d'une   instruction   sélectionnée étant transmis automatiquement à un dispositif   décodifieur   pour sélectionner, dans une unité de commande, une chaîne de commande de progression de programme pour l'exécution de l'opération determnée par le dit caractère indicatif   d'opé-   ration,

   le dit système étant caractérisé en ce qu'il comprend un   registre   de constantes destiné à contenir au moins une constante constituée de un caractère, et un registre de préparation de sélection, d'une capacité de deux caractères, relié d'une part à la mémoire pour recevoir un repère d'une instruction extraite de la mémoire, d'autre part au registre de constantes pour recevoir   simultanément   une constante, sous la   commande   de l'unité de commande, les dits repère et constante étant ensuite   transmis   du registre de préparation de sélection aux doyens de   nélection   de la mémoire pour sé- lectionner une adresse développée, la dite adresse développée étant alors extraite de la   mémoire,

       transmise   au registre de   préparation   de   sélection,   puis aux moyens de sélection de la   mémoire   pour sélectionner une quantité a traiter. 



   Un autre objet de   l'invention   se rapporte à un système d'emmagasinage et de traitement de données dans lequel la   mémoire   contient des instructions d'un premier et d'un deuxième types, une première et une deuxième séries   d'adresses     développées,   les adresses développées de la première série servant a   sélectionner   des quantités à traiter conte- 

 <Desc/Clms Page number 10> 

 nues dans la mémoire, les adresses   développées   de la deuxième série servant 4 sélectionner des instructions de type quelconque, les adresses développées de la première série étant extraites sélectivement de la mémoire à partir de repères faisant partie des instructions du premier type,

   les adresses développées de la deuxième série étant extraites sélectivement de la mémoire à partir de repères faisant partie des instructions du deuxième type, 
D'autres caractéristiques et   avantages   de   l'inven-   tion apparaitront au cours de la description qui va suivre, en se référant aux dessins annexés qui montrent,   à   titre d'exemple, le irincipe de l'invention et un mode préféré de mise en oeuvre de ce principe. 



   L'exemple décrit n'est nullement limitatif et peut être adapté à des moyens agencés en vue de son application. 



   Dans les dessins : La figure 1 A représente, de façon   schématique,   une première partie d'une machine de traitement de données comportant un système   d'emmagasinage   et de traitement de données selon l'invention. 



  La figura 1 B représente, de façon schématique, une seconde partie de cette machine. 



  La figure 1 C représente, de façon schématique, une troisième partie de cette machine. 



   La figure 1 montre le mode d'assemblage des figures 1A, 1B et 1C pour constituer une vue   d'ensemble   schématique de la   machine.   



   La figure 2 représente, de façon plus détaillée, quelques dispositifs utilisés dans la machine représen- tée sur les figures 1A, 1B et 1C. 

 <Desc/Clms Page number 11> 

 



  La figure 3 représente un schéma de circuit destiné à montrer l'agencement des éléments de mémo- risation d'une mémoire à accès direct et leur mode d'exploitation pour l'enregistrement ou l'extraction sélectif de données. 



  La figure 4 montre un exemple de répartition de données dans une mémoire à accès direct faisant partie d'un système d'emmagasinage et de traitement de données selon l'invention. 



  La figure 5 montre la structure d'un organe progresseur d'adresses utilisé dans la machine représentée sur les figures 1A, 1B et 1C. 



   Sur les figures 1A, 1B, 1C et 2, les demi-cercles aveo un signe + à l'intérieur représentent des circuits logiques "OU", les demi-cercles aveo un point à l'intérieur représentent des circuits logiques "ET", les demi-cercles sans signes représentent des circuits "mélangeurs", et les triangles représentent des circuits de commande. Ces cir- ouits, de type connu, sont analogues à ceux qui ont été décrits et représentés notamment dans le demande de brevet déposée en Belgique par la COMPAGNIE DES MACHINES BULL, le 23 Juillet 1963 sous le titre :"Système d'adressage symbolique câblé", et dans la demande de brevet déposée en France par la COMPAGNIE DES   ECHINES   BUIS le 28 Octobre 1963, sous le titre : "Perfectionnements aux machines interclasseuses".

   On rappelle que chaque circuit mélangeur ne réalise aucune fonotion logique particulière et que son rôle est de permettre la transmission, vers une sortie, des impulsions qui arrivent par différentes entrées, de façon à éviter qu'une impulsion qui ar- rive par l'une de ces entrées ne réagisse, en retour 

 <Desc/Clms Page number 12> 

 vers les autres entrées. On   rappelle   également que chaque circuit de   commande   possède deux entrées dont l'une, appelée entrée d'impulsion, est marquée d'un point pour la différen- oier de l'autre. Ce circuit ne fournit une impulsion positive de sortie que si cette autre entrée, appelée entrée de com- mande,   reçcit     préalablement   une tension positive   d'un   cer- taine durée.

   L'impulsion de sortie est provoquée par l'en- voi d'une impulsion positive sur l'entrée d'impulsion. 



   Dans les messins annexés à la   présente   description, les figures 1A, 1B et 1C,   assemblées   de la manière indiquée sur la figure 1, montrent une machine de traitement de données organisée pour permettre la sélection de quantités   à.traiter   emmagasinées dans une mémoire, la sélection s'effectuant suivant un mode d'adressage symbolique câblé   particulièrc.-   ment avantageux, la capacité de la dite   mémoire   restant comprise entre 1.024 et 4.096 caractères. Sur les figures 1A, 1B et 10 ainsi assemblées, on remarque une mémoire 711 dans laquelle on a emmagasiné des données constituées par les instructionn d'un   programme   enregistré, des adresses développées et des quantités à traiter.

   La sélection et l'extraction des données contenues dans cette mémoire s'ef- fectuent au moyen de moyens de séleotion d'emplacements d'en- registrement dénommés organes de commande de sélection   712   et 713, et   connectés   à ladite   mémoire,   Les données extraites sont transmises et   emmagasinées   dans un registre intermédiaire 716.

   La mise en ceuvre de ces organes de commande de sélection est effectuée par des impulsions de commando transmises à partir d'une unité de commande 730 au moyen de conducteurs 
CL et CE, tandis que la   sélection   est opérée, de manière connue, sous le contrôle d'une adresse contenue dans un 

 <Desc/Clms Page number 13> 

 registre de préparation de sélection 714 connecté, comme l'indique la figure 1A, aux organes de commande de sélection 712 et 713. 



   La figure 2 montre, de manière plus détaillée, la constitution de ces dispositifs et leurs liaisons mutuelles. 



  En se référant maintenant a la figure 2, on considérera que la mémoire 711 est une mémoire à tores magnétiques, mais il est entendu que l'adoption de ce type de memoire n'est pas exclusive de l'invention et que l'on pourra le remplacer par tout autre type de mémoire à matrice d'éléments de mémorisation. On considérera, dans le type de mémoire repré-   senté   sur la figure 2, que les tores   magnétiques   sont répar- tis suivant différents plans de tores de manière a consti- tuer dans chaque plan des lignes et des rangées.

   Le code adopte pour la   représentation   codée des caractères est un code à six   positions   binaires désigné parfois sous le nom de code   32-16-8-4-2-1.   Avec un tel code, chaque caractère   est   représenté par une combinaison codée de six chiffras binaires dont   1'enregistrement   dans la mémoire nécessite un ensemble de six tores disposés les uns au-dessus des autres dans des plans différents. L'ensemble de ces six tores constitue un   emplacement   de mémoire.

   Le nombre   d'eu-     place.tente   de la mémoire est à priori quelconque, mais on signalera toutefois que, pour une application particulière- ment   ava@tageuse   de l'invention, ce nombre dot être com- pris entre   1.024   et 4.096. Les emplacements de la mémoire 
711 sont groupés suivant un systeme de coordonnées de manière que les emplacements 0 à 63 de la mémoire soient   definis   par les coordonnées   y = 0,   x = 0, 1, 2..., 62, 63. De même les emplacements 64 à 127 sont définis par les coordonnées 

 <Desc/Clms Page number 14> 

 y = 1,   x = 0,  1, 2, 3,..., 62, 63.

   Il y a lieu d'indiquer ici qu'à chaque valeur de y correspond une   libne   de 64 tores et que la valeur de y peut être éventuellement limitée   à   15 dans le cas où le nombre d'emplacements de la mémoire est de 1.024. 



   En définitive, on peut considérer que, dans le cas où la capacité de la mémoire est de 1. 024 caractères, la mémoire est constituée de six plana de tores magnétiques, chaque plan comportant 1. 024 tores disposés suivant 16 lignes et 64 rangées. Dans ce cas, la sélection des empla- cements s'effectue par le choix de coordonnées x et y, x pouvant prendre les valeurs 0, 1, 2, 3..., 63, et y pouvant prendre les valeurs C, 1, 2, 3,... 15. Dans le cas où la capacité de la mémoire est de 4.096 caractères, chaque plan de mémoire comporte   4.096   tores disposés suivant 64 lignes et 64 rangées. 



   La figure 3 est destinée à rappeler la façon dont sont disposés les tores pour constituer les emplacements de la mémoire. La figure 3 montre, à titre d'exemple, les deux premiers tores T1 et T2 et les deux derniers tores T5 et T6, parmi les six tores T1 à T6 qui constituent l'un des 4.096 emplacements d'une mémoire de   4.096   caractères. 



  Dans l'exemple considéré, l'emplacement de mémoire ainsi représenté est défini par les coordonnées x = 2, y =   61.   



  La figure 3 permet de comprendre que la mémoire fonctionne, de manière bien connue, selon le principe de coïncidence, A cet effet, chaque tore est traversé par six conducteurs. 



   Dans chacun des six plans de la mémoire, deux de ces conduo- teurs, dénotés conducteurs d'écriture, servent, lorsqu'ils sont alimentés en courant par l'intermédiaire de conducteurs 

 <Desc/Clms Page number 15> 

 XE = 2, YE = 61, à mettre chacun des tores du susdit emplace- ment dans un état de   magnétisation   dénommé état "1".

   Chacun de ces six toréa peut cependant être maintenu sélectivement dans son état de magnétisation initial, ou état "0", grâce à l'un des conducteurs Z1,   Z2,...,Z6   permettant le   passade   d'un courant dent l'effet s'oppose à ceux des courants par- courant les conducteurs d'écriture, Dans chacun des six plans, deux autres conducteurs, dénommés conducteurs de leo- ture, servent, lorsqu'ils sont alimentés en courant par l'intermédiaire de conducteurs XL = 2, YL = 61, à remettre à l'état "0" ceux des tores de   l'emplacement   qui ont été mis à l'état "1" lors d'une opération précédente. Le retour d'un tore de l'état "1" à l'état "0" donne naissance à un oourant induit dans l'un de six conducteurs L1,   L2,...,L6   qui traverse ce tore. 



   Sans entrer davantage dans les détails de constitu- tion de la mémoire on indiquera simplement qu'à chacune des abscisses x sont associés un conducteur   XE   et un conducteur XL, qu'à chacune des ordonnées y sont associés un conducteur YE et un conducteur YL, si bien qu'un ensemble de 64 conduc- teurs XE = 0, 1,2, 3,...,63 et de 64 conducteurs YE = 0, 1, 2, 3,...,63 permet de sélectionner un emplacement lors de   l'enregistrement   d'un caractère dans la mémoire, et qu'un ensemble de 64 conducteurs XL = 0, 1, 2, 3,..., 63 et de 64 conducteurs   YL   = 0, 1, 2, 3,...63 permet de sélec- tionner un   emplacement   lors de l'extraction d'un caractère de la mémoire.

   On rappelle, par ailleurs, que les conducteurs Z1 et L1 traversent tous les tores du plan 1, que les conduc- teurs 22 et L2 traversent tous les tores du plan 2, etc... 



  Il est connu que, lors de l'enregistrement d'un caractère, 

 <Desc/Clms Page number 16> 

 les conducteurs Z1,   Z2,...,   26 sont excites   sélectivement   de façon que si l'état   a'exoitation   d'un conducteur repré- sente conventionnellement le chiffre binaire "1" et si son état de non excitation représente le chiffre binaire "0", ces six conducteurs permettent de représenter une combinai- son binaire correspondant à la codificaticn du caractère à enregistrer.

   Il est connu   ausui   que, lors de l'extraction d'un   caractère)   les conducteurs L1, L2,...,L6 sont parcourus sélectivement par un courant induit, selon que les tores sélectionnés ont ou non   change   d'état de magnétisation, si bien que ces conducteurs représentent une combinaison binaire correspondant à la codification du caractère extrait. 



   Revenant à la figure 2, on remarque que les 64 con-   ducteurs   XE = 0, 1, 2, 3,..., 63,les 64 conducteurs XL = 0, 1, 2,   3,...,63,   les 64 conducteurs YE = 0, 1, 2, 3,..., 63 et les 64 conducteurs YL = 0, 1, 2,   3,...,63   (dont quelques-una seulement ont été représentés dans un but évident de simplification) sont connectés   à   des organes calibreurs de type connu et qui sont représentés, sur la figure 2, par des rectangles   à   l'intérieur desquels a été placée la lettre C.

   Le rôle des organes calioreurs est de régler l'intensité des courants qui les traversent, de manière que   l'intensité   du courant débité par chacun d'eux s'établisse   à   une valeur égale à la moitié de la valeur nécessaire pour modifier   l'état   magnétique d'un tore. Les organes calibreurs sont   connectés   par ailleurs aux sorties de circuits de commande 712EO à 
712E63,   712LO   à 712L63, 713EO à 713E63,   713LO   à 713L63. 



   La fibure 2 montre que chacun des circuits de commande 
712E0 à 712E63 est relié 4 chacun des conducteurs XE = 0 à 
XE = 63 respectivement, que chacun des circuits de commande 

 <Desc/Clms Page number 17> 

   712LO à     712L63   est relié à chacun des conducteurs   XL   = 0 à XL = 63 respectivement, que chacun des circuits de commande   713EO   à   713E63   est relié à chacun des conducteurs YE = 0 à YE = 63 respectivement, et que chacun des circuits de   com-   mande   713LO   à 713L63 est relié à chacun des conducteurs YL = 0 à YL = 63,   respectivement,   toutes ces liaisons étant établies par   l'intermédiaire   des organes calibreurs. 



   Il   importe   de signaler que, selon la capacité de mémoire considérée, le nombre de circuits de commande   713EO     à   713E63 et   713LO à     713L63   pourra être réduit, par suite de la réduction du nombre de conducteurs YE et YL. La figure 2 montre par ailleurs un organe décodeur S de type connu, possédant six entrées A1, A2,...,A6 et soixante quatre sorties SO, S1,...,S63 et qui permet de porter l'une de ses sorties à ur. potentiel positif, selon l'état de conducteurs connectés à ses entrées, lesdits conducteurs représentant par leur état une combinaison binaire correspondant à la codification d'un caractère.

   La sortie SO est connectée au groupe constitué par les circuits de commande   712EO   et   712LO,   la sortie SI est connectée au groupe constitué par les circuits de commande 712E1 et   712L1,   etc... De cette   taçon,   selon la combinaison binaire formée aux entrées A1, A2,...,   A6,   une seule sortie est portée à un potentiel positif, ce qui rend passant le groupe âe circuits de commande connectés à la dite sortie. Un deuxième organe décodeur T possédant six entrées B1, B2,...B6 permet, d'une manière analogue, de rendre passant un des groupes ae circuits de commande   713EO   et 713L0, 713E1 et   713L1,   etc... 



   La figure 2 contre encore que l'unité de   commande   
730 est relire, par l'intermédiaire du conducteur   CE,   aux 

 <Desc/Clms Page number 18> 

 
 EMI18.1 
 entrées d'impulsions des circuits ie oom<nande 7122o À 712E63 et   713EO   à 713E63, et qu'elle est reliée, par l'intermédiaire du conducteur CL, aux entrées d'impulsions des circuits de 
 EMI18.2 
 oonmande 712LO à 712L63 Pt 71310 à 713L63. La figure 2 montre aussi que le registre intermédiaire 716 est constitué par six basculeurs K1 à K6   à   deux états stables, de type 
 EMI18.3 
 connu, et qui permettent d'eba8iner les six chiffres binaires   représentatif s   d'un caractère codé.

   Un rappelle que chaque basculeur comporte une entrée dite   "normale",   une 
 EMI18.4 
 entrée dito "r.om.pléUlentair8", une sortie "norwale" et une sortie "complémentaire". Dane le cas présent, chacune des sorties "complémentaires" est connectée à l'une des entrées de coN1<ande de six circuits de oomde Cl à C6. L'ensemble formé par ces circuits de commande constitue un organe désigné sous le nom   d'organe   transmetteur, ou porte, 732. Chacun de .ces circuits de commande a pour rôle de transmettre une im- pulsion positive fournie par l'unité de commande 730 seule- ment dans le cas où la sortie "complémentaire" du basculeur qui lui est connecté est portée à un potentiel positif, ou,4 ce qui revient au même, chaque fois que l'état de ce bascu- 
 EMI18.5 
 leur représente couventionnellenent le chiffre binaire "0". 



  Cette impulsion positive à transmettre est envoyée par l'in- 
 EMI18.6 
 termédiaire du conducteur CE qui, ainsi que le montre la figure 2, se divise en deux branches, l'une aboutissant aux circuits de coaéande ?12Ï;0 à 712E63 et 713EO à 713±639 l'autre aboutissant aux circuits de commande C1 à C6. Les 
 EMI18.7 
 impulsions transmises par les circuits de con7.ande C1 à C6 sont calibrées en amplitude au moyen d'or6anes calibreurs et servent alors à 1'excitation des conducteurs Z1 à Z6 de la mémoire. De cette manière, un caractère enreGistré dans 

 <Desc/Clms Page number 19> 

 le registre intermédiaire 716 peut être emmagasiné dans la mémoire 711 dans un emplacement défini en fonction de la décodification effectuée par les organes décodeurs S et T. 



  Cet emmagasinage s'opère sans que l'état des basculeurs K1 à K6 soit modifié. Par suite, il est nécessaire que le registre intermédiaire soit remis à zéro avant d'effectuer toute extraction de caractère de la mémoire. Cette remise à zéro est obtenue par une simple impulsion envoyée par l'unité de commande 730, par l'intermédiaire d'un conducteur CZI, aux entrées" complèmentaires" des basculeurs K1 à K6. 



   Sans insister sur l'organisation et l'exploitation de la mémoire, on indiquera toutefois, que, lors de l'ex- traction d'un caractère de la mémoire, les impulsions pro- duites lors du passage des tores de l'état "1" à l'état "0" sont envoyées, par l'intermédiaire des conducteurs L1 à L6, vers des organes régénérateurs représentés, sur la figure   2,   par des rectangles à l'inférieur desquels on a placé la lettre R. Le rôle des organes régénérateurs est   d'agir   sur l'amplitude des impulsions qui leur parviennent de manière que ces impulsions puissent servir au position-   neuent   correct, des basculeurs K1 à K6.

   On signalera que, dans un but de simplification, les six conducteurs Z1 à Z6 ont été, dans certaines parties de la figure 2, représentés par un conducteur de liaison unique Z, mais ce mode de re- présentation n'entraînera aucune confusion du fait que les références des organes ont été choisies pour permettre de retrouver les connexions effectuées. Par exemple, le con- ducteur Z1 est connecté à l'organe oalibreur relié au circuit de commande 01, le conducteur Z2 est connecté à l'organe calibreur relié au circuit de commande C2, etc... D'une 

 <Desc/Clms Page number 20> 

 manière analogue, les six conducteurs L1 à L6 ont été, dans certaines parties de la figure, représentés par un conducteur =de liaison unique L. 



   Revenant maintenant aux figures 1A, 1B et 10 on remarquera que le registre intermédiaire 716 dont la capacité est de un caractère, est ncn seulement relié à la mémoire 
711 par les liaisons indiquées précédemment, mais également à d'autres organes, de sorte que des transferts de caractères peuvent être effectués entre le registre intermédiaire et ces organes. C'est ainsi qu'un   caractere   contenu dans le regintre intermédiaire peat être transmis, entre autre, à un registre auxiliaire 701 par l'intermédiaire d'une porte 
743, ou à un dispocitif décodifieur dénommé décodeur séleo- teur 721 par l'intermédiaire d'une porte 741, ou encore à un dispositif additionneur-soustracteur 722 par l'inter- médiaire d'une porte 740.

   La figure 1A montre encore que le registre intermédiaire est connecté à un organe détecteur de"drapeau"   708   dont le rôle est de détecter la présence, dans le registre intermédiaire, de caractères "drapeau". 



   Ce détecteur de "drapeau" est un organe de déoodification qui, selon le résultat de la   décodif.ication   effectuée, porte l'une de ses deux sorties D et D à une tension positive. 



   Lorsque la combinaison de six chiffres binaires, enregistrée dans le registre intermédiaire, représente un caractère "drapeau", seule la sortie D est portée à un   potentiel   positif, ce qui rend passants deux circuits de   commande   774 et 775 dont l'entrée de   commande   est connectée à la dite sortie D.

   Lorsque, au contraire, la combinaison enregistrée dans le registre intermédiaire représente un caractère autre qu'un caractère   "drapeau",   ou encore lorsque le dit registre 

 <Desc/Clms Page number 21> 

 na contient aucun caractère, seule la sortie est portée   à   un potentiel positif, ce qui rend passant un circuit de commande 773 dont l'entrée de commande est connectée à la dite sortie D, Lorsque le circuit de commande 773 est ainsi rendu passant et qu'une impulsion, envoyée alors par l'unité de   commande   730, arrive à l'entrée d'impulsion dudit cir- cuit de commande, ce circuit 773 fournit une impulsion à la portp 743, ce qui   déclenche   le transfert, vers le registre auxiliaire 701, du caractère contenu dans le registre inter- médiaire.

   Dans le cas   où le   registre intermédiaire contient successivement les chiffres de l'un ou l'autre de deux opé- randes A et   B,   il est utile de détecter la fin des chiffres qui constituent chacun de ces deux opérandes. Dans ce cas, chaque fois que le registre intermédiaire est susceptible de contenir l'un des chiffres de l'opérande A, une impulsion est envoyée au circuit de commande 775 par l'unité de com- mande, alors   que?,   chaque fois que le registre intermédiaire est susceptible de contenir l'un des chiffres de l'opérande 
B, une impulsion est envoyée aux circuits 773 et 774 par l'unité de commande. Les impulsions qui sont transmises par les circuits 774 et 775 sont envoyées à l'unité de commande. 



   De cette façon, le circuit 774 transmet une impulsion à. l'unité de commando lorsque le registre intermédiaire con- tient un "drapeau" qui marque la fin de l'opérande B. De même, le circuit 775 transmet une impulsion à l'unité de   commande   lorsque le registre   interaéàiaire   contient un "drapeau" qui marque la fin de -l'opérande A. 



   Il y a lieu de signaler que la structure du registre auxiliaire est analogue a celle du registre intermédiaire et que sa capacité est de un caractère. En conséquence le 

 <Desc/Clms Page number 22> 

 registie auxiliaire est constitué de six basculeurs et la porte 743 est constituée de six circuits de commande. 



  L'entrée de commande de chacun de ces circuits de commande est connectée à la sortie "normale" d'un basculeur corres- pondant du registre intermédiaire, tandis que la sortie de chacun de ces circuits est connectée à l'entrée "normale" d'un basculeur correspondant du   registre   auxiliaire. La remise à zéro du registre auxiliaire est   effectuée   en   appli-   quant simultanément une impulsion sur les entrées "complé- mentaires" des basculeurs qui le constituent. Cette   impul-   sion est envoyée par l'unité de commande 730, par l'inter- médiaire d'un conducteur CZA. 



   Les figures 1A et 1B montrent qu'un organe de déco- dification dénommé décodeur du registre intermédiaire 772, est connecté au registre intermédiaire   716   pour identifier la présence, dans ce registre, de caractères spéciaux tels que les symboles >, <, = et   #.   La structure du décodeur 772, analogue à celle du détecteur de "drapeau", est maintenant bien connue et pour cette raison ne sera pas décrite.

   Cn indiquera simplement que le décodeur   772   possède quatre sorties marquées par les symboles >, <, = et   #,   et que lorsque l'un des quatre caractères spéciaux   précités   se trouve contenu dans le registre intermédiaire 716, l'une des quatre sorties, marquée du même symbole que celui con- tenu dans le registre 716, se trouve portée   à   un potentiel   positif.   



   Les figures 1A et 1B montrent encore qu'un organe 
709 dénommé indicateur d'état du registre intermédiaire est connecté au dit registre intermédiaire. Cet indicateur d'état 709, dont la   structure   est connue dans la technique 

 <Desc/Clms Page number 23> 

 des calculateurs électroniques, a pour rôle de détecter la présence ou l'absence de   caractère   dans le registre inter- médiaire. Cet indicateur 709 possède une sortie unique oon-   nectée   à l'entrée de   commande   d'un circuit de commande 779, Chaque fois que le registre   intermédiaire   contient un carac- tère ou un chiffre différent de zéro, la sortie de l'indica- teur d'état 709 est portée à un potentiel positif, ce qui rend passant le circuit de commande 779. 



   Le registre auxiliaire 701 est connecté au dispositif additionneur-soustracteur 722 par   l'intermédiaire   d'une porte 739 dont le rôle est de permettre le transfert, vers l'additionneur-soustracteur, d'un chiffre contenu dans le registre auxiliaire. On indiquera que chacune des portes 739 et 740 est   constituée   de six circuits de commande, Lors- que ces portes reçoivent simultanément une impulsion pro- venant de l'unité de commande 730, les deux chiffres à additionner (ou à soustraire) contenus respectivement dans le registre auxiliaire et dans le registre intermédiaire, sont transmis simultanément à l'additionneur-soustracteur. 



  La structure de l'additionneur-soustracteur 722 n'est pas particulière et elle est réalisée de manière connue, de manière à effectuer une opération d'addition (ou do sous- traction) de deux chiffres décimaux codés en binaire. La soustraction qu'effectue le dit additionneur-soustracteur consiste à retrancher au chiffre contenu initialement dans le registre'intermédiaire le chiffre contenu initialement dans le registre auxiliaire. Le chiffre exprimant le résul- tat de cette opération est transmis au registre intermé- diaire 716'par   l'intermédiaire   d'une porte 742, tandis que le report éventuel de cette opération est transmis à un 

 <Desc/Clms Page number 24> 

 basculeur de report BR.

   On   eigisalera   que la porte 742 eet constituée de douze circuits de commande qui permettent ainsi de transférer le résultat, vers le registre 716, sous forme vraie et sous forme   complémentaire.   Cette manière de faire dispense de remettre à zéro le registre intermédiaire avant d'y transférer le résultat. L'entrée "normale" du basculeur BR est conneotée à la sortie d'un circuit de commande 777, tandis que son entrée "complémentaire" est connectée, par l'intermédiaire d'un circuit mélangeur M1, à la sortie d'un circuit de   commande   778.

   Dans le cas où un report apparaît à la suite d'une opération, une sortie R de l'additionneur-soustracteur est portée à un potentiel positif, rendant   paesant   le circuit de commande 777 dont l'entrée de commande est connectée   à   cette sortie R. Dans ce cas, le circuit de commande 778 est non passant. Par suite, une impulsion venant du générateur d'impulsions 730 et appliquée simultanément aux entrées d'impulsions des circuits 777 et 778 n'est transmise que par le circuit 777 et positionne à "1" le basculeur BR. Si, au contraire, à la suite d'une opération, aucun report n'est produit, une sortie ? de l'additionneur-soustracteur est portée à un potentiel positif, ce qui rend passant le circuit 778 con- necté, par son entrée de commande,   à   cette sortie R.

   Le circuit 777 est alors rendu non passant, si bien qu'une impulsion provenant de l'unité de commande 730 et appliquée simultanément aux entrées d'impulsions des circuits 777 et 778, n'est transmise que par le circuit 778 et positionne à "0" le basculeur BR. La sortie   "norwale"   du basculeur BR est connectée, d'une part à l'entrée de commande d'un oir- cuit 776, d'autre part à l'une de deux entrées d'un circuit 

 <Desc/Clms Page number 25> 

 "ET" 789, tandis que la sortie "complémentaire" de ce bas- culeur est connectée   à   l'une de deux entrées d'un circuit "ET" 788.

   Lorsque le basculeur BR est positionné 4 "1", sa sortie "normale" est portée à un potentiel positif, ce qui rend   pas&ant   le circuit   776 '   Dans ce cas, une impulsion provenant de l'unité de commande et appliquée à l'entrée d'impulsion de ce circuit 776, est transmise   à   l'additionneur-   aoustracteur,   indiquant de cette façon que le basculeur   BR   est positionné à "1" ou, ce qui revient au même, qu'un report est mémorisé dans ce basculeur. 



   Le fonctionnement en aduitionneur de l'additionneur-   soustracteur   722 est commandé par une impulsion envoyée par l'unité de commande 730 au dit additionneur-soustracteur par l'intermédiaire d'un conducteur IA, tandis que son fonc-   tionnement   en soustracteur est commandé par une impulsion qui lui est envoyée par la dite unité 730 par l'intermédiaire d'un conducteur IS. Un circuit mélangeur M2 dont les entrées sont connectées aux conducteurs IA et IS permet, par ailleurs, de transmettre l'une ou l'autre de ces impulsions vers le circuit mélangeur M1 afin d'assurer la remise à zéro du basculeur   BR,   et vers l'entrée "normale" d'un basculeur BI qui se positionne alors à "1". 



   Le principe de fonctionnement de   1'additionneur-sous-   tracteur peut être décrit simplement de la manière suivante. 



  Lorsque deux nombres de plusieurs chiffres, contenus dans la mémoire   711,   doivent être ajoutés l'un à l'autre (ou   soustraies l'un   de l'autre), une impulsion est envoyée prealablement à l'additionneur-soustracteur, soit par le conducteur IA, soit par le conducteur IS, pour en condi- tionner le fonctionnement, soit en additionneur, soit en 

 <Desc/Clms Page number 26> 

   soustraoteur.   selon   l'opération à   effectuer. Par   ailleurs,   cette impulsion, transmise successivement par les mélangeurs M2 et M1, positionne à "0" le basculeur BR. Après quoi, les chiffres des unités des deux nombres sont, après extraotion de la mémoire, envoyés simultanément à l'additionneur- soustracteur.

   Le résultat partiel t'unités'' est transmis ensuite au registre intermédiaire, puis enregistre en mémoire, tandis que le report éventuel est mémorisé dans le   basouleur     BR.   De manière identique, les chiffres des "dizaines" des deux nombres sont extraits de la mémoire et envoyés à l'addi- tionneur-soustracteur. Simultanément, le report précédemment mémorisé est transmis à l'additionneur-soustracteur qui, à son tour,   profit   un autre résultat partiel "dizaines" et un autre report éventuel, lesquels sont traités de façon analogue et ainsi de suite... 



     L'additionneur-soustracteur   est utilisé aussi pour effectuer la comparaison de deux nombres A et B comportant plusieurs chiffres. Dans le cas, une impulsion est envoyée préalablement à   l'additionneur-soustracteur,   par l'inter- médiaire du conducteur IS, pour en conditionner le fonctionne- ment en   soustracteur   et permettre d'effectuer ainsi la sous- traction A-B. Cette impulsion, est transmise, par ailleurs, par les mélangeurs M2 et M1, ce qui positionne à "1" le basculeur BI tandis que le basculeur BR est remis à zéro. 



  Le positionnement préalable de ces basculeurs est effectué avant de commencer la dite soustraction. Après quoi, les chiffres des "unités" des nombres A et B sont envoyés si- multanément à   l'additionneur-soustracteur,   Un premier résultat partiel, fourni par l'additionneur-soustracteur, est transmis ensuite vers le registre intermédiaire, puis une impulsion est envoyée par le générateur 730 simultanément vers les circuits 777, 778 et 779. Cette impulsion est 

 <Desc/Clms Page number 27> 

 transmise d'une part par l'un des deux circuits 777 et 778 pour positionner le basculeur BR à un état déterminé selon qu'un report s'est ou non produit.

   D'autre part, si le résultat partiel contenu alors dans le registre intermé- diaire est différent de zéro, cette impulsion est transmise par le circuit 779 puisque, pour les raisons indiquées pré- cédemment, ce cirauit est alors rendu passant. Par suite, le basculeur BI passe à l'état "0" et sa sortie "complémentaire"t connectée aux autres entrées des circuits "ET" 788 et 789, est alors portée à un potentiel positif. Il reste entendu que si le susdit résultat partiel est égal à zéro,   l'impul-   sion se trouve bloquée par le circuit 779 et par suite le basculeur BI reste à l'état "1". Les chiffres des "dizaines" des nombres A et B sont ensuite envoyés simultanément à l'additionneur-sous tracteur, lequel fournit alors un second résultat partiel qui est transmis au registre intermédiaire. 



  Une nouvelle impulsion, envoyée aux circuits 777,   778   et 779 permet de positionner les basculeurs BR et   BI.   De manière analogue, les chiffres des "oentaines" des nombres A et B sont transmis à l'additionneur-soustracteur, puis les chiffres des "milliers",   etc...   



   Lorsque le dernier résultat partiel a été transmis au registre intermédiaire et que les basouleurs   BR   et BI ont été enfin positionnés,la comparaison des nombres A et B est terminée et le résultat de cette comparaison est indiqué par l'état de la sortie "normale" du basculeur BI et des sorties des circuits "ET" 788 et 789. Si, à la fin de la comparaison, le basculeur BI est resté à l'état "1", cela signifie que tous les résultats partiels obtenus étaient égaux à zéro, donc que les deux nombres A et B 

 <Desc/Clms Page number 28> 

 sont égaux. Dans ce cas, une tension positive apparaît à la sortie "normale" du basculeur BI, tandis qu'aucune tension positive n'apparaît aux sorties des circuits "LT" 788 et 789.

   Si, au contraire, à la fin de la comparaison, le bas- culeur BI se trouve à l'état "0", cela signifie que,puisque l'un au moins des résultats partiels est différent de   zéro,   les nombres sont différents. Dans ce cas, si le dernier report qui a été enregistre dans le registre   BR   est zéro, cela signifie que A est plus grand que B.   Dans   ces conditions, les sorties "complémentaires" des basculeurs BI et BR sont portées à un potentiel positif et, par cuite, une tension positive apparaît seulement à la sortie du circuit "LT" 788, Si, au contraire, le dernier report qui a été enregistré dans le registre BR est   égal   à 1, cela signifie que A est plus petit que B.

   Dans ces conditions, la sortie "normale" du basculeur BR et la sortie "complémentaire" du basculeur BI sont portées à un potentiel positif et, par suite, une tension positive apparaît seulement   à   la sortie du circuit "ET" 789. 



   On remarque, sur la figure 1B, qu'un circuit de   commando   780 est connecté, par son entrée de commande,   à   la sortie d'un circuit "OU" 786. Ce circuit "OU" possède quatre entrées, chacune étant reliée à la sortie d'un de quatre circuits "LT" 790, 791, 792 et 793, respectivement. Chacun de ces quatre circuits "ET" possède deux entrées. La figure 1B montre que le circuit "ET" 790 est connecté, par l'une de ses entrées, à la sortie du circuit   '@T"   788, et par l'autre entrée, à la sortie marquée > du décodeur 772.Le cir- cuit "ET" 791 est connecté, par l'une de ses entrées, à la sortie du circuit "ET" 789, et par l'autre entrée, à la 

 <Desc/Clms Page number 29> 

 sortie   marquée < du   décodeur 772.

   Le circuit "ET" 792 est   connecté,.par   l'une de ses   entrées, 4   la sortie "normale" du baoculeur BI, et par l'autre entrée, à la sortie marquée - du décodeur 772. Enfin le circuit "ET" 793 est   connecté,   par l'une de ses entrées, à la sortie marquée / du décodeur 772, et par l'autre entrée, à la sortie   d'un   circuit "OU" 785. 



  Ce circuit "OU" 785 possède deux entrées, l'une étant connec- tée à la sortie du circuit "ET" 788 et l'autre étant connectée à la sortie du circuit "ET" 789, et il porte sa sortie à une tension positive chaque fois que l'une ou l'autre des sorties des circuits "ET" 788 et 789 se trouve portée à un potentiel positif. De même, chaque fois que l'une quel- conque des sorties des circuits "i:T" 790 à 793 est portée à un potentiel positif, la sortie du circuit "CU" 786 est portée à une tension positive, ce qui rend passant le circuit de commande 780.

   On examinera plus loin dans   quelles conditions   l'une des sorties des circuits "ET" 790 à 793 est portée à un potentiel positif.'Le circuit de commande 780 est connectée par son entrée d'impulsion et par l'intermédiaire d'un con- ducteur IV, à l'unité de commande 730, pour recevoir une impulsion à transmettre. Ainsi qu'il sera expliqué plus loin . dans le texte, cette impulsion n'est envoyée à ce circuit 780 que dans le can de l'exécution d'opéra tiens définies par des   instructions     particulières   dénommées "variantes". 



  La dite impulsion peut être alors transmise par oe circuit   780   et   envoy4e à   un circuit mélangeur   M3   qui la transmot à son tour   à   une porte 752. Par ailleurs le circuit mélangeur   L3   est connecté à l'unité de commande 730, par l'intermédiaire d'un conducteur IG, pour pouvoir recevoir une impulsion et la transrettre à la porte 752, dans les cas où il n'est pas 

 <Desc/Clms Page number 30> 

 nécessaire de contrôler la transmission de cette impulsion par le circuit 780. 



   Les figures 1A, 1B et 10 montrent encore que le registre intermédiaire 716 et le registre auxiliaire 701 sont connectes à un premier registre d'adresse 704 dénowaé registre d'adresses de   programme,   à un second registre d'adresses 703 et à un troisième registre d'adresse 702. 



  Chacun de ces registres   d'adrsces   a une capacité de deux caractères, ce qui est indiqué, sur la figure 1C, par une ligne médiane en traits interrompus qui sépare chaque registre en deux parties. Les figures   1A,   1B et 1C montrent que la partie auche du registre d'adresse 702 paut recevoir un caractère transmis à partir du registre intermédiaire 716 par   l'intermédiaire   d'une porte   733,   tandis que la partie droite de ce registre d'adresses peut recevoir un caractère transmis à partir du registre auxiliaire 701 par l'intermé- diaire d'une porte 734.

   D'une manière analogue, le registre d'adresse 703 peut recevoir, dans sa partie gauche, un caractère provenant du registre intermédiaire par l'inter- médiaire d'une porte 735, et dans sa partie droite un ca- ractère provenant du registre auxiliaire par l'intermédiaire d'une porte 736. Enfin le registre d'adresses du programme 
704 peut recevoir, dans sa partie gauche, un caractère pro- venant du registre intermédiaire par l'intermédiaire d'une porte   737,   et dans sa partie droite un caractère provenant du registre   auxiliaile   par l'intermédiaire d'une porte 738. 



   On considérera, a titre d'exemple, que chacun des registres d'adresses 702,   703   et 704 est constitué de deux groupes de six basculeurs, chaque groupe constituant une des deux parties de chacun de.ces registres, chaque basculeur du 

 <Desc/Clms Page number 31> 

 premier groupe étant connecté, par ses deux entrées, aux deux sorties d'un basculeur correspondant du registre inter- médiaire, chaque basculeur du deuxième groupe étant connecté, par ses deux entrées, aux deux sorties d'un basculeur cor- respondant du registre auxiliairei En conséquence, chaque partie de ces   registres   d'adresses est connectée au registre intermédiaire ou au registre auxiliaire au moyen de douze   conducteurs.   Par suite,

   chacune des portes 733   à   738 est   constitué@   de douze circuits de commande. On signalera que ce mode de liaison dispense de la nécessité de remettre à zéro l'un quelconque de ces registres d'adresses avant d'y transférer un caractère en provenance du registre intermé- diaire ou du registre auxiliaire, puisque, lors des trans- ferts, chacun des basculeurs du registre d'adresse considéré   raçfit   toujours une impulsion positive, soit par son entrée "normale",soit par son entrée "complémentaire". 



   Chacun des registres d'adresses 702, 703, 704 est relié au registre de préparation de sélection 714 par l'in- termédiaire, respectivement, de portas 752, 753, 754. La figure 1A contre que la capacité du registre de préparation de sélection 714 est de deux caractères. Les connexions sont établies de manière que la partie gauche dudit registre 714 puisse recevoir un des caracteres contenus initialement dans la partie gauche d'un des registres 702, 703, 704, et que sa partie droite puisse recevoir un des caractères con- tenus initialement dans la partie droite des dits registres 702, 703, 704. La structure du registre   714   est anaLogue à celle deR registres 702 à 704.

   On   considérera   que ce registre est constitué de douze basculeurs et que chaque basculeur est connecté, par ses deux entrées, à un   bascu-   

 <Desc/Clms Page number 32> 

 leur correspondant de chacun des registres 702 à 704. En conséquence, chacun des registres 702 à 704 est connecté au registre 714 au moyen de vingt quatre conducteurs. Par suite, chacune des portes 752, 753 et 754 est constituée de vingt quatre circuits de commande. 



   , 
La partie droite du   replâtre   714 peut reoevoir, dans des cas particuliers qui seront examinés plus loin, uns combinaison binaire qui représente une   donn6e   constante,      ladite constante provenant alors d'un registre 7C5 appelé registre de constantes. Le registre 705 est   destiné à   con- tenir plusieurs constances, mais on considérera pour l'ins- tant que le nombre de constante est limité à deux. De-ne ce cas, le registre 705 est constitué de deux parties, comme l'indique la figure 1A, et chaque partie du registre contient une constante. L'une ou l'autre de ces constantes peut être transmise vers la partie droite du registre 714 par l'inter- médiaire de l'une de deux portes   755   et 756.

   Il y a lieu de signaler que le transfert d'une constante du registre 705 vers le registre 714 ne s'accompagne d'aucune   modifica-   tion d'état du   registre   705 et que, par suite, la constante qui a été   transmise,   n'ost pas effacée de ce registre. On signalera aussi que la structure du registre 705 n'est pas particulière et que ce registre peut être réalisé de diffé- rentes manières en utilisant des techniques connues. Par ailleurs, la structure des portes 755 et 756 eat analogue celle des portes 733   à   738 et pour cette raison ne sera pas décrite. Les caractères contenus dans le registre de prépa- ration de sélection 714 constituent une adresse qui permet do sélectionner un   emplacement   déterminé de la mémoire.

   A cet effet, le caractère contenu initialement dans la partie 

 <Desc/Clms Page number 33> 

 gauche du registre 714 est décodé par le décodeur S de l'organe de commande de sélection 712 pour la détermination d'une   abscisse   x, tandis que, simultanément, le caractère contenu dans la partie droite du registre 714 est décode par le déoodeur T de l'organe de commande   dn   sélection   713   pour la détermination d'une   ordonnée   y, L' emplacement de la mé- moire qui est alors   sélectionne   est celui qui   'et   déterminé par 1'intersection de la dite abscisse avec la dite ordonnée. 



   Les liaisons entre le registre   714   et les organes 712 et 713 sont assurées au moyen de douze conducteurs. Six de ces   conducteurs   relient chacune des sorties "normales" des basculeurs constituant la partie gauche du registre 714 à chacune des six entrées A1 à A6 du   décodeur   S (repré-   sentées   sur la figure 2). 



   Pour des raisons de simplification, ces six conducteurs ont été représentés par un conducteur unique sur la figure 1A. D'une manière analogue, six fils conducteurs, représen- tés par un conducteur unique sur la figure 1A, relient la partie droite du registre 714 au décodeur T de l'organe 713. 



   L'adresse contenue dans le registre de préparation de sélection 714 peut être utilisée par les organes de commande de sélection 712 et 713 pour sélectionner un emplacement de la mémoire. Elle peut, par ailleurs, être transmise, par l'intermédiaire d'une porte 760, à un progresseur d'adresses 
7C6 qui la modifie en vue de sélectionner un autre emplace- ment de la mémoire.

   Dans ce cas, l'adresse qui a été modifiée est transmise, à partir du   probresséur   d'adresses 706, vers l'un des registres d'adresses 702,703, 704, par   l'inter-   médiaire, respectivement, de portes 762, 763, 764, puis de là peut être à nouveau transmise au registre 714 par l'in- 

 <Desc/Clms Page number 34> 

 termédiaire, respectivement, des portes   752,   753, 754. i: 
La structure du processeur d'adresses 706 va main- tenant être décrite en se référant à la   fi,ure   5. L'un des deux caractères de l'adresse à modifier se trouve   enregis-   tré dans les six basouleurs qui constituent la partie gau- ohe du registre 714, tandis que l'autre caractère se trouve enregistré dans les six basculeurs   constituant   la partie droite de ce registre.

   Le registre 714 est relié au pro- gresseur d'adresses 706 par   1'intermédiaire   do la porte   76C..Cette   porte est constituée de douze circuits de com- mande D1   à   D6 et E1 à E6 dont six   seulement   ont été repr4- sentes. sur la figure 5 pour des raisons de simplification. 



  Les entrées de commande des circuits D1   à   D6 sont   connectées   aux sorties "normales" des basculeurs oonstituant la partie gauche du registre 714, tandis que celles des circuits E1 à E6 sont connectées aux sorties "normales" des basculeurs constituant la partie droite de ce registre. Les   entrera   d'impulsions des circuits D1 à D6 et E1 à E6 reçoivent   si-   multanément une impulsion à transmettre et fournie par l'u- nité de commande 730. Chacun de ces circuits est rendu pas- sant ou non, selon que le basculeur du registre 714 qui lui est connecté est à l'état   "1"   ou à l'état   "0" .   La susdite impulsion est transmise seulement par les circuits qui.on été ainsi rendus passants.

   La figure 5 montre un premier groupe de circuits de commande F1 à F6 et   G1 à.   G6 dont certains seulement ont été représentés Pt qui sont connectés, par leur entrée   d'impulsion,   aux sorties des circuits D1 à D6 et E1 à L6 respectivement. Les circuits F1 à F6 et 
G1 à G6 sont connectés, par leur entrée de commande, à la sortie "normale" d'un basculeur BM. La figure 5 montre 

 <Desc/Clms Page number 35> 

 un fécond groupe de circuits de commande H1 à H6 et J1 à J6 donr certains seulement ont été représentés et qui sont   connectas,   par leur entrée d'impulsion, aux sorties des cir-   cuits   D1 à D6 et L1 à E6, respectivement. Les circuits H1 à H6 et J1 à J6 sont connectés, par leur entrée de commande,   à   la sortie "complémentaire" du baseuleur BM.

   Le position- nement du basculeur BM est obtenu au moyen d'impulsions en- voyées par l'unité de commande 730 par l'intermédiaire de deux conducteurs IN et IP, IN étant connecté à l'entrée "normale" du basculeur BM et IP étant connecté à l'entrée "complémentaire' du dit basculeur. C'est ainsi que lorsqu'une impulsion est envoyée par l'unité de commande 730 par l'in- termédiaire du conducteur IN, le basouleur BM se positionne à l'état "1", ce qui rend passantsles circuits F1 à F6 et G1 à G6, alors que lorsqu'une impulsion est envoyée par la dite unité 730, par l'intermédiaire du conducteur IP, le bas- culeur BM se positionne à l'état "0", ce qui rend passants les circuits H1 à H6 et J1   à   J6. 



   Dans le cas   où   le basculeur BM est à l'état "1", les impulsions transmises par les circuits D1   à   D6 sont bloquées par les circuits H1 à H6 et transmises par les cir- cuits F1   à   F6 vers un additionneur   "+1"   724, tandis que les impulsions transmises par les circuits El à E6 sont bloquées par les circuits J1   à     J'et   transmises par les circuits G1 à G6 vers un demi-additionneur 726. L'additionneur 724, dénommé additionneur "Plus un", est essentiellement un translateur capable de fournir des groupes de signaux, re- présentés par des impulsions, dont la structure binaire re- présente la structure binaire des impulsions d'entrée aux- quelles la valeur binaire 1 a été ajoutée.

   La figure 5 mon- 

 <Desc/Clms Page number 36> 

 tre un registre 727, en deux parties, que l'en supposera constitue de douze basculeura, et dent la partie gauche est connectée à l'additionneur "+1" 724 pour recevoir lea impulsions fournies par cet additionneur. De cette   waniere,   la partie gauche du registre 727 reçoit une combinaison de six chiffres binaires formée en ajoutant 1 à la combinaison de six chiffres binaires contenue dans la partie gauche du   registre   714, cette codification étant effectuée par l'addi- tionneur "+1" 724. C'est ainsi que la combinaison 000111, par exemple, est modifiée en 001000. Si toutefois la com- binaison à modifier est 11"111, cette combinaison se trouve modifiée en   000000   par   l'additionneur   724 et donne lieu à un report.

   Ce report est transmis alors au demi-additionneur 726 par l'intermediaire d'un conducteur REP. Le   demi-addi-   tionneur   72   a pour rôle d'ajouter ce report à la combinaison binaire'qui lui parvient sous forme d'impulsions envoyées par les circuits G1 à G6. La partie droite du registre'727 est connectée au demi-additionneur 726 pour recevoir la com- binaison binaire transmise par ce dernier avec ou sans modi-   fications,   selon qu'un report a été   transmis   au dit demi- additionneur.

   En définitive, lorsque le basculeur BU   est 4   l'état "1", l'adresse   111111,   000111 par exeaple, dont la combinaison 111111 se trouve contenue dans la partie gauche du registre 714 et dont la combinaison 000111 se trouve con- tenue dans la partie droite, est modifiée en   000000   001000, la combinaison 000000 se trouvant enregistrée dans la partie gauche du registre 727 et la-combinaison 001000 étant enre- gistrée dans la partie droite. 



   Dans le cas où au contraire, le   basculeur     BM   est à   ].,état   "0", les impulsions transmises par les circuits D1 

 <Desc/Clms Page number 37> 

 à D6 sont bloquéen par les circuits F1 à F6 et transmises par les circuits H1 à H6 vers les   basculeur@   constituant   la.   partie gauche du registre 727, tandis que les impulsions transmises par les circuits E1 à E6 sont bloquées par les circuits G1   à   G6 et transmises par les circuits J1 à J6 vers un autre additionneur "+1" 725 dont la structure est analogue   à   celle de l'additionneur 724.Le rôle de l'addi- tionneur 725 est d'ajouter la valeur 1   à   la combinaison binaire qui lui est transmise par les circuits J1 à J6.

   La partie droite du registre 727 est connectée au dit addi- tionneur pour recevoir la dite combinaison binaire ainsi modifiée. Ainsi, lorsque le basouleur   BM   est à l'état "0", l'adresse 111111 000111 par exemple, contenue dans le regis- tre 714, se retrouve, dans le registre 727, modifiée en   111111 0010000.   



   La figure 5 montre que les conducteurs IN et IP sont connectés par ailleurs à un circuit   mélangeur     M4   dont le      rôle est de   transme@tre   au registre 727 toute impulsion envoyée par l'unité de commande 730, par   l'intermédiaire   de l'un ou l'autre des conducteurs IN ou IP. L'impulsion transmise par le circuit M4 provoque la remise à zéro du   registre   727. 



   On indiquera que les portes 762, 763, 764, represen- tées sur la figure 1C, sont constituées chacune de   vint   quatre circuits de commande. En conséquence, les liaisons entre le registre   727   du progresseur 706 et chacun des registres d'adressen 702 à 704 sont assurées au moyen de vingt quatre conducteurs, chaque baaculeur du registre 727 étant connecté par ses deux sorties aux deux entrées d'un basculeur correspondant dans l'un des registres 702 à 704. 

 <Desc/Clms Page number 38> 

 



  Pour des raisons de clarté du schéma, la figure 5 ne montre que douce de   @es     conducteurs,   chaque conducteur se divisant   en   trois branches suivant sa destination (762, 763 ou 764). 



  Co mode de liaison dispense de remettre à zéro les relis- tres 702 à 704 avant d'y   enregistrer   l'adresse modififiée par le processeur 706. 



   Les impulsions qui arrivent aux différentes portes représentées sur les figures 1A, 1B et 1C proviennent de l'unité de commande 730. L'ordre dans lequel ces impulsions sont envoyées aux portes dépend des   opérations a.   effectuer. 



  On considérera que l'unité de commande 730 qui peut être réalisée de différentes manières en utilisant des moyens connus, est constituée, par exemple, par des chaînes   d'élé-   ments bistables à progression séquentielle, chaque chaîne avançant pas à pas sous la commande de ses propres éléments et d'impulsions de progression fournies par un générateur d'impulsions, et délivrant   à   différentes sorties des impul- sions transmises successivement par chacun de ces éléments pour déclencher plusieurs opérations élémentaires se dérou- lant suivant un ordre prédéterminé.

   L'une de ces chaînes est sélectionnée par le.décodeur-sélecteur 721 lorsque celui-ci a décodifié le caractère qui lui est transmis, sous forme codée, par l'intermédiaire de la porte   741.   On considérera que le décodeur-sélecteur   721   est constitué, par exemple, par une pyramide de décodiiication de type connu qui, recevant une combinaison de signaux binaires représentant le carac- tère transmis, fournit une indication destinée à sélectionner une chaîne dans l'unité de commande pour   l'exécution   d'une opération définie par ce caractère. 



   Ainsi qu'on l'a signalé précédemment, le système que 

 <Desc/Clms Page number 39> 

 l'on vient de décrire permet à un repère contenu   dana   une instruction extraite de la mémoire, de contrôler la sélec- tien et l'extraction d'une adresse développée correspondante emmagasinée dans la mémoire, la dite adresse développée permettant à son tour de contrôler la sélection et l'extrao- tion   d'une   quantité à traiter   plie-même   contenue dans la mémoire, Cela implique que, pour un système établi selon l'invention, les données emmagasinées dans la mémoire soient de trois catégories différentes, chacune de ces ca- tégories étant constituée , respectivement, par des ins- tructions,'par des adresses développées et par des quanti- tés à traiter,

   Pour une application particulièrement avan- tageuse de ce   système   aux   problèmes   de gestion des petites et moyennes entreprises, on considère qu'il est suffisant de disposer de repères constitués chacun de un caractère, Par conséquent, il est possible d'utiliser des instructions de   programme   très courtes constituées chacune de trois caractères* Le premier caractère de chaque instruction sert à définir le type d'opération que la machine doit exécuter .addition, soustraction, comparaison, transfert, effacement,   etc...   Ce caractère indicatif d'opération, dénommé parfois lettre de fonction ou indication de fonction, sera désigné ici sous le nom de caractère T.O. (type d'opération).

   Le deuxième caractère de chaque instruction,   represente   un repère qui permet de   désigner,   de la manière indiquée pré- cédemment, une donnée devant intervenir au cours de l'opé- ration définie par le caractère T.O. Le troisième caractère de chaque instructirn, représente généralement un autre repère qui permet de désigner, de la même manière, une autre donnée devant intervenir au cours de cette même 

 <Desc/Clms Page number 40> 

 opération. 



   Puisque chaque repère eet constitué de un caractère représenté, sous forme codée, par une combinaison de six chiffres binaires, on dispose alors de 64 repères   diiié-   rents, donc de 64 adresses développées correspondantes dif- férentes. 



   L'adoption d'une mémoire dans laquelle la sélection des emplacements s'effectue par le choix de coordonnées x et Y, x pouvant prendre les valeurs entières comprises entre 0 et 63, y pouvant prendre les valeurs entières comprises entre 0 et 15, conduit à l'utilisation d'adresses développées constituées chacune de deux caractères, chaque caractère étant représenté par une combinaison de six chiffres binaires. 



   Les susdites 64   adresses développées   permettent alors de sélectionner 64 zones différentes de la mémoire. On con- sidérera ici que chaque zone contient un mot, que chaque mot constitue une quantité à traiter pouvant comporter plusieurs caractères et que les zones sont séparées les unes des autres par des caractères drapeaux. Dans ce cas, la sélection d'un mot est effectuée   à   partir d'une adresses développée qui spécifie l'emplacement du   caractère   drapeau situé au début de la zone contenant ce mot, les caractères du mot étant ensuite successivement sélectionnés à partir d'adresses obtenues successivement en faisant progresser la dite adresse développée. 



   Le mode d'adressage qui vient ainsi d'être exposé peut, d'autre part, être appliqué pour sélectionner aussi des instructions contenues dans la mémoire. En effet, on sait   qu'un   programme est constitué par une suite d'instructions 

 <Desc/Clms Page number 41> 

 et que la succession des opérations permettant d'exécuter une fonction de traitement est définie par une suite d'ins- tructions dénommée séquence.

   Puisque le programme peut ainsi être considéré cornue constitué par un assemblage de séquences, il s'ensuit qu'une séquence peut être désignée en désignant simplement la première des instructions qui constituent la dite   séquence.   Plus particulièrement, le système   d'emuaga-     sinage   et de traitement de données qui a été décrit précé- demment selon l'invention, permet   à   un repère contenu dans une instruction extraite de la   mémoire,   de contrôler la sélection et l'extraction d'une adresse développée corres- pondante contenue dans la   ± moire,   la dite adresse développée permettant à son tour de   désigner   la première des instruc- tions d'une séquence. 



   Le programme peut comporter jusqu'à 64 séquences. 



  Chaque séquence peut   elle-même   comporter   jusqu'à   64 intruc-   tinna,   chaque instructicn étant constituée de trois carac- tères. Puisque à chaque séquence du programme, il est pos-   aible   d'affecter un repère qui, par la désignation du pre- mier caractère placé au début de la séquence, permet ainsi de   désigner   la dite séquence, il peut être nécessaire d'utiliser jusqu'à 64 adresses développées différentes, chaque   adresse   développée permettant de sélectionner une séquence du   programme.   Dans ce cas, une adresse développée sert à définir l'emplacement du premier caractère de la   sé-   quence,

   les caractères de la dite séquence étant ensuite successivement sélectionnée à partir d'adresses obtenues successivement en faisant progresser cette adresse développée. 



   Ur.e telle organisation facilite l'écriture des bran- chements puisqu'il suffit d'indiquer le repère du début de 

 <Desc/Clms Page number 42> 

 la séquence sur laquelle on désire renvoyer le programme. 



  Par ailleurs, les possibilités de modification de l'ordre des séquences, d'introduction ou de substitution de nou- velles séquences n'affectent en rien les autres séquences, ce qui donne une très grande souplesse au programme, 
On va maintenant expliquer le fonctionnement du système d'emmagasinage et de traitement de données qui a été décrit et représenté sur les figures 1A, 1B et 1C, dans son utilisation à la sélection de données à partir de re- 'pères. Deux cas d'utilisation vont être maintenant exposés. 



  Le premier cas concerne la sélection de quantités à traiter à partir de repères. Le deuxième cas concerne la désignation de la première instruction d'une séquence de programme   à   partir d'un repère. On considérera que ceux séries d'adresses développées sont enregistrées dans la mémoire, chaque série comprenant 64 adresses développées, et que chaque série est utilisée respectivement dans l'un des deux cas cités ci- dessus. En outre, il y a lieu d'indiquer ici que les ins- tructions enregistrées dans la mémoire appartiennent à deux types différents.

   On considère en effet que le passage d'une séquence de   programme   à une autre   n'effectue   grâce à des instructicns particulières, dénommées parfois ins- tructions de "branchement" ou instructions de saut et désignées ici sous le nom de "variantes".

   Les repères faisant partie de ces "variantes" servent alors à sélec- tionner des adresses développées parmi les adresses de la deuxième série, chacune des adresses développées ainsi sélectionnées servant à son tour à désigner une instruction de   programme   déterminé. les repères qui font partie des autres instructions servent, au contraire, à sélectionner 

 <Desc/Clms Page number 43> 

 des adresses développées parmi les adresses de la première série, et ces adresses développées servent ensuite à sélec- tionner des quantités à traiter. 



   Les trois catégories de données (instructions, adresses   développées,   quantités à traiter) sont introduites au préalable dans la mémoire, de manière connue, à partir de cartes perforées, bandes, documents ou autres. Trois parties de la mémoire sont alors occupées par les données ainai, enregistrées, chaque partie contenant, respectivement, l'une des trois catégories de données. 



   La figure 4 montre, à titre d'exemple, un mode de répartition de ces données dans une mémoire de.1024 empla- cements. En se référant maintenant à la figure 4, on remarque qu'une première série d'adresses développées a été enregis- trée dans les emplacements de la mémoire définis par x = 0, 1, 2, ..., 63 et y = 0, 1. On signalera que le premier caractère de chacune de ces adresses développées de la pre- mière série se trouve enregistré dans l'un des emplacements définis par x 0, 1, 2,...63 et y = 0, le deuxième   carac-   tère étant alors enregistré dans l'un des emplacements défi- nis par x = 0, 1, 2,...,63 et y = 1.

   Dans chacun des empla- cements définis par x = 0, 1, 2,..., 63 et y = 2, on a en- registré le premier caractère de chacune des adresses dé-   veloppées   de la deuxième série, tandis que le deuxième ca- ractère de chacune de ces adresses développées est enre- gistré dans l'un des emplacements définis par x 0, 1, 2,..., 63 et y --- 3. L'enregistrement est tel que les deux caractères d'une adresse développée sont contenus dans deux emplacements   correspondants   à une même valeur de x. On rappelle que chaque caractère emmagasiné dans un des empla- 

 <Desc/Clms Page number 44> 

 cémenta de la mémoire est représenté par une combinaison codée de six chiffres binaires.

   Pour des raisons de commo- dité, on a indiqué, dans certains emplacements de la mémoire. la valeur décimale correspondant à la combinaison binaire qui a été enregistrée dans chacun de ces emplacements, cette valeur ne pouvant pas excéder 63 du fait que chaque combinai- son comporte six chiffres binaires. A l'emplacement défini par x = 6, y = 3, par exemple, la valeur   11   exprime que la combinaison binaire enregistrée dans cet emplacement est 001011. 



   Une autre partie de la médire sert   à     l'enregistrement   des instructions du   programme,   chacune de ces instructions possédant une longueur fixe de trois caractères. L'adoption d'instructions de longueur fixe permet alors d'enregistrer ces instructions, dans la mémoire, les unes à la suite des autres sans qu'il soit nécessaire de les séparer, puisque le nombre de caractères qui constituent chaque instruction est fixe et connu. La figure 4 montre, à titre d'exemple, des instructions + 4 5, T 5 11, C 5 4,..., de trois caractères chacune, dont les caractères ont été ainsi   em@agasinées   les uns à la suite des autres, On considérera que, sur la figure 4, la lettre V constitue le premier caractère des instruc- tions "variantes". 



   Une dernière partie de la mémoire   sert ±   l'enregistre- ment des quantités à traiter. On considérera que ces quan- tités à traiter, qui peuvent être de nature numérique ou alphabétique, sont constituées ici par des nombres inter- venant dans des opérations de calcul. Ces nombres qui ne comportent pas tous le même nombre de chiffres sont séparés les uns des autres, dans la mémoire, par des caractères 

 <Desc/Clms Page number 45> 

 drapeaux, Dane la figure 4, les emplacements contenant des caractères drapeaux ont été symboliquement marqués par des oroix.. 



   On remarquera que la capacité de la mémoire représentée sur la figure 4 est de 1.024   caractères,que   la mémoire 711 comporte par conséquent 1.024 emplacements définis par les valeurs de x = 0, 1,   2,...,63   et par les valeurs de y == 0, 1, 2, ..., 15, mais que, pour des raisons évidentes de sim- plification, quelques emplacements seulement de cette mémoire ont été représentés. 



   Deux cas'd'utilisation du système   d'emmagasinage'et   de traitement de données représenté sur les figures 1A, 1B et 10 vont être maintenant exposés, en considérant que les données emmagasinées dans la mémoire   711   sont réparties dans celle-ci suivant la disposition représentée sur la figa- re 4. On considérera par ailleurs que, dans le registre de constantes   70@,   ont été emmagasinées une première constante, de valeur égale à 0, et une deuxième constante, de valeur égale à 2, la première constante pouvant être transmise au registre 714 par 1'intermédiaire de la porte 755, la deu- xième constante pouvant être transmise au registre 714 par l'intermédiaire de la porte 756. 



   Premier cas = Extraction de quantités à traiterà partir de   repères   
A l'état initial, on supposera que les registres intermédiaire 716, auxiliaire   701,   et d'adresses 702 et 
703 sont à zéro, c'est-à-dire ne contiennent aucun   carac-   tère. Dans le registre d'adresse 704, appelé registre   d'adresses   programme, se trouve l'adresse du premier   oarac-   tère d'une instruction à extraire de la mémoire.

   Dans 

 <Desc/Clms Page number 46> 

 l'exemple considéré, on   supposera   que l'adresse ainsi con- tenue dans le registre d'adresses programme 704 est repré- sentée par les deux combinaisons binaires :      
000101 000101 Ces combinaisons   000101   qui correspondent chacune au chiffre décimal 5 sont contenues respectivement dans la partie gau- che et dans la partie droite du registre 704, Une succession      d'opérations, permettant de définir trois phases successi- ves de travail, est déclenchée par la mise en action de l'u- nité de commande 730.

   Ces phases, qui vont être maintenant décrites en se référant aux figures 1A, 1D, 10 et 4 se rap- portent respectivement, à l'extraction d'une instruction de la mémoire,   à   l'extraction des adresses développées corres- pondant aux repères faisant partie de la dite instruction, et à l'extraction de quantités à traiter au moyen des sus- dites adresses développées. 



   Extraction d'une instruction 
Dans une première phase de travail, une impulsion envoyée à la porte 754 par l'unité de commande 730 autorise le transfert de l'adresse contenue dans le registre d'adres- ses programme 704 vers le registre de préparation de sélec- tion 714. A la suite de ce transfert, chacune des parties du registre 714 contient la combinaison   000101.   La combinaison   000101   décodifiée par le décodeur S de l'organe de commande de sélection   712   définit pour l'abscisse x la valeur x = 5, tandis que la combinaison   000101     décodifiée   par le décodeur 
T de l'organe de commande de sélection   713   définit pour l'ordonnée y la valeur y = 5,

   ce qui permet de sélectionner dans la mémoire le caractère contenu dans l'emplacement défini par x = 5 et y = 5. La figure 4 montre que le carac- 

 <Desc/Clms Page number 47> 

 tère ainsi sélectionné est le caractère C. Une impulsion est envoyée alors par l'unité de   commande   730 aux organes de   commando   de sélection 712 et 713, par l'intermédiaire du   conducteur   CL, de qui permet d'extraire de la mémoire le dit caractere 0, Celui-oi est alors transmis au registre inter-' médiaire 716, par l'intermédiaire de la liaison L. On rappelle que ce caractère C qui est le premier   caract@re   d'une   instruction,   a été   dénote   caractère T. O, et qu'il sert à définir le type   d'opératicn à   exécuter.

   Dans le cas présent, le caractère C indique que l'opération à effectuer est une opération de comparaison. Une impulsion, envoyée par l'unité de commande 730 aux   organes   de   commande   de sélection   712   et 713 par l'intermédiaire du conducteur CE, permet de réemma- gasiner le caractère C dans l'emplacement de la mémoire où il se trouvait primitivement. Ce réemmagasinage s'effectue sans remise   à     zéro   du registre intermédiaire 716. Une im- pulsion envoyée à la porte 741 par l'unité de commande 730 autorise alors le transfert du caractère C contenu dans le registre intermédiaire 716 vers le décodeur sélecteur 721. 



  A la suite de ce transfert, le décodeur sélecteur sélectionne une chaîne dans l'unité de commande pour effectuer la susdite   opératirn   de comparaison. 



   Par le conducteur CZI, l'unité de   commande   envoie alors une   impulsion   au registre 716 pour assurer la remise à zéro de ce dernier. Une   impulsion   est ensuite envoyée au progresseur d'adresses   706   par   l'intermédiaire   du   conduc-   teur IN pour permettre la modification du caractere contenu alors dans la partie gauche du registre 714. Une impulsion envoyée à la porte 760 par l'unité de commande autorise ensuite le transfert de l'adresse contenue dans le registre 

 <Desc/Clms Page number 48> 

 714 vers le progresseur d'adresses 706. La dite adresse se trouve alors modifiée suivant une manière indiquée précédem- ment et devient 000110 000101.

   Puis une impulsion envoyée à la porte 764 par l'unité de commande autorise le transfert de l'adresse ainsi modifiée vers le registre d'adresses pro- gramme 704. La dite adresse modifiée est transmise ensuite, à partir du registre 704, vers le registre   7-il,     gràce à   une impulsion envoyée à la porte 754 par l'unité de commande. Les organes de commande de sélection 712 et 713 permettent alors de définir, à partir de l'adresse contenue dans le registre 714, pour l'abscisse x la valeur x = 6 et pour l'ordonnée y la valeur y = 5. La figure 4 montré que le caractère qui est alors sélectionné   es@   le caractère 2.

   Une impulsion, envoyée par l'unité de   ccande   aux organes de commande de sélection   712   et 713 par l'intermédiaire du conducteur CL, permet d'ex- traire de la mémoire ce caractère 2 qui est alors transmis au registre intermédiaire 716. Ce caractère 2 est le deuxième caractère de l'instruction en cours d'extraotion et constitue alors le premier repère de cette instruction. Une impulsion envoyée aux organes 712 et 713 par l'unité de commande, par l'intermédiaire du conducteur CE, permet de réenregistrer ce caractère dans la mémoire dans son emplacement d'origine. 



  Après quoi, une impulsion envoyée à la porte 733 par l'unité de commande autorise le transfert du repère 2 contenu dans le registre intermédiaire vers la partie gauche du registre d'adresses 702. Le registre intermédiaire est ensuite remis à zéro. 



   D'une manière analogue, l'unité de commande envoie successivement des impulsions qui permettent à l'adresse contenue dans le registre 714 d'être transféréevers le pro- 

 <Desc/Clms Page number 49> 

   gresseur   d'adresses   où.   elle se trouve modifiée en 000111   000101.   Après quoi, la dite adresse modifiée est   transmise   successivement au registre d'adresses   programme   704, puis au   registre   714.

   La dite adresse permet de définir pour l'abscisse et l'ordonnée les valeurs   x =   7 et y = 5, Grâce a une impulsion envoyée par l'intermédiaire du ocnducteur CL par l'unité de   commande,   le caractère qui, dans la mémoire, se trouve situé dana   l'emplacement   défini par ces valeurs de x et   de   y est alors extrait de la mémoire et emmagasiné dans le registre intermédiaire 716. La figure 4 montre que ce caractère est le caractère 9. Le dit caractère constitue le deuxième repère de l'instruction en cours d'extraction. 



  Ce caractère est réenregistré en mémoire, puis une impulsion envoyée à la porte 735 par l'unité de commande autorise le transfert de ce repère 9 contenu dans le registre intermédiai- re vers la partie gauche du registre d'adresses 703. A la suite de ce transfert, le registre intermédiaire est remis à zéro. 



   L'adresse contenue dans le registre 714 est ensuite transmise au progresseur d'adresses 706 qui la modifie en 001000   000101   et, ainsi modifiée, est enfin transmise au ,registre d'adresses programme 704. 



   L'organisation de l'unité de commande est telle que, lorsque les trois caractères de   l'instruction   ont été ex- traits de la mémoire, une nouvelle étape de travail est entreprise. Au cours de cette deuxième étape, les repères qui ont été extraits de la mémoire vont être utilisée à leur tour pour permettre d'extraire de la mémoire les adresses développées qui correspondent à ces repères. 

 <Desc/Clms Page number 50> 

 



   Extrantion des adresses développées 
Dans la deuxième phase de travail, une impulsion envoyée à la porte 752 par l'unité de commande 730, par l'intermédiaire du conducteur IG et du mélangeur M3, autorise le transfert du premier repère 2 contenu dans le registre d'adresses 702 vers la partie gauche du registre de prépara- tion de sélection 714. A la suite de ce transfert, la partie gauche du registre 714 contient la   combinaison   C00010 cor- respondant à la codification de ce premier repère, tandis que la partie droite de ce registre contient la combinaison   000000   provenant de la partie droite du registre 702.

   Etant donne que l'instruction qui a été extraite au cours de la première   éta@@   de travail n'était pas une "variante", l'unité de commande 730, placée sous le contrôle du décodeur séleo- teur 721 qui a décodé le premier caractère de l'instruction, envoie une impulsion à la porte 755 pour que, parmi les constantes contenues dans le registre de constantes 705, seule la constante 0, représentée par 000000, soit transfé- rée dans la partie droite du registre 714. les deux caractères contenus alors dans le registre 714 constituent une adresse permettant de définir une valeur de x égale à 2 et une valeur   de' y   égale à 0.

   Grâce à une impulsion envoyée par l'unité de commande, par l'intermédiaire du conducteur CL, le caractère 9 qui, dans la mémoire, est emmagasiné dans l'emplacement défini par ces valeurs de x et de y, se trouve alors extrait de la mémcire et emmaga- siné dans le registre intermédiaire. Ce caractère 9 est ensuite   reemmagaeiné   en   mémoire,   tout en restant enregistré dans le registre intermédiaire. Cornue ce caractère n'est pas un caractère "drapeau", la   sortie 15   du décodeur-détecteur 

 <Desc/Clms Page number 51> 

 de drapeau 708 est portée à un potentiel poaitif, alors qu'aucune tension positive n'apparaît sur la sortie D. Par suite, le circuit 773 est rendu passant, tandis que les cir- cuits 774 et 775 sont non passants.

   Une   impulsion,   envoyée simultanément aux circuits 773 et 774 par l'unité de commande n'est transmise que par le circuit 773 et arrive à la porte 743, ce qui provoque le transfert vers le registre auxi- liaire 701 du caractère 9 contenu dans le registre intermé- diaire. Après quoi, le registre intermédiaire est remis à zéro. Une impulsion est ensuite envoyée au progresseur d'adresses 706 par l'intermédiaire du conducteur IP pour permettre de modifier le caractère de l'adresse qui est situé dans la partie droite du registre 714. Une impulsion envoyée à la porte 760 par l'imité de commande permet alors le transfert de l'adresse contenue dans le registre 714 vers le   progresseur   d'adresses 706. La dite adresse se trouve alors modifiée suivant une manière indiquée précédemment et devient 000010 000001.

   Une impulsion envoyée alors à la porte 762 par l'unité de commande permet à cette adresse modifiée   d'être   transférée dans le registre d'adresses 702. 



  L'envoi d'une impulsion à la porte 752, par l'intermédiaire du conducteur IG et du mélangeur M3 permet ensuite à cette adresse   d'Atre   transférée vers le registre 714. Le caractère 9 contenu dans le registre auxiliaire constitue l'un des caractères d'une adresse développée. L'adresse qui est main- tenant contenue dans le registre 714 va permettre d'extraire de la mémoire le deuxième caractère constitutif de cette adresse développée. L'adresse contenue dans le registre 714   permet   de définir une valeur de x égale à 2 et une valeur de y égale à 1.

   Grâce à une impulsion envoyée, par l'inter- 

 <Desc/Clms Page number 52> 

 médiaire du conducteur CL, par l'unité de commande, le carac- tère 5 qui, dans la mémoire, est emmagasiné dans l'emplace- ment défini par ces valeurs de x et de y, se trouve extrait et   emmagasiné   dans le registre intermédiaire. Ce caractère est ensuite réenregistré en mémoire, puis des impulsions, envoyées   simultanément   aux portes 733 et 734 par l'unité de commande permettent de transférer vers le registre 702 les caractères 5 et 9 contenus,   respectivement,   dans le registre intermédiaire et dans le registre auxiliaire. A la suite de ces transferts, les caractères 2 et 1 qui étaient contenus dans le registre 702 se trouvent effacés et remplacés par les caractères 5 et 9, respectivement.

   Puis des impulsions, envoyées par   l'inter@édiaire   des conducteurs CZI et   CZA   as- surent la remise à zéro des registres intermédiaire et au- xiliaire. 



   Le registre d'adresses 702 contient maintenant deux caractères 5 et 9 qui constituent alors une première adresse développée représentée par 000101 001C01. Cette adresse développée a été extraite de la mémoire à partir du premier repère qui était antérieurement contenu dans le registre 702. 



  D'une manière analogue, le deuxième   repére   qui se trouve contenu dans le registre d'adresses 703 permet d'extraire de la mémoire l'adresse développée qui lui correspond, nette adresse venant alors dans le registre 703 en remplacement de ce deuxième repère. L'examen de la figure 4 permet d'établir que cette deuxième adresse développée contenue dane' le registre 703 est représentée par 000001 001010. 



   Extraction des quantités à traiter 
Les adresses développées contenues dans les registres d'adresses 702 et 703 définissent chacune l'emplacement d'un      

 <Desc/Clms Page number 53> 

 caractère   "drapeau",   ce caractère "drapeau" étant placé au début de la quantité à extraire de la mémoire. L'extraction successive des caractères qui constituent chacune de ces quantités nécessite de modifier,   respectivement,   chacune des dites adresses développées. Cette modification consiste, dans le cas présent,   à   ajouter successsivement   1   au premier caractère constituant chacune de ces adresses développées, de manière à obtenir des adresses successives définissant chacune l'un des caractères des quantités à extraire.

   Prati- quement, l'extraction de ces quantités sera effectuée, dans une troisième place de travail, de la manière suivante. 



   Une impulsion, envoyée à la porte 753 par l'unité de commande, autorise le transfert de l'adresse développée contenue dans le registre 703 vers le registre 714.Une   im-   pulsion eot ensuite envoyée au progreseur d'adresses 706 par l'intermédiaire du conducteur IN afin que le   prêter   caractère de l'adresse qui va lui être envoyée puisse être modifié. Une impulsi n, envoyée ensuite   à   la porte 760 par l'unité de   commande,   autorise le transfert de l'adresse contenue dans le registre 714 vers le progresseur d'adressée 706. Cette adresse se trouve alors modifiée et devient 000010 001010. Puis une impulsion, envoyée à la porte 763 par l'unité de   commande,   permet à cette adresse modifiée   d'être   transférée dans le registre 703. 



   D'une manière analogue, l'adresse développée contenue dans le registre 702, est transférée successivement dans le registre   714,   puis dans le progresseur d'adresses   où.   elle se trouve modifiée en 000110   001001.   Ainsi modifiée, elle est enfin reemmagasinée dans le registre 7C2. 



   L'adresse qui se trouve alors contenue dans le registre 

 <Desc/Clms Page number 54> 

 703 est à nouveau transférée dans le registre 714 et permet alors de définir une valeur de x égale   à   2 et une valeur de y égale à 10, Une impulsion, envoyée par l'intermédiaire du conducteur CL, permet d'extraire de la mémoire le caractère 1 qui était emmagasiné dans l'emplacement défini par oea valeurs de x et de y. Ce caractère 1 est alors transmis au registre intermédiaire, puis de là est   réenregistré   en mémoire tout en restant contenu dans le registre intermédiaire.

   Le circuit 773, rendu passant du fait que la sortie du décodeur- détecteur de"drapeau" est portée   à   un potentiel positif par suite de l'absence de "drapeau" dans le registre 716, trans- met à la porte 743 une impulsion qui lui est fournie par l'unité de commande, ce qui provoque le transfert vers le registre auxiliaire du caractère 1 contenu dans le registre intermédiaire. 



   Après quoi, le registre intermédiaire est remis à zéro, tandis que l'adresse contenue dans le registre 714 est transférée dans le progresseur d'adresses qui la modifie en 000011 001010, puis, ainsi modifiée, est transférée dans le registre 703. 



   De façon analogue, l'adresse qui est contenue dans le registre   702   est transférée dans le registre 714 pour per- mettre d'extraire de la mémoire le caractère 3 qui est emma- gasiné dans 1'emplacement défini par   x   6, y = 9. Une impulsion est alors envoyée au circuit 775 par l'unité de commande. Du fait que ce circuit est non   passant,   la dite impulsion est bloquée et n'est pas transmise à l'unité de commande. La non transmission de cette impulsion signale à l'unité de commande que le caractère qui est alors contenu dans le registre intermédiaire n'est pas un caractère "drapeau" 

 <Desc/Clms Page number 55> 

 donc que la fin des caractères constituant l'opérande A n'est pas encore détectée. 



   L'adresse contenue alors dans le registre 714 est ensuite transmise au processeur 706 qui la modifie en 000111   00100le   puis est transmise enfin, ainsi modifiée, vers le registre 702. 



   On   reaarquera   que le caractère 3 qui vient d'être extrait de la mémoire et qui est maintenant contenu dans le registre intermédiaire représente le chiffre des "unités" d'un nombre A dont les chiffres constitutifs 3, 4, 1, 4 sont emmagasines dans les emplacements de mémoire définis par x = 6, 7, 8, 9 et y = 9. De même, le caractère 1 qui est contenu dans le registre auxiliaire représente le chiffre des "unités" d'un nombre B dont les chiffres constitutifs 1, 4,2 sont emmagasinés dans les emplacements de mémoire définis par x = 2, 3, 4 et y = 10. On notera que, afin de facili.ter les opérations, ces nombres ont été emmagasinés, lors du chargement de la mémoire, dans l'ordre inverse à celui de leur écriture normale. Ainsi, le nombre A, par exemple, s'écrit en réalité 4143. 



   Puisque le caractère T 0 qui a été transmis au déco- deur sélecteur 721 a défini que l'opération à effectuer'était une comparaison des nombres A et B, une impulsion est alors 
 EMI55.1 
 envoyée à I$additionneur-soustracteur 722, par l'intermédiaire du conducteur I S, de manière à en commander le fonctionne- ment en   soustracteur.   On rappelle que, dans ce cas, l'addi-   tionneur-soustracteur   est conçu pour retrancher au chiffre oontenu   initialement   dans le registre intermédiaire le chiffre contenu initialement dans le registre auxiliaire. 



   Des impulsions envoyées simultanément aux portes 

 <Desc/Clms Page number 56> 

 
739,   740   et 776 commandent le transfert, vers l'additionneur-   eoustraoteur,   du chiffre 3 contenu dans le registre inter- . médiaire et du chiffre !contenu dans le registre auxiliaire tandis qu'aucun report n'est transmis au dit additionneur-   soustracteur   du fait que le basculeur BR est à zéro. Sans entrer davantage dans le détail des opération:* qui ont été décrites, on indiquera simplement que le premier résultat partiel est 2 et que le premier report produit est nul. 



   Ce premier résultat partiel est d'abord transmis au registre intermédiaire, en remplacement du chiffre 3, puis une impul- sion appliquée simultanément aux portes 777, 778 et 779 provoque le positionnement à "0" des basculeurs BR et   BI.   



   On rappelle en effet que, puisque le premier résultat par- tiel contenu dans le registre intermédiaire est différent de zéro, le circuit 779 est rendu passant du fait que la sortie'de   l'indicateur   7C9 est portée un potentiel positif. 



   Dans le cas où une comparaison est effectuée, le résultat partiel n'est pas enregistré en mémoire. Les   reie-   tres intermédiaire et auxiliaire sont alors remis à zéro pour leur permettre de   rece.oir   les chiffres des "dizaines" des nombres A et B. Des opérations analogues à celles qui vien- nent   d'être   décrites permettent alors d'envoyer ces ohiffres, tous deux étaux à 4 dans l'exemple   oonsidéré, à   l'addition- neur-soustracteur. Le second résultat partiel obtenu est alors 0 et le second report obtenu eat nul. Une impulsion envoyée aux portes 777,   778   et 779 simultanément continue à positionner à "0" les basculeurs BR et BI.

   Les   replâtres     intermédiaire@et   auxiliaire sont ensuite remis à zéro, puis les chiffres des "centaines" des nombres A et B, constitués par les chiffres 1 et 2 respectivement, sont envoyés à 

 <Desc/Clms Page number 57> 

 
 EMI57.1 
 l'additionneur-soustracteur. Le troisième résultat partiel obtenu est 9, tandis qu'un report 1 apparaît. Une impulsion envoyée aux portes   777,   778 et 779, simultanément, positionne le basculeur BR   a   "1" tandis que le basculeur BI reste à zéro. Les registres intermédiaire et auxiliaire sont ensuite remis à zéro, puis les chiffres des "mille" des nombres A et B sont extraits de la mémoire.

   On remarque alors que ce chiffre n'existe pas pour le nombre B puisque ce dernier ne comporte que trois chiffres, et qu'à sa place, dans la mémoire, se trouve un caractère "drapeau". Ce caractère "drapeau", enregistré dans   l'emplacement   défini par x = 5 et y = 10, est extrait de la mémoire puis contenu dans le registre inter- médiaire.   l'hais   dans ce cas, seule la sortie D du décodeur- détecteur de "drapeau" est portée   à   un potentiel positif, ce qui rend passants les circuits 774 et 775.

   Une impulsion envoyée simultanément aux portes 773 et 774 par l'unité de   commande   est alors bloquée par le circuit 773 et transmise seulement par le circuit   774.   La dite impulsion est alors envoyée   à   l'unité de commande et   signale   ainsi que tous les caractères constituant l'opérande B ont été traités. Puisque aucun caractère n'a été transais au registre auxiliaire, ce dernier reste à zéro. On indiquera que le caractère "drapeau" contenu dans le registre   intermédiaire   est réenregistré en mémoire, que le dit registre est ensuite remis à zéro et que le chiffre 4 (chiffre des "mille") de l'opérande A est ex- trait enfin de la mémoire. 



   Les chiffres 4 et 0 contenus alors dans les registres intermédiaire et auxiliaire, respectivement, sont envoyés à   l'additionneur-soustracteur   en même temps que le report précédemment mémorisé dans le basculeur BR. Il en résulte 

 <Desc/Clms Page number 58> 

 un quatrième résultat partiel 3, tandis que le report obtenu est nul. Ce résultat partiel est transmis au registre inter- médiaire, en remplacement du chiffre 4, puis une impulsion appliquée simultanément aux portes 777,778 et 779 provoque le positionnement "0" du basculeur BR, le basculeur BI restant à zéro. 



   L'unité de   coande,   avertie maintenant que tous les caractères constituant l'opérande   B   ont été traités, continua   l'extraction   des caractères oonstituant l'opérande A. On remarquera que, dans l'exemple considéré, le caractère qui doit maintenant être extrait est un caractère "drapeau" enregistré dans l'emplacement de mémoire défini par x = 10 et y = 9. Ce caractère est alors extrait de la mémoire et contenu dans le registre intermédiaire. Une impulsion est alors envoyée au circuit 775 par l'unité de commande. Comme ce circuit est maintenant rendu passant, la dite impulsion est transmise et envoyée à l'unité de commande, lui signa- lant ainsi que tous les caractères constituant l'opérande A ont été traités.

   L'unité de commande, avertie que les deux opérandes A et B ont été traités, peut commander maintenant l'extraction de l'instruction suivante. Avant de déorire les opérations qui concernent l'extraction et le traitement de cette instruction, il convient de signaler, que à la suite de la comparaison des opérandes A et B qui vient   d'être   effectuée, les deux basculeurs BR et BI ont été finalement   positionnée 4   l'état "0" et que, par voie de conséquence, seule la sortie du circuit "ET" 788 est portée à un potentiel positif.   Ainsi.qu'on   l'a déjà signalé précédemment, cette indication exprime que   A   est plus grand que B.

   Il convient de signaler que, maintenant, le registre 714 contient 

 <Desc/Clms Page number 59> 

 l'adresse   001010   001001 et que le registre d'adresse pro- gramme 704 contient l'adresse 001000 .000101. Avant de oom- mander l'extraction de l'instruction suivante, l'unité de   commande   commande la remise à zéro des registres inter- mediaire et auxiliaire.

   Après quoi, la remise à zéro des registres 702 et 703 est effectuée en leur transférant sim- plement les chiffres "0" alors contenus dans les dits re- gistres intermédiaire et auxiliaire, 
Deuxième cas : désignation d'une instruction de   programme   à partir d'un repère 
L'instruction suivante qui va être maintenant extraite de la mémoire est constituée, comme le montre la figure 4, par les 3 caractères V, 0 et   .   Ainsi qu'on l'a déjà indi- qué précédemment, le premier caractère V montre que cette instruction est une "variante" qui permet de renvoyer le   prorame   vers une instruction déterminée.

   Ce renvoi, dénommé "saut" dans la technique des calculateurs, n'a lieu cependant que si une certaine condition, concernant un résultat tel que le résultat d'une comparaison par exemple, est réalisée. 



   Le troisième caractère de cette instruction indique à quelle condition doit satisfaire ce résultat pour que ce renvoi puisse être exécuté. Le deuxième caractère de cette instruction est un repère servant à définir l'instruction à laquelle le programme doit être renvoyé lorsque la sus- dite condition est satisfaite. Ainsi,   dans   le cas présent, le caractère > indique que, pour que le renvoi soit exécuté, il faut que le résultat de la comparaison de deux opérandes A et B exprime que A est plus grand que B. Le caractère 0 est le repère qui définit l'instruction de renvoi lorsque cette condition est réalisée. En cas de non-réalisation, 

 <Desc/Clms Page number 60> 

 le programme se poursuit par   1'instruction   qui suit   la.   susdite "variante". 



   Cette instruction "variante" est extraite de la mé- moire 711 suivant un processus analogue à celui qui a déjà été indiqué. Sans entrer dans les détails, on rappellera que l'adresse 001000 000101, contenue dans le registre d'adresse programme 704, est transférée vers le registre 714. pour permettre de sélectionner dans la mémoire le caractère T 0 de l'instruction contenu dans   1'emplacement   défini par   x     8'   et y = 5. Ce caractère qui, ainsi que le montre la figure 4, est le   caractère   V, est extrait de la mémoire, oontenu dans le registre intermédiaire 716, puis de là transféré vers le décodeur-sélecteur 721. Ce caractère indique que l'opération à effectuer est maintenant une opération de saut   conditionnel.   



  Le décodeur-sélecteur sélectionne alors une chaîne dans l'u- nité de commande pour permettre d'exécuter cette opératicn. 



  L'adresse qui est contenue dans le résistée 714 est alors transférée dans le   progresseur.   d'adresses où elle se trouve modifiée en 001001 000101, puis, ainsi modifiée, est trans- mise dans le registre d'adresse programme 704, et de là est transmise au registre 714. Elle permet alors de sélec- tionner dans la mémoire le deuxième caractère de l'instruo- tion qui est contenu dans   1'emplacement   défini par x = 9 et y = 5. Ce caractère qui, ainsi que le montre la figure 4, est le caractère 0, est extrait de la mémoire, contenu dans le registre intermédiaire 716, puis de la transféré vers la partie gauche du registre d'adresse 702.

   Ce caractère 0 est un repère qui va permettre ultérieurement, comme on le verra plus loin, de désigner une instruction de renvoi de programme, si une certaine condition concernant le résultat 

 <Desc/Clms Page number 61> 

 d'une comparaison est réalisée, 
L'adresse contenue dans le registre 714 est alors transférée dans le progresseur d'adresses où elle se trouve modifiée en 001010 000101,   Dlle   est alors transmise, ainsi modifiée, dans le registre d'adresse programme 704, et de là vers le registre 714. Elle permet alors de sélectionner dans la mémoire le troisième caractère de l'instruction qui est contenu dans l'emplacement défini par x =   10   et y = 5. Ce caractère qui, ainsi que le montre la figure 4, est le carac- tère >, est extrait de la mémoire, puis contenu dans le registre intermédiaire 716.

   Ce caractère indique que, pour que le renvoi soit exécuté, il faut que le résultat de la 
 EMI61.1 
 comparaison qui a été efiectu4e arécédeaent sur deux opte- randes A et B exprime que A est plus grand que B. Il est utile de rappeler ici que ces deux opérandes ont été comparés précédemment et qu'un résultat exprimant que A est plus grand que B s'est traduit par l'apparition d'une tension positive à la sortie du circuit "ET" 788. 



   Dans le   cas   où le caractère T 0 qui a été transmis au décodeur-sélecteur   721   indique que l'opération à effectuer est une opération de saut conditionnel, l'unité de commande 730 ne commande pas le transfert, vers le registre 703, du troisième caractère de l'instruction qui reste ainsi emma- gasiné dans le registre intermédiaire 716. La remise à zéro de ce registre est alors différée. 



   L'adresse contenue dans le registre 714 est ensuite transférée dans le progresseur d'adresses 706 où elle se trouve modifiée en C01011   CC0101   puis, ainsi modifiée, est transmise enfin vers le registre d'adresse programme 7C4. 



   Puisque les trois caractères de l'instruction ont été 

 <Desc/Clms Page number 62> 

 maintenant extraite de la mémoire, une nouvelle étape de travail est entreprise pour déterminer si les conditions requises pour provoquer le "saut" sont réalisées et pour extraire de la mémoire, si ces   conditions   sont   réalisées,   l'adresse développée qui correspond au repère qui est emma- gasiné dans la partie gauche du registre 702. 



   Du fait que le registre intermédiaire contient le caractère >, le décodeur 772 décodifie ce caractère, ce qui a pour effet de porter à une tensinn positive la sortie marquée > du dit   décodeur.   Comme la sortie du circuit "ET" 788 est portée, elle aussi, à une tension positive, il s'ensuit qu'un potentiel   positif   apparatt à la sortie du circuit "ET" 790.

   Un potentiel positif apparatt alors à la sortie du circuit "OU" 786, ce qui rend passant le circuit de commande   780.   Du fait que l'instruction qui a été extraite est une "variante", l'unité de'commande 730, placée sous le contrôle du décodeur-sélecteur 721, envoie une impulsion au circuit de commande 780, par l'intermediaire du conducteur IV, Cette impulsion est transmise par ce circuit, rendu passant, et est envoyée, d'une   part à   l'unité de commande,   l'avertis-   sant ainsi que les conditions de "saut" sont réalisées, d'autre part au   circuit     mélangeur   M3 qui la transmet à son tour à la porte 752. Cette porte 752 autorise alors le trans- fert du repère 0 contenu dans le registre 702 vers la sortie gauche du registre 714.

   A la suite de ce transfert, le re- gistre 714 contient, dans chacune de ses parties, la com- binaison OCOOOO. Après quoi, le registre intermédiaire 716 est remis à zéro. 



   Etant donné que   1'instruction   qui a été extraite est une "variante", l'unité de commande envoie une impulsion 

 <Desc/Clms Page number 63> 

 à la porte 756 pour que, parmi les constantes contenues dans le registre de constantes 705, seule la constante 2, repré- sentée par   000010,   soit transférée dans la partie droite du registre 714. 



   Il y a lieu de signaler ici que si les conditions de "saut" n'avaient pas eté réalisées, l'impulsion envoyée par l'unité de   commande   au circuit 780 aurait été bloquée par celui-ci. Par suite, l'unité de commande n'aurait reçu aucune impulsion venant du circuit 780. Dans ce cas, l'unité de commande aurait commandé   successivement,   la remise à zéro du registre intermédiaire, puis la remise à zéro du registre 702 par transfert vers ce registre du chiffre "0" contenu alors dans le registre intermédiaire. 



   Dans le cas présent, le registre 714 contient deux caractères qui constituent une adresse permettant de définir une valeur de x égale à 0 et une valeur de y égale à 2. La figure 4 montre que le caractère qui est ainsi sélectionné et qui est contenu dans l'emplacement de mémoire défini par x = 0 et y = 2 est le caractère 4. Ce caractère est alors extrait de la mémoire, oontenu dans le registre intermédiaire, puis de là, réemmagasiné dans la mémoire d'une part, et transféré vers le registre auxiliaire d'autre part. Après quoi, le registre intermédiaire est remis à zéro. Une im- pulsion est alors envoyée au progresseur d'adresses 706 par   l'intermédiaire   du conducteur IP, puis l'adresse contenue dans le registre 714 est transmise vers ce progresseur d'adresses où elle se trouve modifiée en 000000 000011. 



  Ainsi modifiée, elle est transmise alors au registre 702, puis de là retourne au registre 714 et permet alors de sé- lectionner dans la mémoire le caractère qui se trouve 

 <Desc/Clms Page number 64> 

 emmagasiné dans   l'emplacement     défini   par x = 0 et y = 3. 



  Ce caractère qui, ainsi que le montre la figure   4;   est le caractère 0, est extrait de la mémoire et contenu dans le registre   intermédiaire.   , 
Après quoi, le caractère 0 est   réenregistré   en mémoire tout en restant   emmagasiné   dans le registre inter- médiaire. Les caractères 0 et 4 emmagasinés dans les regis- tres intermédiaire et auxiliaire, respectivement, sont      ensuite transférés simultanément dans le registre 702 où ils constituent alors une adresse développée représentée par 000000 000100. Cette adresse développée est l'adresse du premier caractère de l'instruction à laquelle doit être renvoyé le programme.

   On comprendra maintenant aisément que cette adresse peut être transmise au registre 714 pour permettre d'extraire cette instruction de la mémoire qui, ainsi que le montre la figure 4, est constituée par les caractères + 4 5. On comprendra facilement aussi que, si les conditons de "saut" n'avaient pas été réalisées, il aurait suffit de transmettre l'adresse 001011 000101, con- tenue dans le registre 704, vers le registre 714 pour per- mettre le déroulement du programme. La figure 4 montre que l'instruction qu'il aurait été possible d'extraire, dans ce cas, aurait été celle qui suit l'instruction "variante" précédemment extraite. 



   Bien que la description et les dessins   nnexé   se rapportent à un mode préféré de réalisation de l'invention, il est entendu que diverses modifications,   suppressions,   adjonctions, substitutions, ne sortant pas du cadre   'le   la dite invention, pourront µtre apportées, selon les   @@s   et applications, sans que le principe de l'invention   s'@n   

 <Desc/Clms Page number 65> 

 trouve   altéré, -   
Les   pointe   caractéristiques de l'invention   apparai.   tront plue clairement dans le résumé suivant.

Claims (1)

  1. RESUME La présente invention concerne notamment : Dans une machine de traitement de données, un système d'em- magasinage et de traitement de données comportant une mémoire à accès direct munie de moyens de sélection d'emplacements d'enregistrement, la dite mémoire contenant, dans une pre- mière partie, des instructions de programme pouvant être sé- lectionnées sous le contrôle d'une adresse provenant d'un - premier registre d'adresse dénommé registre d'adresses de programme et transmise aux susdits moyens de sélection, chaque instruction comprenant un caractère indicatif d'une opération à effectuer et au moins une adresse réduite cons- tituée de un caractère et dénommée repère, la dite mémoire contenant en outre, dans une deuxième partie,
    les adresses dites développées comportant deux caractères et pouvant être sélectionnées à partir des dits repères, puis extraites de la mémoire pour permettre de sélectionner ensuite des quantités à traiter contenues dans une troisième partie de la mémoire, un caractère indicatif d'opération d'une instruc- tion sélectionnée étant transmis automatiquement à un dis- positif décodifieur pour sélectionner, dans une unité de commande, une chaîne de commande de progression de programme pour l'exécution de l'opération déterminée par le dit carac- tère indicatif d'opération, le dit système étant caractérisé en ce qu'il comprend un registre de constantes destiné à contenir au moins une constante constituée de un caractère, <Desc/Clms Page number 66> et un registre de préparation de sélection,
    d'une capacité de deux caractères, relié, d'une part à la mémoire pour recevoir un repère d'une instruction extraite de la mémoire, d'autre part au registre de constantes pour recevoir aimul- tanément une constante, sous la commande de l'unité de commande, les dits repères et constante étant ensuite trans- mis du registre de préparation de sélection aux moyens de sélection de la mémoire pour sélectionner une adresse dévelop- pée, la dite adresse développée étant alors extraite de la mémoire, transmise au registre de préparation de sélection, puis aux moyens de sélection de la mémoire pour sélectionner une quantité à traiter. EMI66.1
    2 ) Un système d'emaasinae et de traitement de données selon 1 ), dans lequel un progresseur d'adresses, connecté, d'une part au registre de preparation de sélection, d'autre part au registre d'adresues de programme, reçoit une adresse pro- venant du registre de préparation de sélection, l'augmento d'une unité et la transmet ensuite au registre de prépara- tion de sélection par l'intermédiaire du registie d'adresses de programme, sous la commande de l'unité de commande.
    3 ) Un système d'emmagasinage et de traitement de données selon 2 ), dans lequel un second registre d'adresse d'une capacité de deux caractères est connecté par l'intermédiaire de portes, d'une part entre le progresseur d'adresses et le registre de préparation de sélection, et d'autre part entre la mémoire et le registre de préparation de sélection, les dites portes étant contrôlées par l'unité de commande de façon qu'une adresse développée extraite de la mémoire, soit transmise successivement à ce second registre d'adresse EMI66.2 et au xeklatre de \11'"1>Ql'o.t.Ol de f\1 o{'ti.() 1"'Rl'th' t}n'i't1 <Desc/Clms Page number 67> elle est transmise, d'une part aux moyens de selection de la mémoire pour sélectionner un des caractères constitutifs d'une quantité à traiter,
    d'autre part au progresseur d'adresses qui l'augmente d'une unité, puis transmise suc- cessivement au second registre d'adresse et au registre de préparation de sélection, à partir duquel elle est trans- mise, d'une part aux moyens de sélection de la mémoire pour sélectionner un autre caractère constitutif de la dite quan- tité à traiter, d'autre part au progresseur d'adresse qui l'augmente d'une unite, puis transmise successivement au second registre d'adresses et au registre de préparation de sélection, et ainsi de suite jusqu'à extraction complète des caractères constituant la dite quantité à traiter.
    4 ) Un système d'emmagasinage et de traitement de données selon 3 ), dans lequel un registre intermédiaire, d'une capacité de un caractère est établi en sortie de mémoire pour recevoir successivement tous les caractères extraits de la dite mé- moire, et est connecté, par l'intermédiaire de portes, d'une part à chaque registre d'adresse, d'autre part au dispositif décodifieur de l'unité de commande, les dites portes dtant contrôlées par l'unité de commande de façon qu'un caractère indicatif d'une opération à effectuer soit transmis au dit dispositif décodifieur, qu'un repère soit transais à l'un des registres d'adresses et qu'un caractère constitutif d'une quantité à traiter soit transmis à. un organe de trai- tement de quantités.
    5 ) Un système d'emmagasinage et de traitement de données selon 4 ), dans lequel un registre auxiliaire d'une capacité de un caractère est connecté par l'intermédiaire de portes, d'une part au registre intermédiaire, d'autre part à chaque <Desc/Clms Page number 68> registre dtadresse et à l'organe de traitement de quantités, lesdites portes étant contrôlées par l'unité de commande de façon que deux caractères participant comme opérandes à une opéra+ion de calcul, extraits de la mémoire et transmis respectivement au registre intermédiaire et au registre auxiliaire, soient transmis ensuit^ simultanément a l'organe de traitement, et que deux caractères constitutifs d'une adresse développée,
    extraits de la mémoire et transmis res- pectiveent au registre intermédiaire et au registre au- xiliaire, soient transmis simultanément à un des registres d'adresses.
    60) Un système d'emmagasinage et de traitement de données selon 5 ), dans lequel un troisième registre d'adresse d'une capa- cité de deux caractères est connecté par l'intermédiaire de portes, d'une part entre le processeur d'adresses et le registre de préparation de sélection, d'autre part au re- gistre intermédiaire et au registre auxiliaire, les dites portes étant contrôlées par l'unité de commande de façon que deux oaractères constitutifs d'une première adresse déve- loppée, extraits d'abord de la mémoire et transmis respec- tivement au registre intermédiaire et au registre auxi- liaire, soient transais simultanément au second registre d'adresse, que deux caractères constitutif s d'une deuxième adresse développée,
    extraits ensuite de la mémoire et trans- mis respectivement au registre intermédiaire et au registre auxiliaire, soient transmis simultanément au dit troisième registre d'adresse, que la dite première adresse développée, contenue alors dans le second registre d'adrenae, soit transmise au registre de préparation de sélection, puis aux moyens de sélection de la mémoire pour sélectionner <Desc/Clms Page number 69> un premier opérande, et que la dite deuxième adresse dévelop- pée, contenue dans le troisième registre d'adresse, soit transmise à son tour au registre de préparation de sélection, puis aux moyens de sélection de la uémoire pour sélectionner un second opérande, 7 ) Un système d'emmagasinage et de traitement de données selon 4 ), 5 ) ou 6 ),
    dans lequel les quantités à traiter enre- giotrées dans la mémoire sont séparées les unes des autres par des caractères spéciaux dénommés caractères "drapeaux", un caractère "drapeau" servant à arquer la séparation entre le dernier caractère d'une quantité et le premier caractère de la quantité suivante, et dans lequel un système de détec- tion, dénommé décodeur-détecteur de "drapeau" et placé sous le contrôle de l'unité de commande, est connecté au registre intermédiaire pour identifier chacun des caractères extraits de la mémoire et pour transmettre à l'unité de commande, en cas de détection d'un caractère "drapeau", une indication de modification do programme de façon à suspendre la commande du processus d'extraction des caractères suivants.
    8 ) Un système d'emmagasinage et de traitement de données selon 2 ), 3 ), 4 ), 5 ), 6 ) ou 7 ), dans lequel la mémoire est une mémoire à matrice tridimensionnelle constituée par des colonnes d'éléments de mémorisation pouvant Etre sélec- tionnées suivant un système de deux coordonnées rectangu- laires, chaque colonne constituant un emplacement de mémoire pour l'enregistrement d'un caractère, la sélection d'un emplacement se faisant sous le contrôle d'une adresse de deux caractères codés en binaires, l'un des dits caractères définissant la selection d'une abscisse et l'autre définis- sant la, sélection d'une ordonnée d'un emplacement. <Desc/Clms Page number 70>
    9 ) Un système d'emmagasinage et de traitement de données selon 8 ), dans lequel les emplacements successifs de la mémoire dont l'ordonnée est définie par la valeur de la constante enregistrée dans le registre de cons- tantes, contiennent chacun l'un des deux caractères oonstituant une adresse développée, tandis que les emplacements successifs dont l'ordonnée est définie par la valeur de la dite constante augmentée de une unité, continuent chacun l'autre caractère d'une adresse développée, l'un et l'autre caractères qui constituent une adresse développée étant respectivement enregistréa dans deux emplacements définis par une même valeur d'abscisse.
BE660817A 1964-03-17 1965-03-09 BE660817A (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BE660817A BE660817A (fr) 1964-03-17 1965-03-09

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR967652A FR1404464A (fr) 1964-03-17 1964-03-17 Système d'emmagasinage et de traitement de données
BE660817A BE660817A (fr) 1964-03-17 1965-03-09

Publications (1)

Publication Number Publication Date
BE660817A true BE660817A (fr) 1965-07-01

Family

ID=25656159

Family Applications (1)

Application Number Title Priority Date Filing Date
BE660817A BE660817A (fr) 1964-03-17 1965-03-09

Country Status (1)

Country Link
BE (1) BE660817A (fr)

Similar Documents

Publication Publication Date Title
CH616252A5 (fr)
EP0030504B1 (fr) Dispositif de synchronisation et d&#39;affectation de processus entre plusieurs processeurs dans un système de traitement de l&#39;information
FR2489578A1 (fr) Structure d&#39;organisation pour memoire tampon
EP0558125B1 (fr) Processeur neuronal à cellules synaptiques reparties
US3275991A (en) Memory system
EP0020202A1 (fr) Système multiprocesseur de traitement de signal
EP0150535A2 (fr) Processeur pour traiter des données en fonction d&#39;instructions provenant d&#39;une mémoire-programme
EP3503103A1 (fr) Système comportant une mémoire adaptée à mettre en oeuvre des opérations de calcul
FR3055992A1 (fr) Gestion d&#39;index dans une memoire flash
EP0006478A1 (fr) Dispositif programmable de verrouillage de signaux de commande dans un système de traitement de données
EP0515238B1 (fr) Dispositif et méthode pour la gestion de plusieurs files d&#39;attente indépendantes dans un espace mémoire commun et banalisé
FR2577096A1 (fr) Dispositif et procede de traitement d&#39;images
EP1175122A1 (fr) Dispositif de gestion de mémoire permettant l&#39;inscription de blocs de données par substitution
FR2637708A1 (fr) Dispositif pour le traitement de donnees
EP1803061A1 (fr) Systeme de processeur parallele reconfigurable, modulaire et hierarchique
BE660817A (fr)
EP3246820A1 (fr) Gestion du stockage dans une mémoire flash
FR2538928A1 (fr) Unite de traitement de donnees pourvue d&#39;une section de commande qui comporte un generateur d&#39;adresses destine a produire des adresses composees de parties d&#39;adresses caracteristiques
EP3215933B1 (fr) Procede et dispositif d&#39;architecture configurable a gros grains pour executer en integralite un code applicatif
EP0112427B1 (fr) Dispositif de commande logique programmable
EP0520572B1 (fr) Dispositif de traitement d&#39;informations
EP3246819B1 (fr) Compteur en mémoire flash
FR2508675A1 (fr) Procede et dispositif d&#39;ordonnancement, memoires de donnees comportant leur mise en oeuvre
WO2014195141A1 (fr) Accelerateur materiel pour la manipulation d&#39;arbres rouges et noirs
EP0337544A1 (fr) Procédé et unité de gestion de mots d&#39;adresse