DE1171650B - Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung - Google Patents

Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung

Info

Publication number
DE1171650B
DE1171650B DEJ18712A DEJ0018712A DE1171650B DE 1171650 B DE1171650 B DE 1171650B DE J18712 A DEJ18712 A DE J18712A DE J0018712 A DEJ0018712 A DE J0018712A DE 1171650 B DE1171650 B DE 1171650B
Authority
DE
Germany
Prior art keywords
digit
storage unit
address
register
mar
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.)
Pending
Application number
DEJ18712A
Other languages
English (en)
Inventor
William Horton Rhodes
James Gerald Brenza
Wayne David Winger
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1171650B publication Critical patent/DE1171650B/de
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/491Computations with decimal numbers radix 12 or 20.
    • G06F7/492Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination
    • G06F7/493Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination the representation being the natural binary coded representation, i.e. 8421-code
    • G06F7/494Adding; Subtracting
    • G06F7/495Adding; Subtracting in digit-serial fashion, i.e. having a single digit-handling circuit treating all denominations after each other

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)
  • Complex Calculations (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Manufacture Of Macromolecular Shaped Articles (AREA)
  • Polyesters Or Polycarbonates (AREA)

Description

BUNDESREPUBLIK DEUTSCHLAND
DEUTSCHES
PATENTAMT
AUSLEGESCHRIFT
Internat. Kl.: G06f
Deutsche Kl.: 42 m -14
Nummer: 1171650
Aktenzeichen: J 18712IX c / 42 m
Anmeldetag: 14. September 1960
Auslegetag: 4. Juni 1964
Programmgesteuerte datenverarbeitende Maschinen, insbesondere elektronische Rechenmaschinen, weisen als wesentliche Maschinenbestandteile ein Programmwerk, ein Hauptspeicherwerk, ein Rechenwerk mit speichernden Pufferregistern und gegebenenfalls ein Hilfsspeicherwerk geringerer Kapazität auf.
Es ist bei derartigen datenverarbeitenden Maschinen bekannt, die Informationswörter, welche aus einer unterschiedlichen Anzahl Zeichen bestehen können, im Hauptspeicherwerk so mit unterschiedlicher Stellenzahl zu speichern, daß jede durch eine Adresse charakterisierte Speicherstelle eine unterschiedliche Anzahl Zeichenstellen umfaßt.
Eine Kategorie datenverarbeitender Maschinen bilden serienmäßig die Daten verarbeitenden Maschinen, bei denen die Grundrechenoperationen in der Weise erfolgen, daß die beiden Operanden aus dem Hauptspeicherwerk vollständig in das Hilfsspeicherwerk übergeführt werden und dann aus dem Hilfsspeicherwerk Ziffernwerte gleicher Stellennummer zwecks rechnerischer Verarbeitung dem Rechenwerk einzeln zugeführt werden und das Gesamtresultat der die beiden Operanden betreffenden Rechenoperation serienmäßig aus den Teilresultaten der Rechenoperationen der einzelnen Ziffernstellen aufgebaut wird.
Eine derartige serienmäßig die Informationsdaten verarbeitende Maschine ist apparaturmäßig einfacher als eine parallel die Daten verarbeitende Maschine, in deren Rechenwerk sämtliche Ziffernstellen der beiden Operanden bei einer Addition gleichmäßig addiert werden und in einem möglichst abgekürzten zusätzlichen Arbeitszyklus die Berücksichtigung der Überträge erfolgt.
Eine besondere Art datenverarbeitender Maschinen bilden diejenigen, bei denen ein jedes Zeichen der zu verarbeitenden Daten, d.h. jede Ziffernstelle einer Dezimalzahl oder jeder Buchstabe oder jedes Interpunktionszeichen in Form mehrerer Binärzeichen verschlüsselt wird. Bei dem üblichen binär verschlüsselten Dezimalkode sind vier Bits, d.h. vier Binärstellen, welche den Werten 1, 2, 4 und 8 entsprechen, vorgesehen. Die Zahl 3 wird dann ausgedrückt durch die Kombination 1-2; die 1-2-4-Kombination entspricht der Zahl 7; die 1-8-Kombination entspricht der Zahl 9. Zusätzlich zu den 1-2-4-8-Bits wird ein Prüfbit verwendet, der, wenn er zu den übrigen vorhandenen Bits des Wertes 1 addiert wird, zu einer ungeraden Bitzahl führt. Es werden weitere Bits in dem eine dezimale Ziffernstelle wiedergebenden Zeichen enthalten sein, die als Zonenbits bezeichnet werden und das Zeichen dann als alphabetisches Zeichen oder als Interpunktionszeichen Maschine zur serienmäßigen Verarbeitung von
Daten in binärer Zeichenverschlüsselung
Anmelder:
International Business Machines Corporation,
New York, N. Y. (V. St. A.)
Vertreter:
Dr. phil. G. B. Hagen, Patentanwalt,
München-Solln, Franz-Hals-Str. 21
Als Erfinder benannt:
William Horton Rhodes, Poughkeepsie, N.Y.,
James Gerald Brenza, Lake Carmel, N.Y.,
Wayne David Winger, Poughkeepsie, N.Y.
(V. St. A.)
Beanspruchte Priorität:
V. St. v. Amerika vom 19. Oktober 1959
(847 306)
oder als ein Schlüsselzeichen, welches beispielsweise das Ende eines aus mehreren Zeichen bestehenden Wortes oder ein für die Rechnung erforderliches Vorzeichen oder ein Signalzeichen für Steuerungsvorgänge zur Durchführung des Programms charakterisieren.
Die Erfindung betrifft eine datenverarbeitende Maschine verhältnismäßig niedriger Kosten und ist daher von einem möglichst geringen apparaturmäßigen Aufwand. Es ist an sich bekannt, in dem Hauptspeicherwerk einer programmgesteuerten Rechenmaschine Tabellen zu speichern, welche häufiger wiederkehrende Zahlenwerte gespeichert enthalten, um dadurch die Durchführung des Rechenprogramms zu vereinfachen. Die Erfindung bezweckt die Vereinfachung des Rechenwerkes einer datenverarbeitenden Maschine und greift dadurch für die Durchführung von Additionen, Subtraktionen und Multiplikationen auf Additionstabellen und Multiplikationstabellen zurück, die in dem Hauptspeicherwerk gespeichert werden und für eine Dezimalstelle das Resultat von Additionen und Multiplikationen zweier Ziffern enthalten. Im Unterschied zu einer üblichen datenverarbeitenden Maschine wird also bei der serienmäßigen Durchführung einer Rechenoperation für jede Ziffernstelle das Hauptspeicherwerk mit be-
409 598ß59
teiligt, und dadurch wird, weil die an das Rechenwerk zu stellenden Anforderungen hinsichtlich der Durchführung von Rechenoperationen reduziert werden können, eine Vereinfachung des Rechenwerkes erreicht.
Eine Maschine zur serienmäßigen Verarbeitung von Daten in binär kodierten Zeichen (Ziffern der dezimalen Zahlendarstellung, Buchstaben, Interpunktionszeichen), bei der die Binärbits jedes Zeichens parallel verarbeitet werden, unter Anwendung eines an jeder Adressenstelle ein Zeichen enthaltenden Hauptspeicherwerkes und eines eine geringe Adressenzahl enthaltenden Hilfsspeicherwerkes und je eines eingangsseitig und ausgangsseitig zum Hilfsspeicherwerk angeordneten Pufferregisters kennzeichnet sich gemäß der Erfindung dadurch, daß jedes Register des Hilfsspeicherwerkes und die eingangsseitig bzw. ausgangsseitig zu dem Hilfsspeicherwerk liegenden Pufferregister je eine nur einem Zeichen ohne die Charakterisierungs- bzw. Prüfbits (A, B, C Bits) entsprechende Kapazität (fünf Bits) aufweisen und dem Hilfsspeicherwerk eine Übertragsstufe, eine Verdopplerstufe, mindestens eine Komplementärstufe und gegebenenfalls eine Stufe, welche das dem ausgangsseitig zum Hilfsspeicherwerk angeordnete Pufferregister entnommene Zeichen zwecks Wiederzuleitung zum Hilfsspeicherwerk um den Zahlenwert 1 oder 2 zu vergrößern oder um den Zahlenwert 1 zu verkleinern gestattet, zugeordnet sind und daß für ziffernmäßige Addition eine im Hauptspeicherwerk gespeicherte hundertsteilige Additionstabelle, in der ein Charakterisierungsbit Ziffern zwischen 10 und 20 charakterisiert und auf die Übertragsstufe einwirkt, und für ziffernmäßige Multiplikation eine im Hauptspeicherwerk gespeicherte zweihundertstellige Multiplikationstabelle dienen.
Zu verarbeitende Daten werden aus dem Hauptspeicherwerk üblicherweise durch einen Befehl entnommen und in das Hilfsspeicherwerk übergeführt, welcher die Angabe der Adresse enthält, an der im Hauptspeicherwerk das zu übertragende Zeichen gespeichert ist. Zweckmäßigerweise werden als Adressenangaben des Summenwertes in der Additionstabelle und des Produktwertes in der Multiplikationstabelle in der niedrigsten Ziffernstelle die Ziffern der Operanden selbst ausgenutzt. Bei der Aufsuchung des Produktwertes aus der Multiplikationstabelle wird dabei zweckmäßigerweise der eine Operand verdoppelt, so daß in der Einer-Stelle der Adressen der Multiplikationstabelle nur gerade Ziffernwerte auftreten und jede Adressenstelle zwei Ziffernwerte umfassen kann, wie dies zum Aufsuchen der Produkte zwischen 0-0 und 9-9 erforderlich ist.
Bei einer erfindungsgemäßen Maschine wirken sich Überträge in den Mitteln aus, welche zur Steuerung des Speicherwerkes vorgesehen sind. Es finden hierbei Additionen im Wege einer Vielzahl sich wiederholender Steuerungen des Speicherwerkes statt, wobei der Ziffernwert des Augenden, der Ziffernwert des Addenden der gleichen Ziffernstelle und der Übertrag von der vorhergehenden Stelle eine Adresse liefern, in welcher die Summe und der Übertrag gespeichert werden.
Weiterhin sieht die Erfindung vor, daß Adressen eines Speicherwerkes mit mehr als 9999 Adressenstellen durch Anwendung einer gerade-ungerade Steuerung mit vierziffrigen Adressen ausgewählt werden können.
Die Erfindung bezieht sich insbesondere auf die Verarbeitung des Übertrages bei Additionen. Dabei wird eine Addition von dem Speicherwerk zu einer Speichertafel vorgenommen, wobei die Ziffernwerte der Operanden, von denen der eine entsprechend dem Auftreten eines Übertrages geändert wird, die Adresse im Speicherwerk auswählen, bei der sich die zugehörige Summe und der Übertrag gespeichert befinden.
ίο Die Erfindung betrifft dementsprechend eine datenverarbeitende Maschine, in welcher das Speicherwerk den Schwerpunkt der Anordnung bildet und arithmetische Operationen unter wiederholter Bezugnahme auf das Speicherwerk durchgeführt werden. In dem Speicherwerk befindet sich eine Additionstafel, und jede Speicherzelle hat eine aus vier Bits bestehende Dezimalziffer und ein Schlüsselzeichen, welches Summe oder Übertrag der beiden Dezimalziffern, die der Adresse zugeordnet sind, bezeichnet. Die Einer-Stellen 7 und 6 des Addenden 37 und des Augenden 46 liefern bei Addition 13. Es enthält dann die Adresse 76 beispielsweise des Speicherwerkes ein mit einem Schlüsselzeichen versehenen Zahlenwert 3, was zum Ausdruck bringt, daß es sich um 3 und einen Übertrag handelt. Die Summenziffer wird in einem Flächenteil zur Entwicklung der Summe gespeichert, und das Schlüsselzeichen wird verwendet, um einen der Operandenziffern der nächsthöheren Stelle abzuändern. Die Zehnerziffer 3 und die Zehnerziffer 4, welche durch den Übertrag auf 5 umgewandelt werden, ergeben die Adresse 35, in welcher eine 8 ohne ein Schlüsselzeichen gespeichert wird. Die Summe 83 wird auf diese Weise jede Ziffernstelle durch eine Bezugnahme auf eine Tafel in jeder Ziffernstelle entwickelt. Der Inhalt weiterer Speicherzellen wird verwendet, um die Ziffer des Addenden, die Ziffer des Augenden zu bilden und die Summe zu speichern.
Die Additionsfolge des Speicherzelleninhaltes wird durch eine Programmvorrichtung zeitlich gesteuert, welche Mittel zum Auswählen von Speicherstellen steuert, wobei solche Mittel ein Speicherwerkadressenregister und eine Mehrzahl Register zum Speichern von Adressenstellen umfassen. Die bei der Additionsfolge betroffenen Stellen des Speicherwerkes werden entsprechend ausgewählt, um die Operanden zu bilden, die Summe zu speichern und den nächsten Befehl nach Beendigung eines Additionszyklus zu erhalten.
Durch die Ausnutzung des Speicherwerkes entfällt die Notwendigkeit der Anwendung kostspieliger Addierstufen, und es läßt sich dementsprechend eine billige Rechenanlage bauen, welche komplizierte Rechnungen durchzuführen imstande ist. Durch die Anwendung von Schlußzeichen können Worte unterschiedlicher Länge verwendet werden sowie Plusminus-Steuerungen und Wortmarken, trotz geringen Schaltungsaufwandes. Das Schlüsselzeichen wird in verschiedener Weise als Wortschlußzeichen, Plusminus-Steuersignal, Wortbeginnzeichen bei negativen Zahlen und als Übertrag ausgewertet je nach der durchzuführenden Rechenvorschrift und der Stellung in der Rechenfolge.
Weitere Merkmale und Zweckmäßigkeiten der Erfindung ergeben sich aus der nachfolgenden Beschreibung und den Figuren. Von den Figuren zeigt
F i g. 1 ein die Arbeitsweise wiedergebendes Blockschaltbild einer bevorzugten Ausführungsform der Erfindung,
Fig. 2 ein.Schema der Additionstafel, welche im Speicherwerk gespeichert ist,
F i g. 3 ein Schema der Multiplikationstafel,
F i g. 4 ein weitere Einzelheiten zeigendes Schema, welches die Eingangsstufe 200 des Speicherwerkes und die Ausgangsstufe 600 desselben zeigt.
In den F i g. 1 und 4 ist die Bewegungsrichtung der Datenübertragung durch Pfeile angedeutet.
In den übrigen Figuren ist die Bewegungsrichtung der Datenübertragung von links nach rechts gerichtet, iu mit Ausnahme in denjenigen Figuren, in denen ein anderer Ubertragungssinn durch Pfeile angezeigt ist. Die Eingangsleitungen sind durch ihre Funktionen gekennzeichnet sowie durch Angabe der Figurennummer, auf welchen sie als entsprechende Ausgangsleitungen auftreten. Jeder einen Schaltungskreis kennzeichnende Block ist mit seiner Funktionsweise, beispielsweise A, PI usw. bezeichnet.
Die Maschine arbeitet mit einem gespeicherten Programm unbestimmter Länge, wobei jeder Befehl zwölf Ziffern enthält und zwei Adressen umfaßt. Die beiden ersten Ziffern bilden den Operationskode (Op Code). Die nächsten fünf Ziffern bilden die P-Adresse; die weiteren fünf Ziffern die g-Adresse, wie folgt:
O2O1
Op Code
P-ZaM
Q5QiQ3Q2Q1 Q-ZaM
Der Operationskode umfaßt daher, maschinenmäßig gesprochen, zwei Dezimalstellen. Der Einfachheit halber wird zur Erläuterung des Programms die gedächtnismäßige Wiedergabe der Operationen, wie
25
30 sie normalerweise der Programmierer verwendet, auch hier benutzt.
Die aus fünf Ziffern bestehende P-Zahl bildet bei den meisten Befehlen die Adresse im Speicherwerk, an welcher eine Ziffer gespeichert ist. Die durch die P-Zahl charakterisierte Stelle des Speicherwerkes ist meistens diejenige, an welcher sich in dem P-FeId des Speicherwerkes die Einer-Stelle befindet, so daß durch die Adresse die Speicherstelle P und benachbarte Adressenstellen gekennzeichnet sind, welche sich bis zu der Adresse hin erstrecken, in welcher sich die mit einer Schlüsselmarke versehene höchste Ziffernstelle der Adresse befindet. Die durch die P-Adresse charakterisierte Ziffer ist für gewisse Rechenbefehle der Beginn der Aufzeichnung. Die Aufzeichnung umfaßt die durch die P-Adresse charakterisierte Ziffer und benachbarte höhere Stellen des Speicherwerkes bis zu der Stelle, an welcher eine Schlußmarke für die Information gespeichert ist. Bei gewissen anderen Instruktionen wird die P-Zahl wie eine Zahl behandelt, d. h. als ein Zahlenwert.
Die aus fünf Ziffernstellen bestehende g-Zahl kann in ähnlicher Weise als eine Adresse oder als ein Zahlenwert behandelt werden. Die Ziffern des Operationskodes bestimmen dabei die Behandlungsweise der P-Zahl und der g-Zahl bei der Durchführung des Rechenbefehles. Während eines Rechenbefehles kann entweder die P-Zahl oder die Q-Zahl oder beide geändert werden.
Es umfassen die Befehle in Maschinensprache, Abkürzungsweise, nicht abgekürzt und erklärender Weise folgendes:
21 A Addition
11 AM direkte Addition
22 S Subtraktion
12 SM direkte Subtraktion
23 M Multiplikation
13 MM direkte Multiplikation
25 TD Ziffernübertragung
15 TDM direkte Ziffernübertragung
26 TF Feldübertragung
16 TFM direkte Feldübertragung
31 TR Wortübertragung
36 RN numerisches Ablesen
32 SF Schlüsselmarke setzen
33 CF Schlüsselmarke löschen
24 C Vergleich
14 CM direkter Vergleich
34 K Steuerung
35 DN zahlenmäßiges Abwerfen
36 RN numerisches Ablesen
Addition des ß-Feldes zum P-FeId
Addition der Q-ZaM zum P-FeId
Subtraktion des ß-Feldes vom P-FeId
Subtraktion der Ö-Zahl vom P-FeId
Multiplikation des g-Feldes mit dem P-FeId Multiplikation der ß-Zahl mit dem P-FeId Übertragung der g-Ziffer nach P
Übertragung der gj-Ziffer nach der Stelle P Übertragung des ß-Feldes nach dem P-FeId Übertragung der Q-ZdM nach dem P-FeId Übertragung des Wortes der Adresse Q nach dem P-FeId Ablesen der ß-Vorrichtung nach der Stelle des P-Wortes Setzen einer Schlüsselmarke nach der P-Stelle Löschen einer Schlüsselmarke an der P-Stelle
Vergleich des ß-Feldes mit dem P-FeId und Feststellen, ob P-FeId größer oder gleich ist
Vergleich der ß-Zahl mit dem P-FeId und Feststellen, ob das P-FeId größer ist oder gleich
Durchführung der Steuerung entsprechend ß43 an der Eingangs- oder Ausgangsvorrichtung, welche durch Q2 charakterisiert ist
Übertragen der P-Adresse über die Stelle 19998 nach der durch die ß-Adresse charakterisierten Vorrichtung Übertragen der numerischen Daten von der durch die ß-Zahl charakterisierten Eingangsvorrichtung nach der P-Stelle und anschließenden Stellen
37 RA
38 WN
39 WA
27 BT
alphanumerisches Ablesen
numerisches Schreiben Übertragen alphabetischer und numerischer Zeichen von der durch die Q-Zaiu charakterisierten Eingangsvorrichtung nach der P-Stelle und anschließenden Stellen
Übertragen numerischer Daten von der P-Stelle und anschließenden Stellen nach der durch die ß-Zahl charakterisierten Ausgangsvorrichtung
alphanumerisches Schreiben Übertragen alphanumerischer Daten von der P-Stelle und anschließenden Stellen zu der durch die ß-Zahl charakterisierten Ausgangsvorrichtung
Übergang und Übertragung
17 BTM direkter übergang und
Übertragung
42 BB Zurückkehren
43 BD Übergang bei Ziffer
44 BNF Übergang ohne Schlüssel
marke
45 BNR Übergang ohne Wortmari
46 BI Übergangsprüfer
27 BNI Übergangsprüfer negativ
48 H
49 B
50 bis 99 NOP
Halt
Übergang
keine Operation
Unbedingtes Übergehen auf die P-Adresse des Befehles; Übertragen des ß-Feldes nach dem P-l-Feld; Erhalt der Adresse des nächstfolgenden Befehles
Unbedingtes Übergehen auf die P-Adresse des Befehles; Übertragen der ß-Zahl nach dem P-l-Feld; Erhalt der Adresse des nächstfolgenden Befehles
Unbedingtes Zurückgehen zu dem Befehl der vorangegangenen Adresse
Feststellen der an der ß-Adresse stehenden Ziffer und Übergehen zu dem Befehl gemäß P-Adresse, falls von 0 verschieden
Feststellen der durch die ß-Adresse charakterisierten Ziffer und Übergehen auf den Befehl gemäß der P-Adresse, falls keine Schlüsselmarke vorhanden
Feststellen der Ziffer an der durch die zuvor gehende Adresse charakterisierten Stelle und Übergehen auf den Befehl gemäß P-Adresse, falls Adresse keine Wortmarke zeigt
Übergang zum Befehl der P-Adresse, falls der durch ß-Zahl charakterisierte Prüfer anspricht
Übergang zum Befehl gemäß P-Adresse, falls durch ß-Zahl charakterisierter Prüfer nicht anspricht
Anhalten der Maschine
Unbedingter Übergang zu dem Befehl gemäß P-Adresse
Weiterarbeiten ohne Berücksichtigung des Befehls
Die meisten Ausführungsbefehle der Maschine erfordern einen Befehlszyklus (/-Zyklus) und einen Ausführungszyklus (£-Zyklus). Der Befehlszyklus umfaßt für die meisten Befehle sieben vorgegebene Bezugnahmen auf das Speicherwerk und einen Leerzyklus, welch letzterer dem Zwecke dient, die Maschine in den Zustand zu versetzen, daß sie den durch den Operationskode vorgeschriebenen Befehl im Hinblick auf die an den P- und ß-Adressen enthaltenen Informationen ausführt. Der .E-Ausführungszyklus hängt von der Art der Operation ab und kann, je nach der Kompliziertheit der Operation, keine oder eine oder mehrere Bezugnahmen auf den Inhalt des Speicherwerkes vorsehen.
Eine Dezimalstelle ist binär kodiert (BDC-Kode) und besteht aus vier numerischen Bits, einem Prüfbit und einer Schlüsselmarke. Die Wörter, welche die Daten darstellen, haben verschiedene Länge. Der Beginn eines Wortes (Wortmarke) wird durch eine Schlüsselmarke in der höchsten Stelle angezeigt; eine Schlüsselmarke in der niedrigsten Stelle zeigt an, daß es sich um eine negative Zahl handelt. Eine Schlüsselmarke hat verschiedene Bedeutung je nach ihrer Stellung im Wort und je nach der auszuführenden Operation und dem Operationsschritt, der gerade zur Ausführung gelangt.
Die Maschine umfaßt zehn größere Felder, die mit 100 bis 200 bezeichnet sind, und innerhalb der Felder sind Blocks mit den Zeichen 101 bis 102... bezeichnet.
Die größeren bestimmten Funktionen dienenden 40 Blocks sind wie folgt bezeichnet:
100 Speicherwerksfeld 200 Speicherwerksadressenfeld 300 Speicherfeld für Speicherwerks-45 adressen
400 Feld zur Änderung von Speicherwerksadressen
500 Operationssteuerungsfeld
600 Speicherwerksentnahmefeld
700 Eingangs-Ausgangs-Feld
800 Zeitsteuerungsfeld
900 Feld zur Feststellung von Übergängen
1000 bis 2000 Felder für Prüfzwecke und andere 55 Zwecke
Das Speicherwerksfeld 100 umfaßt 120 000 Magnetkerne, die 20 000 Speicherstellen von je sechs Bits bilden; jede Speicherstelle hat eine Adresse zwischen
60 00000 und 19999. Das Speicherwerk besteht aus einer ungeraden Abteilung und einer geraden Abteilung; eine Kernreihe im Speicherwerk enthält zwölf Kerne, und es wird der Inhalt von zwei Speicherstellen (zwölf Kerne gleich zwei Ziffern) gleichzeitig entnom-
65 men; ein Paar enthält jeweils eine geradzahlige Speicherstelle und eine anschließende ungeradzahlige Speicherstelle. Zwei Dezimalziffern werden normalerweise entnommen und während eines Speicherwerks-
zyklus regeneriert. Das Speicherwerk unterliegt in Spaltenrichtung einer Auswahl durch eine 10 · 10-Matrixanordnung 102 und in Zeilenrichtung einer Auswahl durch eine ähnliche 10 · 10-Schaltmatrix 103. Diese beiden Adressenmatrizen liefern 10 000 Kombinationen, d. h. 10 000 geradzahlige Adressenstellen und die zugehörigen ungeradzahligen Stellen.
Das Speicherwerksadressenfeld 200 steuert die Adressenstellenauswahl, wenn es sich um Speicherwerkszyklen handelt. Das Speicherwerksadressenregister 201 (MAR) ist mit den Matrizen 102 und 103 verbunden und wählt eine Adresse des Hauptspeicherwerkes entsprechend dem Inhalt des Speicherwerksadressenregisters MAR aus.
Das Hilfsspeicherwerk MARS (300) des Speicherwerksadressenregisters besteht aus acht Magnetkernregistern 301 bis 308 von je fünf Binärziffern; diese Register sind bezeichnet: Befehlsregister (IRl und IR2), Operandenregister (OR 1, ORl und OR3), Produktregister (PR 1, PR 2, PRi). Diese Register dienen dem Zweck, die Speicherwerksadressen zu speichern, an welchen Befehle, Operanden und Produkte sich befinden; das in Frage kommende Register des Speicheradressenregister Hilfsspeichers wird durch das Programmschaltwerk 503 in einem Speicherwerkszyklus ausgewählt. Zum Einstellen der Kerne der.Register sind Treiberstufen 309 vorgesehen.
Das Speicherwerksadressen-Änderungsfeld 400 dient dem Zweck, bei jedem Additionsproblem und vielen anderen Ausführungsbefehlen während der Abwicklung derselben die Bewegung der Informationen in der Maschine zu steuern. Das Feld steuert weiter die Abwicklung des gespeicherten Programms. Der Vergrößerungsschalter 401 bewirkt, unter der Steuerung von Mitteln innerhalb des Operationssteuerungsfeldes die Vergrößerung einer von dem Speicherwerksadressenregister MAR 200 abgegebenen Speicherwerksadresse um 1 oder um 2 oder eine Verkleinerung um 1 oder eine unveränderte Weiterleitung und bewirkt ferner die Regenerierung der abgeänderten Adresse in dem geeigneten Register des Hilfsspeichers MARS: Die Vergrößerung um 2 ist nützlich bei Ausführungsbefehlzyklen, welche die Entnahme eines Ausführungsbefehles betreffen, welche in Form von zwei Dezimalziffernstellen gleichzeitig in dem Hilfsspeicherwerk MARS gespeichert werden; die Verkleinerung um 1 ist zweckmäßig, um durch alle Ziffernstellen eines aus mehreren numerischen Ziffern bestehenden Wortes von der niedrigen Ziffernstelle zur hohen Ziffernstelle durchzuschalten; die Vergrößerung um 1 ist zweckmäßig für di& Übertragung von Aufzeichnungen.
Die +1-Stufe 402, die Nebenschlußstufe 407, die Übertragsstufe 403 und die Grundwert-Komplement-' stufe 408 bilden Teile des Ubertragungswertes des Addenden zu dem Speicherwerksadressenregister MAR, wenn es sich darum handelt, die Vorbereitungen für die Addiertafel im Hauptspeicherwerk zu treffen. Die +1-Stufe 402 liefert den Übertrag von der Addition der vorangegangenen Ziffernstelle, wenn der Übertragstrigger 403 erregt ist; die Nebenschlußstufe 407 leitet die Ziffernstelle des Addenden weiter, wenn die Ubertragsstufe 403 nicht erregt ist; die Grundwert-Komplementstufe 404 bildet einen Teil des Weges des Augenden zum Speicherwerksadressenregister während der Vorbereitung.
Die Multiplikationsregister 405 und die Verdopplerstufe 406 werden nur bei Multiplikationen verwendet. Um eine dreistellige Zahl zum Ansprechen der Multiplikationstafel im Hauptspeicherwerk zu erzeugen, wird die Multiplikandenziffer als Zehner-Stelle der Adresse verwendet, und die Multiplikandenziffer wird verdoppelt, um eine Einerziffernstelle mit gerader Zahl zu erzeugen, und für die Hunderterziffernstelle wird entweder eine 2 oder eine 1 verwendet, je nachdem, ob bei der Verdopplung ein Übertrag entstand oder nicht.
ίο Das Operationssteuerfeld 500 enthält das zwei Ziffernstellen umfassende Operationsregister (OPR) 501, die Dekodierungsvorrichtung 502 und das Zeitschaltwerk 503. Das Zeitschaltwerk steuert andere Teile der Maschine nach Maßgabe des Operationskodes, welcher durch die Dekodierungsstufe 502 geliefert wird.
Das Feld 600 zur Entnahme aus dem Hauptspeicherwerk umfaßt den Verstärker 601, welcher unter der Steuerung der schwachen Signale, die von
ao den Kernen des Hauptspeicherwerkes abgegeben werden, Impulse hinreichender Leistung erzeugt, so daß das geradzahlige und das ungeradzahlige Hauptspeicherwerkspufferregister MBRE 602 bzw. MBRO
603 gesteuert werden können.
Die Entnahme aus dem Hauptspeicherwerk bringt den Inhalt einer geradzahligen Ziffernstelle nach dem Pufferregister MBRE, und die Entnahme von der nächsthöheren ungeradzahligen Speicherwerksstelle bringt die Ziffer nach dem Pufferregister MBRO, gleichgültig, welche der beiden Adressenstellen verlangt wurden. Während jedes normalen Speicherwerkzyklus liefern die Pufferwerke MBRE und MBRO die Ziffern an die betreffenden Stellen des Hauptspeicherwerkes regeneriert zurück. Bei gewissen Ausführungsbefehlen kann die Steuerung der Pufferregister MBRE oder MBRO vom Hauptspeicherwerk her unterdrückt werden, so daß eines der genannten Pufferregister von einer anderen Stelle her, beispielsweise von der Stufe MDR her, erfolgen kann. Auf jeden Fall wird in jedem Speicherwerkszyklus über die Verbindungsleitungen 622 oder 623 von den Pufferregistern MBRE und MBRO her eine Regenerierung des angesprochenen Speicherwerksstellenpaares (gerade und (nächsthöhere ungerade Speicherstelle) bewirkt. Die gerade-ungerade Schaltstufe (EIO)
604 wird von dem Einerbit dej Einerziffernstelle der Adresse her gesteuert und charakterisiert eine gerade Zahl, wenn der Einerbit 0 iÄ, und eine ungerade Zahl, wenn der Einerbit 1 istl Die gerade-ungerade Steuerstufe EIO steuert UNDpKreise 606 und 607, so daß nur die Speicherwerkss^elle, die angesprochen ist, ihren Inhalt an das Speichexwerksdatenregister (MDR) 608 liefert. Das ungerade Speicherwerkspufferregister MDRO ist unmittelbar mit dem Zehner-Ziffernregister (DRT) 610 verbunden. Das gerade Speicherwerkspufferregister MBRE ist über die UND-Stufe 606 und die MDi?-Stufe 608 mit dem Einerziffernregister (DRU) 611 verbunden. Diese Verbindung erfordert die Übertragung von Ziffern von Multiplikationsprodukten nach dem Hauptspeicherwerk; die Ziffernstelle gerader Adressenstelle geht nach der Stufe DR U; die Zehnerziffer von der nächsthöheren ungeraden Adressenstelle geht nach der Stufe DRT.
Das Feld 700 der Eingangsmittel und der Ausgangsmittel umfaßt die Eingangs-Ausgangs-Steuerung 701, das Schaltbrett 702, das Tastenbrett 703, die Lochstreifenablesevorrichtung 704, die Druckvor-
409 59S/359
richtung 705, die Lochvorrichtung 706 und Wählschalter 707.
Das Zeitsteuerungsfeld 800 umfaßt Mittel, welche Taktgeberimpulse zur Steuerung der übrigen Felder der Maschine liefern.
Das Feld 900 der Übergangsprüfstufen umfaßt das Übergangsprüfregister (SBR) 901, die Dekodierstufe des Übergangsprüfers und die Übergangsprüfstufe (SBT) 903.
Das Feld 1000 enthält verschiedene Prüfblocks, und zwar den Prüfblock 1201 des Registers MAR und den Prüfblock 1602 des Pufferregisters MBRE 602 und den Prüfblock 1603 des Pufferregisters MBRO 603 und den Prüfblock 1608 des Datenregisters MDR 608 und den Prüfblock 1701 der //O-Steuerstufe 701.
Die folgenden Definitionen werden nachstehend verwendet:
1. Hauptzyklus: Die Zeiteinheit, in welcher ein Speicherwerkszyklus sich abwickelt. Dieses ist die Grundeinheit der Arbeitsweise der Maschine und beträgt vorzugsweise 20 Mikrosekunden.
2. Ausführungszeit: Eine Ausführungszeit kann eine Mehrzahl Hauptzyklen enthalten.
3. Schlüsselmarke: Ein Bit in jeder Ziffernstelle, die, je nach der relativen Lage in bezug auf das gesamte Wort, den Beginn des Wortes, ein negatives Wort oder eine andere Bedeutung nach sich zieht.
4. /-Zeit: Die Befehlszeitdauer, welche acht Hauptzyklen umfaßt, innerhalb welcher der Operationskode und die verschiedenen Speicherwerksadressen, die dem Befehl unterliegen, bereitgestellt werden, so daß in dem anschließenden ^-Zyklus die Ausführung des Befehles erfolgen kann.
5. Stelle: Sechs Kerne im Hauptspeicherwerk, die einer gemeinsamen Adresse entsprechen und eine Dezimalziffer, welche sich aus den Bits 1-2-4-8 und einem Prüfbit und einer Schlüsselmarke zusammensetzt, speichert.
6. Stellenpaar: Eine gerade Adressenstelle und die nächsthöhere ungerade Adressenstelle oder eine ungerade Adressenstelle und die nächstniedrigere gerade Adressenstelle.
7. Ablesen: Das Rückstellen der magnetischen Kerne einer Adressenstelle in den O-Zustand; diejenigen Kerne, welche einen Bit 1 gespeichert hatten, senden ein Signal aus, während die Umschaltung erfolgt. Das Ablesen umfaßt auch das Erzeugen des Inhaltes eines Registers unter Anwendung eines Torimpulses.
8. Schreiben: Das Überführen von Magnetkernen einer Speicherstelle in den 1-Zustand, entsprechend des aufzuzeichnenden Bits 1.
ao 9. Adresse: Eine Zahl, durch welche eine Stelle des Speicherwerkes charakterisiert wird.
10. Regenerieren: Es wird, nachdem der Inhalt einer Stelle des Speicherwerkes in ein Speicherregister übergeführt wurde, der Inhalt an dersel-
ben Stelle von dem Speicherregister wieder in dem Hauptspeicherwerk erzeugt, so daß die Speicherwerksstelle und das Register dieselbe Ziffer nebst Charakterisierungsbits enthalten.
11. Aufzeichnungsschlußmarke: Ein Zeichen, normalerweise 8-2, welche das Ende einer Aufzeichnung auf dem Registrierstreifen, dem Eingangsschreibwerk und dem Speicherwerk bedeutet.
Die Arbeitsweise der Maschine soll durch das nachfolgende Programm erläutert werden:
Befehlsfolge Speicherwerks-
stelle
Befehl Befehlsart
1 00000-00011 RN-01076-00300 Entnahme von Papierstreifen nach 01076
2 00012-00023 B-01076-00000 Übergang nach 01076
3 01076-01087 TRP 01184-01284 Übertragen des Inhaltes von 01184 nach 01284
4 01088-01099 N 00300-00300 Entnahme der Additionstafel vom Papierstreifen
5 01100-01111 A 01297-01300 Addition des g-Feldes nach dem P-FeId
6 01112-01123 S 01302-01304 Subtraktion Q von P
7 01124-0135 BNF 01112-01302 Übergang Schlüsselmarke negativ
8 01136-0147 RN-00100-00300 Entnahme der Multiplikationstabelle vom Papierstreifen
9 01148-0159 M 01202-01204 Multiplikation
10 01160-0171 WN 00080-00100 Aufschreiben der Ziffernwerte im Drucker
11 01172-01183 H 00000-00000 Halt
Zahlenwerte
Zahlen werte Ursprüngliche
Speicherstelle
Überleitung nach Inhalt
-123456 01184-01189 01284-01289 (1123456!)
7890123 01190-01197 01290-01297 (7!890123)
247 01198-01200 01298-01300 (2!47)
02 01201-01202 01301-01302 (0!3)
03 01203-01204 01303-9304 (0!2)
Aufzeichnungsschlußmarke 01205 01305 (F)
Obwohl die Maschine Befehle wie Zahlenwerte behandelt und dadurch weiterarbeitet, daß arithmetische Operationen mit den Befehlen ausgeführt werden, wird doch im allgemeinen der Unterschied zwischenBef ehlen und Zahlenwerten aufrechterhalten.
Eine Gruppe von Ziffern, welche stets als eine mehrstellige Zahl behandelt wird, wird im vorstehenden in Klammern eingeschlossen. Da die Ziffernstellen bei der Addition auch Speicherstellen kennzeichnen, ist darauf zu achten, daß eine Adresse nicht mit ihrem Inhalt verwechselt wird.
Wenn die Maschine zunächst eingeschaltet wird, haben ihre Triggerstufen einen durch Zufall bestimmten Zustand, und dementsprechend enthalten die verschiedenen Register, die Schaltstufen und die Speicherstellen zufällig bedingte Werte. Die Bedienungsperson betätigt darauf einen Rückstellschalter, wodurch sämtliche Speicher auf 0 gebracht werden und der Anhaltezustand angenommen wird. Gleichzeitig wird die Schalttafel auf 0 gestellt und das Zeitschaltwerk in Gang gesetzt. Daraufhin betätigt die Bedienungsperson einen Schalter zum Beginn der Arbeitsfolge. Es wird beispielsweise ein Schalter eingeschaltet am Schaltbrett, durch welches der Schreibmaschineneingangskreis ausgewählt wird. Da das Speicherwerksadressenregister MAR und das Speicherwerk für das genannte Register MARS auf 0 gestellt sind, gelangt der erste gedruckte Befehl auf die Speicherstelle 00000. Das Befehlsadressenregister IRl enthält den Wert 00000 und, nachdem der Einschaltknopf betätigt wurde, beginnt die Maschine mit dem Befehl 00000 zu arbeiten.
Der erste Ausführungsbefehl, welcher an die Hauptspeicherwerksstelle 00000 gebracht wurde, ist der Befehl »Entnahme von Papierstreifen«, RN 01076-00300; dadurch entnimmt die Maschine die Aufzeichnung des Papierstreifens an die Speicherwerksstelle 01076 und die folgenden, wenn die Maschine von Hand angelassen wird. Auf diese Weise wird das Programm in das Speicherwerk übernommen.
Der zweite Ausführungsbefehl ist ein Übergangsbefehl, B-01076-00000, durch den die Maschine veranlaßt wird, weitere Instruktionen von den Stellen 01076 und folgenden zu entnehmen. Dieser Übergangsbefehl hat zur Folge, daß die Adresse 01076 in dem Befehlsspeicherwerk IRl und dem Speicherwerksadressenregister MAR gespeichert wird.
Da die Befehle 1 und 2 sich an den Speicherstellen 00000-00011 und 00012-00023 befinden, schaltet sich die Maschine von der Handbedienung auf vollautomatische Arbeitsweise durch das einmalige Eindrücken eines Startschalters am Schaltbrett um. Es wird der Befehl 1, welcher an der Speicherstelle 00000 gespeichert ist, entnommen, und das Steuerfeld der Maschine wird auf Entnahme vom Papierstreifen eingestellt. Nachdem der Papierstreifen vollständig an den Speicherstellen 01076 und den folgenden gespeichert ist, wird der Befehl 2 ausgeführt.
Die meisten Ausführungsbefehle erfordern einen Befehlszyklus und einen Ausführungszyklus (/-Zyklus und E-Zyklus). Bei gewissen Übergangsbefehlen und einem keine Operation bedingenden Befehl entfallen die E-Zyklen vollständig. Das Zeitschaltwerk erzeugt während des /-Zyklus acht unterschiedliche Schritte, wobei sämtliche Schritte mit Ausnahme des letzten Speicherzyklen sind. Es wird dann eine unterschiedliche Anzahl Schritte, welche den Ausführungszyklus E bilden, erzeugt.
Zu Beginn enthält das Speicherwerksadressenregister MAR die Adresse 00000, nämlich die Adresse im Speicherwerk, an welcher sich der erste Befehl befindet, wobei der erste Befehl als üblicher 12-Ziffern-Befehl, die Speicherstellen bis zur Speicherstelle 00011 einnimmt. Dieser Befehl sieht in dem vorstehend angegebenen Beispiel vor, daß die numerischen Werte an die Speicherstellen übergeführt werden, welche durch die P-Zahl (01076) und die anschließenden Adressen charakterisiert sind, wobei es sich um die Entnahme von Eineraufzeichnung auf einem Papierstreifen mittels eines entsprechenden Gerätes (Öß3ßö) handelt. Aufeinanderfolgende Ziffern von dem Papierstreifen werden in aufeinanderfolgenden Speicherstellen gespeichert, bis eine Aufzeichnungsmarke in der Aufzeichnung festgestellt wird. Die Aufzeichnungsmarke wird im Speicherwerk gespeichert, es hört das Ablesen vom Papierstreifen auf, die Maschine stellt fest, daß der Befehl durch-
ao geführt wurde, und es sucht sich die Maschine den zweiten Befehl aus, in dem ein weiterer Befehlszyklus eingeleitet wird.
Der zweite Befehl, B-01076-0000, sieht einen Übergang zu dem Befehl der Adresse 01076 vor und
as wird dem Speicherwerk während des Befehlszyklus/ entnommen. Die Durchführung dieses Übergangsbefehles hat zur Folge, daß in dem Register IR1 und dem Speicherwerksadressenregister MAR die Adresse des dritten Befehles erzeugt wird, was der erste der dem Papierstreifen entnommenen Befehle ist. Diese Adresse ist 01076.
Die Durchführung des dritten Befehles in dem gedachten Programm im einzelnen ist wie folgt:
Das Speicherwerksadressenregister MAR enthält am Ende des Überganges die Adresse 01076.
Der erste Schritt des Befehlszyklus des ersten gespeicherten Ausführungsbefehles, nämlich der Übertragungsschritt, umfaßt die folgenden Funktionen:
Die im Adressenregister MAR gespeicherte Zahl bewirkt das Ablesen aus der entsprechend gekennzeichneten Stelle des Speicherwerkes und der zweiten zugeordneten Stelle. Da die Zahl gerade ist, wird zugleich die nächsthöhere Stelle des Hauptspeicherwerkes abgelesen. Es werden daher die Ziffern 4 und 9 in das gerade bzw. ungerade Pufferregister MBRE bzw. MBRO übergeführt. Die Ziffer 4 geht von dem Pufferregister MBRE nach dem Speicherwerksdatenregister MDR über und von dort in die Zehner-Stelle des Operandenregisters OPR, welches darauf die Zahl 49 enthält.
Wie allgemein üblich, werden die Ziffern 4 und 9 an den Stellen ergänzt, von welchen sie aus dem Hauptspeicherwerk entnommen wurden. Die dem Schritt 1 entsprechenden Signale des Zeitschaltwerkes schalten die Vergrößererstufe 400 ein auf eine Vergrößerung um 2 um, so daß der Inhalt des Instruktionsregisters IR1 auf 01078 abgewandelt wird. Das Hilfsspeicherwerk MARS des Adressenregisters MAR wird gelöscht und nimmt die P-Zahl und die g-Zahl auf. Am Ende des ersten Schrittes wird das Speicherwerksadressenregister MAR auf die Stelle gebracht, welche im zweiten Schritt benötigt wird, nämlich die Adresse 01078.
Schritt 2. Es sollen die beiden höchsten Ziffern der P-Adresse des Übertragungsausführungsbefehles entnommen werden und an die beiden höchsten Stellen des Operandenregisters 1 gebracht werden. Diese beiden Ziffern, 01, erscheinen an den Speicherwerks-
stellen 01078 und 01079; da das Speicherwerksadressenregister auf 01078, nämlich eine gerade Adresse, eingestellt wurde, erscheint das Ziffernpaar in dem geraden und dem ungeraden Pufferregister MBRE und MBRO. Der Inhalt der geraden Adressenstelle 01078, nämlich 0, geht über das Pufferregister MBRE nach dem Einerziffernregister DRU und von dort auf dem Kanal 10000 durch alle acht Register des HilfsspeicherwerksM4i?S. Da nur das Operanden-Pufferregistern MBRE und MBRO. Da die Hauptspeicherwerksadresse im Speicherwerksadressenregister MAR ungerade ist, verläuft der Inhalt des Pufferregisters MBRO über das Speicherwerksdatenregister MDR nach dem Einerziffernregister DRU, und in Anbetracht der Einstellungen der Schalter des Programmzeitschaltwerkes wird das Operandenregister Oi? 2 in der Zehntausender-Stelle entsprechend der Ziffer der höchsten Ziffernstelle der ß-Zahl,
register OR 1 zur Hälfte ausgewählt wurde, wird die io nämlich QS, eingestellt, wobei zu beachten ist, daß Stelle 10000 des Operandenregisters Oi? 1 auf 0 im vorliegenden Fall diese Ziffer 0 ist. Es enthält gestellt. Gleichzeitig verläuft die Ziffer 1 der Haupt- daher das zur Hälfte ausgewählte Operandenregister speicherwerksadresse 01079 durch das Pufferwerk OR 2 die Zahl 00000. Das Programmzeitschaltwerk MBRO und das Zehnerziffernregister DRT entlang bewirkt eine Vergrößerung um 2 auf den Wert 01085.
ilihk M^S 15 hl d
dem Kanal 1000 durch das Hilfsspeicherwerk MARS, so daß eine Ziffer 1 an der 1000-Stelle des zur Hälfte ausgewählten Operandenregisters OR 1 erzeugt wird. Es wird wiederum die Vergrößerungsstufe 401 so gesteuert, daß eine Vergrößerung um 2 stattfindet; es enthält nunmehr das Instruktionsregister IR1 den Wert 01080, welcher am Ende des zweiten Schrittes in das Speicherwerksadressenregister MAR eingeführt wird.
Schritt 3: Nunmehr wird der Inhalt der Hauptspeicherwerksstellen 01080 und 01081 in die Pufferregister MBRE und MBRO übergeführt, und der Inhalt dieser Hauptspeicherwerksstellen gelangt in die 100-Stelle und 10-Stelle des Operandenregisters OR 1. Die Auswahl der Hunderter- und Zehner-Kanäle wird durch eine Schaltung des Zeitschaltwerkes bewirkt und erfolgt stets im Schritt 3. Das Zeitschaltwerk verursacht auch eine Vergrößerung um die Zahl 2, so daß das Instruktionsregister /i?l nunmehr die Zahl 01082 enthält, welche am Ende des dritten Schrittes in das Speicherwerksadressenregister MAR gebracht wird; es enthält nunmehr das Operandenregister OR 1 die Zahl 01180.
Schritt 4: Das Speicherwerksadressenregister MAR enthält die Zahl 01082. Die Schalter des Programmzeitschaltwerkes, welches während jedes Befehlszyklus / die Folge der Operationen steuert, sind so eingestellt, daß der Inhalt der ungeraden Speicherwerksstellen nicht beachtet wird, während der Zifferninhalt der geraden Speicherwerksstellen nach dem Pufferregister MBRE, dem Speicherwerksdatenregister MDR, dem 'Einerziffernregister Di?U und den Einerkanälen des Hilfsspeicherwerks MARS geleitet wird. Die Ziffer 4, welche sich an der Hauptspeicherwerksstelle 01082 befand, wird an die Einer-Stelle des Operandenregisters OR 1 gebracht, welches nunmehr die Zahl 01184 enthält. Das Programmzeitschaltwerk bewirkt im vierten Schritt eine Vergrößerung um 1, so daß das Instruktionsregister /i?l auf 01083 gebracht wird, welcher Zahlenwert am Ende des Schrittes 4 in das Speicherwerksadressenregister MAR eingebracht wird.
Schritt 5: Das Speicherwerksadressenregister MAR enthält nunmehr die Zahl 01083. Dieses ist eine ungerade Adressenstelle. Ein Ausführungsbefehlswort ist derart, daß die Zehntausender-Stelle der Ö-Adresse sich stets an einer ungeraden Stelle des Hauptspeicherwerkes befindet; diese Stelle tritt stets zusammen mit der Einer-Stelle der P-Adresse auf. Wenn die beiden Zahlen im Hilfsspeicherwerk MARS gebildet sind, müssen sie zusammen nach den Pufferregistern MBRE und MBRO gebracht werden. Im fünften Schritt erscheint der Inhalt der Hauptspeicherwerksadressenstellen 01082 und 01083 in den Das Instruktionsregister IR1 enthält jetzt den Zahlenwert 01085, welcher am Ende des fünften Schrittes in dem Speicherwerksadressenregister MAR erzeugt wird.
Schritt 6: Das Speicherwerksadressenregister MAR enthält jetzt die Zahl 01085. Dies ist eine ungerade Adresse, und es werden der Inhalt dieser Adresse und der Inhalt der nächstniedrigeren geraden Adresse in die Pufferwerksregister MBRO und MBRE übertragen. Die Ziffer der geraden Adressenstelle, nämlich die Ziffer 1, verläuft durch das Pufferregister MBRE und die Ziffernregister durch die Zehnerstellen längs des 1000-Kanals und schaltet die Tausender-Stelle des Operandenregisters OR 2 auf den Ziffernwert 1. Die Ziffer der ungeraden Adressenstelle, nämlich die Ziffer 2, verläuft über das Pufferwerksregister MBRO und das Speicherwerksdatenregister MDR und das Ziffernregister entlang dem Kanal 100 durch das Hilfsspeicherwerk MARS, so daß die Hunderter-Stelle des Operandenregisters OR 2 auf den Ziffernwert 2 gebracht wird. Es enthält nunmehr das Operandenregister OR 2 den Zahlenwert 01200. Das Programmzeitschaltwerk bewirkt eine Vergrößerung um 2; nunmehr enthält das Instruktionsregister IR1 den Zahlenwert 01087, welcher am Ende des sechsten Schrittes nach dem Speicherwerksadressenregister MAR übergeführt wird.
Schritt 7: Das Speicherwerksadressenregister MAR enthält nunmehr den Zahlenwert 01087. Es wird der Inhalt der Hauptspeicherwerksadressenstelle 01087 und 01086 nach den Pufferwerksregistern MBRO und MBRE übergeführt. Die Ziffer 8 der geraden Adressenstelle geht über das Pufferregister MBRE und das Zehnerziffernregister DRT entlang dem Kanal 10 und stellt die Zehner-Stelle des Operandenregisters OR 2 auf den Ziffernwert 8 ein. Die Ziffer 4 der ungeraden Adressenstelle 4 geht durch das Pufferregister MBRO und das Speicherwerksdatenregister MDR und das Einerziffernregister DRU über den Kanal 1 zu der Einer-Stelle des Operandenregisters OR 2. Nunmehr enthält das Operandenregister OR 2 die Zahl 01284. Das Programmzeitschaltwerk bewirkt eine Vergrößerung um 1, so daß der Inhalt des Instruktionsregisters /i?l auf 01088 vergrößert wird.
Schritt 8: Dieser Zyklus ist erforderlich, um die Weiterschaltungsimpulse des Programmzeitschaltwerkes zu synchronisieren. Da das Operandenregister OPR auf Ausführung eines Ubertragungsbefehls eingestellt ist, werden im Schritte die Schaltkreise so eingestellt, daß der Inhalt des Operandenregisters OR 1 in das Speicherwerksadressenregister MAR übergeführt wird, so daß die Ausführung der Übertragungsoperation beginnen kann. Das Speicher-
werksadressenregister MAR enthält den Zahlenwert 00184, das Operandenregister OR 2 den Zahlenwert 01284 und das Instruktionsregister IR1 den Zahlenwert 01088.
Im nachfolgenden werden die einzelnen Schritte der Ausführung eines Übertragungsbefehles erörtert.
Schritt 1: Der Inhalt der Speicherstelle 00184 des Hauptspeicherwerkes und der zugehörigen ungeraden Speicherstelle 00185 werden nach den Stufen MBR übertragen. Da es sich um eine gerade Adresse handelt, erscheint der Inhalt von MBRE in der Stufe MDR. Der Inhalt von OR 1 wird um 1 vergrößert, und es erscheint in OR 1 der Inhalt mit dem Zahlenwert 00185; der Inhalt von OR2 wird nicht verän- dert. Der Inhalt der Hauptspeicherwerksspeicherstelle 00184, nämlich die Zahl 1!, wird in die Stufe MDR eingeführt. Etwa am Ende des Schrittes 1 werden die Register MBR gelöscht als ein Teil des Regenerationsvorganges des Hauptspeicherwerkes; eine Löschung von MDR wird nicht vorgenommen. Da es sich hier um den Befehl zur Übertragung eines Feldes handelt, wird der Inhalt von MDR kontinuierlich abgesucht, ob eine Aufzeichnungsmarke auftritt; wenn eine Aufzeichnungsmarke auftritt, wird der Trigger für Aufzeichnungsmarken erregt, wodurch die Übertragungsoperation ihr Ende hat und der nächste Ausführungsbefehl von dem Instruktionsregister IRl benutzt wird. Im vorliegenden Fall ist der Inhalt von MDR nicht eine Aufzeichnungsmarke. Am Ende des ersten Schrittes des Ausführungszyklus enthält MAR den Wert 01284; OR 1 enthält 00185; OR 2 enthält 01284; MBR enthält 00 und MDR enthält 1!.
Der Inhalt von IR1, nämlich die Adresse des nächsten Ausführungsbefehls, bleibt während der ganzen Zeitspanne der Ausführung unverändert.
Schritt 2: MAR enthält die Zahl 01284, also eine gerade Adresse. OPR enthält den Ausführungsbefehl einer'Übertragung. Der Inhalt der Adressenstelle 01284 und der Inhalt der zugehörigen ungeraden Adressenstelle, nämlich der Adressenstelle 01285, werden dem Hauptspeicherwerk entnommen und nach MBRE und MBRO übertragen. MBRE indessen ist gesperrt. Der Inhalt von MBRO wird lediglich in diesem Schritt beibehalten. Gleichzeitig mit dem gesperrten Versuch, vom Hauptspeicherwerk MBRE zu erregen, wird der Inhalt von MDR, nämlich die Ziffer 1!, nach MBRE übergeführt. Der Inhalt von MBRE und MBRO, nämlich die Ziffern 1! und irgendeine Ziffer werden im Hauptspeicherwerk an den Adressenstellen 01284 und 01285 wieder erzeugt. Es wird eine Vergrößerung um 1 bewirkt. Die Adresse 01284 enthält jetzt die Ziffer 1!; MAR enthält 00185; Oi? 1 enthält 00185; OR 2 enthält 01285.
Schritt 3: Dieser Schritt entspricht dem Schritt 1; indessen enthält MAR die ungerade Adresse 01185 an Stelle einer geraden Adresse. Am Ende des dritten Schrittes enthält MAR die Zahl 01285, OR 1 enthält 00186, OR 2 enthält 01285, MBR enthält 00 und MDR enthält die Ziffer 2.
Schritt 4: Es handelt sich um einen weiteren Schritt nach Art des Schrittes 2. MAR enthält 01285. Am Ende des vierten Schrittes enthält das Hauptspeicherwerk an der Stelle 01284 die Ziffern 1! 2, MAR enthält 00186, OR 1 enthält 00186, OR 2 enthält 01286.
Die Ausführung des Übertragungsbefehls wird weiter fortgesetzt, wobei in Zyklen entsprechend Schritt 1 eine Entnahme aus dem Hauptspeicherwerk und Überführung nach MDR erfolgt und die in MDR enthaltenen Ziffernwerte in Zyklen entsprechend Schritt 2 an den durch den Ubertragungsbefehl charakterisierten Stellen gespeichert werden.
Eine der Stelle 01205 entnommene Aufzeichnungsmarke wird an der Stelle 01305 gespeichert, und dann ist die Ausführung des Übertragungsbefehls abgeschlossen; es wird von dem Register IRl die Adresse des nächsten Befehls entnommen, nämlich 01088, an welchen RD 00000-00300 gespeichert ist.
Für den Befehlszyklus folgen dann die acht vorbeschriebenen Schritte.
Der Ausführungszyklus besteht aus einem Schritt für jedes Zeichen, welches von dem Papierstreifen entnommen wurde; es wird das Register MDR vom Streifen her angefüllt, der Inhalt wird an die gewünschte Stelle über MBRE oder MBRO und die Regenerierungskreise geleitet. MAR wählt die Stelle des Hauptspeicherwerkes aus, wobei die Ablesekreise nach MDR vom Hauptspeicherwerk her blockiert sind, und es werden die dem Band entnommenen Daten von MDR über die Regenerierungskreise an eine gewünschte Stelle des Speicherwerkes gebracht. Wenn die Aufzeichnungsmarke am Ende der Additionstabelle festgestellt wird, ist das Ablesen vom Band beendet; es wird aus der Stufe IR1 die Adresse für den nächsten Befehl entnommen, nämlich 01100, wo sich der Befehl A 01297-01300 gespeichert befindet.
Eine in einem binär verschlüsselten Wort auftretende Schlüsselmarke hat verschiedene Bedeutungen, je nach ihrer Stellung im Wort, im Speicherwerk oder bei einem Ausführungsbefehl. Die Bedeutungen sind:
1. In den meisten Befehlen ist während des Befehlszyklus das Zeichen ohne Bedeutung.
2. In der Einer-Stelle bedeutet das Zeichen ein Minuszeichen.
3. An irgendeiner Stelle eines Wortes, abgesehen von der Einer-Stelle, charakterisiert das Zeichen die höchste maßgebliche Stelle im Wort, welche zwischen zwei und hundert Stellen liegen kann. Wenn eine Ziffer im dritten Schritt einer Additionsfolge der Addiertafel entnommen wird, bedeutet das Zeichen einen Übertrag.
4. Die verschiedenen Trigger zum Dekodieren der Schlüsselmarken werden von Torstufen gesteuert, die bei Koinzidenz der Eingangssignale wie folgt ansprechen:
Schlüsselmarke plus Signal
des ersten Zyklus Plustrigger
Schlüsselmarke plus kein
BOF-Signal plus kein Instruktionszyklussignal
plus kein Additionsstufe-
3-Signal Wortmarkentrigger
(Ende eines Feldes)
Schlüsselmarke plus Ausführungszyklus Schritt-3-Signal Übertragstrigger
Wenn eine Schlüsselmarke in der Einer-Stelle entweder des Addenden oder Augenden in den Additionsschritten 1 und 2 erfolgt, wird die Schlüssel-
409 598/359
marke als Minuszeichen gedeutet. Wenn eine Schlüsselmarke nicht auftritt, wird dies als ein Pluszeichen gedeutet. Im Schritt 3 einer Additionsfolge wird der den ersten Zyklus charakterisierende Trigger gelöscht. Der Löschungszustand des Triggers des ersten Zyklus charakterisiert, daß es sich um Ziffern höherer Ziffernstelle im Addenden und Augenden handelt. Jedes Wort muß mindestens zwei Ziffern haben, eine Schlüsselmarke in der Einer-Stelle charakterisiert ein Minuszeichen und eine Schlüsselmarke in irgendeiner anderen Stelle das Ende des Wortes (Wortmarke).
Eine Addition wird unter Bezugnahme auf eine Additionstabelle durchgeführt, die im Hauptspeicherwerk gespeichert ist und in F i g. 2 veranschaulicht ist. Ziffern ohne Schlüsselmarke erscheinen für sich in den Quadraten (Speicherstellen); Ziffern mit Schlüsselmarke zeigen einen Übertrag an und sind durch Ausrufungszeichen charakterisiert. Die Augendenziffer wird als Einer-Stelle verwendet und die Addendenziffer als Zehner-Stelle. Es wird eine Zahl 3 in der Hunderter-Stelle der die Adressenstellen des Hauptspeicherwerkes auswählenden Stufe eingeführt, wenn die Additionstabelle, welche sich an den Stellen 300 bis 399 befindet, ausgewählt wird. Dementsprechend erscheint die Summe 7 bei der Addition von 3 und 4 an der Adressenstelle 00334; wenn 7 und 8 addiert werden, erscheint die Summe 15 an der Adressenstelle 00378, und zwar als 5!.
In einem Befehlszyklus ist der Ausführungsbefehl A, P5, P4, P3, P2, P1, Q5, ß4, Q3, Q2, Q1 der Gegenstand des aus acht Schritten bestehenden Befehlszyklus, wobei das Operationsregister OPT? 501-502 und die Dekodierungsvorrichtung 503 das Programmzeitschaltwerk auf Addition stellen; OR 1 enthält die ß-Zahl, welche die Adresse des Addendenwortes ist, und Oi? 2 enthält die P-ZaM, welche die Adresse des Augendenwortes ist. IR1 enthält die Adresse des nächsten Ausführungsbefehles; MAR enthält die P-Nummer, welches die Adresse der Einer-Stelle des Addenden ist. Oi? 3 ist ebenfalls auf die P-Zahl eingestellt, so daß die Adresse der Einer-Stelle des Augenden zur Verfügung steht, falls dieselbe nochmals benötigt wird. : Der Ausführungszyklus eines Additionsbefehles erfordert pro Ziffernstelle vier Schritte, nämlich die folgenden:
Schritt 1: Es wird von der Speicherstelle des Hauptspeicherwerkes, welche durch den Inhalt der Stufe OR 1 gekennzeichnet ist, die Ziffer des Addenden entnommen. Die Ziffer wird in der Stufe £>i? U gespeichert. Mit anderen Worten, es erfolgt der Vorgang »RO Addendenziffer entsprechend OR 1 nach DRU«. Es wird der Inhalt von OR 1 verringert.
Schritt 2: RO Augendenziffer entsprechend OR 2 nach MDR. Es wird MAR auf 003 (Augendenziffer) (Addendenziffer plus übertrag) eingestellt.
Schritt 3: RO Speicherwerksaddiertabelle entsprechend MAR nach MDR, wo die Ziffer der Summe und die Schlüsselmarke für den Übertrag erscheint. Es wird nach Feststellen der Übertragmarke der Übertragstrigger eingestellt.
Schritt 4: RO Augendenziffer-Speicherstelle entsprechend OR 2, Blockieren der Übertragung nach MDR, welche die Summenziffer enthält. Es wird die Ziffer der Summe nach der Speicherstelle der Augendenziffer über MBR und einen Regenerierungskreis gebracht. Verringerung des Inhaltes von OR 2.
Die Additionsbewegung erfolgt von der niedrigen Ziffernstelle zu den hohen Ziffernstellen, d. h. den Einem, Zehnern, Hundertern usw., bis die Schlüsselmarke des Augendensignals die Beendigung dieser 5 Operation andeutet.
Da die Summe an den Speicherstellen des Augenden gespeichert wird, ist die Anzahl der Ziffernstelle der Summe gleich der Anzahl der Ziffernstellen des Augenden. Eine Summe, die sich über diese Grenzen des Augendenfeldes erstrecken würde, würde die höchsten Ziffernstellen verlieren; ein solches »Überfüllen« wird in der Maschine festgestellt, falls es dazu kommen sollte.
Es soll im nachfolgenden das Beispiel einer Addition nach Programm erörtert werden:
Einer-Stelle: Am Ende des Befehlszyklus / ist der Inhalt der Register, des Speicherwerkes und der Übertragstrigger wie folgt:
OPR
IRl
OR 1
Oi? 2
MAR
01300
01297
Übertragstrigger
01112
01300
01297
01300
(2!47)
(71890123)
nicht erregt
Es sind vorstehend Zahlenwerte in Klammern gesetzt.
Die Änderungen, welche sich in den Schritten der Addition in der Einer-Stelle ergeben, sind wie folgt:
Schritt 1: RO Addendenziffer entsprechend OR 1 über DRU und Nebenweg (Bypaß) nach MAR; der Inhalt von OR 1 wird erniedrigt.
OR 1 — 01299 DRU — (7)
MAR — 00007
Schritt 2: RO Augendenziffer entsprechend OR 2
über MDR nach MAR in der Zehner-Stelle. Es wird OR 3 entsprechend OR 2 eingestellt, um die Adresse des Augendenfeldes des ersten Zyklus beizubehalten.
MDR — (3)
MAR — 00037
Schritt 3: RO Additionstafel des Hauptspeicherwerkes entsprechend MAR nach MDR. Die Additionstafelstelle 00337 enthält die Ziffer 0!. Die Hunderter-Stelle 3 wird durch Erzeugen von Signalen an den Leitungen der Bitstelle 1 und der Bitstelle 2 während des Schrittes 3 eingegeben, damit die Adresse der Additionstafel an der gewünschten Stelle des Hauptspeicherwerkes entsteht. Es wird der Übertragsschalter eingestellt.
MDR — 0!
Übertragstrigger — erregt
Schritt 4: RO Augendenziffernstelle 01297 entsprechend OR 2, Sperren der Übertragung des Inhaltes (3) nach MDR, wo die Summenziffer 0 ererscheint. Einführen der Summenziffer 0 an die Einer-Stelle des Augenden an der Speicherwerkstelle 01297 über das Pufferregister MBRO und den Re-
21 22
generierungskreis. Vermindern des Inhaltes von Schritt 4: RO Augenden-Hunderter-Stelle der Spei-
OR 2. cherstelle 01295 gemäß OR 2, Blockieren der Über-
01297 — (7!89012O) tragung des Inhaltes (1) nach MDR, wobei MDR die
OR 2 — 01296 Summenziffer (3) behält. Die Summenziffer (3) wird
Zehner-Stelle: 5 an die Hunderter-Stelle 01295 des Augenden über
OR 1 — 01299 die Stufe MBRO und den Regenerierungskreis ge-
OR 2 — 01296 geben. Der Inhalt von OR 2 wird um 1 verringert.
MAR — 01299 01297 — (7!890/37O)
(Addend) 01300 — (2147) OR 2 — 01294
(Augend/Partialsumme) 01297 - (7!89012/O) 10 Schlüsselzeichen im Addenden
Übertragstrigger — erregt . .... . , ... ,
Das Schlusselzeichen im Addenden wird wahrend
Schritt 1: RO Addenden-Zehner-Stelle entspre- der Verarbeitung der Hunderter-Stelle festgestellt, und chend ORl über DRU und +1 nach MAR. Verringe- es wird der Wortmarke-1-Trigger erregt. Dieser Trigrung des Inhaltes von OR 1. Löschen des Übertrags- 15 ger unterdrückt den ersten Schritt in den weiteren schalters. Zyklen der Additionsfolge; die weiteren Additionen OR 1 — 01298 entsprechend der Folge der Schritte 2-3-4.
DRU — (4) Tausender-Stelle: ORl- 01297
MAR - 00005 OR2 _ 01
Übertragstrigger — gelöscht a DRU 0
Schritt 2: RO Augenden-Zehner-Stelle entspre- DRT — 0
chend Oi? 2 über MDR nach Zehner-Stelle MAR. MAR — 01294
MDR — (2) (Addend) 01300 — (2!47)
MAR Q0025 25 (Augend/Partialsumme) 01297 — (7!890/37O)
Schritt 3: RO der Hauptspeicherwerksadditions- Schritt 1: Entfällt.
tabelle entsprechend MAR nach MDR. Die Speicher- Schritt 2: RO Augenden-Tausender-Stelle (0) gestelle der Additionstabelle 00325 enthält die Zahl 7. maß OR2 über DRT nach M^Ä-Zehner-Stelle.
In der Hunderter-Stelle wird automatisch die Zahl 3 30 DRT (0)
eingeführt. MJ)R _ (?) MAR _
Schritt 4: RO Augenden-Ziffernstelle 01296 ent- Schritt 3: RO Hauptspeicherwerksadditionstabelle
sprechend OR 2, Sperren der Übertragung des Inhal- gemäß MAR nach MDR. Die Adressenstelle 00300
tes, nämlich der Ziffer 2 nach MDjR, wo die Summen- 35 der Additionstabelle enthält die Ziffer (0).
ziffer (7) steht. Die Summenziffer, nämlich 7, wird über AiDi? (0)
MBRE und den Regenerationskreis an die Zehner-Stelle der Speicherstelle 01296 gebracht. Der Inhalt Schritt 4: RO Augenden-Tausender-Stelle 01294 von Oi? 2 wird verringert. gemäß OR 2, Sperren der Übertragung des Inhaltes
01297 — (7!8901/7O) 40 (0) nach MDR, wobei MDR die Summenziffer (0)
OR 2 — (01295) behält. Es wird die Summenziffer an die Tausender-Hunderter-Stellung: Stelle 01294 des Augenden über MBRE '■ und den
OR 1 — 01298 Regenerierungskreis gebracht. Verringerung des In-
OR2 01295 haltes von OR2.
DRU — 0 « 01297 — (7!89/037O)
DRT — 0 Oi? 2 — 01293
MAR -01298 Zehntausender-Stelle:
(Addend)01300-(2!47) ™l
(Augend/Partialsumme) 01297 — (7!8901/7O) 50 ~*~ ~
Übertragstrigger — nicht erregt _ .
Schritt 1: RO Hunderter-Stelle des Addenden ge- mar
. maß OR 1 über DRU und Nebenschluß nach MAR. , A J J .. ™~*; ~ ,Τ
Verringerung des Inhaltes von OR 1. (Addend) 01300 - (2!47)
55 (Augend/Partialsumme) 01297 — (7!89/0370)
~ Schritt 1: Entfällt.
Schritt 2: Ro Augenden -Zehntausender- Stelle p) gemäß 0R 2 über DRT nach MAR Jn der zehner-Schritt 2: RO Augenden-Hunderter-Stelle gemäß Stelle.
OR 2 über DRT nach MAR Zehner-Stelle. 60 ?*£ ~ J?)
MAR — 00090
DRT (1)
. J. Schritt 3: RO Hauptspeicherwerkaddiertabelle ge-
MAK — UUU12 mäß MAR nacil MDR j-)ie stelle 00390 der Addi_
Schritt 3: RO Hauptspeicherwerksadditionstafel tionstabelle enthält die Ziffer (9).
gemäß MAR nach MDR. Die Additionstafeladresse 65 MDJi rcn
00312 enthält die Zahl 3. Die Hunderter-Ziffer 3 K '
wird automatisch eingeführt. Schritt 4: RO Augenden-Zehntausender-Stelle
MDR — (3) 01293 gemäß OR 2, Sperren der Übertragung des In-
haltes (9) nach MDR, wobei MDR die Summenziffer (9) behält. Verringerung des Inhaltes von OR 1. Die Summenziffer (9) wird an die Zehntausender-Stelle 01293 des Augenden über MBRO und den Regenerierungskreis gebracht.
01297 — (7!8/9037O)
ORl — 01292 Hunderttausender-Stelle:
ORl — 01297
ORl- 01292 DRU — 0 DRT — 0 MAR — 01292 (Addend) 01300 — (2!47) (Augend/Partialsumme) 01297 — (7!8/9037O)
Schritt 1: Entfällt.
Schritt 2: RO Augenden-Hunderter-Stelle (8) gemäß OR 1 über DRT nach MAR in die Zehner-Stelle.
DRT — (8)
MAR — 00080
Schritt 3: RO Speicherwerksadditionstabelle gemäß MAR nach MDR. Die Additionstabelle enthält an der Speicherstelle 00380 den Inhalt (8).
MDR — (8)
Schritt 4: RO Augenden-Hunderttausender-Stelle 01292 gemäß ORl, Sperren der Übertragung des Inhaltes (8) nach MDR, wo die Summenziffer (8) erhalten bleibt. Verminderung des Inhaltes von OR 1.
Es wird die Summenziffer (8) an die Hunderttausender-Stelle 01292 über MBRE und den Regenerierungskreis gebracht.
01297 ORl
Millionen-Stelle:
(7!/890370) 01291
ORl — 01297 OR 1 — 01291 DRU — 0 DRT — 0
MAR — 01292 (Addend) 01300 — (2!47) (Augend/Partialsumme) 01297 — (7!/89037O)
Schritt 1: Entfällt.
Schritt 2: RO Augenden-Millionenstelle (7) gemäß ORl über DRT in die Zehner-Stelle von MAR.
DRT — (7)
MAR — 00070
Schritt 3: RO Hauptspeicherwerksadditionstafel gemäß MAR nach MDR. Die Stelle 00370 der Additionstafel enthält die Ziffer (7).
MDR — (7)
Schritt 4: RO Augenden-Millionenstelle 01291 gemäß OR 2, Sperrung der Übertragung des Inhaltes (7!) nach MDR, wo die Summenziffer (7) erhalten bleibt. Verringerung des Inhaltes von OR 1. Es wird die Summenziffer (7) an die Millionen-Stelle 01291 über MBRO und die Regenerierungsstufen geleitet, so Die Summenbildung ist damit abgeschlossen.
Schlüsselzeichen des Augenden
Das Schlüsselzeichen des Augenden wurde während der Verarbeitung der Millionen-Stelle festgestellt, wobei der Trigger Wortmarke 2 erregt wird. Würde der Trigger Wortmarke 2 erregt werden, während der Trigger Wortmarke 1 nicht erregt ist, so würde sich der Zustand des Überfüllens ergeben; die Regeln bei der Programmierung erfordern, daß das Feld des Augenden größer gewählt wird als das des Addenden, damit die gebildete Summe aufgenommen werden kann.
Eine Schlüsselmarke an der Einer-Stelle eines Feldes bringt zum Ausdruck, daß die das Feld einnehmende Zahl ein negatives Zeichen trägt; die Abwesenheit eines Schlüsselzeichens an dieser Stelle beschreibt ein Pluszeichen. Der Pluszeichentrigger und der Minuszeichentrigger arbeiten mit der Dekodierungsstufe 503 zusammen und liefern die Steuerung des Vorzeichens während der Ausführung des Befehles.
Die algebraische Addition umfaßt die Addition von zwei Zahlen gleichen Vorzeichens und die Addition von zwei Zahlen ungleichen Vorzeichens, d. h. die Subtraktion. Die verschiedenen Kombinationen der Plusoperanden und der Minusoperanden werden festgestellt gemäß den für die Verfahren, nämlich für die Addition, die Subtraktion, die Multiplikation usw.
gültigen Regeln.
Vorzeichentabelle
Addition
Subtraktion
Multiplikation
Möglich
Augend/Minuend ORl
Addend/Subtrahend ORl
Erzwungenes Zeichen
TIC 408 (Augend/Minuend)
TIC 404 (Addend/Subtrahend)
Ausgangsübertrag
Kein Ausgangsübertrag
Vorzeichen nach nochmaliger Komplementbildung
Il
TCTT TTCT
O O
R R
CTTT TTTC
-00-
R R
In der vorstehenden Tabelle bezeichnet T den Grundwert, C das Komplement, O ein Überfließen oder ein Minuszeichen, R eine nochmalige Komplementbildung.
Hinsichtlich der Subtraktion ergibt sich folgendes: Die Instruktion S-P-Zahl-g-Zahl verwendet die übliehen acht Schritte des Befehlszyklus, in welchen OPR und die Dekodierungsvorrichtung das Zeitschaltwerk auf Subtraktion einstellen, OR 1 die Q-Zahl erhält, welche die Adresse der Einer-Stelle des Subtrahenden ist und OR 2 und OR 3 die P-Zahl erhalten, welches die Adresse der Einer-Stelle des Minuenden ist.
In dem Ausführungszyklus erfolgt die Subtraktion durch Additionen der Zehnerkomplemente.
Schritt 1: RO der Subtrahendenziffer gemäß OR 1 nach DRV. Verringerung von OR 1.
Schritt 2: RO der Minuendenziffer gemäß OR2 nachDi?T. Einstellen von MAR auf 003 (Minuendenziffer) (Subtrahendenziffer plus Übertrag).
Die Minuendenziffer kann in ein Komplement umgebildet werden, bevor sie nach MAR übertragen wird, abhängig von den relativen Zeichen des Minuenden und des Subtrahenden, so daß die Additionstafel verwendet werden kann. Die Subtrahendenziffer, die ebenfalls ein Komplementwert sein kann, wird einem Übertrag entsprechend geändert und in die Einer-Stelle von MAR eingebracht; die Minuendenziffer oder das Komplement wird in die Zehnerziffernsteile von MAR eingebracht. Da die Stufen TfC 404 und 408 das Komplement gegen 9 bilden, wird ein Übertrag stets in die Einer-Stelle eingeführt, zu dem Zweck, das Komplement gegen 10 zu bilden. Es wird ferner eine Minusschlüsselmarke eingeführt in den Fällen — oder +.
Schritt 3: RO Hauptspeicherwerksadditionstafel gemäß MAR nach MDR, so daß in MDR die Differenzziffer und die Schlüsselmarke zwecks Übertrags aufgenommen wird. Es wird der Übertragstrigger entsprechend der Schlüsselmarke erregt.
Schritt 4: RO Minuendenziffernstelle gemäß OR 2, Sperrung der Übertragung nach MDR, wobei MDR die Differenzziffer enthält. Es wird die Differenzziffer an die Speicherstelle der Minuendenziffernstelle über MBR und die Regenerierungsstufen geleitet. Es wird OR 2 verringert.
Die Subtraktion erfolgt im Wege der Addition von Komplementen gegenüber 10; es ist eine nochmalige Komplementbildung erforderlich, wenn sich kein Übertrag von der höchsten Ziffernstelle in einem ±-Fall ergibt, d.h. bei einer Addition, in der die Vorzeichen^ von Addend und Augend zunächst verschieden waren und die Summe positiv ist; ebenfalls im Falle einer Subtraktion, in welcher die Vorzeichen des Subtrahenden und des Minuenden gleich sind und die Differenz positiv ist. Wenn ein Übertrag an der höchsten Ziffernstelle erfolgt, wird er verwendet zur Steuerung des Vorzeichens, da eine Subtraktion unter Ausnutzung von Komplementen gegen 10 die Anwendung der flüchtigen 1 nicht erfordert.
Es wird nunmehr ein einfaches Beispiel einer Subtraktion beschrieben.
Nachdem der Befehlszyklus I beendet ist, ist der Inhalt der Register, des Speicherwerkes und der Zustand der Übertragstrigger wie folgt:
OPR — 22
/i?l — 01124
OR1 — 01304
Oi?2
Oi? 3
Pi? 1
(Subtrahend) 01304
(Minuend) 01302
01302
01302
01304
01304
(0!2)
(0!3)
In Anbetracht des Subtraktionsbefehles und der gleichen Vorzeichen der Operanden wird das Komplement vom Minuenden gebildet; TIC 408 bleibt während der Subtraktionsfolge in Tätigkeit.
Schritt 1: RO der Einer-Stelle des Subtrahenden (2) gemäß Oi? 1 nach DRU. Der Inhalt von OR 1 wird vermindert.
DRU ~ (2)
ORl- 01301
Schritt 2: RO der Einer-Stelle (3) des Minuenden gemäß OR 2 nach DRT. Es wird MAR eingestellt auf 003 (Komplement gegen 9 der Einer-Stelle) (Einer-Stelle des Subtrahenden plus erzwungener Übertrag). OR 3 wurde so eingestellt, daß die Adresse des Minuendenfeldes für eventuelle spätere Zwecke zur Verfügung steht.
DRT — (3)
MAR 00363
Schritt 3: RO der Hauptspeicherwerksadditionstabelle (Speicherstelle 00363) gemäß MAR nach MDR. Die Additionstabelle enthält an der Speicherstelle 00363 die Ziffer 9. MDR nimmt die Differenzziffer 9 auf.
Schritt 4: RO der Minuenden-Einerziffernstelle 01302, welche die Zahl (3) erhielt, gemäß OR 2, Sperren der Übertragung nach MDR, wobei MDR die Differenzziffer (9) enthält. Es wird die Differenzziffer (9) an der Einerziffernstelle des Minuenden, nämlich an der Speicherwerksstelle 01302 gespeichert. Es wird Oi? 2 verringert.
01^09
01301
Zehner-Stelle: ORi — 01303
OR 2 — 01301
Übertragstrigger — erregt
(Subtrahend) 01304 — (0!2)
(Minuend/Partialdifferenz) 01302 — (0!/9!)
Schritt 1: RO der Subtrahenden-Zehner-Stelle (0) gemäß OR 1 nach DRU. Verringerung des Inhaltes von OR 2.
DRU — (Ö!)
Oi? 1 01300
Schritt 2: RO der Minuenden-Zehner-Stelle (0!) gemäß OR 2 nach DRT. Einstellung von MAR auf 003 (Komplement gegen 9 der Zehner-Stelle des Minuenden) (Subtrahenden-Zehner-Stelle plus Übertrag).
003 (9) (0)
MAR 00390
Schritt 3: RO der Additionstafelstelle des Haupt-Speicherwerkes 00390 gemäß MAR nach MDR. Die
409 598/359
Stelle 00390 der Additionstafel enthält die Ziffer 9. MDR erhält daher die Ziffer 9.
MDR (9)
Schritt 4: RO Minuenden-Zehner-Stelle 01301. Verringerung von OR 2. Die Differenzziffer (9) wird an die Minuenden-Zehner-Stelle 01301 gebracht.
01302 — (9!9!) ORl- (01301)
Subtrahend und Schlüsselmarke des Minuenden
Während der Subtraktion wurde bei der Zehner-Stelle das Schlüsselzeichen für das Wort Ende in beiden Operanden festgestellt, und dadurch wurde der Wortmarkentrigger erregt. Der Übertragstrigger ist nicht erregt, dementsprechend ist eine nochmalige Komplementbildung erforderlich, um den Differenzwert in die wahre Form umzuwandeln.
Falls erforderlich, vollzieht sich die nochmalige Komplementbildung wie folgt:
Die Adresse der Einer-Stelle des Augenden bzw. der Summe wurde während des Befehlszyklus / in der Stufe OR 3 gespeichert. Falls es sich herausstellt, daß nochmalige Komplementbildung erforderlich ist, bewirkt das Programmzeitschaltwerk ein Rekomplementprogramm von Addierschritten 2-3-4, bis die den Schluß des Wortes charakterisierende Schlüsselmarke auftritt. Da dies eine Komplementaddition ist, erhält die Einer-Stelle einen Übertrag, um das Komplement gegen 10 zu bilden, sowie eine Schlüsselmarke, welche anzeigt, daß die Summe positiv ist. In dem vorliegenden Fall ist die arithmetische Operation wie folgt:
Einer-Stelle
6 Minuend (Komplement gegen 9 der Zahl 3) 2 Subtrahend
1! erzwungener Übertrag und Schlüsselmarke
9!
Zehner-Stelle
9 Minuend (Komplement gegen 9 der Zahl 0) 0 Subtrahend
! Schlüsselmarke
9!9! algebraische Summe (Komplementform Schlüsselmarke als Marke des Wortendes)
Da kein Übertrag von der hohen Ziffernstelle vorliegt, ergibt sich die Notwendigkeit einer nochmaligen Komplementbildung:
Einer-Stelle
0 algebraische Summe (Komplement gegen 9 der Zahl 9!)
1 erzwungener Übertrag
1
Zehner-Stelle
0 algebraische Summe (Komplement gegen 9 der Zahl 9!)
! kein Übertrag. Schlüsselmarke als Marke des Wortzeichens
0! korrekte algebraische Summe und Vorzeichen
Am Ende des nochmaligen Komplementierungsvorganges enthält das Feld 01302 die Zahl (0! 1), was eine Zahl +1 zum Ausdruck bringt. Das gedachte Programm enthält als Programmschritt 7 den Befehl »Übergang, wenn keine Schlüsselmarke«. Dieser Ausführungsbefehl bewirkt den Übergang bei negativen Werten, den Übergang bei Wortmarken und sonstigen Vorgängen, in welchen eine Schlüsselmarke auftritt, auch wenn infolge einer früheren SF-Anweisung (Befehlerzeugung einer Schlüsselmarke) eine solche auftritt.
ίο Die Schlüsselmarke, welche das negative Vorzeichen in dem Feld bei 1302 charakterisiert, verhindert einen Übergang (branch), und es geht das gedachte Programm auf den nächsten Ausführungsbefehl über.
Hinsichtlich der Ausführung einer Multiplikation ergeben sich die nachfolgenden Verhältnisse:
Die Multiplikation umfaßt eine mehrfache Serie von Bezugnahmen auf das Speicherwerk, wobei in jeder Serie das Partialprodukt einer Ziffer des Multiplikators und einer Ziffer des Multiplikanden durchgeführt wird und anschließend Additionen folgen, in welchen die Partialprodukte in einem Akkumulatorabschnitt, welcher einen Teil des Hauptspeicherwerkes bildet, addiert werden. Es ist im nachfolgenden auf die F i g. 1 und 3 Bezug zu nehmen.
Der Befehlszyklus einer Multiplikation umfaßt die üblichen acht Schritte, während welcher das Operationsregister OPR 501-502 auf die Multiplikation eingestellt wird und OR 1 die Ö-Zahl zugeführt erhält, welche die Adresse des Multiplikatorfeldes bildet, und OR 2 die P-Zahl zugeführt erhält, welche die Adresse des Multiplikandenfeldes bildet. Oi? 3 erhält die Einer-Stelle des Multiplikanden. IRl erhält die Adresse des nächsten Ausführungsbefehles; MAR erhält die P-Zahl, welche die Adresse der Einer-Stelle des Multiplikators ist.
Eine 20stellige Akkumulatorfläche, entsprechend den Stellen 00080 bis 00099, ist für gewöhnliche Multiplikationen im Hauptspeicherwerk reserviert. Das Hauptspeicherwerk enthält ferner eine Fläche von zweihundert Stellen, nämlich die Adressenstellen 00100 bis 00299, zur Aufnahme einer Multiplikationstabelle, wie sie in Fig. 3 dargestellt ist. Schlüsselmarken werden nicht verwendet, da die Überträge bei Multiplizieren von zwei Dezimalziffern selbst Ziffern zwischen 0 bis 8 sind, welche nicht durch eine Schlüsselmarke ausgedrückt werden können. Das Produkt von zwei Ziffern ist im allgemeinen zweistellig; dementsprechend erfordert eine Tafel sämtlicher Kombinationen der Ziffern 0 bis 9 hundert Speichergruppen, wobei die Mehrzahl derselben zweistellige Zahlen speichern müssen. Um eine einfache Adressenwahl zu haben, haben alle solche Gruppen zwei Stellen. Das Aufsuchen der Tabelle für das Produkt von zwei Zahlen entsprechend den Ziffernwerten, erfordert das Auswählen der geeigneten Gruppe aus der Tafel, welche zweihundert aufeinanderfolgende Adressenstellen hat.
Da nur hundert Kombinationen von zwei Dezimalziffern möglich sind, ist es erforderlich, die eine Ziffer abzuändern, damit die gewünschte Ausdehnung der Adressenmöglichkeiten sich ergibt, welche eine Adressenwahl nach drei Ziffern in einer Tabelle bedingt; vorzugsweise sind die Adressenstellen 00100 bis 00299.
Es wird die Ziffer des Multiplikators verdoppelt, so daß zwei Ziffernstellen der Adresse sich ergeben, wobei die Zehnerziffer entweder 0 ist (Verdopplung
von 0 bis 4) oder 1 ist (Verdopplung von 5 bis 9). Aus Gründen der allgemeinen Planung wird die verdoppelte Multiplikatorziffer dazu benutzt, um die Hunderter- und die Einer-Stelle der Adresse zu bilden, und es wird eine Erhöhung der Hunderter-Ziffer vorgenommen, so daß die geradzahligen Adressen 00100 bis 00208 gebildet werden.
Die Multiplikandenziffer wird verwendet, um die Zehner-Stelle der Adresse zu bilden. So wird beispielsweise die Aufgabe 5 · 7 = 35 wie folgt be- ίο handelt:
(Produktadresse 00254)
Verdoppelter Multiplikator
(Einer-Stelle) 00 ( ) ( ) (4)
Multiplikanden-Zehner-Stelle 00 ( ) (5) (4)
Übertrag des verdoppelten
Multiplikators plus 100 .... 00 (2) (5) (4)
Das Ziffernpaar, welches abgelesen wird unter der Adresse 00254 und dementsprechend an den Speicherstellen 00254-00255 steht, besteht aus den Ziffern 5 und 3. Aus Gründen der allgemeinen Anlage erscheinen sie in umgekehrter Reihenfolge; es wird das Produkt zu 35 erkannt.
Das Multiplikatorregister 405 (MR) wird verwendet zur zeitweisen schnell zugänglichen Speicherung einer einzelnen Ziffernstelle des Multiplikators während der Folge von Zyklen, in welchen die Multiplikatorziffer mit den verschiedenen Ziffern des Multiplikanden zusammenwirkt. Der Ausgangskreis des Multiplikatorregisters Mi? wird durch den Verdoppler 406 verdoppelt, um die Einer-Stelle und die Hunderter-Stelle des Registers MAR zu steuern.
Die Multiplikandenziffer geht über MDR, die Verbindungsleitung 609 und die Stufe 27C404 zur Zehner-Stelle des Registers MAR. Wenn auf diese Weise das Register MAR eingestellt ist, um eine Adresse der Multiplikationstabelle auszuwählen, wird der entsprechende Wert des Hauptspeicherwerkes abgelesen, um in den Stufen DRU und DRT das Partialprodukt zu bilden. Additionsfolgen bauen dann in dem Akkumulatorteil des Hauptspeieherwerkes das Produkt auf.
Jede Ziffernstelle des Multiplikators bleibt in MR eine Anzahl Zyklen über verfügbar, so daß während dieser Zyklen jede Ziffer des Multiplikanden für nochmalige Multiplikationen zur Verfügung steht. Partialprodukte werden geliefert, wenn die hohe Ziffernstelle des Multiplikanden durch die Schlüsselmarke bekannt ist, es wird dann eine neue Ziffernstelle des Multiplikators in das Register MR eingeführt, und die Ziffernstellen des Multiplikanden werden wiederum zwecks Multiplikation zur Verfügung gestellt. Wenn sowohl die höchste Ziffernstelle des Multiplikators als auch die höchste Ziffernstelle des Multiplikanden durch die entsprechenden Schlüsselmarken erkannt sind, so schließt das Partialprodukt den Multiplikationsvorgang ab, und es kann die Maschine einen neuen Ausführungsbefehl entgegennehmen.
Eine Multiplikation mit vierteiligen Operanden kann Hunderte von Zyklen umfassen, in welchen auf das Speicherwerk Bezug genommen wird, während die verschiedenen Schleifen durchlaufen werden. Es wird hier also die auf billigen Preis gerichtete Forderung erfüllt, während die Ansprüche hinsichtlich Geschwindigkeit reduziert werden. Eine verhältnismäßig geringe Anzahl von Baugruppen arbeitet wiederholt immer wieder, um das endgültige Rechenresultat zu erzielen.
Die Arbeitsstufen des Programmzeitschaltwerkes sind wie folgt:
1. Es werden die Akkumulatorstellen 00080 bis 00099, die der Steuerung durch das Register PR1 unterliegen, gelöscht, indem von diesen Stellen abgelesen wird, ohne daß eine Regenerierung erfolgt. Es findet eine Verringerung um —2 statt. PR1 bis 00098 wird im zehnten Zyklus untersucht; darauf beginnt die zweite Arbeitsstufe.
2. RO der Multiplikatorziffer gemäß OR 1 über MDR nach MR. Verringerung von OR 1 um — 1.
3. RO der Multiplikandenziffer entsprechen OR 2 über MDR. Vorbereitung von TIC 404.
4. Es wird MAR eingestellt, eine Adresse aus der Multiplikationstabelle auszuwählen, und zwar in folgender Weise:
a) Es wird die Multiplikatorziffer verdoppelt und die resultierende geradzahlige Ziffer der Einer-Stelle in die Einer-Stelle des Registers MAR übergeführt.
b) Es wird der verdoppelte Übertrag des Multiplikators (Zehnerziffer) in die Hunderter-Stelle des Registers MAR eingeführt (da die Adressenstellen zwischen 00100 und 00299 liegen, wird die Zehnerziffer um 1 vergrößert, und es findet Anschluß der Leitungen statt, über welche die Zuführung zu der Hunderter-Stelle des Registers MAR erfolgt).
c) Es wird die Multiplikandenziffer von MDR über 77C404 zur Zehner-Stelle des Registers MAR übertragen.
RO der Multiplikationstabelle gemäß MAR. Die durch die geradzahlige Adresse ausgewählte Ziffer wird über MDR und die Ziffernleitung 609 nach DR U übertragen. Die der ungeraden Adresse entsprechende Ziffer wird direkt von MBRO über die Leitung 612 nach DRT übertragen. Da die Multiplikationstabelle stets infolge der Verdopplung durch eine ungerade Ziffer ausgewählt wird, enthält MDR die Ziffer der geraden ausgewählten Speicherstelle, wenn das Partialprodukt gebildet wird. MDR bewirkt eine Verbindung über die zur Übertragung der Ziffern vorgesehene Leitung mit der Stufe DR U; diese Verbindung leitet die Einerziffer des Partialproduktes nach DR U und bildet den Grund für das Übersetzungsverhältnis der Ziffern des Partialproduktes in dem Wertepaar der gespeicherten Multiplikationstabelle.
5. RO des Akkumulators entsprechen PR1 nach MDR.
6. Es wird die Ziffer der Stufe MDR zu der Einerziffer des Partialproduktes der Stufe DRU addiert. Es wird das Register MAR eingestellt auf 003 (MDfl-Inhalt) (DR !/-Inhalt). RO der Summe von der gespeicherten Additionstafel entsprechen der Einstellung von MAR nach dem Register MDR.
7. Es wird die Summe im Akkumulator entsprechend dem Inhalt von PR 2 gespeichert. Es wird die Zahl im Register PR 2 um — 1 verringert.
8. RO der Akkumulatorziffer entsprechen PR3 (Pi? 3 enthält die Adresse der höheren Stelle der aufzubauenden Ziffer) nach MDjR.
9. Übertragen des Inhaltes von DRT nach DR U. Es wird die Ziffer von MDR zu der Zehner-Stellenziffer des Partialproduktes, welches sich jetzt in DRU befindet, addiert. Es wird MAR eingestellt auf 003 (Inhalt von MDR) (Inhalt von DRU). RO der Summe von der gespeicherten Additionstabelle entsprechen MAR nach MDR.
10. Es wird die Summe im Akkumulator an der der Einstellung von Pi? 2 entsprechenden Stelle gespeichert.
Die Entscheidung, welche Schleife als nächste durchgeführt werden soll, hängt von der Schlüsselmarke ab, welche das Ende der Rechenoperation kennzeichnet.
Der erste Multplikationsschritt 1 wird nur am Beginn der Rechenoperation benötigt. Ein erregter 00080-Trigger, nämlich ein Trigger für eine feste Adresse, welcher einen Bit 8 an die Zehner-Stelle bringt, ist in Tätigkeit, wenn die Maschine bei einer Multiplikation den Ausführungszyklus E beginnt. Dieser Trigger stellt das Register MAR für den ersten Arbeitsschritt 1 ein und wird unmittelbar darauf gelöscht. Auf diese Weise ist das Wertepaar an den Adressen 00080-00081 des Akkumulators ausgewählt, um gelöscht zu werden; /i?l wird auf 00082 über den eine Vergrößerung um 2 bewirkenden Kreis gebracht, so daß im nächsten Arbeitsschritt das Akkumulatorstellenpaar 00082-00083 ausgewählt werden. Wenn im zehnten Zyklus das Stellenpaar 00098-00099 gelöscht wird, bewirkt ein UND-Kreis, der auf die Koinzidenz eines Bits 8 in der Einer-Stelle des Registers MAR mit einem Bit 1 in der Zehner-Stelle des Registers MAR anspricht, ein Signal, daß die Löschung des Akkumulators beendet ist, und es wird die zweite Arbeitsstufe 2 vorbereitet. (Der Bit 1 zeigt einen Wert 9 an, da der Akkumulator nur die Stellen 00080 bis 00099 enthält). Die Arbeitsstufe 2 ist einmal für jede der verschiedenen Ziffernstellen des Multiplikators in Tätigkeit. Die Arbeitsstufe 3 ist einmal für jede der Ziffernstellen des Multiplikanden in jeder Arbeitsschleife einer neuen Multiplikatorziffernstelle in Tätigkeit. Die kleine Arbeitsschleife, welche die Arbeitsstufen 8, 9 und 10 umfaßt, verarbeitet die Überträge, die auftreten können, wenn Ziffern der Zehner-Stelle eines Partialproduktes zu dem Inhalt des Akkumulators addiert werden. Die Übertragsarbeitsschleife ist nur in Operationen erforderlich, bei denen ein Produkt zu einer Zahl hinzugegeben wird, die zuvor im Akkumulatorfeld gespeichert wurde. In solchen Fällen muß natürlich eine zusätzliche Instruktion gegeben werden, welche, ohne daß der Akkumulator gelöscht wird, einen Beginn der Multiplikation in der Arbeitsstufe 2 bewirkt, wobei die Steuervorrichtung für die Arbeitsschleifen auf die Arbeitsstufe eines Übertrages von der Stufe 10 zur Stufe 8 anspricht.

