DE2220329C3 - Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Rechnern - Google Patents
Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen RechnernInfo
- Publication number
- DE2220329C3 DE2220329C3 DE2220329A DE2220329A DE2220329C3 DE 2220329 C3 DE2220329 C3 DE 2220329C3 DE 2220329 A DE2220329 A DE 2220329A DE 2220329 A DE2220329 A DE 2220329A DE 2220329 C3 DE2220329 C3 DE 2220329C3
- Authority
- DE
- Germany
- Prior art keywords
- register
- registers
- shift
- storage
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K13/00—Conveying record carriers from one station to another, e.g. from stack to punching mechanism
- G06K13/02—Conveying record carriers from one station to another, e.g. from stack to punching mechanism the record carrier having longitudinal dimension comparable with transverse dimension, e.g. punched card
- G06K13/06—Guiding cards; Checking correct operation of card-conveying mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/02—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/08—Methods or arrangements for sensing record carriers, e.g. for reading patterns by means detecting the change of an electrostatic or magnetic field, e.g. by detecting change of capacitance between electrodes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Complex Calculations (AREA)
- Calculators And Similar Devices (AREA)
- Shift Register Type Memory (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
- Input From Keyboards Or The Like (AREA)
Description
Die vorliegende Erfindung ist auf das Problem der Umsetzung einer Gleitkomma- in eine Festkomma-Schreibweise
bei elektronischen Digitalrechnern und insbesondere auf das Problem der Trennung des
Exponenten von der Mantisse zur Vorbereitung der Umsetzung gerichtet
Bekannte elektronische Rechner speichern die Zahlen üblicherweise in der Festkomma-Schreibweise,
wodurch eine Ausgabevorrichtung (beispielsweise eine Anzeige oder ein Drucker) unmittelbar durch das die
Zahl speichernde Register gesteuert werden kann. Die Verwendung einer solchen Schreibweise hat jedoch den
Nachteil, daß Register großer Kapazität erforderlich sind.
Es sind weiter große elektronische Rechner bekannt, die die Zahlen in der Gleitkomma-Schreibweise
speichern, wodurch die Kapazität der Register beträchtlich erhöht wird. Diese Rechner verwenden üblicherweise
Register und Zentraleinheiten, die in der Lage sind, die beiden Teile der Zahl im wesentlichen gleichzeitig zu
errechnen, selbst wenn die beiden Teile nicht homogen sind. Elektronische Rechner geringer Größe und
Kapazität, wie die Tischrechner, sind jedoch nicht imstande, die beiden Teile der Zahl gleichzeitig zu
errechnen.
Die von der vorliegenden Erfindung zu lösende technische Aufgabe besteht darin, das Rechnen mit
Zahlen in Gleitkomma-Darstellung zu erleichtern.
Diese technische Aufgabe wird bei einer Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung
ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Reclinern mit einem Paar
von Speicherregistern zum Speichern eines Paars von Operanden und mit einem Paar von Schieberegistern,
die wahlweise mit den Speicherregistern verbindbar sind, erfindungsgemäß dadurch gelöst, daß die beiden
Schieberegister mit dem Ausgang des ersten Speicherregisters seriell verbunden sind, das die Zahl anfangs in
Gleitkomma-Schreibweise speichert, wobei das erste Schieheregister durch wahlweise betätigbare Verbindungsschaltungen
mit dem Eingang jedes einzelnen der Speicherregister und das zweite Schieberegister durch
eine weitere wahlweise betätigbare Verbindungsschaltung mit dem Eingang des ersten Speicherregisters
verbunden ist, daß auf die Stelle des Dezimalkommas ansprechende Einrichtungen zum wahlweisen Betätigen
der Verbindungsschaltungen vorgesehen sind, damit die Mantisse über die Schieberegister von neuem in das
erste Speicherregister eingegeben wird, und daß der Exponent über das erste Schieberegister auf das zweite
Speicherregister übertragen wird.
Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Weitere Einzelheiten und Vorteile der Erfindung sind nachstehend anhand eines in der Zeichnung dargestellten
Ausführungsbeispiels näher beschrieben. Es zeigen
Fig. la und Ib in Blockschemaform die Schaltungen
einer Ausführungsform des Rechners nach der Erfindung,
F i g. 1 zeigt die Anordnung von Fig. 1 a und Ib,
F i g. 2 ein Blockdiagramm der Zeitsteuervorrichtung des Rechners nach F i g. 1 a und 1 b,
F i g. 3 ein Gesamtdiagramm einiger in dem Rechner
nach F i g. 1 a und 1 b auftretender Signale,
F i g. 4 eine Einzeldarstellung einer Anzahl von in dem Rechner nach Fig. la und Ib enthaltenen Einstellschaltungen,
F i g. 5a ein die Operationsfolge zum Ausführen des Normalisierungsbefehls veranschaulichendes Diagramm,
F i g. 5b ein die Operationsfolge zum Ausführen des Befehls zur Umschaltung auf Festkomma veranschaulichendes
Diagramm,
Fig.6 die die Ausführung des Trennungsbefehls
ermöglichenden Verbindungen.
Gemäß Fig. 1 bzw. la und Ib enthält der Rechner
nach der Erfindung einen Speicher LDR mit magnetostriktiver Verzögerungsleitung, auf der beispielsweise
sechzehn Register Pl, P2, P3, P 4, R, M, A, B, C, D, E C. E'und F'aufgezeichnet sind. Die Leitung LDR setzt
sich aus einem einen Leseverstärker 13 speisenden Lesewandler 11 und einem von einem Schreibverstärker
17 gespeisten Schreibwandler 15 zusammen.
Die an der Leitung LDR auftretenden ersten sechzehn Binärsignale stellen jeweils das erste Bit der
ersten Dezimalziffer der Register Pl, P2, P3, P4, R, M, A, B, C, D, E F, C, D', E' und F' dar, während die
nächsten sechzehn Binärsignale jeweils das zweite Bit der ersten Dezimalziffer dieser Register darstellen.
Der Leseverstärker 13 speist einen Serien-Parallelumsetzer 19, der an sechzehn gesonderten Ausgangsleitungen
LPl, LP 2, LP3, LP4, LR, LM, LA, LB, LC, LD,
LE, LF, LC, LD', LE' und LF' sechzehn gleichzeitige Signale erzeugt, die die sechzehn in der gleichen
Binärstelle der gleichen Dezimalziffer der sechzehn
Register enthaltenen Bits darstellen.
Nachdem jede Gruppe aus sechzehn an den Ausgangsleitungen des Umsetzers 19 zugleich zugeführten
Signalen verarbeitet worden ist, wird sie dem Parallel-Serienumsetzer 21 zugeführt.
Der Umsetzer 21 speist seinerseits den Schreibverstärker 17 mit den sechzehn auf ihre vorherige
Reihenfolge zurückgebrachten und voneinander um eine halbe Mikrosekunde getrennten Signalen. Dadurch
schreibt der Wandler 15 die Signale erneut durch den Betrieb des Rechners unverändert oder geändert in die
Leitung LDR ein, wobei er bewirkt, daß sie ihre ursprüngliche wechselseitige Lage beibehalten.
Da der Speicher mit Verzögerungsleitung von zyklischer Natur ist, wird der Betrieb des Rechners in
aufeinanderfolgende Speicherzyklen unterteilt, wobei jeder Zyklus 32 Zifferperioden von Cl bis C32 umfaßt
und jede Zifferperiode in acht Bitperioden von TX bis Γ8 unterteilt ist.
Gemäß dem Diagramm nach F i g. 2 erzeugt ein Taktimpulsgenerator 23 an den Ausgängen der
Leitungen TX bis Γ8 aufeinanderfolgende Taktimpulse von 8 Mikrosekunden, die je die entsprechenden
Bitperioden angehen, wie es in dem Zeitsteuerdiagramm nach Fig.3 veranschaulicht ist. Der Ausgangsanschluß Tl ist während der gesamten ersten
Bitperiode jeder der zweiunddreißig Zifferperioden aktiviert; entsprechend ist der Ausgang des Anschlusses
Γ2 wührend der gesamten zweiten Periode jeder Zifferperiode aktiviert usw.
Der Generator 23 enthält einen Oszillator 25, der bei seinem Betrieb den Impulsverteiler 27 mit Impulsen
speist, die die Frequenz der Impulse M 1 bis M 16 haben. Ein durch den Verteiler 27 gespeister Frequenzteiler 29
erzeugt die Taktimpulse TX bis Γ8.
lede Dezimalzifferstelle des Süeichers LDR kann
eine Dezimalziffer oder einen Befehl enthalten. Die Register Pl bis P4 können nur zum Enthalten der
Befehle eines Programms verwendet werden; jedes Register kann bis zu 31 Befehle enthalten. Die Register
CD, EF, C. E'und F' können je benutzt werden zum
Speichern von bis zu 31 Befehlen oder bis zu 30 Datenziffern. Demzufolge hat die Maschine eine
Programmkapazität von 372 Befehlen. Das Register B kann nur zum Speichern von Daten benutzt werden.
Beim Aufzeichnen von Programmbefehlen werden die Speicherregister in nachstehender Reihenfolge benutzt:
PI1 P2, P3, P4, C, D', E', F', C, D, E F. Die Register M,
A und R sind zum Speichern von Operanden und Operationsergebnissen benutzte Operationsregister.
Die Programmbefehle des Rechners nach der Erfindung können drei Formate haben. Das Grundformat
eines Befehls ist ein Acht-Bit-Zeichen, bei welchem die letzten vier Bits einen der vierzehn möglichen
Funktionscode darstellen, während die vier ersten Bits das Speicherregister darstellen, in weichem die Operation
ablaufen soll.
Der Adressenteil des Befehls kann sich auf ein Feld beziehen, das mit dem ersten Bit oder mit dem
sechzehnten Bit eines Registers beginnt je nachdem, ob dasselbe Register oder der unterteilte Teil adressiert ist.
Aus diesem Grunde kann das Register in zwei Abschnitte unterteilt werden und zwei selbständige
Informationsabschnitti; speichern.
Zu diesem ersten Grundformat gehören die arithmetischen Befehle und die zum Übertragen der Befehle für
Druckzahlen auf den internen Drucker sowie eine Anzahl von Sprungbefehlen, in welchen die Adressen
einen Erkennungscode für das Ende des Sprunges bestimmen.
In diesem ersten Format befinden sich außerdem Befehle zur Gleitkomma-Rechnung, die den normalerweise
auf Festkomma-Basis arbeitenden Rechner in den Stand setzen, auf Gleitkomma-Basis mit numerischen
Daten zu rechnen. Ein numerischer Gleitkomma-Datenwert wird mit Hilfe eines Koeffizienten, der größer als
oder gleich 0,1 und kleiner als 1 ist, und mit Hilfe des entsprechenden Exponenten zur Grundzahl 10 dargestellt.
Die vorgesehenen Befehle erlauben die Umwandlung der numerischen Daten aus einer Darstellung in die
andere. Diese Befehle sind folgende:
»Trennungsbefehl«:
Der Inhalt des Registers A wird geändert durch Übertragen seines integralen Teiles, d. h. Exponenten,
in M, wobei nur der Dezimalteil, d. h. der Festkomma-Teil, in A belassen wird.
»Vereinigungsbefehl«:
Vereinigt in dem Register A den integralen Teil des im Register M enthaltenen Datenwertes mit dem
Dezimalteil des in A enthaltenen Datenwertes.
»Befehl zum Übergang auf Festkomma«:
Verschiebt das Komma des Inhalts des Registers A um eine Stellenzahl, die gleich dem Wert des in dem
Register Menthaltenen Datenwertes ist. Wenn der
Inhalt von M positiv ist, wird die Stelle nach rechts und, wenn er negativ ist, nach links verschoben.
»Normalisierungsbefehl«:
Verschiebt das Komma des in A enthaltenen Datenwertes so, daß es der ersten kennzeichnenden
Ziffer vorangeht; speichert in M die Schrittezahl, um die die Stelle verschoben worden ist, bei
positivem Vorzeichen, wenn die Verschiebung nach
links, und bei negativem Vorzeichen, wenn sie nach rechts stattgefunden hat.
Die Befehle des zweiten Formats bestehen aus einem Ziffernpaar von je acht Bits BX bis BS, das in einem
Paar einander benachbarter Dezimalzifferstellen des Speichers angeordnet ist.
Zu den Befehlen mit diesem Format gehört auch der zum Zuführen eines numerischen Datenwertes in
externe Einheiten bei Formatsteuerung. Dieser Befehl ermöglicht das Ausgeben eines in dem Register A
enthaltenen numerischen Datenwertes, wobei es möglich ist, zwischen jedem Paar aufeinanderfolgender
Zeichen Interpunktions- oder Trennungszeichen oder Vorzeichen oder dergleichen einzufügen, um der Zahl
besondere Formate zu geben.
Die ersten vier Bits B\ bis B 4 der ersten Ziffer enthalten die Adresse des Registers, aus welchem die
Extraktion stattfindet, während die zweiten vier Bits B 5 bis BS den Funktionscode enthalten. Die zweite Ziffer
wählt das besondere Ausgabegerät aus. Im einzelnen zeigt das erste Bit BX des zweiten Zeichens an, ob die
anzugebende Information numerisch oder alphabetisch ist. Die nächsten beiden Bits B2 und B3 wählen das
besondere Ausgabegerät aus, während das vierte Bit B4
anzeigt, ob es sich um einen Eingabe- oder Ausgabebefehl handelt.
Ein Befehl des dritten Formats besteht aus acht Bits BX bis BS, die gemeinsam einen Funktionscode
anzeigen. Zum dritren Format gehören beispielsweise die die Übertragung zwischen vorbestimmten logischen
Elementen, die Errechnung von Prozentsätzen, eine Anzahl von Sprungoperationen, das indirekte Adressieren
und das Adressieren unterteilter Register steuernden Befehle.
Jede Dezimalziffer der Daten wird in dem Rechner mit Hilfe von vier Bits S5, Bβ und B 7, BS nach einem
binären Dezimalcode dargestellt. In dem Speicher LDR mit Verzögerungsleitung werden diese vier Bits jeweils
in den letzten vier Bitstellen T5, T6, TT, TS gespeichert, während die ersten vier Bitstellen zum
Speichern der Markierungsbits benutzt werden. Die Bitstelle T4 wird benutzt zum Speichern eines
Dezimalkomma-Bits B4, das für alle Ziffern einer Dezimalzahl mit Ausnahme der ersten Ziffer hinter dem
Komma »0« ist. Die Bitstelle T3 wird benutzt zum Speichern eines Vorzeichen-Bits S3, das für alle
Dezimalziffern einer positiven Zahl »0« und für alle Dezimalziffern einer negativen Zahl »1« ist.
Die Bitstelle 7~2 wird benutzt zum Speichern eines Ziffer-Erkennungsbits B 2, das bei jeder besetzten
rif>7imal7iffpr<:ti»llp \\1t* iinrl hpi ipHpr linhpcptTt^n
R gespeichertes Bit ßl/? = »l« wird benutzt, um zu
Beginn jedes Speicherzyklus den Taktimpulsgenerator 23 anlaufen zu lassen. Ein in der 32. Dezimalzifferstelle
C32 des Registers £ gespeichertes Bit B 1£T=»1« wird
benutzt, um den Generator 23 anzuhalten. Ein in der η li;n Dezimalzifferstelle des Registers B gespeichertes
Bit ßlß=»1« zeigt an, daß bei der Ausführung eines
Programms der auszuführende nächste Befehl in der ntcn Dezimalstelle des benutzten besonderen Programmregisters
gespeichert ist. Ein in der /rtcn Stelle des
Registers M gespeichertes Bit S1M=»1« zeigt an, daß
bei Eingabe einer Zahl über das Tastenpult in das Register Aidie eingegebene Dezimalziffer danach in der
(n—\)-un Dezimalzifferstelle zu speichern ist; daß beim
ίο Ausdrucken einer in einem beliebigen Register gespeicherten
Zahl die auszudruckende Ziffer die in der rr'·'"
Dezimalzifferstelle dieses Registers gespeicherte Ziffer ist; daß beim Addieren von zwei Zahlen die in der /rlen
Dezimalzifferstelle des Registers A gespeicherte Ziffer der Summe dann durch Hinzufügung einer darin
eingegebenen Korrekturziffer zu korrigieren ist. Ein in der /r'en Dezimalstelle des Registers A gespeichertes Bit
B X A = »1« zeigt an, daß die Ausführung des Hauptteiles eines Programms beim /rlen Befehl eines Speicherregisters
unterbrochen worden ist, um die Ausführung eines Unterprogramms zu beginnen. Deshalb werden die
Markierungsbits BXR, BXE benutzt, um in den verschiedenen Registern (Anfang bzw. Ende) feststehende
Bezugsstellen darzustellen, während die Markie-
jo rungsbits BXA, BXBund BXMbewegliche Bezugsstellen
in den Registern darstellen. Außerdem wird das Bit B XM während der Ausführung einer Addition benutzt,
um in jeder Dezimalstelle die zu einer in dieser Dezimalstelle auszuführenden Operation gehörende
Information zu speichern.
Der Rechner enthält außerdem zwei Addierschaltungen 34 und 35 mit je zwei Eingangsleitungen 36,38 bzw.
37,39 zur gleichzeitigen Aufnahme der zu addierenden Bits. Ein Summenbit wird jeweils an die Ausgangsleitungen
40 bzw. 41 angelegt.
Gemäß Fig. 1 enthält der Rechner einen Nur-Lese-Speicher
ROM, der an die Steuer- und arithmetischen Einheiten ähnlich wie der Speicher mit Verzögerungsleitung angeschlossen ist, als dessen Erweiterung er
angesehen werden kann. Der Speicher ROM enthält 512 Befehle, die eine Anhäufung von feststehenden Unterprogrammen
bilden, auf die während der Ausführung des Hauptprogramms jederzeit wenn es notwendig sein
sollte, ein Zugriff mit Hilfe von Sprungbefehlen erlangt werden kann.
Der Nur-Lese-Speicher (ROM) XS ist mit seinem
piopnpn AHrp«iprpr Ifi vprsphpn Dip im Snpirhpr
Dezimalzifferstelle (unbedeutende Null) »0« ist
Demzufolge erfordert die vollständige Darstellung einer Dezimalziffer in dem Speicher LDR sieben
Bitstellen, und zwar die Steilen 7"2, Γ3, Γ4, 7"5, Γ6, Tl
und TS einer gegebenen Dezimalzifferstelle. Die verbleibende Bitstelle TX wird benutzt zum Speichern
eines Hilfsbits, dessen Bedeutung nicht unbedingt zu der in dieser Zifferstelle gespeicherten Dezimalziffer in
Beziehung steht
In der nachfolgenden Beschreibung ist ein in einer binären Bitstelle a einer Dezimalzifferstelle eines
Registers b gespeichertes Bit mit dem Symbol Bab bezeichnet während das beim Lesen des Bits an der
Leitung LDR erhaltene Signal mit dem Symbol LBab bezeichnet ist
Ein in der ersten Dezimalzifferstelle C1 des Registers enthaltenen Zeichen werden als acht Bits nebeneinander aufgegeben und durch einen Parallel-Serien-Umsetzer 20 hintereinander angeordnet, der an seiner Ausgangsleitung beginnend mit dem unbedeutendsten Bit acht aufeinanderfolgende Signale erzeugt die das ausgegebene Zeichen darstellen.
Ein in der ersten Dezimalzifferstelle C1 des Registers enthaltenen Zeichen werden als acht Bits nebeneinander aufgegeben und durch einen Parallel-Serien-Umsetzer 20 hintereinander angeordnet, der an seiner Ausgangsleitung beginnend mit dem unbedeutendsten Bit acht aufeinanderfolgende Signale erzeugt die das ausgegebene Zeichen darstellen.
Die Arbeitsweise des Umsetzers 20 wird durch die Impulse an den Leitungen Ti bis TS des Taktimpulsgenerators
23 zeitgesteuert so daß jedes dieser Signale an der Ausgangsleitung 22 für die Dauer von 8
Mikrosekunden, d. h. solange verbleibt wie jedes aus
dem Serien-Parallelumsetzer 19 kommende Bit an der entsprechenden Ausgangsleitung verbleibt
Gemäß F i g. 1 enthält der Rechner weiter zwei
. Schieberegister KA und KB, die jeweils aus acht Binärstufen KAl-KAS bzw. KBi-KBS gebildet
sind. Bei Empfang eines Schiebeimpulses über die Anschlüsse 76 bzw. 77 werden die in den Stufen
KA 2-KASbzw. KB 2- KBS gespeicherten Bits in die Stufen KA 1 - KA 7 bzw. KBi-KB 7 geschoben oder,
wenn die Bits an den Eingangsleitungen 5 bis 12 vorhanden sind, werden sie jeweils in die Stufen
KBi-KB 8 übertragen.
Die durch den Impulsverteiler 27 (F i g. 2) erzeugten Impulse Λ/4 werden als Schiebeimpulse für die Register
KA und KB benutzt, die demzufolge während jeder ι ο Bitperiode einen Schiebeimpuls oder während jeder
Zifferperiode acht Schiebeimpulse aufnehmen. Der Inhalt jeder Stufe jedes Registers bleibt von dem Impuls
M4 jeder Bitperiode an bis zum Impuls M4 der nächsten Bitperiode unverändert. Das einer der
Eingangsleitungen 78 oder 79 der Register KA und KB während einer besonderen Bitperiode zugeführte Bit ist
an der Ausgangsleitung 80 oder 81 des betreffenden Registers acht Bitperioden oder eine Zifferperiode
später verfügbar. Die Register KA und KB können demzufolge wie ein Abschnitt der Verzögerungsleitung
mit einer einer Zifferperiode entsprechenden Länge arbeiten.
Indem ein Speicherregister und eines der Schieberegister
KA und KB in geschlossener Schleife angeschlossen werden, während alle übrigen Register mit ihren
Ausgängen an ihre jeweiligen Eingänge unmittelbar angeschlossen bleiben, wird das ausgewählte Register
gegenüber den übrigen Registern effektiv um eine Zifferperiode verlängert. Dadurch wird bei jedem
Speicherzyklus der Inhalt des ausgewählten Registers um eine Dezimalzifferstelle verschoben, d. h. gegenüber
den anderen Registern um eine Zifferperiode verzögert.
Auf Grund der Fähigkeit der Register KA und KB, als Verzögerungsleitungen zu arbeiten, können sie nach v>
dem auf Seite 198 des Buches »Arithmetic Operations in
Digital Computers« von R. K. Richards, 1955, beschriebenen Verfahren auch als Zähler benutzt werden, wenn
ihre Eingangsleitungen 78 und 79 und ihre Ausgangsleitungen 80 und 81 an die Ausgangsleitungen 40 bzw. 41
und die Eingangsleitungen 36 bzw. 37 der Addierschallungen 34 bzw. 35 angeschlossen werden. Während die
letztgenannten Leitungen kein Signal erhalten, zählen die Zähler die aufeinanderfolgenden Zählimpulse, die
zwei in den beiden Addierschaltungen 34 und 35 enthaltenen bistabilen Speichergeräten über die in der
DE-OS 19 57 600 beschriebenen Zählsteuerschaltung 83 zugeführt werden.
Das Register KB kann als Pufferspeicher zum vorübergehenden Speichern einer Dezimalziffer be- so
nutzt werden.
Schließlich arbeitet das Register KBbexm Übertragen
von Daten oder Befehlen von dem Tastenpult 87 aus in den Speicher LDR als Parallel-Serienumsetzer.
Das Befehlsregister 89 umfaßt acht Binärstufen Ii-/8, die die acht Bits des sich in Ausführung
befindenden Befehls enthalten. Das Register 89 überträgt seinen Inhalt in den Decoder 91, der den zwölf
adressierbaren Speicherregistern bzw. den vorgenannten Befehlen entsprechende Ausgänge Yi bis Y 12;
F 1.1 bis F 1.14; F2.1 bis FZn; F3.1 bis F3J7hat
Wenn ein Befehl des ersten Formats in dem Register 89 gespeichert wird, aktivieren die Ausgänge aus den
Stufen /1—/4 in den Decoder 91 einen der Adressenausgänge Yi bis YIZ Dieser Ausgang wählt eines der es
zwölf Speicherregister aus oder bestimmt sofern der Befehl ein Sprungbefehl ist einen der Sprungcode. Die
Eingänge 15—IS bewirken, daß der Decoder 91 einen
der Funktionsausgänge aktiviert.
Wenn der Befehl zum zweiten Format gehört, wird nur das erste Zeichen des Befehls in dem Register 89
gespeichert. Wenn der Befehl zur Informationsausgabe mit oder ohne Senkrechtformatsteuerung gespeichert
wird, wird mit Hilfe der Bits ßl —54 einer der
Ausgänge Yi bis K12 aktiviert, um das die zu übertragenden Daten enthaltende Speicherregister
auszuwählen, während die Bits B5 — BS den betreffenden Funktionsausgang des Decoders 91 aktivieren.
Bei einem Befehl des dritten Formats wird einer der je einem besonderen Befehl entsprechenden Ausgänge
F3.1 - F3.n des Decoders 91 aktiviert.
Die Ausgänge der Stufen Ii-14 und die Ausgangsleitungen
der Stufen 15—IS können außerdem über die
Torschaltung 93 bzw. 95 an die Eingangsleitungen der Stufen KB5—KBS des Registers KB angeschlossen
werden zum Ausdrucken der Adresse und der Funktion, die in diesen Stufen gespeichert sind.
Die Torschaltungen 93 und 95 werden durch das UND der Signale TS, M4, A 3 und P18 und durch das
Fehlen bzw. das Vorhandensein des Signals A 6 gesteuert.
Um nach Wahl die sechzehn Speicherregister, die Addierschaltungen 34 und 35, die Schieberegister KA
und KB, das Befehlsregister 16 sowie die Eingabe- und Ausgabegeräte zum Steuern der Übertragung der
Daten und Befehle in/aus den verschiedenen Teilen des Rechners zusammenzuschalten, ist ein Schaltkreis 97
vorgesehen. Der Schaltkreis 97 kann aus einer Diodenmatrix oder aus einer Matrix aus Transistor-NOR-Schaltungen
oder aus ähnlichen Schalteinrichtungen ohne Speichereigenschaften bestehen. Die Auswahl
des durch den Decoder 91 bestimmten Speicherregisters wird ebenfalls durch den Schaltkreis 97 ausgeführt.
Das Tastenpult 87 wird benutzt zum Eingeben der Daten und Befehle sowie zum Einleiten der verschiedenen
Funktionen des Rechners. Es umfaßt einen aus zehn Zahlentasten 0—9 gebildeten numerischen Teil 101 zum
Eingeben der Zahlen in das Speicherregister M über das Pufferregister KB. Bei einer bevorzugten Ausführungsform ist das Register M das einzige vom Zahlentastenfeld
aus zugängliche Speicherregister. Das Tastenpult 87 umfaßt außerdem einen Adressenteil 103 mit Tasten, die
je die Auswahl eines Registers des Speichers LDR mit Verzögerungsleitung bestimmen. Ein Funktionsteil 105
enthält die dem Funktionsteil eines der durch den Rechner ausführbaren Befehle entsprechenden Tasten.
Bei der dargestellten Ausführungsform der Erfindung steuern die drei Tastenfelder 101, 103 und 105 einen
mechanischen Codierer, der aus Codeschienen besteht, die mit elektrischen Kontakten zusammenwirken, die
den Zweck haben, an den vier Leitungen Hi, H2, H3
und H 4 Binärsignale zu erzeugen zum Darstellen der vier Bits einer in das Tastenfeld 101 eingegebenen
Dezimalziffer, der vier Bits einer über das Tastenfeld 103 eingegebenen Adresse oder der vier Bits einer über
das Tastenfeld 105 eingegebenen Funktion. Der Codierer aktiviert außerdem eine der Ausgangsleitungen
Gl, G 2 und G 3, um anzuzeigen, welches der
Tastenfelder 101,103 bzw. 105 benutzt worden ist
Eine Taste 107 für das negative algebraische Vorzeichen und eine Taste 109 für das Dezimalkomma
erzeugen bei ihrem Niederdrücken an der Leitung SN bzw. Vein Binärsignal.
Der Rechner kann nach Wahl so voreingestellt werden, daß er nach drei Arten arbeitet d.h. »von
Hand«, »automatisch« und »Programmeingabe«. Dies
ist von der Stellung abhängig, auf die der Dreiwegschalter 111 eingestellt worden ist, der Signale PM, PA bzw.
/Perzeugt.
Bei automatischem Betrieb, bei welchem das vorher in den Speicher LDR eingegebene Programm ausgeführt
wird, können das Adressentastenfeld 103 und das Funktionstastenfeld 105 nicht betätigt werden.
Der automatische Betrieb der Maschine setzt sich aus einer Folge von Phasen der Extraktion der Befehle und
von Phasen der Ausführung der Befehle zusammen. Während einer Extraktionsphase wird ein Befehl aus
einem Programmregister entnommen und dann über die Torschaltung 193 in das Register 89 übertragen, wie es
in der DE-OS 14 99 245 beschrieben ist. Auf diese Phase folgt automatisch eine Ausführungsphase, in welcher
der Rechner den gespeicherten Befehl ausführt. Auf diese Phase folgt automatisch eine Extraktionsphase für
den nächsten Befehl, der entnommen und an der Stelle des vorgehenden gespeichert wird usw. Solange in dem
Register 89 ein Befehl gespeichert ist, bleibt das durch den Adressenteil des Befehls angegebene Speicherregister
fortwährend ausgewählt, und erzeugt der Decoder 91 fortwährend das dem Funktionsteil des Befehls
entsprechende Funktionssignal.
Bei automatischem Betrieb kann auch das Zahlentastenfeld 101 normalerweise insofern nicht betätigt
werden, als der Rechner nach vorher in den Speicher eingegebenen Daten arbeitet. Dieses Tastenfeld kann
nur dann zur Eingabe von Daten in das Register M benutzt werden, wenn der Stopbefehl in dem Befehlsregister
89 gespeichert wird. Es ist klar, daß die Verwendung des Stopbefehls es ermöglicht, viel mehr
Daten zu verarbeiten als der Speicher des Rechners enthalten kann.
Bei Handbetrieb können das Zahlentastenfeld 101 und das Adressentastenfeld 103 sowie das Funktionstastenfeld
105 betätigt werden. Bei dieser Betriebsart können das Adressentastenfeld 103 und das Funktionstastenfeld 105 durch den Bedienenden benutzt werden
um zu bewirken, daß der Rechner eine Reihe von Operationen ähnlich einer beliebigen bei automatischem
Betrieb ausgeführten Folge ausführt. Zu diesem Zweck gibt der Bedienende über das Tastenpult 87 eine
Adresse und eine Funktion ein, die auf diese Weise über die Torschaltung il5 bzw. 117 in dem Register 89 in
genau der gleichen Weise gespeichert werden, wie es bei einer Befehlsextraktionsphase bei automatischem
Betrieb erfolgt. Die beiden Torschaltungen 115 und 117 werden durch das Signal gesteuert, das durch den
Zustand der bistabilen Schaltung PO und die Signale G 2 bzw. C 3 erzeugt wird. Außerdem läuft durch Eingeben
eines Befehls (Adresse und Funktion) über das Tastenpult automatisch eine Phase der Ausführung des
Befehls zum Ausführen der eingegebenen Befehle in der der Ausführungsphase bei automatischem Betrieb
ähnlichen Weise an. Nachdem die Befehlsausführungsphase beendet ist, hält der Rechner an und wartet auf
eine durch den Bedienenden mit Hilfe des Tastenpultes 87 vorgenommene neue Eingabe.
Wenn keine Adressentaste niedergedrückt wird, wird automatisch das Register M adressiert Beim
Eingeben einer der vier Grundoperationen mit Hilfe des Tastenpultes braucht der Bedinende das Adressentastenfeld
nicht zu benutzen, sondern kann statt dessen die Eingabe einer Zahl über das Zahlentastenfeld
vornehmen. In diesem Falle wird die gewählte Operation mit der eingegebenen Zahl ausgeführt
Dadurch kann bei Handbetrieb jede Operation sowohl mit einer vorher über das Zahlentastenfeld 101 in das
Register Meingegebenen Zahl als auch mit der in einem über das Adressentastenfeld 103 ausgewählten
Speicherregister gespeicherten Zahl ausgeführt werden.
Bei automatischem Betrieb werden die in den Befehlen angegebenen Funktionen mit den vorher in
den Speicher eingegebenen Daten ausgeführt. Vor Beginn der Ausführung des automatischen Programms
kann der Bedienende die ursprünglichen Daten eingeben, indem er sie zunächst über das Zahlentastenfeld
101 in das Register M eingibt und sie dann in das gewünschte Register überträgt.
Das Tastenpult 87 enthält ein Dezimalziffer-Druckanzeigegerät 301. Dieses Gerät läßt sich auf 15 Stellungen
]5 einstellen, denen 15 durch das Anzeigegerät 301 in den
Perioden Ti — T5 ausgesandten Binärcodes entsprechen. Diese Binärcodes zeigen die zwischen 0 und 15
liegende Anzahl der Dezimalziffern an, die bei der numerischen Datenausgabe für die Aufzeichnungs- oder
Sichtgeräte in Betracht kommen.
Das Tastenpult 87 umfaßt außerdem ein Anzeigegerät 303 für zusätzliche Dezimalzahlen. Dieses Gerät ist
auf 12 Stellungen einstellbar. 11 dieser 12 Stellungen
entsprechen 11 durch das Anzeigegerät 303 in den Perioden Γ5— TB ausgesandten Binärcodes, die die
zwischen 0 und 11 liegende Anzahl der Dezimalziffern angeben, die beim Rechnen zusätzlich zu den zum
Drucken festgesetzten Dezimalzahlen in Betracht kommen. Diese Codes werden in den Schaltkreis 97
übertragen.
In der die Stellung FL genannten zwölften Stellung
wird als Ausgang aus dem Anzeigegerät 303 der Binärcode 15 erzielt, der benutzt wird zum Stabilisieren
der Gesamtzahl der Ziffern, die bei der Ausführung von Rechnungen auf der Basis mit feststehender Länge
festgehalten werden. Die Rechnungen werden auf dieser Basis ausgeführt, wobei im ganzen für die
Ergebnisse der Rechnung fünfzehn Ziffern erhalten bleiben und die überschüssigen Dezimalzahlen abgetrennt
werden.
Das Zustandsregister 119 enthält eine Vielzahl von bistabilen Schaltungen, die in jeder Periode sich auf die
momentanen Maschinenzustände beziehende Information enthalten, die in den verschiedenen Teilen des
Rechners zum Steuern seines Betriebes benutzt wird.
Die das Zustandsregister 119 verlassenden Signale sind
in F i g. 1 gemeinsam mit dem Bezugszeichen A bezeichnet
Gemäß dem Diagramm nach F i g. 1 enthält die Folgesteuereinheit 121 eine Gruppe aus zustandsanzeigenden
bistabilen Schaltungen Pi-Pn, die einzeln betätigt werden. Der Rechner befindet sich beim
Arbeiten in dem Zustand, der der aktivierten bistabilen Schaltung entspricht Beim Arbeiten geht der Rechner
durch eine Folge von Zuständen und führt während jedes von ihnen gegebene Grundoperationen aus.
Die besondere Folge dieser Zustände wird durch eine logische Schaltung 123 bestimmt Auf der Basis des
Stromzustandes des Rechners, des laufend in dem Register 89 gespeicherten und durch den Decoder 91
angegebenen Befehls sowie der durch das Zustandsregister 119 angegebenen augenblicklichen internen Zustände
des Rechners bestimmt die logische Schaltung 123, welcher Zustand folgen soll und aktiviert
entsprechend diesem Zustand den Ausgang 125. Danach erzeugt die Zustandswechselschaltung 127
einen Zustandswechsel-Zeitsteuerimpuls AfG, der die UND-Torschaltung 129 öffnet und die Aktivierung des
Ausganges 125 zum Aktivieren der bistabilen Schaltung Pi-Pn entsprechend dem nächsten Zustand ermöglicht.
Ein in einem Register enthaltener numerischer Datenwert kann bei zwischen seinen Ziffern zum
Erhalten eines besser lesbaren Formats eingefügten Interpunktionssymbolen in eine periphere Einheit
übertragen werden.
Der zum Erhalten einer solchen Informationsübertragung benutzte Befehl ist ein Befehl des zweiten Formats
und besteht aus einem Ziffernpaar.
Der zu übertragende numerische Datenwert muß in das Register A eingegeben werden, wobei die
einzufügenden Symbole in dem Register M in Übereinstimmung mit den Zeichenstellen des Registers
A angeordnet werden müssen, die diesen Symbolen bei der Ausgabe vorangehen müssen, damit eine »Schneidemaske«
(»editing mask«) entsteht.
Wenn bei der Ausführung eines Programms die erste Ziffer des Befehls in das Befehlsregister 89 eingegeben
wird, werden die der Adresse und der Funktion entsprechenden Ausgänge des Decoders 91 aktiviert
und das bistabile Element des Zustandsregisters 119
durch den Code des Zweizeichenbefehls auf »1« gestellt.
Dieses bistabile Element bestimmt die Extraktion des nächsten Befehls, der in das Schieberegister KB
übernommen wird. Das erste Bit des zweiten Zeichens zeigt an, ob es sich um alphabetische oder numerische
Zeichen handelt, das zweite und dritte Bit stellen die periphere Einheit fest, in die das Zeichen übertragen
wird, und das vierte Bit zeigt an, ob es sich um Eingabeoder Ausgabevorgänge handelt. Die letzten vier Bits
35— B8 geben die maximale Zeichenzahl an, die
übertragen werden kann.
Beim nächsten Zustand Pl wird der zweite Befehl an
dem bistabilen Element N 7 des Zustandsregisters 119
entnommen und werden die Bits Bl und S3 in die Ausgabeeinheit an der Leitung N nach F i g. 1
übertragen. Die periphere Einheit hält das Auswählsignal gespeichert, bis eine nächste Auswahl erfolgt. Das
an dem bistabilen Element entnommene Bit 04 des Zustandsregisters 119 bestimmt die Zustandsfolge der
Informationseingabe, wenn es auf »1« gestellt ist, und die der Informationsausgabe, wenn es auf »0« gestellt
ist
Dann geht der Rechner auf den Zustand P3 über, in welchem das Ausrichten des unbedeutendsten Zeichens
des Registers M nach dem Komma des Registers A stattfindet Zum Erzielen dieses Ausrichtens verbindet
der Schaltkreis 97 das Register M in einer Schleife mit dem Schieberegister KA, bis ein durch das bistabile
Element Λ/3 des Zustandsregisters 119 (Fig. 4)
erzeugtes Ausrichtende-Signal vorliegt. Das bistabile Element W3 wird auf »1« gestellt durch das UND des
Kommabits aus dem Register A und des Ausgangssignals eines weiteren bistabilen Elements NA des
Zustandsregisters tl9, das während der Übertragung der unbedeutendsten Ziffer aus dem Register M in das
Schieberegister KA auf »1« gestellt wird
Diese Übertragung wird dadurch erkannt, daß in der μ
Bitperiode Tl ein »1«-Bit der Ausgangsleitung LM aus
dem Speicher LDR und in der Stelle KAI des Schieberegisters KA ein »O«-Bit vorhanden ist Das
durch das bistabile Element N 3 erzeugte Signal bewirkt, daß der Schaltkreis 97 das Register M von dem
Schieberegister KA trer.nL
Das Ausrichtende-Signal bewirkt außerdem den Übergang auf den Zustand PA. In diesem Zustand wird
in das Bit ß IM des derr auszugebenden bedeutendsten Zeichen entsprechenden Zeichens des Registers M und
in das Bit BiA des dem anzugebenden unbedeutendsten Zeichen entsprechenden Zeichens des Registers A eine
»1« eingeschrieben.
Die Zeichenstellen, in die die Bits BiM und BiA
eingeschrieben werden sollen, werden in folgender Weise ermittelt.
Die Anzahl der Dezimalziffern in den ausgebrachten numerischen Daten wird durch geeignetes Einstellen
des Ausgabedezimalstellenanzeigers 303 bestimmt.
Die Zeichenstellen des Registers A werden ausgehend von dem Zeichen mit Dezimalkomma durch den
aus dem in einer Schleife mit der Addierschaltung 36 verbundenen Schieberegister KA gebildeten Zähler
gezählt. In dieser Phase PA erzeugt der Dezimaistelienanzeiger
301 einen Binärcode, der der Anzahl von eingegebenen Dezimalstellen entspricht, die in das
Schieberegister KA eingegeben wird. Dann wird eine auf den Unterschied zwischen 32 und der eingegebenen
Stellenzahl der bedeutenden Ziffern des Registers A ergänzte Zählung ausgeführt. Das Übertragbit des
Zählers weist die Markierungsbit-Steuerschaltung 33 an, in die Stelle ßl des entsprechenden Zeichens des
Registers A ein »1«-Bit einzuschreiben. Dieses Übertragsignal
bestimmt außerdem den Anfang einer Zählung der bedeutenden Zeichenstellen des Registers
M ausgehend von der Stelle, die dem Zeichen des Registers A entspricht, das das Bit B1 gleich »1« enthält.
Die Zählung wird durch den auf dem in einer Schleife mit der Addierschaltung 35 verbundenen Schieberegister
KB gebildeten Zähler ausgeführt.
Das Schieberegister KB enthält noch immer die anzugebende Zeichenzahl. Vor Beginn der Zahlen der
Zeichenstellen des Registers M wird die Zahl vor Einleitung der Zählung durch die Addierschaltung 35
ergänzt, wobei die Zählung angehalten wird, wenn der Inhalt des Schieberegisters KB Null ist. Das Vorliegen
dieser Bedingung bewirkt, daß die Markierungsbit-Steuerschaltung 33 in die Stelle B1 des entsprechenden
Zeichens des Registers Meine »1« einschreibt
Der im zweiten Zeichen des Zweizeichen-Befehls enthaltene Befehl ist dadurch vollständig ausgeführt
worden, so daß das Schieberegister KB jetzt verfügbar ist. Dann geht der Rechner auf den Zustand P12 über, in
welchem das Register A durch den Schaltkreis 97 an das jetzt als Pufferregister zum Zuführen der Zeichen in
externe Einheit benutzte Schieberegister KB angeschlossen ist
Die Aufgabe der Zeichen findet statt ausgehend von den bedeutendsten Ziffern, und zwar von dem
Wiederauffinden des Bits B1 gleich »1« in dem Register
M. Dieses Bit B iN leitet eine Zählung bis 32 der Stellen der Zeichen des Registers A ein und bewirkt das
Löschen des Bits BlM des Registers M Der Übertrag
aus dem Zähler bewirkt das Verbinden des Registers A mit dem Schieberegister KB mit Hilfe des Schaltkreises
97. Dieser Übertrag setzt außerdem ein bistabiles Element N3 des Zusatzregisters 119 auf »1«, wobei
dieses bistabile Element für die Dauer einer Zeichenperiode in dieser Stellung verbleibt, im Verlaufe derer die
Übertragung des an der Leitung LA ausgegebenen Zeichens in das Schieberegister KB erfolgt Da in jeder
Ziffer zwei Bits als Markierungsbit bzw. Ziffererkennungsbit erforderlich sind, sind für den Code der
alphanumerischen Zeichen nur sechs Bits verfügbar. Bei den numerischen Zeichen sind für den Code nur vier Bits
verfügbar, da zwei weitere Bits für das Vorzeichenbit
und das Dezimalkomma-Bit erforderlich sind. Bei der hier beschriebenen Ausführungsform der Erfindung
wurde der ISO-Code benutzt, bei welchem die ersten vier Bits des ISO-Code in den letzten vier Bitstellen
einer Ziffer liegen. Bei den alphanumerischen Zeichen liegen außerdem das fünfte und sechste Bit des
ISO-Code in der vierten bzw. dritten Bitstelle der Ziffer. L'm das richtige Codieren der numerischen Zeichen
nach dem Sechs-Bit-ISO-Code bei der Aufgabe dieser durch das Vorhandensein des auf »1« gestellten
bistabilen Elements N 7 angegebenen Zeichen wiederherzustellen, wird in die Stelle KB 3 und KB 4 des
Schieberegisters KB ein Bit »1« eingeschrieben.
Der genannte Übertrag bewirkt außerdem das Einschreiben eines Bits B IAf gleich »1« in das nächste
Zeichen von Af. Das Übertragen der nächsten Zeichen aus dem Register A in das Schieberegister KB erfolgi in
entsprechender Weise. Die Symbole, die zwischen zwei Ziffern eines in dem Register A vorhandenen numerischen
Datenwertes eingefügt werden können, sind alphanumerische Zeichen, die auf die Zeichen der
zweiten und dritten Spalte des ISO-Code begrenzt sind. Entsprechend der Lage der Codebits in den vorstehend
beschriebenen Bitstellen einer Ziffer ist das dritte Bit für diese Zeichen stets »1«.
Während dieser Zeichenübertragungsfolge wird ein bistabiles Element Λ/6 durch das Vorhandensein einer
»1« in dem Bit S3Af auf »1« gestellt. Das Ausgangssignal
aus diesem bistabilen Element Λ/6 bewirkt, daß der
Schaltkreis 97 jede weitere Übertragung von Bits des an jo der Leitung LA ausgegebenen Zeichens unterbricht und
das entsprechende aus Af ausgebrachte Zeichen dem Schieberegister KB zuführt. Dieses Zeichen wird
ermittelt mit Hilfe einer Zählung der Impulse Tl bis auf 32, die durch das aus dem bistabilen Element Λ/6 J5
zugeführte Signal eingeleitet wird.
Am Ende der Übertragung des Zeichens aus dem Register Af, bei welchem ß3Af gleich »1« ist, in das
Schieberegister KB wird die Übertragung der nächsten Zeichen aus dem Register A wieder aufgenommen. Die
Zeichenübertragungsfolge endet, wenn ein Zeichen, bei welchem das Bit B \A gleich »1« ist, aus dem Register A
in das Schieberegister KB übertragen wird. Auf diese Weise wird die Übertragung in das Pufferregister zum
Zuführen der Zeichen aus dem Register A in eine periphere Einheit erzielt, bei welcher zwischen zwei
aufeinanderfolgenden Zeichen ein Zeichen eingefügt werden kann, und zwar das in einer entsprechenden
Stelle des Registers Af enthaltene Zeichen, das demzufolge zugleich der Ausgangsleitung aus dem
Speicher LDR mit Verzögerungsleitung verfügbar ist.
Da zwischen Ziffern eines numerischen Datenwertes mit Hilfe des vorstehend beschriebenen Programmbefehls
Interpunktionssymbole oder Zwischenräume eingefügt werden können, läßt sich das horizontale Format
eines sich in Ausgabe befindenden numerischen Datenwertes steuern.
Gleitkomma-Rechenoperationen
Der Rechner nach der Erfindung kann so program- f>o
miert werden, daß er Rechenoperationen mit in exponentieller Form dargestellten numerischen Daten,
d. h. mit Hilfe eines Exponenten einer vorbestimmten Grundzahl und der entsprechenden Mantisse, ausführt.
Die zur Ausführung dieser Rechenoperation notwendi- *>·>
gen Befehle bilden Unterprogramme, die in dauerhafter Form in dem Nur-Lese-Speicher 18 gespeichert sind.
Da der Nur-Lese-Speicher 18 in dem Speicher LDR völlig gleichartiger Weise zugänglich ist, sind die
Unterprogramme bei der Ausführung eines Hauptprogramms mit Hilfe der in der DE-OS 14 99 245
beschriebenen Sprungbefehle auffindbar.
Der weiter oben beschriebene »Normalisierungsbefehl« ist vorgesehen, um einen numerischen Datenwert
aus Dezimaldarstellung in Exponentialdarstellung umzuwandeln, wobei dieser Befehl durch Operieren mit
einer gegebenen Festkomma-Zahl es ermöglicht, die Exponenten und Mantissen in zwei gesonderten
Registern zu erhalten.
Der Normalisierungsbefehl wird mit Hilfe der in F i g. 5a dargestellten Phasen ausgeführt
Anfänglich enthält das Register A einen numerischen Festkomma-Datenwert, während das Register Af leer
ist.
In der ersten Phase der Ausführung dieses Normalisierungsbefehls wird ein Signal erzeugt, das bewirkt, daß
die Schreibschaltung des Registers Af eine bedeutende Null mit einem Kommabit schreibt. Darauf werden die
Inhalte des Registers A und des Registers M nach dem Komma ausgerichtet wie oben beschrieben.
Ein bistabiles Element Λ/7 des Zustandsregisters 119
wird durch das Kommabit des Registers A auf »1« und durch ein im Register A hinter dem Komma
erscheinendes ι lögliches bedeutendes Ziffernbit auf »0<· zurückgestellt. Demzufolge wird das bistabile Element
N 7 auf»1« gestellt, sofern die in A enthaltene gegebene
Zahl weniger als eins ist, während es auf »0« gestellt wird, wenn dieser Datenwert größer als oder gleich eins
ist. Ein bistabiles Element /V8des Zustandsregisters 119
wird auf »1« gestellt.
Wenn das UND der Ausgangssignale an den bistabilen Elementen N 7 und NS »1« ist, wird das
Register A an das Schieberegister KA angeschlossen, und bei jeder Verschiebung des Registers A zieht die
Addierschaltung 40 eine Eins in dem Register Af ab.
Diese Verschiebungen werden wiederholt, bis da; Komma des Registers M sich an der gleichen
Zeichenstelle befindet wie die bedeutendste Ziffer de: Registers A. Dieser Zustand stellt ein bistabiles Element
Λ/9 des Zustandsregisters 119 auf »1«, wobei dieses Element bewirkt, daß der Schaltkreis 97 das Register A
von dem Schieberegister KB trennt, die Löschschaltung des Registers A das Kommabit löscht und die
Schreibschaltung des Registers A das Kommabit in dieselbe Stelle einschreibt wie das Komma des
Registers M.
Wenn dagegen das sich aus dem UND der bistabiler Elemente ergebende UND der Signale »<λ; ist, verbinde!
der Schaltkreis 97 das Register Af mit dem Schieberegister KB, und für jede erfolgende Verschiebung addier
die Addierschaltung 35 eine Eins in das Register A; hinzu.
Wenn das Komma des Registers Af die gleiche Zeichenstelle wie die bedeutendste Ziffer des Registers
A erreicht, ist das bistabile Element Λ/9 noch auf »1<
gestellt, und sein Ausgangssignal bewirkt, daß dei Schaltkreis 97 das Register Af von dem Schieberegistei
KB trennt. In der vorstehend beschriebenen ähnlicher Weise wird das Komma des Registers A gelöscht und it
die gleiche Stelle wie die des Registers Af erneu eingeschrieben.
Auf diese Weise ist jetzt der anfängliche in / enthaltene und in Festkomma-Form dargestellte nume
rische Datenwert bei im Register Af enthaltenei
Exponenten und im Register A enthaltener Mantisse ii Gleitkomma-Form dargestellt.
Um Speicherregister zu sparen, können diese beiden Daten mit Hilfe eines Vereinigungsbefehls in einem
einzigen Register vereinigt werden.
Als erste Phase oder Stufe bewirkt dieser Befehl das Ausrichten der beiden numerischen Daten nach dem
Komma. Dieses Ausrichten findet statt, wie es für die
Operation des Zuführens von Daten in eine externe Einheit beschrieben ist Der einzige Unterschied besteht
darin, daß das bistabile Element /V 4 statt durch die unbedeutendste Ziffer des Registers M nunmehr durch
das Kommabit dieses Registers auf »1« gestellt wird. Nachdem das Aussichten erfolgt ist, wird durch das
Kommabit des Registers A ein bistabiles Element M10 des Zustandsregisters 119 auf »1« gestellt Das
Ausgangssignal aus dem bistabilen Element /VlO bewirkt, daß der Schaltkreis 97 die Leseschaltung des
Registers M an die Schreibschaltung des Registers A anschließt. Au diese Weise enthält der integrale Teil der
Ziffern des Registers A den Exponenten und der Dezimalziffernteil die Mantisse.
Umgekehrt kann ein in einem einzigen Register enthaltener numerischer Gleitkomma-Datenwert mit
Hilfe des Trennungs- und des Befehls zum Übergang auf Festkomma in Festkomma-Darstellung umgewandelt
werden. Vor Eingabe des Trennungsbefehls muß der umzuwandelnde numerische Datenwert zu allererst in
das Register A übertragen werden. Dieser Trennungsbefehl wirkt auf das Register A ein, das bei Beginn der
Ausführung dieses Trennungsbefehls an den Eingang des Schieberegisters KB angeschlossen ist Der
Ausgang des Schieberegisters KB wird wie in F i g. 6 gezeigt an den Eingang des Schieberegisters KA und an
die Torschaltungen Sl, S2 und 53 angeschlossen. Die
Torschaltungen 51 und 52 sind einander parallelgeschaltet, wobei ihr Ausgang an den Eingang des
Registers A angeschlossen ist Die Torschaltungen werden jeweils durch den negierten Signalausgang aus
einem bistabilen Element /VIl des Zustandsregisters 119 und durch das von dem Generator 23 erzeugte
Zeitsteuersignal TA gesteuert.
Der Ausgang der Torschaltung 53 ist an den Eingang
des Registers M angeschlossen und wird durch den Ausgang eines bistabilen Elements /V12 des Zustandsregisters
119 gesteuert. Das bistabile Element /V12 wird
auf »1« gestellt, wenn das Kommabit in der Stelle KB3 des Schieberegisters KB enthalten ist, während das
bistabile Element /VIl auf »1« gestellt wird, wenn das
Kommabit in der Stelle KB1 des Schieberegisters KB
enthalten ist.
Der Ausgang aus dem Register KA wird über die
durch das von dem bistabilen Element NU erzeugte
Signal und durch das Zeitsteuer- bzw. Taktsignal 7*3 gesteuerte Torschaltung 54 an den Eingang des
Registers A angelegt.
Am Anfang der Ausführung des Trennungsbefehls wird der Inhalt des Registers A in das Schieberegister
KB übertragen und über die Torschaltung 51 erneut in
das Register A eingeschrieben. Auf diese Weise werden alle Dezimalziffern in das Register A erneut eingeschrieben.
Beim Übertragen der ersten Ziffer hinter ω dem Dezimaikomma in das Schieberegister KB wird die
bistabile Schaltung N12 auf »1« gestellt und die
Torschaltung 53 geöffnet Auf diese Weise wird der integrale Teil der Ziffern in das Register M übertragen.
Bei einem gegebenen numerischen Datenwert in Gleitkomma-Darstellung können der integrale und der
dezimale Teil der Ziffern unterschiedliche Vorzeichen haben, da sie den Exponenten bzw. die Mantisse
darstellen. Wenn sie getrennt werden und die Mantisse in dem Register A zurückbleibt muß in dem Register A
eine Ziffer »Null« mit Dezimalkomma erzeugt werden, wobei die Einerstelle das gleiche Vorzeichen ha* wie die
übrigen Ziffern der Mantisse. Um diese Ziffer bei in der Stelle KBi des Schieberegisters KB vorhandenem
Dezimalkomma zu erzeugen, wird das bistabile Element /VIl auf »1« gestellt und folglich die Torschaltung 51
geschlossen. Dadurch werden die ersten beiden Bits der ersten integralen Ziffer über die Torschaltung 51
erneut in das Register A eingeschrieben. In dem Zeitraum Γ3 ist die Torschaltung 54 geöffnet, so daß
durch eine durch das Schieberegister KA herbeigeführte Verzögerung die Einerziffer des Registers A das
gleiche Vorzeichenbit erhält wie das der höchstrangigen Dezimalziffer. Im Zeitraum Γ4 ist die Torschaltung
52 geöffnet, so daß das Dezimalkomma auch in die Einerziffer des Registers A eingeschrieben wird.
Auf diese Weise enthalten die Register A und M Zeichen, die sich auf Ziffern mit gleichem Vorzeichen
und richtig mit Dezimalkomma versehen zusammensetzen.
Der numerische Datenwert läßt sich jetzt durch den Befehl zum Übergang auf Festkomma in die Festkomma-Form
bringen. Dieser Befehl wird nach den in F i g. 5b veranschaulichten Phasen ausgeführt. Anfänglich
ist ein numerischer Datenwert bei sich im Register M befindendem Exponenten und im Register A
befindender Mantisse in Gleitkommaform dargestellt.
Das Vorzeichen des Registers Λ/wird in ein bistabiles
Element N13 des Zustandsregisters 119 übernommen.
Bei positivem Vorzeichen wird das bistabile Element /V13 des Zustandsregisters 119 auf »0« und bei
negativem Vorzeichen auf »1« gestellt.
Wenn dieses bistabile Element /V13 auf »1« gestellt
wird, wird das Register M an das Schieberegister KB angeschlossen, und bei jeder Verschiebung addiert die
Addierschaltung 39 eine Eins in das Register M.
Wenn das bistabile Element /V13 auf Null gestellt
wird, wird das Register A an das Schieberegister KB angeschlossen bei jeder Verschiebung und subtrahiert
die Addierschaltung 40 eins Eins in dem Register M.
In beiden Fällen werden die Register A und M von den Schieberegistern KA bzw. KB getrennt, wenn der
Inhalt des Registers MNuII ist.
Ähnlich wie beim Normalisierungsbefehl wird das Komma des Registers A gelöscht und in die gleiche
Stelle wie die des Registers Merneut eingeschrieben.
Auf diese Weise stellt der endgültige Inhalt des Registers A den ursprünglich in Gleitkomma-Form
gegebenen numerischen Datenwert in Festkomma-Form dar.
Hierzu 4 Blatt Zeichnungen
Claims (4)
1. Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine
Festkomma-Darstellung bei elektronischen Rechnern mit einem Paar von Speicherregistern (A, M)
zum Speichern eines Paars von Operanden und mit einem Paar von Schieberegistern (KB, KA), die
wahlweise mit den Speicherregistern (A, M) verbindbar sind, dadurch gekennzeichnet,
daß die beiden Schieberegister (KB, KA) mit dem Ausgang des ersten Speicherregisters (A) seriell
verbunden sind, das die Zahl anfangs in Gleitkomma-Schreibweise speichert, wobei das erste Schieberegister
(KB) durch wahlweise betätigbare Verbindungsschaltungen (51, 52, 53) mit dem Eingang
jedes einzelnen der Speicherregister (A, M) und das zweite Schieberegister (KA) durch eine weitere
wahlweise betätigbare Verbindungsschaltung (SA)
mit dem Eingang des ersten Speicherregisters (A) verbunden ist; daß auf die Stelle des Dezimalkommas
ansprechende Einrichtungen (N 11, N12) zum
wahlweisen Betätigen der Verbindungsschaltungen (51 bis 54) vorgesehen sind, damit die Mantisse
über die Speicherregister (KB, KA) von neuem in das erste Speicherregister (A) eingegeben wird, und
daß der Exponent über das erste Schieberregister (KB) auf das zweite Speicherregister (Ai1Jübertragen
wird.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Kapazität jedes der
Schieberegister (KB, KA) eine Zifferstelle beträgt und daß die Speicherregister (A, M) zur wiederumlaufenden
(recirculating) Art gehören.
3. Schaltungsanordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Verbindungsschaltungen
erste und zweite Tore (5 1,52), die zwischen das erste Schieberegister (KB) und das erste
Speicherregister (A) geschaltet sind und abwechselnd durch die ansprechenden Einrichtungen (NU,
N12) wirksam gemacht werden, um die Mantisse
bzw. das Dezimalkomma auf das erste Speicherregister (A) zu übertragen; ein drittes Tor (53), das
zwischen das erste Schieberegister (KB) und das zweite Speicherregister (M)geschaltet ist und durch
die ansprechenden Einrichtungen (WIl, N12)
konditioniert werden kann, um den Exponenten und das sachbezogene algebraische Vorzeichen auf das so
zweite Speicherregister (M) zu übertragen, und ein viertes Tor (54) aufweisen, das zwischen das zweite
Schieberegister (KA)und das erste Speicherregister (A) geschaltet ist und durch die ansprechenden
Einrichtungen (NIl, Λ/12) konditioniert werden
kann, um das algebraische Vorzeichen der Mantisse von neuem in das erste Speicherregister (A)
einzugeben.
4. Schaltungsanordnung nach Anspruch 3, dadurch gekennzeichnet, daß die ansprechenden Einrichtungen
ein erstes Flipflop (NW), das mit den Torschaltungen verbunden ist und durch das
Dezimalkomma in eine vorbestimmte Zelle (KB X) des ersten Schieberegisters KB) gesetzt werden
kann, und ein zweites Flipflop (N 12) aufweisen, das mit der anderen Torschaltung (53) verbunden ist
und durch das Dezimalkomma in eine zweite Zelle (KB 2) des ersten Schieberegisters (KB) mit einer
vorbestimmten Zeitbeziehung mit Bezug auf das erste Flipflop (NH) gesetzt werden kann.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT6833671 | 1971-04-22 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2220329A1 DE2220329A1 (de) | 1972-10-26 |
DE2220329B2 DE2220329B2 (de) | 1981-06-11 |
DE2220329C3 true DE2220329C3 (de) | 1982-02-11 |
Family
ID=11309023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2220329A Expired DE2220329C3 (de) | 1971-04-22 | 1972-04-21 | Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Rechnern |
Country Status (6)
Country | Link |
---|---|
CA (1) | CA978653A (de) |
CH (1) | CH550438A (de) |
DE (1) | DE2220329C3 (de) |
FR (1) | FR2136620A5 (de) |
GB (5) | GB1388594A (de) |
SU (1) | SU568398A3 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4036430A (en) * | 1976-05-13 | 1977-07-19 | Ebco Industries, Ltd. | Manually operable card reader |
GB2142176A (en) * | 1983-06-24 | 1985-01-09 | Hawker Siddeley Revenue Contr | Read and erase device |
GB2241810A (en) * | 1990-03-09 | 1991-09-11 | Mars Inc | Data card reader |
US5619198A (en) * | 1994-12-29 | 1997-04-08 | Tektronix, Inc. | Number format conversion apparatus for signal processing |
US6263426B1 (en) | 1998-04-30 | 2001-07-17 | Intel Corporation | Conversion from packed floating point data to packed 8-bit integer data in different architectural registers |
US6266769B1 (en) | 1998-04-30 | 2001-07-24 | Intel Corporation | Conversion between packed floating point data and packed 32-bit integer data in different architectural registers |
DE10056047C1 (de) * | 2000-11-11 | 2002-04-18 | Bosch Gmbh Robert | Verfahren und Rechenvorrichtung zur automatischen Wandlung eines arithmetischen Ausdrucks von Gleitkomma-Arithmetik in Festkomma-Arithmetik |
-
1972
- 1972-04-19 GB GB5939072*A patent/GB1388594A/en not_active Expired
- 1972-04-19 GB GB5939172*A patent/GB1388595A/en not_active Expired
- 1972-04-19 GB GB5939272*A patent/GB1388596A/en not_active Expired
- 1972-04-19 GB GB5939372*A patent/GB1388597A/en not_active Expired
- 1972-04-19 GB GB1822472A patent/GB1388593A/en not_active Expired
- 1972-04-21 FR FR7214312A patent/FR2136620A5/fr not_active Expired
- 1972-04-21 SU SU7201782279A patent/SU568398A3/ru active
- 1972-04-21 DE DE2220329A patent/DE2220329C3/de not_active Expired
- 1972-04-21 CH CH597872A patent/CH550438A/it not_active IP Right Cessation
- 1972-04-24 CA CA140,363A patent/CA978653A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
CH550438A (it) | 1974-06-14 |
GB1388597A (en) | 1975-03-26 |
GB1388595A (en) | 1975-03-26 |
GB1388593A (en) | 1975-03-26 |
GB1388594A (en) | 1975-03-26 |
GB1388596A (en) | 1975-03-26 |
FR2136620A5 (de) | 1972-12-22 |
DE2220329B2 (de) | 1981-06-11 |
DE2220329A1 (de) | 1972-10-26 |
SU568398A3 (ru) | 1977-08-05 |
CA978653A (en) | 1975-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1178623C2 (de) | Programmgesteuerte datenverarbeitende Maschine | |
DE1282337B (de) | Programmgesteuerte elektronische Rechenanlage | |
DE1255356B (de) | Steuervorrichtung fuer taktgesteuerte Rechenmaschinen | |
DE1549476B2 (de) | Anordnung zur ausfuehrung von divisionen | |
DE1549477B1 (de) | Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden | |
DE1162111B (de) | Gleitkomma-Recheneinrichtung | |
DE2220329C3 (de) | Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Rechnern | |
DE1114050B (de) | Elektronischer Gleitkomma-Rechner | |
DE1201586B (de) | Programmgesteuerte Daten-Auswertmaschine | |
DE2609698C2 (de) | Elektronischer Rechner | |
DE1239124B (de) | Vorrichtung zum Einspeichern einer Dezimalzahl in ein Register | |
DE1954475A1 (de) | Zugriffsstelle einer Datenverarbeitungsanlage | |
DE1957600C3 (de) | ||
DE1549455A1 (de) | Rechenmaschine | |
DE1952175B2 (de) | Steuerungsanordnung fuer die anzeige von datenzeichen in tabulierter form | |
DE1069910B (de) | Kommandowerk mit Indexregister | |
DE1954908A1 (de) | Elektronischer Rechner | |
DE1474017C3 (de) | Datenverarbeitungsanlage | |
DE1103646B (de) | Inkrement-Rechenmaschine | |
DE1549461C3 (de) | ||
DE1774110C3 (de) | ||
DE3501901A1 (de) | Binaermultiplikation | |
DE1302516C2 (de) | Verfahren und einrichtung fuer ein serie-serie-rechenwerk | |
DE1774038A1 (de) | Elektronische Rechenanlage | |
DE2419836B2 (de) | Schaltungsanordnung zur durchfuehrung von unterprogramm-sprungbefehlen in datenverarbeitungsanlagen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |