DE1424737C - Programmgesteuerte elektronische Rechenanlage mit abgekürzter Datenadressierung - Google Patents

Programmgesteuerte elektronische Rechenanlage mit abgekürzter Datenadressierung

Info

Publication number
DE1424737C
DE1424737C DE1424737C DE 1424737 C DE1424737 C DE 1424737C DE 1424737 C DE1424737 C DE 1424737C
Authority
DE
Germany
Prior art keywords
address
command
register
operand
character
Prior art date
Legal status (The legal status 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 status listed.)
Expired
Application number
Other languages
English (en)
Inventor
Auf Nichtnennung Antrag
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Italia SpA
Original Assignee
Honeywell Information Systems Italia SpA
Publication date

Links

Description

Die Erfindung betrifft eine programmgesteuerte elektronische Rechenanlage, die von Befehlen gesteuert wird, die jeweils Operanden-Adressenangaben enthalten und bei der die für die Rechenoperationen zu bearbeitenden Operanden in einem Speicher gespeichert sind und jeweils durch eine aus mehreren nacheinander und in vorgegebener Reihenfolge auszulesenden Ziffern bestehende Adresse adressiert werden.
Es sind bereits verschiedene Rechenanlagen bekanntgeworden, die eine abgekürzte Adressierung vorsehen, die dadurch erreicht wird, daß statt der absoluten Adresse eine relative Adresse vorgegebener Länge verwendet wird.
Der Nachteil dieser relativen indirekten Adressierung liegt vor allem in der Beschränkung auf einen mitunter sehr begrenzten Adressenraum relativ zur Basisadresse und in der fest vorgegebenen Adressenlänge und damit auch der Befehls- bzw. Wortlänge, wodurch beispielsweise beim wiederholten Zugriff auf denselben Operanden in aufeinanderfolgenden Befehlen viel Speicherplatz nutzlos belegt wird.
Bekanntlich kann etwas Speicherraum auch dadurch eingespart werden, daß die Daten in Wörtern veränderlicher Länge entsprechend der größten voraussichtlichen Länge organisiert werden, jedoch weisen die einzelnen Befehle auch weiterhin eine feste Länge auf.
Es ist andererseits bekannt, Befehle zu verwenden, die jeweils entweder aus einem Wort fester Länge für die Steuerung der einfacheren Operationen oder aus zwei oder mehr Wörtern für die Steuerung der komplizierteren Operationen bestehen. Hierdurch kann weiterer Speicherraum eingespart werden, jedoch behält der einer gewissen Operationsart entsprechende Befehl weiterhin eine feste Länge.
Es ist schließlich bekannt, die Adresse in einigen Befehlen wegzulassen, so daß diese Befehle nur mehr noch aus dem Operationsteil bestehen, weiterer Speicherraum eingespart und die Bearbeitungszeit der Befehle gekürzt wird. Zu diesem Zweck versteht man unter der in einem zu bearbeitenden Befehl weggelassenen Adresse die Adresse desjenigen Operanden, der im Speicher neben dem Operanden des unmittelbar zuvor bearbeiteten Befehls Hegt, wobei diese Adresse von einem geeigneten Zählwerk geliefert wird. Die Möglichkeit, Adressen wegzulassen, beschränkt sich daher auf den Fall, daß mehrere nebeneinanderliegende Operanden zu bearbeiten sind. Wenn dagegen mehrere im Speicher nicht nebeneinanderliegende Operanden zu bearbeiten sind, muß die Adresse der Operanden jeweils ausgedrückt werden.
Der Erfindung liegt dementsprechend die Aufgabe zugrunde, die vorstehend beschriebenen Nachteile der Adressierung in den bekannten Rechenanlagen zu beseitigen und einen Rechner zu schaffen, dessen Befehle möglichst wenig Speicherplatz belegen, d. Ii. möglichst kurz und damit in ihrer Wortlänge also nicht festgelegt sind, ohne dabei jedoch den ;i!)r;olttt freien und flexiblen Zugriff zum gesamten Arbeitsspeicher einzuschränken.
Zur Lösung dieser Aufgabe wird erftndungsgemäß vorgeschlagen, daß der Adressenteil in jedem Befehl die Ziffern der Adresse des entsprechenden Operanden nur bis einschließlich der letzten Ziffer in der jeweiligen Ziffcrnfolge enthält, die sich von der entsprechenden Ziffer in der Adresse des unmittelbar zuvor adressierten Operanden unterscheidet, und die Adresse des Operanden jeweils durch die weiteren und übereinstimmenden Ziffern der Adresse des unmittelbar zuvor adressierten Operanden vervollständigt wird.
Nach einer vorteilhaften Ausgestaltung der Erfindung ist vorgesehen, daß der Adressenteil eines jeden Befehls den Inhalt eines die Adresse des zuvor adressierten Operanden enthaltenden Hilfs-Adressenregisters abändert, und daß der somit abgeänderte Inhalt bis zum nächsten Befehl im Hilfs-Adressenregister stehenbleibt und außerdem in das Adressenregister als Adresse für den dem gegenwärtigen Befehl entsprechenden Operanden übertragen wird. Dazu wird beim Lesen eines der letzten Befehlsadressenziffer zugeordneten Befehlsendsignals die Ersetzung der entsprechenden Stellen des Hilfs-Adressenregisters unterbrochen und der Inhalt des Hilfs-Adressenregisters in das Adressenregister übertragen.
Die Vorteile der Rechenanlage gemäß der Erfindung liegen vor allem in einer optimalen und flexiblen Ausnutzung des verfügbaren Speicherplatzes, auf den, wie im Falle der absoluten Adressierung, beliebig und direkt zugegriffen werden kann,
as ohne daß er mit repetitiven Adressenteilen sinnlos belegt zu werden braucht.
Ein Ausführungsbeispiel der Erfindung ist im folgenden an Hand der Zeichnungen beschrieben. Es zeigt
Fig. 1 eine schematische Darstellung einer Sequenzmatrix der Rechenanlage,
Fig. 2a und 2b eine schematische Darstellung eines Teils der Rechenanlage und
Fig. 3 die Art der Zusammensetzung der Fig. 2a und 2 b.
In den Figuren stellen die schwach gezeichneten Linien Kanäle dar, die jeweils ein Bit übertragen, die stärker gezeichneten Linien Kanäle, in denen vier Bits parallel übertragen werden, während die doppelt gezeichneten Linien Kanäle bedeuten, in denen fünf Zeichen parallel übertragen werden.
Die Befehle eines Programmes bzw. die Daten und Operanden, die nach dem Programm abzuarbeiten sind, werden in einem beliebig zugänglichen Speieher M gespeichert. Dieser Speicher enthält 105 Plätze, die einzeln adressierbar sind mittels einer Adresse, die aus fünf Dezimalziffern besteht und je ein weiteres Zeichen enthalten kann.
In einer besonderen Ausführungsform für numerische Zeichen enthält der Speicher M vier Matrizen zu je 105 Magnetkernen, so daß jedem Speicherplatz vier Kerne zugeordnet sind, also einen Kern je Matrix, die insgesamt die vier ein Zahlzeichen bildenden Bits enthalten.
Außerdem enthält der Speicher M noch eine ebenfalls aus 10r> Magnetkernen bestehende Hilfsmatrix, so daß jedem Platz ein Hilfskern zugeordnet ist, der gegebenenfalls das Wortendbit enthalten kann. Das Vorkommen eines solchen Wortendbits wird später durch Unterstreichung des zugeordneten Zeichens angegeben.
Ein Befehl ist in seiner allgemeinen Form vom Typ FFTIIIIL d. h., er besteht aus acht Zeichen, und zwar aus
I. zwei Funktionszeichen F, die insgesamt die auszuführende Operation darstellen;
2. einem Zeichen T1 das die Adresse eines von mehreren Adressenveränderungsregistern angibt
3 4
(die Funktion solcher Register ist z. B. aus der beispielsweise auf der Zeile 52 die Magnetkerne 1, USA.-Patentschrift 3 012 724 bekannt); wenn 2, 3, 4, 5, 6, die den Spalten Ll, L 2, L 7, L 9, L 98 dieses Zeichen ein X ist, wird kein Verände- bzw. L 99 zugeordnet sind. Jeder Magnetkern ist rungsregister ausgewählt, es findet also auch mit dem für alle Magnetkerne der Zeile gemeinsamen keine Veränderung statt; 5 Auswähldraht sowie mit dem für alle Magnetkerne
3. fünf Zeichen /, die insgesamt eine fünfstellige der Spalte gemeinsamen Auswähldraht verkettet. Dezimalzahl bilden, deren Ziffern in wachsender Alle Magnetkerne sind mit einem ständig erregten, Dezimalordnung von links nach rechts ange- an sich bekannten und in der Zeichnung nicht darordnet sind und die die absolute Adresse des gestellten Polarisierdraht verkettet, der bezweckt, die Operanden angeben, auf den sich der Befehl io Magnetkerne im »0«- oder Ruhezustand zu halten, bezieht. Außerdem sind einige Magnetkerne mit bestimmten ·
Bei der abgekürzten absoluten Adresse eines Ope- Bedingungsdrähten, die wahlweise durch ein Bedinranden kann man eine bestimmte Anzahl von eines gungsregister RC erregt werden, verkettet. So z. B. bis fünf nebeneinanderliegenden Zeichen, ausgehend sind die Magnetkerne 1, 5, 7 mit einem Bedingungsvon der höchstwertigen Stelle, weglassen. Die weg- 15 draht Kl und die Magnetkernes, 8, 4 und ebenfalls gelassenen Zeichen sind den entsprechenden Zeichen 5 mit einem Bedingungsdraht K2 verbunden. Über der effektiven absoluten Adresse des zuvor adressier- die Leitungen 9 erhält das Bedingungsregister RC ten Operanden gleich. Die Länge der abgekürzten aus den verschiedenen Schaltorganen der Rechenabsoluten Adresse eines Befehls kann also je nach anlage Bedingungssignale, die das Vorkommen beden Umständen fünf bis null Zeichen betragen, d. h., 20 stimmter Bedingungen in den betreffenden Einheiten daß ein Befehl auch bis auf die Form FFT verkürzt anzeigen. Jedes im Register RC staticisierte Bedinwerdert kann, wenn eine neue Operation FF mit dem gungssignal ruft die Erregung eines Bedingungsdrahgerade zuvor adressierten Operanden ausgeführt tes der Matrix MLS hervor.
werden soll. Außerdem sind einige Magnetkerne, wie z. B. der
Es sollen z. B. zwei Operationen F1F1 und F2F., 25 Kern 5, verschiedenen Bedingungen unterworfen; mit den unter den Adressen 32479 bzw. 32284 er- diese können hinsichtlich ihrer Wirkung auf den mittelten Operanden hintereinander ausgeführt wer- Kern gemäß den logischen Funktionen »ODER« den. Der sich auf diese zwei Operationen beziehende oder »UND« kombiniert sein.
Programmteil kann im Speicher M in verkürzter Im folgenden wird ein Signal, z. B. ein Bedin-
Form 30 gungssignal, durch ein Symbol, bestehend aus einem
F1F,A'97423F.!/;'.>A'482 oder mehreren Zeichen, bezeichnet, wobei diesem
Symbol ein Apostroph hinzugefügt wird, um das
oder auch nach. Belieben in der ungekürzten Form entgegengesetzte Signal zu bezeichnen, d. h. das bei F F X9TA23F F ΛΓ48223 Unterbrechung des ersten Signals eintretende Signal.
11 -22 - 35 Dig Zeilen der Matrix MLS werden nacheinander
gespeichert werden. von einem Wähler SS ausgewählt, der durch ein Zu-
Die Maschine arbeitet ein Zeichen nach dem an- Standsregister SR kontrolliert wird. Dieses Register deren ab; ihre Arbeitsweise umfaßt eine Folge von kann die aus acht Bits bestehende Adresse von einer Phasen, die die gegebenen Befehle deuten und durch- der 256 (=28) Zeilen der Matrix MLS enthalten, führen. 4» Ein Zeitsignalgenerator T (Taktgeber) von bei-
In der Auslegungsphase eines Befehls werden die spielsweise gleichbleibender Frequenz erzeugt den Zeichen des Befehls nacheinander aus dem Speicher Grundtakt der Maschine. Zu diesem Zweck liefert gelesen und gedeutet. er dem Wähter SS ein Zeitsignal, das bei Ubertra-
Die Entnahme eines dem letzten Zeichen des Be- gung eines Abfrageimpulses an den Auswahldraht fehls zugeordneten Wortendbits aus dem Speicher 45 der in der Matrix MLS augenblicklich gewählten bewirkt den Übergang zur Durchführungsphase, Zeile veranlaßt. Folglich werden alle nicht mit Bewährend welcher der im Befehl angegebene Operand dingungsdrähten verketteten Magnetkerne der Zeile zeichenweise aus dem Speicher gelesen und bearbei- auf den Zustand »L« umgeschaltet und liefern so tet wird. Das Lesen eines dem letzten Zeichen des einen Impuls an den entsprechenden Lesedraht. Operanden zugeordneten Wortendbits aus dem Spei- 50 Die mit Bedingungsdrähten verbundenen Kerne eher bewirkt den Übergang zur Auslegungsphase des werden nur dann umgeschaltet, wenn entweder sämtnächstfolgenden Befehls usw. Dieser nächstfolgende liehe Drähte erregt sind, falls die Bedingungen darin Befehl ist in bekannter Weise angegeben: Es kann gemäß der logischen Funktion »UND« kombiniert sich dabei sowohl um den auf dem angrenzenden sind, oder wenn wenigstens ein Draht erregt ist, falls Speicherplatz gespeicherten Befehl als auch um einen 55 die Bedingungen darin gemäß der logischen Funkdurch Sprung zu erreichenden Befehl handeln. tion »ODER« kombiniert sind.
Jede der Phasen ist in eine veränderliche Anzahl . Infolge der Sendung des Abfrageimpulses werden von Elementarschritten eingeteilt, während der be- daher die Lesedrähte LO ... L 99 von ebenso vielen stimmte Elementaroperationen gemäß bestimmter, Binärsignalen vom Wert »L« oder »0«, je nachdem später erläuterter Mikrobefehle ausgeführt werden. 60 ob sie von umgeschalteten oder nicht umgeschalteten Das Aufeinanderfolgen dieser Grundschritte wird Kernen kommen, durchlaufen. Nach Unterbrechung von einer logischen Sequenzmatrix MLS gesteuert. des Abfrageimpulses werden alle Kerne durch den
Diese Sequenzmatrix besteht aus 256 Zeilen und Polarisierdraht auf den Ruhezustand »0« zuriiek-100 Spalten, denen ebenso viele Auswähldrähte gesetzt.
Sl ... 5256 bzw. ebenso viele Lesedrähte LO ... 65 Die Signale der ersten acht Spalten LO ... L7 L 99 zugeordnet sind. stellen die Adresse der nächsten auszuwählenden
Auf jeder Zeile befinden sich in den Knotenpunk- Zeile der Matrix MLS dar und werden im Register ten mit bestimmten Spalten bistabile Magnetkerne, SR staticisiert. Die Signale der übrigen Spalten
L 8 ... L 99 bilden ebenso viele Steuerbefehle für die verschiedenen Schaltungen der Rechenanlage und werden in einem Steuerbefehlstaticisator SC bis zum nächsten Zeitimpuls staticisiert. Die durch die Abfrage einer bestimmten Zeile der Matrix MSL erhaltenen Signale bleiben also von dem Zeitimpuls an, zu dem die Abfrage durchgeführt wurde, bis zum nächsten Zeitimpuls statisch verfügbar. In dieser Zeitspanne befindet sich die Matrix MLS in einem bestimmten »Zustand« der der genannten Zeile entspricht. Auf diese Weise durchläuft die Matrix eine Sequenz von Zuständen.
Die auf den Spalten LQ ... Ll erhaltenen Signale bestimmen das Aufeinanderfolgen der Zustände, insofern bei gegebenem gegenwärtigen Zustand, d. h. bei gegebener gegenwärtig ausgewählter Zeile und bei gegebenen im Register RC staticisierten Bedingungen, eine bestimmte Kombination von Signalen auf den genannten Spalten erhalten und damit eine bestimmte Zeile als zukünftiger Zustand ausgewählt wird. Mit anderen Worten bestimmt jeder Zustand selbsttätig einen oder mehrere zukünftige Zustände, wobei im zweiten Fall die Auswahl zwischen den Zuständen durch die gegenwärtig im Register RC staticisierten Bedingungen bestimmt wird.
Ähnlicherweise entspricht oder entsprechen jedem Zustand eine bzw. mehrere Kombinationen von Steuerbefehlen auf den Spalten L 8 ... L 99, wobei im zweiten Fall die Auswahl zwischen den Kombinationen von den im Register RD gegenwärtig staticisierten Bedingungen bestimmt wird.
Jede dieser Kombinationen von Steuerbefehlen auf den Drähten L 8 ... L 99 wird insgesamt als Mikrobefehl bezeichnet. Während jedes Zustandes wird ein gewisser Mikrobefehl, der vom gegenwärtigen Zustand und den gegenwärtigen Bedingungen bestimmt wird, im Staticisator SC staticisiert.
Daraus ergibt sich für den Betrieb eine Folge von Mikrobefehlen, die die Rechenanlage steuern.
Ferner ist zu beachten, daß die Matrix MLS den Schaltungen der Maschine Steuerbefehle erteilt und von ihnen auch Bedingungen erhält.
Die Rechenanlage enthält weiterhin ein 5stelliges aktuelles Adressenregister W mit den Stellen U für die Einer, D für die Zehner, C für die Hunderter, M für die Tausender und DM für die Zehntausender. Das Register W kann daher eine aus fünf Dezimalziffern gebildete Zahl enthalten, die eine effektive absolute Speicheradresse darstellt. Jedesmal, wenn das Register W eine bestimmte Adresse enthält, wird über einen Adresscncodierer AD ein bestimmter Speicherplatz zum Lesen bzw. Schreiben ausgewählt.
Ein an den Speicher M gegebener Steuerbefehl ClO veranlaßt das Lesen des auf dem augenblicklich adressierten Speicherplatz stehenden Zeichens und seine Weitergabe an einen Ausgangsdraht 10. Ein an den Speicher gegebener Steuerbefehl CIl veranlaßt das Schreiben eines auf dem Eingangsdraht 11 einlaufenden Zeichens auf den augenblicklich adressierten Speicherplatz. Die Art, in der die Steuerbefehle auf die verschiedenen Schaltungen einwirken, ist an sich bekannt und daher nicht näher beschrieben.
Dem ,Register W sind sechzehn Hilfs-AdrcsscnregisterJ1 ... 716 zugeordnet, die jeweils entsprechend dem Register W fünf Stellen enthalten. Im Register/l wird (Ik- Adresse des einzelnen zunächst auszuwählenden Hcl'elils/.eichens festgehalten. Im Register 72 wird die clTcklivc Adresse des /ulcl/t ausgewählten Operanden festgehalten. Die Funktion der weiteren Register braucht hier nicht erläutert zu werden.
Ein Hilfsregisterwähler SRA dient dazu, eines der sechzehn Hilfsregister unter Steuerung der Steuerbefehle C 20, C 21, C 22, C 23 zum Lesen oder Schreiben auszuwählen. Jede der sechzehn möglichen Kombinationen dieser vier Steuerbefehle veranlaßt das Auswählen eines der Hilfsregister. ίο Der Inhalt -des ausgewählten Hilfsregisters wird unter Steuerung des Steuerbefehls C19, der ein Verknüpfungsglied 19 öffnet, parallel in das Register W übertragen.
Der Inhalt des Registers W wird unter Steuerung eines Steuerbefehls C29, der ein Verknüpfungsglied 29 öffnet, parallel in das gewählte Hilfsregister übertragen.
Unter Steuerung eines Steuerbefehls C30, der ein Verknüpfungsglied 30 öffnet, wird der Inhalt des so Registers W, der eine 5stellige Dezimalzahl darstellt, dagegen an ein Schaltnetz ADD weitergegeben, in dem er um eine Dezimal-Einheit erhöht wird, bevor er in das gewählte Hilfsregister übertragen wird.
Ein erstes Funktionsregister RFl erhält aus dem Speicher M das erste Funktionszeichen eines jeden Befehls, wenn ein Steuerbefehl C15 ein Verknüpfungsglied 15 öffnet.
Ein zweites Funktionsregister RF2 erhält aus dem Speicher M das zweite Funktionszeichen eines jeden Befehls, wenn ein Steuerbefehl C16 ein Verknüpfungsglied 16 öffnet. Ein Zeichenregister RA erhält aus dem Speicher M ein Zeichen, wenn ein Steuerbefehl C13 ein Verknüpfungsglied 13 öffnet, und gibt es an den Speicher zurück, wenn ein Steuerbefehl C18 ein Verknüpfungsglied 18 öffnet. Das im Register RA enthaltene Zeichen wird außerdem in das augenblicklich gewählte Hilfsregister übertragen, wenn einer der Steuerbefehle C24, C25, C26, C 27 bzw. C 28 jeweils das zugeordnete Verknüpfungsglied 24, 25, 26, 27 bzw. 28 öffnet, wodurch eine Stelle des Hilfsregisters ausgewählt und somit das im Register RA enthaltene Zeichen unter der Wirkung des Steuerbefehls C24, C25, C26, C27 . bzw. C 28 in die Stelle U, D, C, M bzw. DM des ( Hilfsregisters übertragen wird.
Das Register RA dient außerdem als Pufferspeicher für die Eingabe und Ausgabe jedes einzelnen Zeichens über die Eingabeeinheit (ΟΙ) bzw. die Ausgabeeinheit (OU).
Ein mit acht Ausgängen PO, Pl, P2, P3, P4, P5, P6, P7 versehener Zeichenzähler CC wird durch ein Steuerbefehl C 44 jeweils um einen Schritt fortgeschaltet, so daß er seine Ausgänge nacheinander erregt. Die auf den Ausgängen PO bis P7 vorhandenen Signale bilden ebenso viele Bedingungen für die Matrix MLS.
Die Rechenanlage enthält außerdem ein an sich bekanntes Rechenwerk UA, das mit dem Speicher M und dem Register RA in Verbindung steht. Die Arbeitsweise der Rechenanlage wird jetzt an Hand der Auslcgungsphase eines Befehls FFXIL erläutert.
Zu Beginn befindet sich der Zeichenzähler CC in dem später erläuterten Zustand, in dem der Ausgang . PO erregt ist. Die Matrix MLS befindet sich im Zustand »0«. in dem im StaticisatorSC die Steuerbefehle C19 (Übertragung vom augenblicklich eewähllen Register J auf das Register W) und C40
7 8
(Auswahl des Registers J) vorhanden sind. Außer- vorhanden sind, sowie der Steuerbefehl C16
dem weist die Kombination der Steuerbefehle C20, (Schreiben in das Register RF2), der auf die gegen-
C21, C22, C23 den Hilfsregisterwähler SRA ari, das wärtig vorhandene Bedingung Pl eingestellt ist. Dar-
Register/1 auszuwählen. In diesem Zustand ergibt aus ergibt sich der Mikrobefehl:
sich daher der Mikrobefehl Ȇbertragung des Inhalts 5
des Hilfsregisters/1 in das Adressenregister W«, >>M RA; M Rb2; W + l- —yi«,
was wie folgt zusammengefaßt werden kann: durch welchen das zweite Zeichen des Befehls, d. h.
das augenblicklich gewählte Zeichen, außer ins Re-
»/1 W«. gister RA auch Jn das Register Rprj als zweites
Hierbei ist zu beachten, daß, wie später erläutert io Funktionszeichen geschrieben wird; außerdem wird
wird, das Register/1 schon die effektive absolute seine um eine Einheit erhöhte Adresse wieder in das
Adresse des ersten Zeichens des auszulegenden Be- Register /1 geschrieben, das somit die Adresse des
fehls enthält. vierten Zeichens des Befehls enthält.
Weiterhin veranlaßt die Kombination der Steuer- Ein dem Register RA zugeordneter Codierer DA
befehle CO .... Cl das Schreiben der Zeile 17 in das 15 erkennt darin die Anwesenheit des Zeichens »X«
Zustandsregister SR. und zeigt dies durch ein Bedingungssignal DT an.
Nach der Übertragung »/1 geht daher die Es folgt dann der Zustand 30, in dem sich wie zuMatrix MLS in den Zustand 17 über. In diesem sind vor der Mikrobefehl
die Steuerbefehle C10 (Lesen des Speichers), C13 »RA M<
(Schreiben in das Register RA), ClS (Schreiben in 20
das Register RFl), C 30 (Übertragung vom Regi- ergibt, wodurch dieses Zeichen im Speicher regenester W in das Hilfsregister über das Schaltnetz ADD) riert wird. Die Steuerbefehle, die in diesem Zustand vorhanden. Außerdem wird durch die Steuerbefehle den zukünftigen Zustand bestimmen, sind den Be-C 20, C21, C22, C23 das Hilfsregister J1 weiterhin dingungen DT und P 2 untergeordnet. Wenn beim ausgewählt. Daraus ergibt sich der Mikrobefehl 35 Eintreten der BedingungP2 (d.h. bei der Bearbei- »Lesen des augenblicklich im Speicher M gewählten tung des dritten Zeichens des Befehls) auch die BeZeichens; Schreiben desselben in die Register/?^ dingung DJ eintritt (d.h., wenn das dritte Zeichen und RFl; daraufhin Schreiben der aktuellen Adresse nicht »X« ist, sondern eine wirkliche Adresse des nach Erhöhung um eine Einheit in das Register/1«, Veränderungsregisters), so tritt vom Zustand 30 an d. h. in zusammengefaßter Form: 30 eine Sequenz von Zuständen ein, die die Verände-
»,/ D> λ, Djri h/j_i j λ runS des Befehls verursacht. Im gegenwärtigen Fall
-,-,M-RA; M- — RF1; W+ 1—71«. dagegen ^n durch Ausbleiben der BedingungDT
Auf diese Weise wird das erste Zeichen des Be- als nächster Zustand der Zustand 8 ein, in dem sich fehls in das erste Funktionsregister RF1 übertragen; wiederum der Mikrobefehl
außerdem enthält das Register/1 die Adresse des 35
zweiten Zeichens des Befehls. »/1 — W; zahlen«
Außerdem veranlassen die Steuerbefehle CO ... ergibt, so daß das vierte Zeichen des Befehls adres- Cl als nächsten Zustand den Zustand 30, in welchem siert wird, während der Zeichenzähler um einen die Steuerbefehle CIl (Schreiben in den Speicher) Schritt fortgeschaltet wird und so die Bedingung P 3 und C18 (Übertragung aus dem Register RA in den 4° hervorruft. Es folgt der Zustand 16, in dem sich wie Speicher) vorhanden sind. Der Steuerbefehl 40 (Aus- vorher der Mikrobefehl
wählen von Hilfsregistern) bleibt aus, weil der Magnetkern der dreißigsten Zeile und der vierzigsten »M RA; W + l /1«
Spalte gemäß der logischen Funktion »UND« den
gegenwärtig nicht vorhandenen Bedingungen PO' 45 ergibt, so daß das vierte Zeichen aus dem Speicher
und P V untergeordnet ist. gelesen und in das Register RA geschrieben wird,
Daraus ergibt sich der Mikrobefehl »Schreiben des während seine um eine Einheit erhöhte Adresse wieim Register RA enthaltenen Zeichens in den Spei- der ins Register/1 geschrieben wird. Es folgt der eher«, d. h. in zusammengefaßter Form: Zustand 30, in dem außer den Steuerbefehlen C11
. 5° und C18 des vorhergehenden Zustands 30, der
»KA M«, Steuerbefehl C40 (Auswahl des Hilfsregisters), be-
so daß das erste Zeichen des Befehls nochmals auf dingt durch das Vorhandensein beider Bedingungen den betreffenden Speicherplatz geschrieben und da- PO und Pl, und C 24 (Auswahl der Einerstelle im mit regeneriert wird. Daraufhin folgt der Zustand 8, gegenwärtig gewählten Hilfsregister), bedingt durch bei dem die Steuerbefehle C19, C 40 und C 44 an- 55 die jetzt vorhandene Bedingung P 3, auftreten, wesend sind, wovon der letztere den Zeichenzähler Außerdem veranlaßt die Kombination von Steuer- CC um einen Schritt fortschaltet. befehlen C 20, C 21, C 22, C 23 das Auswählen des
Außerdem veranlassen die Steuerbefehle C 20, Registers / 2. Es ergibt sich der Mikrobefehl
C21, C22, C23 das Auswählen des Registers/1.
Es ergibt sich daraus der Mikrobefehl: 60 »RA M; RA /2 Einer«,
»Jl — W; zählen«. wodurch das vierte Zeichen des Befehls, d.h. das
Es wird jetzt das zweite Zeichen des Befehls adres- erste Zeichen der expliciten Adresse nicht nur im
siert, während der Zeichenzähler um einen Schritt Speicher regeneriert, sondern auch in die Einerstelle
fortgeschaltet wird und durch Erregung des Aus- 65 des Hilfsregisters/2 geschrieben und damit dem bis
gangs Pl die Bedingung Pl hervorruft. dahin dort stehenden Zeichen überschrieben wird.
Es folgt nun der Zustand 16, in dem die sämtlich Es folgt der Zustande, in dem sich wiederum der
nicht bedingten Steuerbefehle ClO, C13, C30, C40 Mikrobefehl
»71 W; zähle«
ergibt, wodurch das fünfte Zeichen des Befehls adressiert wird, während der Zeichenzähler um einen Schritt fortgeschaltet wird und so die Bedingung P 4 hervorruft. Es folgt der Zustand 16, in dem sich wie vorher der Mikrobefehl
»M RA; W+\ 71«
ergibt, so daß das fünfte Zeichen aus dem Speicher gelesen und in das Register RA geschrieben wird, während seine um eine Einheit erhöhte Adresse wieder in das Register 71 geschrieben wird. Zusammen mit dem fünften Zeichen wird das ihm zugeordnete Wortendbit aus dem Speicher gelesen, das nach Staticierung im Flipflop jA die Bedingung jA setzt. Es folgt der Zustand 30, in dem die Steuerbefehle CIl, C18, C 40, C 25 auftreten, von denen der letztere, durch die jetzt vorhandene Bedingung P 4 bedingt, die Zehncrstelle des gegenwärtig gewählten Hilfsregisters auswählt. Die Kombination der Steuerbefehle C 20, C 21, C 22, C 23 ist außerdem so, daß das Register 72 gewählt wird. Es ergibt sich daraus der Mikrobefehl
»RA M; RA -— 72 Zehner«,
wodurch das fünfte Zeichen des Befehls, d. h. das zweite Zeichen der expliciten Adresse, nicht nur im Speicher regeneriert, sondern auch in die Zehnerstelle des Registers 72 geschrieben und damit dem bis dahin dort stehenden Zeichen überschrieben wird. Außerdem bestimmt die jetzt gesetzte Bedingung JA dadurch, daß sie auf die Magnetkerne der ersten acht Spalten der Zeile 530 der Matrix MLS wirkt, als Adresse des zukünftigen Zustandes die Adresse der Zeile 540 statt jene der Zeile 518 wie zuvor. Es folgt der Zustand 40, in dem die Steuerbefehle C19 und C40 vorhanden sind, während die Kombination der Steuerbefehle C20, C21, C22, C23 das Register 72 auswählt. Es ergibt sich der Mikrobefehl
»72 W«,
wodurch der gesamte Inhalt des Registers 72 ins gegenwärtige Adressenregister W übertragen wird, um die effektive absolute Adresse des ersten Zeichens des Operanden zu bilden, der somit adressiert wird.
Damit endet die Auslegungsphase des in Betracht gezogenen Befehls, und es beginnt die an sich bekannte Ausführungsphase. Im Zustand 40 erscheint auch ein allgemeiner Löschungs-Stcuerbefehl, der unter anderen den Zeichenzähler in die Stellung PO zurückstellt.
Es geht daraus hervor, daß die effektive absolute Adresse des ersten Zeichens des Operanden in ihren zwei unteren Dezimalstellen die zwei entsprechenden Ziffern der im Befehl explicit ausgedrückten Adresse und in den drei übrigen Dezimalstellen die Ziffern, die sich bereits in den entsprechenden Stellen des Registers 72 vom Ende der Auslegungsphase des vorherigen Befehls an befanden, enthält. Wie bereits beschrieben, wird im zuletzt in Betracht gezogenen Zustand 16 die um eine Einheit erhöhte Adresse des fünften Zeichens des Befehls wieder in das Register 71 geschrieben. Vorausgesetzt, daß sich die nächstfolgenden Befehle des Programms wie üblich in danebenliegenden Bereichen des Speichers befinden, wird daher automatisch im Register 71 die Adresse des nächsten Befehls, die in der entsprechenden Auslegungsphase ausgenutzt wird, erhalten.
Es ist selbstverständlich, daß in der Rechenanlage gemäß der Erfindung das Wortendbit auch durch ein anderes Wortendzeichen ersetzt werden kann, z. B. durch ein Spezialzeichen, das zwischen nebeneinanderliegen'den Wörtern, insbesondere nebeneinanderliegenden Befehlen, gesetzt ist.

Claims (5)

Patentansprüche:
1. Programmgesteuerte elektronische Rechenanlage, die von Befehlen gesteuert wird, die jeweils Operanden-Adressenangaben enthalten und bei der die für die Rechenoperationen zu. bearbeitenden Operanden in einem Speicher gespeichert sind und jeweils durch eine aus mehreren nacheinander und in vorgegebener Reihenfolge auszulesenden Ziffern bestehende Adresse adressiert werden, dadurch gekennzeichnet, daß der Adressenteil in jedem Befehl die Ziffern der Adresse des entsprechenden Operanden nur bis einschließlich der letzten Ziffer in der jeweiligen Ziffernfolge enthält, die sich von der entsprechenden Ziffer in der Adresse des unmittelbar zuvor adressierten Operanden unterscheidet, und die Adresse des Operanden jeweils durch die weiteren und übereinstimmenden Ziffern der Adresse des unmittelbar zuvor adressierten Operanden vervollständigt wird.
2. Rechenanlage nach Anspruch 1, dadurch gekennzeichnet, daß der Adressenteil eines jeden Befehls den Inhalt eines die Adresse des zuvor adressierten Operanden enthaltenden Hilfs-Adressenregisters (72) abändert, und daß der somit abgeänderte Inhalt bis zum nächsten Befehl im Hilfs-Adressenregister (72) behalten und außerdem auf das Adressenregister (W) als Adresse für den dem gegenwärtigen Befehl entsprechenden Operanden übertragen wird.
3. Rechenanlage nach Anspruch 2, dadurch gekennzeichnet, daß beim Lesen eines der letzten Befehlsadressenziffer zugeordneten Befehlsendsignals die Ersetzung der entsprechenden Stellen des Hilfs-Adressenregisters (72) unterbrochen und der Inhalt des Hilfs-Adressenregisters in das Adressenregister übertragen wird.
4. Rechenanlage nach Anspruch 3, dadurch gekennzeichnet, daß das Befehlsendsignal aus einem der letzten Befehlsadressenziffer zugeordneten Bit besteht.
5. Rechenanlage nach Anspruch 3, dadurch gekennzeichnet, daß das Befehlsendsignal aus einem besonderen Zeichen besteht, das der letzten Befehlsadressenziffer folgt.
Hierzu 1 Blatt Zeichnungen

Family

ID=

Similar Documents

Publication Publication Date Title
DE2350225C2 (de)
DE60132585T2 (de) Vorrichtung und verfahren zum ausgeben der gruppierung von befehlen in einem vliw-prozessor
DE1931966C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2339636C2 (de) Einrichtung zur Adressierung eines schreibbaren Mikroprogrammspeichers
DE2751097A1 (de) Triggerschaltungseinheit
CH650600A5 (de) Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister.
DE2130299A1 (de) Eingabe/Ausgabe-Kanal fuer Datenverarbeitungsanlagen
DE3689389T2 (de) Datenverarbeitungsprozessor.
EP0010186B1 (de) Vorrichtung zum Bearbeiten bezeichneter Hinweise
DE2318069A1 (de) Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix
DE2718110A1 (de) Datenverarbeitungseinheit
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE1190706B (de) In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE2245284A1 (de) Datenverarbeitungsanlage
DE2311503A1 (de) Datenverarbeitungsanlage mit mehreren zentraleinheiten
DE2403669C3 (de) SpezialComputer
DE2235883C3 (de) Datenverarbeitungseinrichtung
CH495584A (de) Datenverarbeitungsanlage
DE2233164C3 (de) Schaltungsanordnung zur Übertragung von aufeinanderfolgenden Bitstellen zwischen zwei Registern
DE1424737C (de) Programmgesteuerte elektronische Rechenanlage mit abgekürzter Datenadressierung
DE2057587A1 (de) Inhaltsadressierter Speicher
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE1474090B2 (de) Datenverarbeitungsanlage