Claims (4)

Patentansprüche:
1. Maschine zur serienmäßigen Verarbeitung von Daten in binär kodierten (7-Bit-Code) Zeichen (Dezimalzahlen, Buchstaben, Interpunktionszeichen), bei der die Binärbits jedes Zeichens parallel verarbeitet werden, unter Anwendung eines an jeder Adressenstelle ein Zeichen enthaltenden Hauptspeicherwerkes und eines eine geringe Adressenzahl enthaltenden Hilfsspeicherwerkes und je eines eingangsseitig und ausgangsseitig zum Hilfsspeicherwerk angeordneten Pufferregisters, dadurch gekennzeichnet, daß jedes Register (301 bis 308) des Hilfsspeicherwerkes (300) und die eingangsseitig bzw. ausgangsseitig zu dem Hilfsspeicherwerk (300) liegenden Pufferregister je eine nur einem Zeichen ohne die Charakterisierungs- bzw. Prüfbits (A, B, C Bits) entsprechende Kapazität (fünf Bits) aufweisen und dem Hilfsspeicherwerk (300) eine Übertragsstufe (403, 402, 407), eine Verdopplerstufe (405, 406), mindestens eine Komplementärstufe (404, 408) und gegebenenfalls eine Stufe (401), welche das dem ausgangsseitig zum Hilfsspeicherwerk (300) angeordneten Pufferregister (201) entnommene Zeichen zwecks Wiederzuleitung zum Hilfsspeicherwerk (300) um den Zahlenwert 1 oder 2 zu vergrößern oder um den Zahlenwert 1 zu verkleinern gestattet, zugeordnet sind und daß für ziffernmäßige Addition eine im Hauptspeicherwerk gespeicherte hundertstellige Additionstabelle, in der ein Charakterisierungsbit Ziffern zwischen 10 und 20 charakterisiert und auf die Übertragsstufe (402) einwirkt, und für ziffernmäßige Multiplikation eine im Hauptspeicherwerk gespeicherte zweihundertstellige Multeplikationstabelle dienen.
2. Datenverarbeitende Maschine nach Anspruch 1, dadurch gekennzeichnet, daß das Hilfsspeicherwerk (300) zwei Instruktionsregister (301, 302), drei Operandenregister (303, 304, 305) und drei für Multiplikationen dienende Register (306, 307, 308) umfaßt.
3. Datenverarbeitende Maschine nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Einer-Stelle und die Zehner-Stelle der Adressen der Additionstabelle durch die Addenden-Ziffer und die Augenden-Ziffer gebildet werden.
4. Datenverarbeitende Maschine nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß die Einer-Stelle und die Zehner-Stelle der Adressen der Multiplikationstabelle durch den Multiplikanden und den verdoppelten Multiplikator gebildet werden, so daß für die Ziffernprodukte je zwei Adressenstellen des Hauptspeicherwerkes zur Verfügung stehen.
In Betracht gezogene Druckschriften: Proc. IRE, Oktober 1953, S. 1332 bis 1340.
Hierzu 1 Blatt Zeichnungen
409 598/359 5.64 © Bundesdruckerei Berlin
DEJ18712A 1959-10-19 1960-09-14 Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung Pending DE1171650B (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US84730659A 1959-10-19 1959-10-19
US77112A US3199085A (en) 1959-10-19 1960-12-20 Computer with table lookup arithmetic unit feature
US334803A US3328767A (en) 1959-10-19 1963-12-31 Compact data lookup tables

Publications (1)

Publication Number Publication Date
DE1171650B true DE1171650B (de) 1964-06-04

Family

ID=27373026

Family Applications (2)

Application Number Title Priority Date Filing Date
DEJ18712A Pending DE1171650B (de) 1959-10-19 1960-09-14 Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung
DEP1271A Pending DE1271433B (de) 1959-10-19 1964-12-23 Adressiereinrichtung fuer einen Tabellenwertspeicher

Family Applications After (1)

Application Number Title Priority Date Filing Date
DEP1271A Pending DE1271433B (de) 1959-10-19 1964-12-23 Adressiereinrichtung fuer einen Tabellenwertspeicher

Country Status (6)

Country Link
US (2) US3199085A (de)
CH (1) CH417163A (de)
DE (2) DE1171650B (de)
FR (2) FR1278646A (de)
GB (2) GB938188A (de)
NL (3) NL6414628A (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL256940A (de) * 1959-10-19 1900-01-01
GB1054725A (de) * 1964-04-06
US3394350A (en) * 1965-01-14 1968-07-23 Burroughs Corp Digital processor implementation of transfer and translate operation
AT314225B (de) * 1969-05-02 1974-03-25 Internat Business Maschines Co Modulares elektronisches Datenverarbeitungssystem
US3651314A (en) * 1970-01-22 1972-03-21 Allen Bradley Co Feedrate computer using a read only memory
US3917935A (en) * 1974-12-23 1975-11-04 United Technologies Corp Reduction of look-up table capacity
FR2500198B1 (fr) * 1981-02-17 1986-12-05 Efcis Memoire morte a adressage modifie
US4428045A (en) 1981-09-11 1984-01-24 Data General Corporation Apparatus for specifying and resolving addresses of operands in a digital data processing system
US4636973A (en) * 1982-07-21 1987-01-13 Raytheon Company Vernier addressing apparatus
US5214599A (en) * 1986-12-19 1993-05-25 Magerman David M Advanced dimensional processing with division
US5209400A (en) * 1991-03-07 1993-05-11 John M. Winslow Portable calculator for refrigeration heating and air conditioning equipment service
US6829695B1 (en) * 1999-09-03 2004-12-07 Nexql, L.L.C. Enhanced boolean processor with parallel input
US20040225865A1 (en) * 1999-09-03 2004-11-11 Cox Richard D. Integrated database indexing system
MX2014015093A (es) * 2012-07-06 2015-03-05 Koninkl Philips Nv Procesador y sistema informaticos sin una unidad aritmetica y logica.

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2473444A (en) * 1944-02-29 1949-06-14 Rca Corp Computing system
NL77678C (de) * 1947-08-14
US2916210A (en) * 1954-07-30 1959-12-08 Burroughs Corp Apparatus for selectively modifying program information
USRE25340E (en) * 1957-06-25 1963-02-26 haynes
US3034720A (en) * 1957-12-26 1962-05-15 Ibm Serial operation of a parallel computer
US3029414A (en) * 1958-08-11 1962-04-10 Honeywell Regulator Co Information handling apparatus
NL256940A (de) * 1959-10-19 1900-01-01
US3196260A (en) * 1961-05-03 1965-07-20 Ibm Adder
US3229078A (en) * 1962-06-29 1966-01-11 Ibm Code converter
NL301901A (de) * 1963-01-30 1900-01-01

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Also Published As

Publication number Publication date
GB938188A (en) 1963-10-02
NL256940A (de) 1900-01-01
FR88601E (fr) 1967-03-03
GB1049689A (en) 1966-11-30
NL6414628A (de) 1965-07-02
US3199085A (en) 1965-08-03
US3328767A (en) 1967-06-27
FR1278646A (fr) 1961-12-15
NL136144C (de) 1900-01-01
DE1271433B (de) 1968-06-27
CH417163A (de) 1966-07-15

Similar Documents

Publication Publication Date Title
DE1499193C3 (de) Speicher-Adressierschaltung
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE1146290B (de) Elektronisches Datenverarbeitungssystem
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2930441C2 (de) Anzeigeeinrichtung zur wahlweisen dynamischen oder statischen Anzeige
DE1171650B (de) Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2420057A1 (de) Elektronischer computer fuer gespeicherte programme
DE1449544A1 (de) Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk
DE2032286A1 (de) Rechner
DE1115488B (de) Datenverarbeitungssystem
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE2506671A1 (de) Binaerdaten-handhabungsnetzwerk
DE1221037C2 (de) Verfahren zur Speicherung hierarchisch geordneter Datenketten und Anordnung zur Durchfuehrung dieses Verfahrens
DE1474376A1 (de) Verfahren und Anordnung zum schnellen Zugriff bei grossen seriellen Speichern
DE2425574A1 (de) Adressierung von zeichen in einem wortorientierten system eines rechenautomaten
DE1774675A1 (de) Elektronisches Rechengeraet
DE1957600C3 (de)
DE1184122B (de) Addiervorrichtung
DE1474017C3 (de) Datenverarbeitungsanlage
DE2331874A1 (de) Vorrichtung zum rechnerischen verarbeiten von kostenrechnungsaufzeichnungen
DE3340078A1 (de) Prozessor-zelle zur verwendung in einer aus derartigen zellen gebildeten anordnung
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE2735874C2 (de)
DE2265013C2 (de) Textverarbeitungssystem