DE2626432C2 - Arithmetische Einheit für automatische Rechengeräte - Google Patents
Arithmetische Einheit für automatische RechengeräteInfo
- Publication number
- DE2626432C2 DE2626432C2 DE2626432A DE2626432A DE2626432C2 DE 2626432 C2 DE2626432 C2 DE 2626432C2 DE 2626432 A DE2626432 A DE 2626432A DE 2626432 A DE2626432 A DE 2626432A DE 2626432 C2 DE2626432 C2 DE 2626432C2
- Authority
- DE
- Germany
- Prior art keywords
- circuit
- sign
- bit
- operand
- operands
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/491—Computations with decimal numbers radix 12 or 20.
- G06F7/492—Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination
- G06F7/493—Computations 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/494—Adding; Subtracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/492—Indexing scheme relating to groups G06F7/492 - G06F7/496
- G06F2207/4924—Digit-parallel adding or subtracting
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Executing Machine-Instructions (AREA)
Description
i7. Arithmetische Einheit nach einem der Ansprüche ! bis !6, dadurch gekennzeichnet, däö «nsteüe des
Binäraddierers (20) ein Binärsubtrahierer tenutzt wird bei gleichzeitiger Umkehrung der Addition/Subtraktion-Operationssteuerung
in der Vorzeichenverarbeitungsschaltung (40).
Die Erfindung betrifft eine arithmetische Einheit für automatische Rechengeräte zur Addition oder Subtraktion
von binär oder binärdezimal verschlüsselten Operanden mit einem Paralleladdierer, dessen Operandeneingänge
und dessen Resultatausgang über je eine Modifizierschaltung geführt sind, die auswählbare Teile der Operanden
und des Resultats auf vorgegebene Werte einstellen.
In Datenverarbeitungsanlagen sind häufig Rechenoperationen mit Operanden auszuführen, die binärdezimal
verschlüsselt sind. Die arithmetischen Einheiten solcher Anlagen sind deshalb zumeist als Dezimalrechenwerke
ausgelegt, obwohl die Arbeitsgeschwindigkeit von Binärrechenwerken naturgemäß wesentlich höher ist.
Erschwerend kommt hinzu, daß die in Datenverarbeitungsanlagen verwendeten Codesysteme zur Darstellung
von alphanumerischen Daten und von einer Anzahl von Sonderzeichen geeignet sein müssen. Ein Beispiel für
ein solches Codesystem ist der EBCDIC-Code. In einem derartigen Code verschlüsselte numerische Ziffern bilden
eine Untermenge der insgesamt benutzten Zeichen. Ein Zeichen kann durch ein Byte dargestellt werden,
das aus zwei Vier-Bit-Gruppen besteht, von denen jede eine Hexadezimalziffer mit einem der 16 Symbole 0,1
hjs 9 und A bis /"darstellt. Die 2* - 256 darstellbaren Zeichen können somit jeweils als zwei HexadezimalzifTcm
beschrieben werden. In einem solchen Ziffernpaar wird die li.ike Hexadezimalziffer »Zone» genannt. Man
bezeichnet daher derart verschlüsselte Dezisralziffern als Ziffern im Zonen-Dezimalformat. Für die eigentliche
Zifferndarstellung ist der Zonencode redundant; er dient jedoch als Kategoriencode, um die numerischen Daten
von den alphabetischen Daten und von den Sonderzeichen zu unterscheiden. Für die Zifferndarstellung nimmt
daher der Zonencode jeweils einen festen Wert ein. Beim EBCDIC-Code ist dies der Hexadezimalwert F.
Herkömmliche Dezimalrechenwerke können Dezimalziffem im Zonen-Dezimalformat nicht verarbeiten.
Um dies zu ermöglichen, sind die numerischen Daten umzuformen in das sogenannte gepackte Dezimalformat,
in dem jede DezimalzifTer nur noch aus einer einzigen Vier-Bit-Gruppe besteht. Andererseits müssen die am
Ausgang des Rechenwerkes erhaltenen Resultatwerte erneut zurückverwandelt werden in das Zonen-Dezimalformat,
um mit den anderen Daten hinsichtlich Speicherung sowie Ein- und Ausgabe kompatibel zu sein. Diese
Codeumsetzoperationen erfordern jedoch einen erheblichen Anteil Verarbeitungszeit und tragen damit entscheidend
zu einer Verringerung der Arbeitsgeschwindigkeit der Dezimalrechenwerke bei.
Es ist bereits ein Rechenwerk bekannt, das in der Lage ist, sowoh! Operanden im gepackten Dezimalformat als
auch Operanden im Zonen-Dezimalformat zu verarbeiten (DE-OS 23 35 661). Dieses Rechenwerk besteht aus
einem Subtrahierwerk mit Borger-Vorausschau. Bei der Verarbeitung von Operanden im Zonen-Dezimaiformal
wird die Borger-Vorausschauschaltung durch logische Schaltmittel so abgeändert, daß bei der Borger-Vorausschau
die Bits der Zonenfelder umgangen werden und ein Borger-Ausgangssignal der höchsten Bitstelle als
Borger-Ausgangssignal eines Bytes dient. Wenn z. B. mehrstellige, im Zonen-Dczimalformai vorliegende Operanden
addiert oder subtrahiert werden sollen, werden die einzelnen Zonen-Ziffern in der aufsteigenden Ziffcrnstellcnfolgc
durch aufeinanderfolgende Maschinenzyklen verarbeitet, wobei der Borger-Ausgang eines
Maschinenzykius gespeichert und als Borger-Eingang des nächsten Maschinenzyklus benutzt wird. Hierbei vorhindert
die Umgehung der Borger-Vorausschauschaltungcn der Zonenfclder, daß diese die Ergebnisse der
Rechenoperationen verfälschen. Eine solche Arbeitsweise erfordert jedoch einen gewissen zusätzlichen Zeitaufwand.
So sind zum Beispiel für die Schaltungen zur Umgehung der Zonenfelder zwei Logik-Stufen pro Byte
notwendig.
Es ist bekannt, ein Addierwerk vorgegebener Wortlänge zur Addition von Operanden veränderlicher Feldlänge
zu benutzen, indem dem Addierwerk aus den beiden Operandenregistern die zu addierenden Operandenleider
unverändert zugeführt und alle außerhalb dieser Felder liegenden Teile des Wortes für den einen
Operandencingang durch Nullen und für den anderen Operandeneingang durch Einsen ersetzt werden (DE-AS
19 39 946). Das zu addierende Feld kann innerhalb der gesamten Wortlänge linksbündig, rechtsbündig oder /v>
ischen den Wortlängengrenzen liegen, ohne daß die auszuführende Addition gestört wird. Dies wird auch
dadurch sichergestellt, daß ausgangsseitig nur diejenigen Resultatsziffern weitergeleitet werden, die den zu
s addierenden Feldern entsprechen. Di: Auswahl der zu addierenden Operandenfelder und des zugehörigen
Resultatfeldes geschieht über logische Schaltungen, die durch den Inhalt eines Maskenregisters gesteuert werden.
Dieses Verfahren ist lediglich für die Addition einheitlicher und homogener Felder bestimmt, wie z. B. für
die Addition zweier Binarzahlen. Für die Verarbeitung von wahlweise in unterschiedlichen Formaten zuführbaren
Operanden wäre das bekannte Verfahren nur mit erheblichem Programmierungsaufwand anwendbar,
wodurch sich die Verknüpfungszeiten stark erhöhen.
Aufgabe der Erfindung ist es, eine arithmetische Einheil der eingangs genannten Art anzugeben, die eine
schnelle Addition oder Subtraktion von Operanden gestattet, die sowohl binär als auch binärdezimal im Zonen-Dezimal-Format
oder im gepackten Dezimallbrmat verschlüsselt sein können.
Die Maßnahmen zur Lösung dieser Aufgabe sind im Patentanspruch 1 gekennzeichnet. Verschiedene vortcilhafte
Ausgestallungen und Weiterbildungen der Erfindung sind aus den Unleransprüchen ersichtlich.
Fig. 1 ein vereinfachtes Blockschaltbild eines Ausführungsbcispiels der arithmetischen Einheit gemäß der
Erfindung,
Fig. 2 eine schematische Darstellung von Datenformaten für die Dezimalziffern, die mit der Einheit von
Fig. 1 verarbeitet werden können,
F i g. 3 eine schematische Schaltung einer Steuereinheit zur Erzeugung von Steuersignalen für den Betrieb der
arithmetischen Einheit von Fig. 1,
Fig. 5 ein Schaltbild von Torschaltungen, wie sie im Modifiziercr gemäß Fig. 4 Verwendung finden können,
Fig. 6 eine Ausführungsform des Komplementierers/Modifizieres 33 von Fig. I,
Fig. 7 ein Schaltbild einer logischen Schallung, wie sie im Komplementierer/Modifizierer von F i g. 6 verwendet
werden,
Fig. 9 ein Schaltbild eines Minusvorzeichendetektors, wie er >n der Schaltung von Fig. 8 verwendet werden
kann,
Fig. 11-13 verschiedene logische Schaltungen, wie sie in der Korrekturschaltung von Fig. IU verwendet werden
können und
Die Schaltungsanordnung von F ig. 1 stellt eine arithmetische Einheit 10 dar zur Ausführung von Rechenoperationen
mit mehrstelligen binärcodierten Dezimalzahlen, die entweder im Zonendezimalformat oder im
gepackten Dezimalformat vorliegen. Die arithmetische Einheit 10 kann ferner binäre Rechenoperationen sowie
andere übliche Datenverarbeitungsoperationen ausführen. Sie eignet sieh besonders als arithmetische und
logische Einheit für leistungsfähige Mehrzweek-Datcnverarbeitungsanlagen.die fest verdrahte! odermikroprogrammiert
sind. Zur Vereinfachung der Darstellung wird angenommen, daß die Funktionseinheiten und die
diese verbindenden Sammelleitungen eine DatenfluBbreite von 4 Bytes (32 Bits) besitzen. Die Erfindung ist
jedoch nicht auf eine derartige Datenflußbreite beschränkt, sondern mit Vorteil auch bei größeren Datenflußbreiten
anwendbar.
Über Eingangssammelleitungen 11 und 12 werden der arithmetischen Einheit 10 Operanden im Zonen-Dezi-•»5
malformat oder im gepackten Dezimalformat oder im Binärformat zugeführt. Das in Fig. 2 bei 13 dargestellte
Zonen-Dezimalformat besteht aus einer Folge von Wbinären Bits, die unterteilt ist in sich abwechselnde yV-Bit-Zonenfelder
und /V-Bit-Ziffernfelder. Im dargestellten Ausführungsbeispiel ist M = 32 und N = 4. Die Zonenfelder
sind mit 14 a, 14*, 14 rund 14 d bezeichnet und die Ziffernfelder mit ISo, 15 b, 15 c und iSd. Der Stellenwert
der Ziffern steigt von rechts nach links; die werthöchste Ziffer steht links und die wertniedrigste rechts. Das
mit 14 d bezeichnete Zonenfeld neben dem wertniedrigsten Ziffernfeld 15 d wird als Vorzeichenanzeigefeld
benutzt. Die vier Bits in diesem Feld geben an, ob der dargestellte Operand positiv oder negativ ist. Jedes Byte
der Zonen-Dezimalziffern besteht aus 8 binären Bits, wobei die vier werthohen Bits ein Zonenfeld und die vier
wertniedrigen Bits ein Ziffernfeld bilden. Das Byte 0 umfaßt z. B. ein Zonenfeld 14 α und ein Ziffernfeld 15 a.
Jedes 8 Bit große Byte des Zonen-Dezimalformats entspricht einem Zeichen im EBCDIC-Code, der von einer
großen Anzahl bekannter Eingabe- und Ausgabeeinheiten benutzt, die Daten an eine Datenverarbeitungsanlage
liefern oder von dort empfangen. Sofern es sich um numierische Daten handelt, stellt jedes vierstellige Ziffernfeld
eine Dezimalziffer dar. Die in diesem Feld enthaltenen Bits sind binärdezimal mit den Gewichten
8-4-2-1 codiert. Dieser Code ist in der nachfolgenden Tabelle aufgeführt.
0 0000
1 0001
2 0010
3 0011
4 0100 °
5 0101
6 0110
7 Olli
8 1000
9 1001
iiiit ucFi UiMaTwCTt ι.
Tabelle II | Hex-Code | Binärcode |
Vorzeichen | A | 1010 |
+ | B | 1011 |
- | C | 1100 |
+ | D | 1101 |
- | E | 1110 |
+ | F | 1111 |
+ | ||
Mit diesen Zonen-, Zahlen- und Zeichencodes kann die positive Dezimalzahl +1975 im Zonen-Dezimalformat
durch die nachstehende Folge von 32 binären Ziffern dargestellt werden: 35
11 π υυυι im iuui im Olli im uiui
worin der Anfangscode 1111 das positive Vorzeichen darstellt.
Für verschiedene Zwecke ist die Hexadezimaldarstellung mit der Basis 16 günstiger. Die Beziehung zwischen 40
Dezimalziffern und den entsprechenden Hcxadezimalziffcm sowie den vier Bits umfassenden Binärcodes der
llcxadezimalziffern zeigt die nachstehende Tabelle III.
/ilTer HexadezimalzilTcr
0 | 0 | 0000 |
1 | 1 | 0001 |
2 | 2 | 0010 |
3 | 3 | 0011 |
4 | 4 | 0100 |
5 | 5 | 0101 |
6 | 6 | OUO |
7 | 7 | Olli |
8 | 8 | 1000 |
9 | 9 | 1001 |
10 | A | 1010 |
II | B | 1011 |
12 | C | 1100 |
13 | D | 1101 |
14 | E | 1110 |
Ϊ5 | F | iill |
50
M) 65
In dieser hexadezimalen Schreibweise kann die Dezimalzahl +1975 im Zonendezimairormat in der folgenden
Weise dargestellt werden:
F\ F) Π Α 5
Worin das Hexadezimalzeichenfzur Bezeichnung des Zonenfeldcodes 1111 benutzt wird. Dasllexadezimalforntul
ist leichter zu benutzen als die reine Binärdarslellung und wird hierin auch gelegentlich zur Wiedergabe
von binären Bitfolgen verwendet. Wie der Vergleich der Tabellen I und 111 zeigt, sind die Binärcodes tür die Ziffern
0 bis 9 im Dezimalsystem und im Hexadezimalsystem identisch. Wie aus Tabelle 111 ersichtlich ist, benutzt
das Hexadezimalsystem alle möglichen Kombinationen von Einsen und Nullen, die in einer Gruppe von vier
Bits auftret :n können. Aus diesem Grund wird ein aus vier Bits bestehendes Feld auch manchmal als Hexadezimalfeld
bezeichnet. Insbesondere werden im Sinne einer allgemeinen Identifizierung die acht Vier-Bit-Feld-Positionen
in Fig. 2 als Hexadezimalfelder 0 bis 7 bezeichnet, wobei das Hexadezimalfeld 0 das werthöchste
und das Hexadezimalfeld 7 das wertniedrigste Feld ist.
der 32 binären Bits ist wiederum in acht Felder zu je vier Bits unterteilt. In diesem Falle ist jedoch jedes dieser
der Felder benutzt die in Tabelle I angegebene Binärdezimalcodierung. Im Vorzeichenleld wird ein Binärcode
gemäß Tabelle II verwendet.
0000 0001 1001 Olli 0101 1100
worin der Code 1100 das positive Vorzeichen angibt. In Hexadezimaldarstellung wird dieser Ausdruck zu
01975 C.
Die vier rührenden Nullen im gepackten Dezimalformat entsprechen einer führenden Null in Hexadczimaldarstellung.
Sie dienen dazu, die Gesamtzahl von Bits im dargestellten Ausdruck einer ganzen Zahl von Bytes
anzupassen, da die Verarbeitungseinheiten üblicherweise eine Datenflußbreite entsprechend einer ganzen
Anzahl von Bytes aufweisen.
In einer bekannten Datenverarbeitungseinheit werden die numerischen Daten von den Eingabegeräten im
Zonen-Dezimalformat empfangen. Diese Daten werden daraufhin in das gepackte Dezimalformat umgesetzt,
bevor mit ihnen Rechenoperationen ausgeführt werden. Diese Umsetzung geschieht dadurch, daß man die
Zonenfelder entfernt und die relative Position des Vorzeichenfeldes verändert. Die sich ergebenden Ziffernfelder
und das Vorzeichenfeld werden in der aus Fig. 2 ersichtlichen Art nebeneinandergesetzt. Nach Durchführung
der gewünschten Rechenoperation wird die resultierende Zahl in das Zonen-Dezimalformal zurückverwandelt,
in der sie zu einem Ausgabegerät übertragen wird. Im Gegensatz hierzu verarbeitet die in F i g. I dargestellte
arithmetische Recheneinheit numerische Daten im Zonen-Dezimalformat, so daß diese nicht erst in das
gepackte Dezimalformat umgesetzt werden müssen. Die arithmetische Einheit 10 kann jedoch auch numerische
Daten verarbeiten, die im gepackten Dezimalformat oder in reiner Binärform vorliegen.
Die Einheit 10 von Fig. 1 weist eine binäre Rechenschaltung in Form eines Paralleladdierers 20 auf, der mit
Übertragsvorausschaltungen zur Addition von zwei jeweils 32 Bits umfassenden binären ZiiTcrnfoigen versehen
ist zur Erzeugung einer 32 Bits umfassenden AusgabezifTernfolge. welche die Summe der beiden Eingabebitfolgen
darstellt. Der Addierer 20 besitzt keine besonderen Schaltungen zur Berücksichtigung der Eigenarten
von Zonen-Dezimalzahlen. Die an die beiden Eingangsseiten angelegten Eingabebitfolgen werden so behandelt,
als ob es sich um teine Binärzahlen handeln würde, und die resultierende Ausgabebitfolge stellt oie Summe
der beiden Eingabebitfolgen als reine Binärzahl dar.
Die Einheit 10 umfaßt des weiteren eine erste Eingangsschaltung in Form einer Λ-Eingangsdatensammelleitung 11, eines A-Registers 21, einer Datensammelleitung 22, eines Modifizierers 23 und einer Datensammelleitung 24. Diese Teile bestehen jeweils aus 32 Leitungen bzw. Registerstufen zur Übertragung der 32 Bits umfassenden Eingabedatenfolge zum Α-Eingang des Addierers 20.
Die Einheit 10 umfaßt des weiteren eine erste Eingangsschaltung in Form einer Λ-Eingangsdatensammelleitung 11, eines A-Registers 21, einer Datensammelleitung 22, eines Modifizierers 23 und einer Datensammelleitung 24. Diese Teile bestehen jeweils aus 32 Leitungen bzw. Registerstufen zur Übertragung der 32 Bits umfassenden Eingabedatenfolge zum Α-Eingang des Addierers 20.
Der Modifizierer 23 gestattet vier Betriebsarten. Wenn die Recheneinheit 10 reine Binärzahlen verarbeitet,
leitet der Modifizierer 23 diese unverändert zum Addierer20 weiter. Wenn die Einheit 16 Zonen-Dezimalzahlen
verarbeitet, verändert der Modifizierer 23 in den Zonen- und Vorzeichenfeldern alle von Null verschiedenen
Bits in Nullwerte. Die Bits in den ZifTernfeldern werden dagegen nicht verändert. Die sich ergebende Bitfolge
wird dem Α-Eingang des Addierers 20 zugeführt.
Im Fall von numerischen Eingabedaten, die im gepackten Dezimalformat vorliegen, stellt der Modifizierer 23
die vier Bits im Vorzeichenfeld auf den Wert 0.
Die vierte Betriebsart ist für den Rekomplementierbetrieb vorgesehen, der dazu dient, die Resultatzahl vom
Ausgang des Addierers 20 emeut umzusetzen. In diesem Fall bringt der Modifizierer 23 alle 32 Ausgangsbits auf
den Wert 0, so daß der dem Addierer 20 zugeführte Wert 0 ist.
Die jeweilige Betriebsart des Modifizierers 23 wird durch externe Steuersignale eingestellt, die über Leitungen
26 bis 28 und 30 zugeführt werden. Ein Übertragungssteuersignal auf der Leitung 29 veranlaßt eine Übertragung
des im Register 21 gespeicherten Operanden durch den Modifizierer 23 zum Addierer 20.
Die arithmetische Einheit 10 enthält ferner eine zweite Eingangsschaltung zum Empfang des zweiten Operanden
und zu dessen Weiterleitung zum B-Eingang des Addierers 20. Diese Eingangsschaltung enthält eine B-Eingangsdatensammelleitung
12, ein B-Register 31, eine Datensammelleitung 32, einen Komplementierer und Modifizierer 33 und eine Datensammelleitung 34, die mit dem B-Eingang des Addierers 20 verbunden ist. Das
Register 31 umfaßt wiederum 32 Registerstufen und die Sammelleitungen je 32 Adern mit Ausnahme der Sammelleitung
32. die 64 Adern aufweist, da vom Register 31 sowohl die echten ais auch die Kompiemenisignaie
zum Modifizierer 33 übertragen werden. Der Modifizierer 33 führt vier Betriebsarten aus, nämlich:
1I) cine Vorbereitung der Dezimalzahlcn in den Zonen- und Vorzeichen-Feldern;
(2) eine Komplementierung von Binär- und Dezimalzahlen zur Auführung von Subtraktionen;
(3) eine »Plus sechs«-Funktion für die Addition von Dezimalzahlen und
(4) eine »Echt«-Funktion für die Addition von Binärzahlen.
Die Betriebsart (I) wird tür Operanden benutzt, die im Zonen-Dezimalformat vorliegen, und bringt alle Nüllbits
in den Zonen-und Vorzcichcnfcldernaul den Wert 1, so daß diese Felder jeweils in Form von U 11-Werten
dem Addierer 20 zugeführt werden. Wenn es sich um gepackte Dezimalzahlcn handelt, besteht die Vorbereitung
darin, daLJ jedes Bit im Vorzeichenfeld auf 1 gesetzt wird.
Mit Hilfe der Komplementfunktion des Modifizierers 33 ist die arithmetische Einheit 10 in der Lage, Subtraktionen
auszuführen. Dies geschieht durch Addition des Operanden vom Α-Eingang zum Komplement des Operanden
vom B-Eingang. Wenn es sich um Binärzahlen handelt, liefert der Modifizierer 33 das Komplement des
Operanden vom B-Register 31 zum Addierer 20. Dasselbe gilt für Dezimaloperanden, jedoch nur für deren Zahlenfeldteil.
Die Zonen- und Vorzeichenfelder werden wie oben angegeben auf lauter Einsen eingestellt.
Die Funktion »Plus sechs« wird bei einer Addition mit Dezimalzahlen benutzt. Beim Addieren von Zahlen,
die im Zonen-Dezimalformat oder im gepackten Dezimalformat vorliegen, erhöht der Modifizierer 33 den Zahlenwert
in jedem Ziffernfeld um den Konstant wert 6, damit die richtigen Stellcnüberträge im Addierer 20 erfolgen
Dies ist durch die Differenz der Basiswerte vom Dezimalsystem (Basis 10) und vom Hexadezimalsystem
-; (Basis 16) erforderlich. Mit anderen Worten heißt dies, daß ein vier Bit großes Zah!?nf?!d fur flen Addierer 20 als
'< HexadezimaiiifTer erscheint, während die Eingabedaten tatsächlich aus Dezimalziffern bestehen. Durch die
Addition det, Konstantwertes 6 zur Dezimalziffer einer gegebenen Wertstelle wird in der vier Bitstufen umfas-
\ senden Ziffernstufe der Additionseinrichtung im Modifizierer 33 für diese ZifTemstelle ein Ziffemübertrag
.': erzeugt, wenn die Summe der beiden Werte gleich oder größer 10 ist.
., Bei der Subtraktion von Dezimalzahlen braucht keine Addition von sechs zu erfolgen, weil die dann notwen-
■ dige Komplementierung den Unterschied der beiden Zahlensysteme bereits berücksichtigt, indem der Modifi-1
■ zierer 33 für jedes vier Bit umfassende Ziffernfeld das Komplement zu 15 bilden, was für Dezimalzahlen der BiI-
^ dung des Neunerkomplements und der Addition des Wertes 6 entspricht.
: Bei der Addition von Binärzahlen wird die »Echt«-Funktion benutzt. In diesem Falle läßt der Modifizierer 33
.-■; den Operanden aus dem Register 31 unverändert zum Addierer 20 passieren. Bei der Subtraktion von Binärzah-
4. l^n bewirkt der Modifizierer 33, daß dem Addierer 20 das Komplement des Operanden zugeführt wird. Bei der
J·, Addition von Operanden, die im Zonen-Dezimalformat vorliegen, veranlaßt der Modifizierer 33 eine Addition
j.; des Wertes 6 zu jedem Ziffernfeld und stellt gleichzeitig die Bits in den Zonen/Vorzeichenfeldern auf 1. Beim
i] Subtrahieren von Dezimalzahlen, die im Zonen-Dezimalformat vorliegen, komplementiert der Modifizierer 33
;i den Inhalt der Ziffernfelder und stellt gleichzeitig die Bits in den Zonen/Vorzeichenfeldern auf 1. Beim Addicts ren von Operanden, die im gepackten Dezimalformat vorliegen, addiert der Modifizicrer 33 den Wert 6 zum
fi Inhalt eines jeden Ziffernfeldes und stellt gleichzeitig die Bits im Vorzeichenfeld auf 1. Beim Subtrahieren von
S Operanden, die im gepackten Dezimalformat vorliegen, komplementiert der Modifizierer 33 den Inhalt eines
H jeden Ziffernfeldes und stellt gleichzeitig die Bits im Vorzeichenfeld auf 1.
f. Die jeweils im Modifizierer 33 auszuführende Operation wird durch externe Steuersignale bestimmt, d;e über
U Leitungen 26 bis 28 zugeführt werden. Ein Steuersignal auf Leitung 36 dient als Startsignal für die Operation, die
I der Modifizierer33 mit den im Register31 enthaltenen Daten auszuführen hat. Bei Rechenoperationen mit Ope-5;
randen, die im Zonen-Dezimalformat vorliegen, werden somit die Zonen/Vorzeichenfelder voibercitet. bevor
I die Operanden dem Addierer 20 zugeführt werden, indem die Bits in diesen Feldern beim Operanden des Einig
ganges A auf 0 und beim Operanden des Eingangs B auf 1 gesetzt werden. Diese Vorbereitung ermöglicht U.e
fj richtige Weiterleitung von Stellenüberträgen durch die Zonenfelder während der Ausführung von Additionen
■j im Addierer 20. Demzufolge haben die Ziffernfelder in der Ausgabebitfolge des Addierers 20 dieselben Werte,
I die sie auch hätten, wenn die Zonen/Vorzeichenfelder nicht vorhanden wären.
y wendig, um externe Übertragseingangssignale über das Vorzeichenfeld während der Addition weiterleiten zu
:| können.
I Steuerung der einzelnen Funktionen des Modifizierers 33 erfolgt, damit die richtige Rechenoperation aus-I
geführt wird. Diese Schaltung besteht aus einer Vorzeichenverarbeitungsschaltung 40, die die Vorzeichenfelder
1 der Eingangsoperanden zugeführt erhält und auf Signale anspricht, die über eine Steuerleitung 41 zugeführt
I werden. Die Schaltung 40 liefert ein Additions/Subtraktionssteuersigiul auf eine Ausgangsleitung 42, das dem
a Modifizierer 33 zur wahlweisen Aus- und Einschaltung des Komplementiervorganges zugeführt wird. Dieses
1 Steuersignal wird »angeforderte Operation« genannt. Dieses Signal wird durch einen positiven Anzeigewert dar-
£| gestellt, wenn eine Addition angefordert wird, und durch einen negativen Anzeigewert, wenn eine Subtraktion
fs angefordert wird. Im dargestellten Ausfuhrungsbeispiel wird der positive Anzeigewert durch einen Nullpegel
§ und der negative Anzeigewert durch einen Eins-Pegel auf der Steuerleitung 41 verkörpert.
Das Vorzeichenfeld für den Operanden des Α-Eingangs wird der Schaltung 40 über eine achtadrige Sammelleitung
44 zugeführt, die vom Register 21 die vier Bits des Ziffernfeldes 6 und die vier Bits des Ziffernfeldes 7
empfängt Das Vorzeichenfeld für den Operanden im B-Eingang wird der Schaltung 40 über eine achtadrige
Sammelleitung 45 zugeführt, die vom Register 31 die vier Bits des Ziffernfeldes 6 und die vier Bits des Ziffernfeldes
7 empfängt Nach der Darstellung der F i g. 2 befinden sich die Vorzeichen bei Operanden, die im Zonen-Dezimalformat
vorliegen, in der Ziffernposition 6, und für Operanden, die im gepackten Dezi mal format voriiegen,
in der Ziffernposition 7.
Die Schaltung 40 enthält eine Logik zur Erzeugung des gewünschten Additions/Subtraktionssteuersignals auf
Die Schaltung 40 enthält eine Logik zur Erzeugung des gewünschten Additions/Subtraktionssteuersignals auf
der Ausgangsleiiung 42. die anhand der Tabelle IV ableitbar ist.
Tabelle IV
Tabelle IV
Angeforderte Vorzeichen Vorzeichen Ausgeführte
Operation des des Operation
Operation des des Operation
10
15
2ü für des externe Warnsignal auf dir SieusrleitüRg 41. Das eins Addition anfordernde Pluszeichen bezeichnet das
das Auftreten eines Signalpegels 1 auf der gleichen Steuerleitung bezeichnet. Die äußerste rechte Spalte mit der
signal auf der Ausgangsleitung 42 erzeugten Signals. Ein Pluszeichen in dieser Spalte bedeutet die Ausführung
einer Addition und ein Minuszeichen die Ausführung einer Subtraktion.
Gemäß Tabelle IV steuert die Schaltung 40 den Modifizierer 33 in der Weise, daß die Einheit 10 die ihr zugeführten
Operanden addiert, wenn keine der als Eingangsfaktoren vorliegenden Polaritäten negativ ist oder wenn
eine gerade Zahl dieser Faktoren negativ ist. und daß die Einheit 10 die ihr zugeführten Operanden subtrahiert,
wenn eine ungerade Zahf der drei Polaritätsfaktoren negativ ist.
Die Vorzeichenverarbeitungsschaltung 40 enthält eine separate Steuerschaltung zur Erzeugung eines Vorzeichensteuersignals
auf einer zweiten Ausgangsleitung 46, die bei der Verarbeitung von Dezimalzahlen das
Vorzeichenfeld des Resultatwerts auf die richtige Polarität einstellt.
Die Einheit 10 enthält des weiteren eine Resultat-Modifizierschaltung 50, die hierin auch Korrekturschaltung
genannt wird. Diese Modifizierschaltung ist mit dem Ausgang des Addierers 20 gekoppelt und empfängt dessen
Ausgabebitfolge. Die Schaltung 50 erzeugt eine binäre Ausgabefolge, in der die Bits in den Zonen-Vorzeichenfeldern
die richtig codierten Werte einnehmen. Hierzu werden die Bits der Zonenfelder einer jeden Ziffernstelle
auf 1 gesetzt. Zur gleichen Zeit werden die Bits im Vorzeichenfeld entsprechend dem Vorzeichensteuersignal
auf der Leitung 46 eingestellt.
Bei der Verarbeitung von Operanden, die im gepackten Dezimalformat vorliegen, stellt die Schaltung 50 die
Bits im Vorzeichenfeld entsprechend dem Signal auf der Sleucrleitung 46 ein. Die Einstellung erfolgt so, daß das
Resultat-Vorzeichenfeid die gleiche Polarität anzeigt, wie das Vorzeichenfeld des A-Eingangsoperanden im
Register 21.
Die vom Addierer 20 erzeugte Folge von 32 Resultatbits wird der Schaltung 50 über eine Sammelleitung 51
zugeführt. Die Ausgangswerte der Schaltung 50 werden über eine Sammelleitung 52 einem Z-Register 53 zugeführt,
dessen Ausgang mit einer Sammelleitung 54 verbunden ist, die den Ausgang der arithmetischen Einheit
10 darstellt.
Bei der Verarbeitung von Operanden, die im gepackten Dezimalformat oder im Zonen-Dezimaiformat vorliegen,
muß die Schaltung 50 manchmal die Ziffernwerte in einigen der Ziffernfelder durch Verminderung um der
Konstantwert 6 korrigieren, um die im Modifiziere! 33 ausgeführte Plus-sechs-Operation wieder auszugleichen
Ob eine solche Korrektur erforderlich ist, wird dadurch festgestellt, daß man am Ausgang des Addierers 20 der
Zustand des Übertragsausgangssignals für die betreffende ZifTernstelle untersucht. Diese Übertragsausgangssi
gnale werden der Schaltung 50 mittels der Übertragsausgangs-Slatusleitungen CO bis Γ7 zugeführt. CO ist die
Übertragsausgangs-Statusleitung für das Ziffernfeld 0, Cl ist die Übertragsausgangs-Statusleitung für das Zif
fernfeld 1 usw.
Wenn die Additionsoperation im Addierer 20 in einem hexadezimalen Ziffernfeld einen Übertrag anzeigt, is
für das betreffende Ziffernfeld keine Korrektur erforderlich. Wenn andererseits ein solcher Übertrag nicht ange
zeigt wird, muß das entsprechende Ziffernfeld um den Konstantwert 6 vermindert werden. Im dargestellten Aus
führungsbeispiel erfolgt dies dadurch, daß man statt dessen den Ziffernwert um den Konstantwert 10 erhöht
Man erhält auf diese Weise das richtige Ergebnis, weil 10 das Komplement von 6 zu 16 ist.
Für den Fall eines vier Bits umfassenden Feldes ist die Addition von 10 mathematisch dasselbe wie die Sub traktion von 6. Die Addition von 10 erfolgt innerhalb der Schaltung 50. und der dadurch erzeugte Übertragsaus gang wird nicht in das nächsthöhere ZifTernfeld übertragen; jedes hexadezimale Ziflcrnt'eld wird somit als sepu rate Einheit behandeil.
Für den Fall eines vier Bits umfassenden Feldes ist die Addition von 10 mathematisch dasselbe wie die Sub traktion von 6. Die Addition von 10 erfolgt innerhalb der Schaltung 50. und der dadurch erzeugte Übertragsaus gang wird nicht in das nächsthöhere ZifTernfeld übertragen; jedes hexadezimale Ziflcrnt'eld wird somit als sepu rate Einheit behandeil.
h5 tet man z. B. das Ziffernfeld 5. so zeigt sich, daß in diesem Feld eine Veränderung nicht notwendig ist. wenn au
der Statusleitung C5 ein Übertrag angezeigt wird. Wenn dies nicht der Fall ist, wird das Ziffernfeld 5 durch Min
zuaddieren des Wertes 10 um den Wert 6 vermindert.
Staius'.eitungen CO, CX C4und C6 ignoriert. Im Falle einer Ausgabe der Resultate im gepackten Dezimalformat
werden die Signale auf der Statusleitung Cl ignoriert.
Bei der Verarbeitung von binären Operanden wird die Schaltung 50 so eingestellt, daß sie die Resultatwerte
nicht verändert. In diesem Falle werden die am Ausgang des Addierers 20 erscheinenden Binärziffem unverändert
dem Ausgahcrcgislcr 53 zugeführt. s
Bis auf eine Ausnahme enthält dus Register 5Jjeweils das Resultat der in der Kinlicii tOausgclührten Rochen
operation in seiner echten Darstellung. Die Ausnahme tritt auf, wenn es sich bei der Rechenoperation um eine
Subtraktion handelt und der Operand im Register 31 größer ist als der Operand im Register 21. In diesem Falle
enthält das Ausgaberegister 53 das Resultat in komplementärer Darstellung. Ein solches Resultat wird durch
Rückkomplementierung in seine echte Form umgewandelt. Dies geschieht dadurch, daß der Inhalt des Registers
53 zum B-Eingang der Einheit 10 zurückgeleitet und in dieser Einheit von dem Wert 0 subtrahiert wird. Bei der
Rekomplcmenticrung wird immer eine Subtraktion ausgeführt, ungeachtet des Vorzeichens der zu rekomplementierenden
Zahl im Register 53. Das Resultat der Rekomplementierungsoperation ist stets dem Vorzeichen
des zu rekomplementierenden Werts entgegengesetzt. Eine Ausgabezahl in Komplementform wird somit in ihre
echte Form dadurch umgesetzt, daß man sie mit Hilfe der arithmetischen Einheit ltvon Null subtrahiert und ihr is
Vorzeichen umkehrt.
Für die Rekomplementierung des Resultats aus dem Register 53enthält die Einheit lOeine Sammelleitung G \
Torschaltungen 62, und eine Sammelleitung 63, die mit dem Eingang des Registers 31 verbunden ist. Die Torschaltung
62 wird durch ein Steuersignal XFR ZS auf einer Leitung M für eine Übertragung des Inhalts des Registers
53 in das Register 31 geöffnet. Vom Register 31 wird der zu rekomplementierende Resultatwert durch den
Modifizierer 33dem Binäraddierer 20zugeleitet. Der Modifizierer 33 behandelt den zu rekomplementierenden
Wert genauso wie jede andere Dezimalzahl mit der Ausnahme, daß in jedem Falle eine Komplementbildung
dieses Wertes erfolgt. Zur gleichen Zeit wird der Modifizierer 23 zur Abgabe einer Folge von binären Nullen an
den Α-Eingang des Addierers 20 veranlaßt. Der Addierer 20addiert das Komplement des rückgeführten Resultatwertes
zu diesen Nullen und liefert den neuen Resultatwert an die Korrekturschaltung 50, welche diesen Wert
mit Ausnahme des Vorzeichenfeldes genauso behandelt wie andere Dezimalzahlen. Die Vorzeichenverarbeitungsschaltung
40liefert in diesem Fall an die Korrekturschaltung 50ein Vorzeichensteuersignal, um das Vcrzeichenfeld
auf eine Polarität einzustellen, die dem Vorzeichen des rückgeführten Resultatwerts entgegengesetzt
ist. Die von der Korrekturschaltung 50 nun dem Ausgaberegister 53 zuzuführende Zahl ist das gewünschte
Ergebnis in der echten Darstellung.
Ob eine Rekomplementierung durchzuführen ist, wird durch eine Komplement-Detektorschaltung 65
bestimmt. Diese Schaltung stellt fest, ob der dem Register 53 zugeführte Resultatwert Komplementform hat.
Dies geschieht durch Prüfung des Signalzustands der Statusleitung CO bei Durchführung einer dezimalen Subtraktion.
Das Übertragsausgang-Statusssignal CO stellt den letzten Übertragsausgang für den Binäraddierer 20
dar. Es wird über eine Leitung 66 der Komplement-Detektorschaltung 65 zugeführt. Wenn bei einer dezimalen
Subtraktion ein Statussignal CO = 1 vorliegt, handelt es sich bei dem an das Resultatregister 53 gelieferten
Resultatwert um einen echten Wert, der einer Rekomplementierung nicht bedarf. Wenn dagegen bei einer dezimalen
Subtraktion die Statusleitung CO keine Anzeige liefert (CO - 0), dann handelt es sich bei dem an das
Register 53 abgegebenen Resultatwert um einen Komplementwert, der einer Rekomplementierung bedarf. Die
Schaltung 65 liefert ein Anzeigesignal CD auf eine Ausgangsleitung 67.
Die zu verarbeitenden Operanden sind häufig größer als die Datenflußbreite der arithmetischen Einheit 10.
Dies gilt ungeachtet dessen, ob die Datenflußbreite wie im dargestellten Beispiel vier Bytes beträgt oder einen
größeren Wert hat, wie beispielsweise acht Bytes. In diesen Fällen der Verarbeitung großer Operanden ist mehr
als ein Durchgang durch die Einheit 10 erforderlich, um die Rechenoperation abzuschließen. Wenn die Operanden
beispielsweise doppelt so groß sind wie die Datenflußbreite der Einheit 10, werden die beiden wertniedrigen
Hälften der Eingangsoperanden in einem ersten Durchgang durch die Einheit 1·gerührt und die beiden werthöheren
Hälften in einem zweiten Durchgang verarbeitet. Während dieses zweiten Durchganges muß ein im
ersten Durchgang gebildeter Ausgangsübertrag (Signal CO) als Eingangsübertrag C,„dem Addierer 20zugeführt
werden.
Letzteres geschieht durch eine Verriegelungsschaltung 70, eine Leitung 71 und einen Schalter 72, dessen Aus- so
gang mit der Übertragseingangsleitung 73 des Addierers 20 verbunden ist. Während des ersten Durchganges
verbindet der Schalter 72 die Übertragseingangsleitung 73 mit der Addition/Subtraktion-Steuerleitung 42, um
einen +1 -Übertrag zuzuführen, wenn eine Subtraktion ausgeführt wird. Dabei handelt es sich um den üblichen
Eingangsübertrag, der notwendig ist, wenn einer der Operanden komplementiert wird. Während des zweiten
Durchgangs verbindet der Schalter 73 statt dessen die Übertragseingangsleitung 73 mit der Ausgangsleitung 71 SS
der Verriegelungsschaltung 70. Dadurch kann der Übertragsausgang CO des ersten Durchgangs als Übertragseingang für den zweiten Durchgang benutzt werden. Wenn ein dritter Durchgang erforderlich ist, ermöglicht
dieselbe Schaltungsanordnung die Benutzung des Übertragsausgangs COaus dem zweiten Durchgang als Ubertragseingang
für den dritten Durchgang. Die Verriegelungsschaltung 7i speichert den Ausgangsübertrag vom
vorhergehenden Durchgang, so daß er zur Benutzung während des nachfolgenden Durchgangs zur Verfügung
steht. Der Schalter 72 wird gesteuert durch das Zustandssignal des jeweils vorausgehenden Durchgangs auf der
Steuerleitung 28.
Eine weitere Eigenheit, die während der Folgedurchgänge bei der Verarbeitung von Operanden großer Breite
zu berücksichtigen ist, besteht in der Tatsache, daß die Vorzeichenfelder nur im niedrigsten Byte eines jeden
Operanden vorliegen und somit nur während des ersten Durchgangs durch die Einheit 10 zur Verfugung stehen.
Demzufolge muß die vom Addition/Subtraktion-Steuersignal eingeleitete Operation, die durch die Vorzeichenverarbeitungsschaltung
40 bestimmt wurde, zur Benutzung bei den nachfolgenden Durchgängen gespeichert
werden. Dies geschieht durch eine Schaltung, die sich innerhalb der Schaltung 40 befindet und die später im
Detail beschrieben wird. Außerdem werden verschiedene weitere Änderungen im Operationsablaul" durch die
Modifizierer 23 und 33 und durch die Korrekturschaltung 50 vorgenommen. Diese Änderungen tragen der Tatsache
Rechnung, daß während der Folgedurchgänge keine Vorzeichenfelder zu behandeln sind. Die Operation
dieser Schaltungseinheiten wird daher während der Folgedurchgänge so eingestellt, daß anstelle von Vorzeichenfeldern
die reguläre Operation für ein Zonenfeld oder ein Ziffernfeld erfolgt.
Die Steuereinheit (Fig. 3)
Die Fig. 3 zeigt in schematicher Darstellung einen Teil einer Steuereinheit 80 zur Erzeugung der verscbiedenen
Steuersignale, die der arithmetischen Einheit 10 von Fig. I zugeführt werden. Die Schaltung 80 enthält
einen Satz von 11 binären Schaltern Sl bis 91, welche die Signalzustände der Steuerleitungen 26 bis 28,41,30,25,
35,55,29.3*und M steuern, Jede dieser Steuerleitungen ist entsprechend der Operation beschriftet, die das auf
ihr auftretende Steuersignal auslöst. Die Steuerleitung 26 trägt die Beschriftung »Zone«, die besagt, daß der
binäre Signalpegel 1 auf dieser Steuerleitung anzeigt, daß die zu verarbeitenden Operanden im Zonen-Dezimalformat
vorliegen. Die als Beispiel angegebenen Stellingen der verschiedenen Schalter 81 bis 91 geben die
Schalterpositionen für die Durchführungsanforderung einer Addition (Stellung des Schalters 84 entspricht der
Operation »Addieren«) mit den vier wertniedrigen Bytes dar (Stellung des Schalters 83 zeigt den ersten Durchgang
an) von zwei Operanden, die im Zonen-Dezimalformat vorliegen (Schalter 81 = Zone, Schalter 82 = dezimal).
Die zutreffende Operation wird eingeleitet, wenn die Signale »Übertragen A« und »Übertragen B« (achalter
89 und 94) auftreten.
Die Senator 81 bis 91, die in F i g. 3 der Einfachheit halber als mechanische Schalter dargestellt sind, werden in I
der Praxis als schnelle elektronische Schalterausgeführt, in einer Datenverarbeitungsanlage mil Mikroprogram- ι
mierung werden diese Schalter durch einzelne Stufen des Steuerregisters verkörpert, dem die Mikroinstruktionen
oder Steuerwörter aus dem Steuerspeicher einer solchen Anlage zugeführt werden.
Modifizierer 23 (Fig.4 und 5)
Die Fig. 4 zeigt den Aufbau des Modifizierers 23 von Fig. 1. Das Ausführungsbeispiei von Fig. 4 enthält
einen Satz von vierstufigen Torschaltungen 100 bis 107, die den Bits der acht hexadezimalen Ziffernlelder im
Register 21 zugeordnet sind. Diese Felder sind mit AO bis Al bezeichnet, während die Ziffernfelder des
zugeordneten Addierereingangs mit 70 bis Jl bezeichnet sind. Sammelleitungen 22 α bis 22 Λ bilden die Datensammelleitung
22 von Fig. 1. Ebenso bilden Sammelleitungen 24a bis 24Λ die Datensammelleitung 24. Ein
Beispiel fiir/ien Aufbai.-einerv^rstufigen Torschaltung, nämlich der Torschaltung 106, zeigt die Fig. S. Die Torschaltung
106 enthält vie- UND-Glieder 108 bis Ul, die an Bitleitungen CO - (73 angeschlossen sind, welche
)$ dem hexadezimalen Ziffernfeld i 6entsprechen. Die Ausgangsleitungen der UND-Glieder 108 bis 111 sind mit
HObis HZ bezeichnet; diese Leitungen bilden das hexadezimale Ziffernfeld J 6, das dem Addierer20 zugeführt
wird. Die UND-Glieder 108 bis 111 werden durch Steuerleitungen 112 und 113 betätigt. Wenn die Steuerleitung
113 das Binärsignal 1 führt und die Steuerleitung 112 ebenfalls auf 1 eingestellt wird, werden die Datenbits von
den Leitungen CObis G3 unverändert auf die Leitungen HO bis //3 übertragen. Wenn die Sleuerleitung 113 auf 0
gesetzt wird, werden auch auf den Leitungen HO bis Hi Nullen erzeugt, da die UND-Glieoer 108 bis 111 zu
dieser Zeit geschlossen sind.
Die übrigen Torschaltungen 100,102 und 104 sind ebenso aufgebaut wie die in Fig. S dargestellte Torschaltung
106. Das gleiche trifft auf die Torschaltungen t01,103 und 105 zu, wobei in den letzteren Torschaltungen
jedoch die Steuerleitung 113 zur Erzeugung von Nullen auf den Ausgangsleitungen der Torschaltungen fehlt.
Die äußerste rechte Torschaltung 107 ist genauso gebaut wie die Torschaltung 106, jedoch ist in ihr die Steuerleitung
zur Erzeugung von Nullen mit 114 bezeichnet, da sie von einem anderen Teil der Schaltung signalführend
gemacht wird als die Leitung 113.
Wie die Fig.4 erkennen läßt, wird die Übertragungssteucrleitung 112 ihrerseits durch die Steuersignale
»Übertragung A« und »Rekomplementierung« auf den Steuerleitungen 29 und 30 gesteuert. Die Steuerleitung
113 zur Erzeugung von Nullen wird durch die Signale »Zone« und »dezimal« auf den Steuerleitungen 26 und 27
gesteuert. Die weitere Steuerleitung 114 zur Erzeugung von Nullen wird durch die Signale »Zone«, »dezimal«
und »erster Durchgang« auf den Steuerleitungen 26, 27 und 28 gesteuert.
Bei der Verarbeitung reiner Binärzahlen (dezimal = 0) bleiben die Steuerleitungen 113 und 114 auf dem
Signalwert 1 eingestellt, und das Signal »Übertragung A« auf der Steuerleitung 29 sorgt für eine Übertragung der
Datenbits A 0 bis A 7 zum Binäraddierer 20, ohne daß die Datenbits hierbei verändert werden. Dabei wird angenommen,
daß das Rekomplementierungssignal auf Leitung 30 Null ist. In diesem Fall stellt das UND-Glied 115
die Steuerleitung 112 in den Signalzustand 1, wenn auch das Signal »Übertragen A« im Signalzustand 1 steht.
Während einer Rekomplementierungsoperalion wird das Signal auf der Stuerleitung 30 entsprechend dem Wert
1 eingestellt. Durch ein Negationsglied 116 wird dieses Signal invertiert, wodurch das UND-Glied 115 abgeschaltet
wird und alle Torschaltungen 100 bis 107 geschlossen werden. Damit werden alle Datenbit-Ausgangsleitungen
JQ bis Jl auf 0 gestellt, was bei der Durchführung einer Rekomplementierungsoperalion notwendig ist.
Bei der Verarbeitung von Operanden, die im Zonen-Dezimalformat vorliegen, ist sowohl das Signal »dezimal«
als auch das Signal »Zone« im 1-Zustand. Hierdurch wird ein !-Signal am Ausgang des UND-Gliedes 117
erzeugt, das durch Invertierung im Negationsglied 118 die Steuerleitung 113 in den Nullzustand bringt. AIx
<i5 Folge hiervon werden die geradzahlig numerierten Torschaltungcn 100,102,104 und 106. welche den Zonen-Vorzeichenfeldern
zugeordnet sind, geschlossen, so daß die Ausgangsbitleitungcn der hexadezimalen ZilTcrnl'elder
0, 2.4 und 6 alle auf ü gesetzt werden. Wenn somit eine Datenübertragung durch Kinstcllen des Signals »Übertrugen
Λ« in den !-/usland eingeleitet worden ist, werden nur die hexadezimalen /ilTernlelder I. 1. 5 und 7
IO
unverändert dem Addierer 20 zugeführt. Während einer jeden derartigen Datenübertragung werden die Datenbits
für die Zonenfelder und für das Vorzeichenfeld (Ziffernfelder 0,2,4 und 6) als Vorbereitung für die Additionsoperation
auf 0 gesetzt. Zwischen dem ersten Durchgang und den Folgedurchgängen bei Operanden, die
größer sind als vier Bytes, wird nicht unterschieden, weil das Vorzeichenfeld des ersten Durchganges bei den
Folgedurchgängen jeweils zu einem Zonenfeld wird.
Bei der Verarbeitung von Operanden, die im gepackten Dezimalformat vorliegen, bleibt die Steuerleitung 113
im Signalzustand 1, da das Signal »Zone« der Steuerleitung 26 im Nullzustand ist. Das UND-Glied 117 wird
somit geschlossen. Es erfolgt jedoch durch die Steuerleitung 114 eine Nullstellung über die Torschaltung 1CI7.
Die Steuerleitung 114 wird nur dann in den Null-Signalzustand gebracht, wenn die Signale auf den Steuerleitungen
26,27, 28 die Signale »gepackt« (= »nicht Zone«), »dezimal« und »1. Durchgang« anzeigt Für jede andere
Kombination dieser drei Signale wird die Steuerleitung 114 im 1-Zustand gehalten. Dies geschieht mit Hilfe des
Negationsglieds 119, des UND-Glieds 120 und des Negationsglieds 121. Bei der Verarbeitung von Operanden,
die im gepackten Dezimalformat vorliegen, werden somit alle Dätenbits unverändert dem Addierer 20 zugeführt.
Lediglich die Bits des Ziffernfeldes 7, die das Vorzeichen darstellen, werden während des ersten Durchgangs
auf 0 gesetzt. Letztere Operation entfällt jedoch bei den Folgedurchgängen, wenn Operanden zu verarbciten
sind, die eine größere Bitzahl als der Datenfluß der arithmetischen Einheit 10 aufweisen, da irt diesem Falle
nur das wertniedrigste Ziffernfeld ein Vorzeichen enthält.
Ein Ausführungsbeispiel für den Aufbau der Schaltung 33 ist in F i g. 6 dargestellt. Die Schaltung enthält acht
vierstufige logische Schaltungen 130 bis 137, von denen jede einem hexadezimalen Ziffernfeld des im Register
31 enthaltenen Operanden zugeordnet ist. Diese aus dem Register 31 zugeführten Ziffernfelder sind mit BO bis
Bl bezeichnet, während die am Ausgang der logischen Schaltungen J30 bis 137 auftretenden, dem rechten Eingang
des Addierers 20 zuzuführenden Ziffernfelder mit ATO bis Kl bezeichnet sind. Da die Schaltung 33 sowohl
die echten als auch die komplementären Datenbits verarbeitet, laufen vom Register 31 für jede Bitposition zwei
Ausgangsleitungen zur Schaltung 33, von denen die eine das Datenbit in echter Darstellung und die andere
dessen Komplement führt. Somit enthalten die acht Sammelleitungen 32 α bis 32 Λ, welche die Dater.sammelldtung
32 von Fig. 1 bilden, jeweils einen Satz von acht Leitungen, vier für die echten Signale und vier für die komplementierten
Signale. Jede der acht Sammelleitungen 34 a bis 347), welche die Datensammelleitung 34 von
% Fig. 1 bilden, enthalten je einen Satz von vier Leitungen.
'i Den Schaltungsaufbau für die logischen Schaltungen 130 bis 137 zeigt die Fi g. 7 exemplarisch für die logische
l| Schaltung 136. Diese Schaltung enthält vier separate Stufen 140 bis 143, die auf ihren Ausgangsleitungen BU-i|
signale Λ/0 bis M3 liefern, welche das hexadezimale Ziffernfeld K6 bilden. Die werthöchste Bitstufe 140 enthält
;| fünf UND-Glieder 144 bis 148 mit je zwei Eingängen. Diesen UND-Gliedern isl ein ODER-Glied 149 nachge-
% schaltet. Die zweite Bitstufe 141 enthält UND-Glieder 150 bis 153, denen ein ODER-Glied 154 nachgeschaltet
y isl. Die dritte Bitstufe 142 enthält drei UND-Glieder 155 bis 157, denen ein ODER-Glied 158 nachgeschaltet is;.
ψ Die wertnicirigste Bitstufe 143 enthält wiederum drei UND-Glieder 159 bis 161, deren Ausgänge an ein ODER-
'{ hei diesen Leitungen angegebenen Bezeichnungen zeigen, erfüllt die Schaltung 136 jeweils eine der folgenden
ψ Funktionen:
;. a) Unveränderte Datenübertragung,
;f b) Komplementdatenübertragung,
;·': c) Datenübertragung mit Addition des Konstantvverles »Plus sechs« zu den einzelnen Zillernwerlen und
■ d) Abgabe von vier I-Bits.
■;; Nur eine der Leitungen 164 bis 166 kann zu einem gegebenen Zeitpunkt auf den Signalwert I gesetzt werden,
■ während die beiden anderen jeweils den Signalzustand 0 einnehmen. Die vierte Steuerleitung sorgt für eine y\
übergeordnete Steuerung in der Form, daß sie bei der Funktion »Erzeugung von vier 1-Bits« die Operation der
anderen drei Steuerleitungen neutralisiert und vier Einsen aaf u<:n Ausgangsleitungen MO bis Λ/3 erzwingt.
'■■ Wenn die Stcuerxitung 164 den Signalzustand I führt, werden die UND-Glieder 144.150.155 und 159 geöffnet
und die übrigen UND-Glieder abgeschaltet. Unter del Voraussetzung, daß zu diesem Zeitpunkt die Leitung 167
im Null-Zustand ist, werden die Bits ΛΌ bis /V3 in ihrer echten Form vom Register 31 den Leitungen Λ/0 bis Ml
zugeführt.
Wenn die Leitung 165 im I-Zustand ist, werden die UND-Glieder 145.151. fc5* und 160 geöffnet und die übrigen
UND-Glieder gespcjrt. Unterster Voraussetzung, daß die Leitung 167 im SignalzustandO ist. werden somit
die Komplementwerte /VO bis Nl aus dem Register 31 den Leitungen WO bis Ml zugeführt.
Wenn die Stcuerlcitung 166 für die Funktion »ZilTemwcri Plus sechs« den Signalzustand 1 einnimmt, werden M)
die UND-Glieder 146 bis 148,152,153,157 und 161 geöffnet und die übrigen UND-Glieder geschlossen. Nimmt
man an, daß die Leitung 167 auf 0 steht, so wird durch die geöffneten UND-Glieder der Wert des hexadezimalen
/illcrn leides B6 um den Faktor 6 erhöhl, vorausgesetzt, daß der ursprüngliche ZifTemwert im Bereich von 0 bis
l) liegt. Die notwenoigc Logik zu Krhöhung des ZifTcrnwertes um 6 ist folgende:
Λ/θ = NO+ Nl + Nl (1)
Ml-Nl- Nl +Nl- Nl (2)
A/2-/V2 (3)
Α/3 - /V3 (4)
Hierbei handelt es sich um logische Ausdrücke, in denen das Pluszeichen die logische ODER-Funktion und
der Punkt die logische UNO-Punktion bezeichnen. Der Querstrich über den Ausdrucken gibt an, daß es sich um
das Komplement des betreffenden Ausdrucks handelt.
gebenen Funktionen aus. Die UND-Glieder 152 und 153 und das ODER-Glied 154 der Stufe 141 übernehmen
die durch die Gleichung (2) angegebene Logik. Das UND-Glied 157 und das ODER-Glied 158 der dritten Stufe
führen die durch die Gleichung (2) angegebene Funktion aus. Das UND-Glied 161 und das ODER-Glied 162 der
Wenn die Steuerleitung 167 zur Erzeugung von 1-Bits den Signalzustand 1 einnimmt, wird jede der vier Aus-IS
gangsleitungen AiO - A/3 auf 1 eingestellt, da der 1-Signalpegel der Leitung 167 direkt an jedes der ODER-Glieder
149,154,158 und 162 angelegt wird. Die durch die Steuerleitung 167 gelieferte binäre Eins hält somit die
Ausgangsleitune dieser ODER-Glieder im Signalzustand 1, ungeachtet des Signalzustands auf den anderen Eingängen
der ODER-Glieder.
Die Schaltungen 130,132 und 134 von F i g. 6 entsprechen in ihrem Aufbau der in F i g. 7 im Detail dargestellten
Schaltung 136. Die übrigen Schaltungen 131,133 und 135 von Fig. 6 unterscheiden sich von der Schaltung
136 lediglich dadurch, daß die Steuerleitung 167 zur Erzeugung von 1-Bits wegfällt, da in den zugeordneten Feldern
diese Funktion nicht benötigt wird. Die wertniedrigste Schaltung 137 entspricht der Schaltung 136 mit der
Ausnahme, daß die Steuerleitung zur Erzeugung von 1-Bits von einer anderen Signalquelle gespeist wird und
daher eine andere Bezeichnung, nämlich 168, trägt.
Die Steuerleitungen 164 bis 168 sind an die Ausgänge von UND-Gliedern 170 bis 174 angeschlossen. Diese
UND-Glieder werden von den externen Steuerleitungen 26,27,28 36 und 42 direkt oder über zwischengeschaltete
Negationsglieder 175 bis 178 gespeist.
Eine Datenübertragung vom Register 31 zum Addierer 20 wird durch ein Signal auf der Steuerleitung 36 eingeleitet.
Diese Leitung ist mit jedem der UND-Glieder 170 bis 174 verbundenen Abhängigkeit vom Signalzustand
der übrigen Eingänge dieser UND-Schaltungen wird daraufhin mindestens eine der Leitungen 164 bis 168 in den
Signalzustand 1 gebracht.
Zur Ausführung einer binären Addition in der arithmetischen Einheit 10 wird die Dezimal-Steuerleitung27 in
den Nullzustand gebracht. Damit werden die UND-Glieder 172 bis 174 geschlossen. Gleichzeitig befindet sich
das Addition/Subtraktion-Steuersignal, das von der Vorzeichenverarbeitungsschaltung 40 auf der Leitung 42
erzeugt wird, im Null-Zustand, der eine Addition bezeichnet. Damit wird auch das UND-Glied 171 abgeschaltet.
Das mit der Steuerleitung 164 verbundene UND-Glied 17Ö ist somit das einzige, das durch das Signa! »Übertragen B« aktiviert werden kann. Wenn dieses Signal erscheint, werden alle 32 Bits aus dem Register 31 unverändert
in ihrer echten Darstellung zum Addierer 2· übertragen.
Bei einer binären Subtraktion werden die UND-Glieder 172 bis 174 wiederum durch den Signalpegel 0 auf der
Steuerleitung 27 abgeschaltet. Das Addition/Subtraktion-Steuersignal auf Leitung 42 befindet sich jedoch jetzt
auf dem eine Subtraktion anfordernden Signalpegel 1 und hält damit die UND-Schaltung 170 über das Negationsglied
178 geschlossen und öffnet gleichzeitig die UND-Schaltung 171. Wenn sich das Signal »Übertragen B«
im 1-Zustand befindet, geben die zum Addierer 20 gelieferten Datenbits das Einerkomplement des im Register
31 stehenden Wertes an.
Bei der Addition oder Subtraktion von Operanden, die im Zonen-Dezimalformat vorliegen, befinden sich die
Leitungen 26 und 27 im Signalzustand 1. Damit wird das UND-Glied 173 geöffnet und das UND-Glied 174 über
das Negationsglied 175 geschlossen. Wenn also das Signal »Übertragung B« in den 1-Zustand übergeht, nimmt
die Leitung 167 den gleichen Signalzustand ein und bewirkt, daß die Ausgangsleitungen der logischen Schaltungen
130,132, IM und 1361-Ausgangssignale liefern. Zur gleichen Zeit nehmen auch die Steuerleitungen 165 >ind
166 den Signalzustand 1 an, unabhängig davon, ob die auszuführende Operation eine Subtraktion oder eine
Addition ist. Das UND-Glied 170 wird über das Negationsglied 177 geschlossen gehalten.
Wenn es sich bei einer ausführenden Subtraktion um eine Operation mit Zonen-Dezimalformat-Operanden
handelt, befindet sich die Leitung 42 auf dem Einerpegel, und das UND-Glied 171 wird bei Erscheinen des
Signals »Übertragen B« geöffnet, um auch die Komplementsteuerleitung 165 auf den Einerpegel zu setzen.
Dadurch werden die ungeradzahligen logischen Schaltungen 131,133,135 und 137 wirksam, um die Komplementwerte
des Operanden dem Addierer 20 zuzuführen.
Wenn andererseits die Operation mit Zonen-Dezimalformatoperanden eine Addition ist, liegt die Steuerleitung
42 auf dem Signalpegel 0. Dadurch wird das UND-Glied 171 geschlossen und das UND-Glied 172 über das
Negationsglied 176 geöffnet. Das Signal »Übertragung B« kann nun die Plus-sechs-Steuerleitung 166 in den 1-Zustand
setzen. Hierdurch wird die numerische Konstante 6 in den logischen Schaltungen 131,133,135 und 137
zum jeweiligen Ziffernwert addiert.
Bei der Verarbeitung von Operanden, die im gepackten Dezimalformat vorliegen, wird das Zonen-Anzeigesignal
auf der Steuerleitung 26 in den Null-Zustand gebracht und damit das UND-Glied 173 gesperrt und das
UND-Glied 174 für die Erzeugung von 1-Bits geöffnet unter der Voraussetzung, daß das Anzeigesigna! für den
ersten Durchgang auf der Steuerleitung 28 im 1-Zustand steht. Dies bedeutet, daß im Falle von Operanden im
gepackten Dezimalformat die Steuerleitung 118 anstelle der Steuerleitung 167 zur Erzeugung von Einsen
benutzt wird. Wie aus F i g. 6 zu ersehen ist, läuft die Steuerleitung 168 lediglich zur wertniedrigsten logischen
Schaltung 137. Wenn das Signal auf der Leitung 28 das Vorliegen des ersten Durchganges anzeigt, erzeugt die
Leitung 168 Einsen in den Bitstellen des Vorzeichenfeldes. Wenn nachfolgende Durchgünge notwendig sind,
bleibt die Slcuerlcitung 168 während der Ausführung dieser Durchgänge im Null-Zustand.
l'ür eine Addition von Operanden im gcpucktcn Dezimalformat wird ferner das UND-Glied 172 geöfTnct, um
die Stüucrleitung 166 in den I-Zustand zu bringen. Hierdurch wird im ersten Durchgang der Konstantwert 6 in
jeder der 7 logischen Schaltungen 136 bis 136 zu dem dieser Schaltung zugerührten ZilVernwert addiert. Während
der Folgedurchgänge erstreckt sich diese Addition auch auf den ZifTernwert, welcher der achten logischen
Schaltung 137 zugeführt wird. Bei einer Substraktion von Operanden im gepackten Dezimalformat wird das
UND-Glied 172 gesperrt und statt dessen das UND-Glied 171 wirksam. Hierdurch wird die Komplementsteuerleitung
165 in den I-Zustand gebracht, sofern das Signal »Übertragung B« vorliegt. Die logischen Schaltungen
130 bis 136 leiten daraufhin die Komplementoits aus dem Register 31 zum Eingang des Addierers 20. Während
der Folgedurchgänge erstreckt sich diese Steuerung auch auf die achte logische Schaltung 137.
Die Fig. 8 zeigt ein Ausführungsbeispiel für den Aufbau der Vorzeichenverarbeitungsschaltunn; 40 von is
Fig. I. Die Schaltung besieht aus zwei Funktionsteilen. Ein erster Teil enthält die Schaltung, die auf die Vorzeichenfelder
der Operanden in den Registern 21 und 31 und auf das externe Steuersignal »angeforderte Operation«
auf der Steuerlcitung 41 anspricht, um ein Addition/Subiraktion-Sieucrsignai auf der Leitung 42 zu erzeugen,
das den Schaltungen 33 und 65 zugeführt wird. Der zweite Teil enthält die Schaltungen, die auf das Vorzei
chenfeld in wenigstens einem der beiden Operanden anspricht zur Erzeugung des Vorzeichensteuersignals auf
der Leitung 46, das der Korrekturschaltung 50 zugeführt wird.
Wie aus der obigen Tabelle II zu ersehen ist, gibt es vier mögliche Pluscodes und zwei mögliche Minuscodes.
Diese sechs Vorzeichencodes sind die gültigen Vorzeichencodes für Dezimaloperanden. Die Schaltungen zur
Erzeugung des Addition-Subtraktion-Steuersignals in Fig. 8 umfassen eine erste und eine zweite Vorzeichendetektorschaltung
180 und 181 zur Erzeugung eines ersten und eines zweiten Polaritätsanzeigesignal auf Leitungen
182 und 183. Die Vorzeichendetektorschaltung 180 ist dem Register 21 zugeordnet und enthält einen Minus-Vorzeichendetektor
184, der mit den Bits der Ziffernposition 6 im Register 21 über Leitungen 44α bis 44 d verbunden
ist. Die Schaltung 180 enthält ferner einen weiteren Minusvorzeichendetektor 185, der mit den Bits der
Zifferroosition 7 im Register 21 über Leitung 44e- 44Λ verbunden ist. Die Leitungen 44β - 44 A bilden die
Sammelleitung 44 von F i g. 1. Die Ausgänge der Detektoren 187 und 185 sind mit einem ODER-Glied IW verbunden,
das Teil der Schaltung 180 ist.
Die zweite Vorzeichendetektorschaltung 181 ist dem Register 31 zugeordnet und enthält einen Minusvorzeichendetektor
187. der mit den Bits der Ziffernposition 6 im Register 31 über Leitungen 45α bis 45 d verbunden
ist. Die Schaltung 181 enthält einen weiteren Minusvorzeichendetektor 188, der mit den Bits der Ziffernposition
7 im Register 31 über Leitungen 45 e bis 45 h verbunden ist. Die Leitungen 45 α bis 45 Λ bilden die Sammelleitung
45 von F i g. i. Die Ausgänge der Detektoren 187 und ISS sind an ein ODER-Glied !89 angeschlossen, das ebenfalls
Teil der Schaltung 181 ist.
Den Aufbau des Minusvorzeichendeicktors 144 zeigt die Fig. 9. Der Minusvorzeiehendetektor !*4 enthält
ein UND-Glied 190 und ein Negationsglied 191 zum Abtüten des Minusvorzeichencüdes 1011. Wenn dieser
Vorzeichencode auftritt (Gl = 0), erzeugt das UND-Glied 190 auf seiner Ausgangsleitung 192 ein 1-Signal,
sofern zur gleichen Zeit die Zonen-Steuerleitung 26 ebenfalls ein 1-Signal führt. Der Minusvorzeiehendetektor
184 umfaßt des weiteren ein UND-Glied 193 und ein Negationsglied 194 zum Abtasten des Minusvorzeichencodes
1101. Wenn dieser Code auftritt (Gl « 0), erzeugt das UND-Glied 193 auf seiner Ausgangsleitung 195 ein
1-Signal, sofern zur gleichen Zeit die Zonen-Steuerleitung U ebenfalls ein 1-Signal führt. Die Ausgangsleitungen
192 und 195 sind mit einem ODER-Glied 1S6 (Fig. 8) verbunden.
Die Minusvorzeichendetektoren 185,187 und 188 von Fig. 8 weisen den gleichen Aufbau wie der in Fig. 9
dargestellte Minusvorzeichendetektor 184 auf.
Wenn im Zonen-Dezimalformat vorliegende Operanden zu verarbeiten sind, befindet sich die Zonen-Steuerleitung
26 im 1-Signalzustand. Hierdurch werden die Minusvorzeichendetektoren 184 und 187 eingeschaltet, um
das Vorzeichenfeld der beiden Operanden A und B abzutasten. G leichzeitig wird das Signal von Leitung 26 einer
Negationsschaltung 196 zugeführt, die ein Null-Signal auf einer Leitung 197 erzeugt und damit die Minusvorzeichendetektoren
185 und 188 für die Ziffernpositionen 7 der beiden Operanden abschaltet. Wenn andererseits
Operanden im gepackten Dezimalformat verarbeitet werden soll, führt die Steuerleitung 26 den Null-Signalzustand,
so daß die Minusvorzeichendetektoren 184 und 187 abgeschaltet und die Minusvorzeichendetektoren 185
und 188 wirksam gemacht werden.
Auf der Ausgangsleitung 182 des ODER-Gliedes 186 erscheint ein Signal, das durch den Vorzeichencode des
Operanden A im Register 21 bestimmt wird. Gleichzeitig erscheint auf der Ausgangsleitung 183 des ODER-Gliedes
189 ein Signal, das durch den Vorzeichencode des Operanden B im Register 31 bestimmt wird. In beiden
Fällen stellt ein 1-Signalzustand ein Minusvorzeichen und ein Null-Signal zustand ein Pluszeichen dar. Das
Wahlsignal »angeforderte Operation« auf der Steuerleitung 41 gibt zugleich an, ob eine Addition oder Subtraktion
auszuführen ist Hierbei stellt ein 1-Signalzustand die Anforderung einer Subtraktion und ein Null-Signalzustand
die Anforderung einer Addition dar.
Wenn z. B. eine Addition angefordert wird und der Operand A ein positives Vorzeichen aufweist, während der
Operand B negativ ist, hat die arithmetische Einheit eine Subtraktion auszuführen, um das richtige Ergebnis zu
bilden. Wenn umgekehrt eine Subtraktion angefordert wird und beide Operanden verschiedene Vorzeichen
haben, muß die Einheit 10 eine Addition ausfuhren, um das richtige Resultat zu bilden. Die Bestimmung der tatsächlich
auszuführenden Rechenoperation ist aus der obigen Tabelle IV ersichtlich.
■''■' anzeigesignale der Leitungen 182 und 183 sowie auf das Signal von Leitung 41 ansprechen und die ein Additions-
i£ signal erzeugen, wenn gemäß Tabelle IV kein Eingang oder eine gerade ZaIiI von Eingängen negativ ist, und die
',!;; ein Subtraktionssignal erzeugen, wenn eine ungerade Zahl von Eingängen negativ ist. Diese Schallelemente
ti; bestehen aus Antivalenzgliedern 290und 201 zur antivalenten Verknüpfung der Signale von den Leitungen 41.
,π· 5 182 und 183 zur Erzeugung des Addition/Subtraktion-Steuersignals auf der Leitung 202, das den I-Zustand ein-
'|| nimmt, wenn die auszuführende Operation ein Subtraktion ist, und das den Niill-Zustand einnimmt, wenn die
y auszuführende Operation eine Addition ist.
ψ Die Antivalenzschaltung 299erzeugt ein 1-Ausgangssignal, wenn der eine oder der andere ihrer Eingänge ein
fcj 1-Signal empfangt, wenn also eine unf erade Anzahl von Eingängen signalführend ist. In ähnlicher Weise erzeugt
:| ίο das Antivalenzglied 201 ein 1-Ausgangssignal, wenn einer ihrer beiden Eingänge ein 1-Signal empfängt. Damit
:' ist sichergestellt, daß auf Leitung 292 nur dann ein 1-Signal auftritt, wenn eine ungerade Zahl der drei Eingangssignale in dem dem Minuszeichen von Tabelle IV zugeordneten 1-Signalzustand steht.
, Das Addition/Subtraktion-Steuersignal auf Leitung 202 wird über eine Schaltung 203auf die Ausgangsleitung
jfji 42der Schaltung 40 unter der Voraussetzung übertragen, daß die Steuersignale »Zone«, »dezimal«, »1. Durch-
$ 15 gang« und »Rekomplementierung« auf den Steuerleitungen 26, 27, 28 und 30 die entsprechenden Signalzu-
y stände einnehmen. Die Schaltung 203 enthält UND-Glieder 204, 205 und 206, deren Ausgänge mit einem
(f ODER-Glied 207 verbunden sind, an das die Leitung 42angeschlossen ist. Die UND-Glieder 204 bis 206 werden
■ " durch die Zustandsanzeigesignale »dezimal« und »1. Durchgang« auf den Leitungen 27 und 28 gesteuert. Diese
#' SUiiusaäicigcsigiiäic werden zunächst einer SoitendcCGuivrscriaitüng zugeführt, die uüs den Schaltelementen
f> 20 219bis 213besteht und die Eingangsleitungen 214,215und216der UND-Schaltungen 204 bis 206derart steuert,
■<:■ daß jeweils nur eine dieser drei Leitungen den 1-Signalzustand einnimmt. Wenn kein Dezimalzustand angezeigt
^ wird, liegt um Leitung 27 auf dem Signalpegel 0, wodurch auf der Leitung 214 ein I-Signal erzeugt wird. Hierin durch wird das UND-Glied 294 geöffnet, um das Signal »angeforderte Operation« von der Leitung 41 auf die
r< randen zu verarbeiten sind.
- Wenn das Zustandssignal »dezimal« vorliegt und außerdem ein »1. Durchgang« angezeigt wird, nimmt die
296 gesperrt, wodurch das Signal von der Leitung 292 auf die Leitung 42 übertragen wird. Dies ist der Normalfall
bei der Verarbeitung von Operanden im gepackten Dezimalformat sowie im Zonen-Dezimalformal. Bei Operanden,
die eine größere Stellenzahl aufweisen als die arithmetische Einheit 19, sind die Vorzeichenfelder nur beim
ersten Durchgang vorhanden. Die auszuführende Operation (Addition oder Subtraktion) muß jedoch auch während
der nachfolgenden Durchgänge beibehalten werden. Die hierzu notwendige Speicherfunktion für den
jeweiligen Operationszustand übernimmt eine Verriegelungsschaltung 217, die während des ersten Durchganges
den SignaJzustand der Leitung 292 speichert und über ihre Ausgangsleitung 218 während der nachfolgenden
Durchgänge der Schaltung 213zur Verfügung stellt. Die Leitung 218 ist mit dem UND-Glied 206 verbunden, das
bei Foigsdurchgängen geöffast wird. Hierdurch wird das von der Vor/cichenabtastschaltung 180 und den
EXCLUSl V-ODER-Schaltungen 290 und 291 gebildete Steuersignal des ersten Durchganges der Addilion/Subirsktion-Sisuerleitung
42 zugeführt.
Die Schaltung 203 hat noch eine weitere Funktion. Mit ihrer Hilfe kann die Leitung 42 auf die Steuerung einer
Subtraktion eingestellt werden, wenn die arithmetische Einheit 10 eine Rekomplementierung auszufahren hat.
Hierzu wird das Rekwnplementiemngssteuersignal auf der Leitung 39 direkt dem ODER-Glied 207 zugeführt.
Bei einer Rekomplementierung ist die auszuführende Operation stets eine Subtraktion.
Die Vorzeichenverarbeitungsschaltung 49 enthält ferner eine Wahischaltung 220, die auf das Vorzeichenfeid
as in einem der dezimalen Operanden anspricht und dafür sorgt, daß die Bits im Vorzeichenfeld des Resultats die
richtigen Binärwer'e einnehmen. Diese Schaltung enthält UND-Glieder 221 und 222, denen ein ODER-Glied
223 nachgeschaltet ist. dessen Ausgang mit der Leitung 4i von Fig. 1 verbunden ist. Die Leitung 46 liefert ein
Resultatvorzeichen-Steuersignal zur Korrekturschaltung 50.
Die Umschaltung zwischen dem Vorzeichen des Operanden A und dem Vorzeichen des Operanden B erfolgt
durch das Rekomplementierungssignal auf der Leitung 30, das dem UND-Glied 222 direkt und dem UND-Glied
221 über eine Negationsschaltung 224 zugeführt wird. Während einer Rekomplementierung nimmt die Leitung
30 den 1-Signalzustand ein. Hierdurch wird das UND-Glied 222 geöffnet und das UND-Glied 221 gesperrt.
Wenn keine Rekomplementierung auszuführen ist, nimmt die Leitung 30 den Null-Signalzustand ein, der das
UND-Glied 221 öffnet und das UND-Glied 222 sperrt. Das UND-Glied 221 empfängt das Ausgangssignal der
Schaltung 189, welche das Vorzeichen des Operanden A im Register 23 anzeigt Das UND-Glied 222 empfangt
über eine Negationsschaltung 225 das Komplement des Ausgangssignals der Schaltung 181, die das Vorzeichen
des Operanden B im Register 31 anzeigt. Während des normalen Betriebes (keine Rekomplementierung) entspricht
somit das Vorzeichensteuersignal auf der Leitung 46 dem Vorzeichen des Operanden A im Register 21.
Wenn dagegen eine Rekomplementierung erfolgt, wird der Signalzustand auf der Leitung 46 so eingestellt, daß
er jeweils das entgegengesetzte Vorzeichen des Operanden anzeigt, der während der Rekomplementierung im
Register 31 steht. Hierdurch wird das Vorzeichen der rekomplementierten Zahl umgekehrt.
Die F ä g. 10 zeigt ein Ausführungsbsispie! der Korrekiurschaitung 5β von F i g, 1, die einen Satz von acht vierstufigen
logischen Schaltungen 399 bis 3S7 zur einzelnen Verarbeitung der acht Ziffernfelder des am Ausgang
des Addieren 20 auftretenden Resultats enthält. Die jeweils vier Bits umfassenden Ziffernfelder des Resultats
sind mit RO bis Rl bezeichnet, während die von der Korrekturschaltung 59 erzeugten Ziffernfelder mit ZO bis
sind. Acht Summelicilungen 51 obis 51 /»mil je vier Adern bilden die DatcnsHinmelleitung 51
von I' ig I ! dementsprechend bilden Sammelleitungen 52 ο bis 52/; nut je vier Adern die I ):ilcnsanimc !leitung
52 Min 1'ιμ. I, ti ic mit dem I üngu ng des/ Kesslers 53 verbunden ist. Die lingiinyslcituM^cii ( Ό bis ί '7 sind nut
den /ilVernrcld-Übcrtragsausgangslcitungen des Addierers 20 verbunden, wobei CO die Üburtragsausgangsleilung
fur das hexadezimale ZilTernfeld 0, Cl die Übcrtragsausgangsleitung für das hexadezimale Ziffernfud 3, s
usw., bezeichnet. Den Aufbau der logischen Schaltung 304 zeigt die F i g. 11, den der logischen Schallung 306 die
Fig. 12 und den der logischen Schaltung 307 die Fig. 13. Das Steuersignal »1. Durchgang« auf Leitung 28 Und
das Rcsultatvorzeichen-Steuersignal auf Leitung 46 werden nur zu den logischen Schaltungen 306 und 307 geleitet.
Die Schaltung von Fig. 11 enthält vier Bitstufen 310 bis 313, die auf ihren Ausgangsleitungen die Bitsignale to
QObis Q3des Ziffernfeldes Z4erzeugen. Die Bitstufe 310, die dem höchsten Bitstellenwert zugeordnet ist, enthält
UND-Glieder 313 und 315, denen ein ODER-Glied 316 nachgeschaltet ist. Die Bitstufe 311 enthält UND-Glieder
317, 318und 319, denen ein ODER-Glied 320nachgeschaltet ist. Die Bitstufe 312 enthält UND-Glieder
321 und 322, denen ein ODER-Glied 323 nachgeschaltet ist, und die wertniedrigste Bitstufe 313 wird lediglich
durch ein ODER-Glied 324 gebildet. t<
Die UND-Glieder der Stufen 310bis 313 werden durch Signale auf Steuerleitungen 325,326 und 327 gesteuert.
Es sind die drei folgenden Funktionen ausführbar:
a) echte oder unveränderte Datenübertragung,
b) ZifTernv/rrt +10,
c) Erzeugen von 1-Bits.
Die Leitung 325 öffnet die UND-Glieder 314, 317 und 321 und sperrt alle übrigen UND-Glieder. Unter der
Annahme, daß die Leitung 327 im Nullzustand ist, werden die Bitsignale PQ bis P3 über die geöffneten UND-Schaltungen
314, 317 und 321 unverändert zu den Ausgangsleitungen QO bis Q3 übertragen. Wenn die +10-Steuerleitung
326 im 1-Signalzustand steht, werden die UND-Glieder 315, 318. 319 und 322 geöffnet und alle
anderen UND-Glieder gesperrt. Die geöffneten UND-Glieder bewirken eine Erhöhung des Wertes der durch
die Codierung der Bitsignale des Ziffernfeldes 4 dargestellten Zahl um den konstanten Faktor 10. Dies geschieht
unter der Vorausssetzung, daß dieser Zahlenwert im hexadezimalen Wertebereich zwischen 6 und Fliegt. Die
Verknüpfungslogik zur Ausführung dieser Werteerhöhung ist folgende: 3ü
QO = PO ■ Pl Pl_ (5)
Ql = Pl ■ Pl+ Pl ■ Pl (6)
Q2 = Pl (7)
Q3 = P3 (8)
Das UND-Glied 315 und das ODER-Glied 316 der Bitstufe 310 führen die logischen Verknüpfungen gemäß
Gleichung (5) aus. Die UND-Glieder 318 und 319 und das ODER-Glied 320 in der Bitstufe 311 führen die Verknüpfungen
nach Gleichung (6) aus. Das UND-Glied 322 und das ODER-Glied 323 der Bitstufe 312 führen die
Verknüpfungen nach Gleichung (7) aus. Im letzteren Fall ist das Ausgangssignal Q2 das Einerkomplement des
Eingabesignals PZ Das ODER-Glied 324 der Bitstufe 313 fuhrt die Logik gemäß Gleichung (8) aus. In diesem
Fall entspricht das Ausgangssignal Q3 dem Eingangssignal P3.
Wenn die Steuerleitung 327 ein 1-Signal führt, wird damit auf jeder der vier Ausgangsleitungen QO bis QI
direkt ein entsprechendes 1 -Signal erzeugt, da die Leitung 327 über die ODER-Glieder 316,320,323 und 324 mit
den Ausgangsleitungen verbunden ist. Die Erzeugung von 1-Bits erfolgt ungeachtet des Signalzustandes auf den
Steuerleitungen 325 und 326. Der 1-Signalzustand von der Steuerleitung 327 übersteuert jeden Null-Bitwert, der
an den anderen Eingängen der ODER-Gliedern 316, 320, 323 und 324 anliegt.
Die Signale auf den Leitungen 325 bis 327 werden durch die verschiedenen Kombinationen der Zustandsanzeigesignale
»Zone« und »dezimal« auf den Steuerleitungen 26 und 27 sowie durch das Übertragsausgangssignal
für das Ziffernfeld 4 auf der Statusleitung C4 bestimmt. Die Schaltung zur entsprechenden Verknüpfung dieser
Signale besteht aus UND-Gliedern 328 bis 330, einem ODER-Glied 331 und Negationsgliedern 332 und 333.
Sollen binäre Operanden durch die arithmetische Einheit 10 verarbeitet werden, befindet sich die Steuerleitung
27 im Null-Signalzustand. Damit werden die UND-Glieder 328 bis 330 gesperrt, und der Ausgang des Negationsgliedes
332 führt ein 1-Signal, das über das ODER-Glied 331 auf die Steuerleitung 325 übertragen wird.
Dadurch können die Daten von den Eingangsbitleitungen PQ bisP3 unverändert auf die Ausgangsbitleitungen
QO bis Q3 übertragen werden. Dasselbe geschieht in den anderen logischen Schaltungen 300 bis 3*3 und 3f5 bis
307. Die Korrekturschaltung 50 überträgt somit alle 32 Resultatbits unverändert zum Ausgaberegister 53, wenn
binäre Operanden zu verarbeiten sind.
Wenn die arithmetische Einheit 10 Operanden im Zonen-Dezimalformat zu verarbeiten hat, befindet sich
sowohl das Zustandsanzeigesignal »Zone« auf der Leitung 26 als auch das Zustandsanzeigesignal »dezimal« auf
der Leitung 27 im 1-Zustand. Hierdurch erzeugt das UND-Glied 328 auf der Leitung 327 den für die Erzeugung
von 1-Bits notwendigen 1-Signaipegel. Diese Operation ist bei der Verarbeitung von Operanden im Zonen-Dezimalformat
notwendig, weil das hexadezimale Ziffernfeld 4 in diesem Fall ein Zonenfeld ist. Es wird somit der
erforderliche Zonencode für das Zonenfeld erzeugt
Wenn die arithmetische Einheit 10 Operanden im gepackten Dezimalformat verarbeitet, bleibt die Steuerleitung
327 im Null-Signalzustand, und es werden entweder die Steuerleitung 325 oder die Steuerleitung 32* in den
1-Signalzustand gebracht, abhängig vom Übertragsausgangssignal der Ziffemposition 4. Wenn die Statusleitung
CA durch ein 1-Signal das Vorliegen eines Übertrages anzeigt, dann bedarf die Resultatziffer des Ziffemfeides 4
keiner Änderung. In diesem Fall befinuen sich beide Eingänge des UND-Gliedes 330 im 1-Zustand, so daß die
Steuerleiiung 324 ebenfalls den 1-Zustand einnimmt. Hierdurch werden in der oben erläuterten Weise die
Signale von den Eingangsleitungen PQ bis Fi unverändert auf die Ausgangsleitungen QQ bis Q3 übertragen.
Wenn andererseits die Statusleitung C4 das Fehlen eines Übertrages anzeigt, ist eine Korrektur des Ziffernwer-
S tes notwendig, -.n diesem Fall befinden sich beide Eingänge des UND-Gliedes 329 im 1 -Zustand, so daß die Leitung
326ebenfalls irs den 1 -Zustand übergeht. Dadurch wird der Ziffernwert durch Addition des Konstantwertes
10 korrigiert, was einer Subtraktion von 6 entspricht, wie oben erläutert wurde.
Die logischen Schaltungen 300 und 302 von Fig. 10 besitzen den gleichen Aufbau wie die in Fig. 11 dargestellte
logische Schaltung 304. Anstelle der Statusleitung CA werden diesen Schaltungen jedoch die Statusleitungen
O und Cl zugeführt. Die logischen Schaltungen 301,303 und 305 weisen ebenfalls einen entsprechenden
Aufbau auf, jedoch sind bei diesen Schaltungen die Schaltelemente zur Erzeugung von 1 -Ausgangssignalen
weggelassen, und statt dessen werden die entsprechenden Übertragsausgänge des Addierers 20 benutzt. Dies
bedeutet mit anderen Worten, daß für die ungeradzahligen logischen Schaltungen 301,303 und 305 die Steuerleitung
24 das UND-Glied 328 und die Steuerleitung 327 entfallen, weil die Ziffernfelder 1,3 und S stets Zahlenfei-
IS der sind. Für die logischen Schaltungen 301,303 und 305 erfolgt somit die Auswahl zwischen echter und um 10
inkrementierter Übertragung von dezimalen Resultatwerten in Abhängigkeit vom Vorliegen oder Fehlen eines
Übertragsausgangssignals für die jeweilige Resultatziffer.
Die logischen Schaltungen 306 und 307 weisen einen unterschiedlichen Aufbau auf, der nachfolgend anhand
der Fig. 12 und 13 erläutert wird. Diese Schaltungen verarbeiten die Vorzeichenfelder des Resultats. In diesem
Zusammenhang ist zu beachten, daß nur ausgewählte Codes der 6 möelichen Vorzeichencodes von Tabelle II für
die Resultatwerte gültig sind. Für Resultatwerte im gepackten Dezimalformat und im Zonen-Dezimal Format ist
der negative Vorzeichencode 1101 (Hexadezir^alcode D). Der positive Vorzeichencode für Resultate im Zonen-Dezimalformat
ist 1111 (Hexadezimalcode F). Der positive Vorzeichencode für Resultate im gepackten Dezimalformat
ist 1100 (Hexadezimalcode C). Die logischen Schaltungen 306 und 307 verarbeiten nur die vorgenannten
Vorzeichencodes.
Für binäre Resultate und für Resultate im gepackten Dezimaiformat arbeitet die logische Schaltung 306 in der
gleichen Weise, wie es oben für die logische Schaltung 304 anhand der F i g. 11 beschrieben wurde. Bei Resultaten
im Zonen-Dezimal format gibt es zwei Möglichkeiten. Das ZifTernfeld 6 kann entweder ein dezimales Vorzeichenfeld
sein, was jeweils während des ersten Operationsdurchganges der Fall ist, oder ein Zonenfeld sein, was
jeweils während der Folgedurchgänge der Fall ist. Die verschiedenen möglichen Vorzeichencodes für die
logische Schaltung 306 sind folgende:
1111= Zonencode,
1111= positiver Vorzeichencode,
1101 = negativer Vorzeichencode.
1111= positiver Vorzeichencode,
1101 = negativer Vorzeichencode.
Der positive Vorzeichencode ist der gleiche wie der Zonencode. Der negative Vorzeichencode unterscheidet
sich nur in der dritten Bitposition von den beiden letztgenannten Codes. Die logische Schaltung 306 kann daher
genauso aufgebaut sein wie die logische Schaltung 304; jedoch muß eine Einrichtung vorhanden sein, um die
dritte Bitposition in den Nullzustand zu bringen, wenn Resultate im Zonen-Dezimalformat während des ersten
Durchganges zu verarbeiten sind und wenn ein negatives Vorzeichen vorliegt.
Aus Fig. 12 ist ersichtlich, daß sich der Aufbau der Schaltung 306 von dem Aufbau der Schaltung 304 in der
Bitstufe 412 unterscheidet, welche die dritte Bitposition behandelt. Die Bitstufe 412 enthält UND-Glieder 421
und 422 sowie ein ODER-Glied 423. Diese entsprechen in ihrer Funktion den UND-Gliedern 321,322 und dem
4; ODER-Glied 323 von Fig. 11. Zusätzlich ist ein viertes UND-Glied 440 vorgesehen, das die Nullstellung beim
Auftreten eines negativen Vorzeichens in einem im Zonen-Dezimalformat vorliegenden Resultat während des
ersten Durchganges übernimmt. Dieses UND-Glied 440 wird durch das Resultatvorzeichen-Steuersignal auf
Leitung 46 sowie durch das Zustandsanzeigesignal »I. Durchgang« auf der Steuerleitung 28 gesteuert. Diese
beiden Signale werden an ein UND-Glied 441 angelegt, dessen Ausgang über ein Negationsglied 442 und eine
Leitung 443 mit einem Eingang des UND-Gliedes 440 verbunden ist. Der andere Eingang des UND-Gliedes 440
ist an die Leitung 327 angeschlossen, welche die Nullenerzeugung in der oben in Verbindung mit Fig. 11
beschriebenen Weise steuert.
Das UND-Glied 441 und das Negationsglied 442 bewirken, daß die Leitung 443 nur dann einen Null-Signalzustand
annimmt, wenn das Zustandsanzeigesignal »1. Durchgang« und zugleich ein negatives Vorzeichen vorlicgen.
Das Auftreten eines Null-Signals auf der Leitung 443 sperrt das UND-Glied 440, wodurch dessen Ausgangsleitung
Pl ebenfalls einen Null-Signalzustand einnimmt. Für jede andere Kombination der Signale auf den Leitungen
28,46 befindet sich die Leitung 443 im 1-Signalzustand, so daß das UND-Glied 440 geöffnet wird und das
Einsen-Erzeugen-Steuersignal auf Leitung 327 wirksam werden kann. Ein weiteres Negationsglied 444 dient
dazu, die UND-Glieder 421 und 422 zu sperren, wenn Resultate im Zonen-Dezimalformat zu verarbeiten sind.
Diese Abschaltung ist notwendig, um das Auftreten fehlerhafter !-Signale auf der Ausgangsleitung Pl zu verhindern,
wenn das UND-Glied 440 ein Nullsignal erzeugt.
Die Operation der logischen Schaltung 307 von Fig. 13 entspricht der Operation der logischen Schaltungen
301,303 und 305 mit einer Ausnahme. Wenn Resultate im gepackten Dezimalformat verarbeitet werden und es
sich um den ersten Durchgang handelt, muß die Schaltung 307 den entsprechenden Vorzeichencode auf ihren
Ausgangsleitungen KO bis K3 erzeugen. Für jeden anderen Fall, nämlich bei binären Resultaten, bei Resultaten
im Zonen-Dezimalformat und bei Folgedurchgängen für Resultate im gepackten Dezimalformat arbeitet die
Schaltung 307 genauso wie die logischen Schaltungen 301, 303 und 305.
Die benötigten Vorzeichencodes für Resultate im gepackten Dezimalformat sind die folgenden:
Die benötigten Vorzeichencodes für Resultate im gepackten Dezimalformat sind die folgenden:
1100 = positiver Vorzeichencode,
1101 = negativer Vorzeichencode.
Der einzige Unterschied zwischen den beiden Codes liegt in der vierten Bitposition. Um den korrekten Vorzeichencode
zu erzeugen, reicht es somit aus, die Ausgänge der ersten beiden Bitstufen, welche die Ausgangssignale
KO und Kl erzeugen, zur Annahme des 1-Signalzustandes zu veranlassenden Ausgang Vl der dritten
Bitstufe auf 0 zu setzen und den Ausgang K3 der vierten Bitstufe entsprechend dem Wert des Resultatvorzeichen-Steuersignals
auf Leitung 46 einzustellen.
Die Bitstufen 310 und 311 von Fig. 13 entsprechen den gleichnamigen Bitstufen von Fig. 11. Die Bitstufen
512 und 513 für die beiden wertniedrigen Bitpositionen sind jedoch abgeändert. Ebenso ist die logische Schaltung
für die Bildung der Steuersignale für die Erzeugung von Einsen abgeändert. Die Schaltelemente zum
Betrieb der Steuerleitungen 325 und 326 sind mit denen von Fig. 11 identisch.
Wenn ein Vorzeichencode für ein Resultat im gepackten Dezimalformat erzeugt werden soll, liegen das
Zustandsanzeigesignal »dezimal« und das Zustandsanzeigesignal »1. Durchgang« vor, die ein UND-Glied 551
öffnen. Da zur gleichen Zeit die Leitung 26 für die Zustandsanzeige »Zone« ein Null-Signal führt, das über ein is
Negationsglied 552 invertiert einem dritten Eingang des UND-Gliedes 551 zugeführt wird, erzeugt dieses.-rtf
einer Leitung 550 ein 1-Signal, das eine Erzeugung von 1-Bits auf den Ausgangsleitungcn KO und Kl bewirkt.
Das I-Signal von Leitung 550 wird über ein Negationsglied 553 zwei UND-Gliedern 521 und 522 in der Bitstufe
512 zugeführt, die damit abgeschaltet werden, so daß auf der Ausgangsbitleitung K2 eine binäre Null erzeugt
wird.
In der Bitstufe 513 öffnet der 1 -Signalzustand auf der Steuerleitung 55« ein UND-Glied 554, während der zugehörige
Null-Signalzustand am Ausgang des Negationsglieds 553 ein weiteres UND-Glied 555 sperrt. Das UND-Glied
554 empfängt zusätzlich das Resultatvorzeichen-Steuersignal von der Leitung 46. das damit unverändert
aufdie Ausgangsleitung K3 übertragen wird. Wenn sich die Leitung 46 im 1-Signalzustand befindet, nimmtauch
die Ausgangsleitung K3 den 1-Signalzustand an, der, wie oben erläutert, der gewünschte Signalpegel für den
negativen Vorzeichencode ist. Wenn umgekehrt die Leitung 46 im Null-Signalzustand steht, nimmt auch die
Ausgangsleitung K3 diesen Signalzustand an.
Die logische Schaltung 307 erzeugt somit den gewünschten Vorzeichencode von 1100 oder 1101 während
eines ersten Durchganges bei der Bildung eines Resultats im gepackten Dezimalformat. Nimmt man an, daß ein
anderer Zustand vorliegt, d. h., daß binäre Operanden oder Operanden im Zonen-Dezimalformat verarbeitet
werden oder daß bei Operanden im gepackten Dezimalformat Folgedurchgänge notwendig sind, so ist wenigstens
siner der Eingänge des UND-Glieds 551 im Null-Signalzustand. Damit geht die Steuerleitung 550 in den
Null-Signulzustand über, indem keine Nullen auf den Ausgangsleitungen KO und Kl erzeugt werden. Über das
Ncgationsglied 553 wird der Signalzustand der Steuerleitung 550 invertiert, so daß die UND-Glieder 521 und 522
der Bilslufc 512 geöffnet werden. Dadurch kann diese Bitslufe in der gleichen Weise arbeiten wie die entsprechende
Bitstufe in den logischen Schaltungen 301,303 und 305 von Fig. 10. Das UND-Glied 521 dient unter
Steuerung der Leitung 325 zur unveränderten Übertragung der echten Eingangssignale von der Leitung Ul und
das UND-Glied 522 unter Steuerung der Leitung 326 zur Übertragung des Komplements der Eingangssignale
von der Leitung Ul. In der vierten Bitstufe 513 sperrt das Null-Signal auf der Leitung 550 das UND-Glied 554,
und das zugehörige !-Signa! am Ausgang des Negation.sg!ieds553 öffnet das UND-Glied 555. Hierdurch wird die ·»
Bitstufe 513 wirksam zum unveränderten Übertragen der Eingangssignale auf der Leitung t/3 zur Leitung K3.
Die Fig. 14 zeigt ein Ausluhrungsbeispiel Tür den Aufbau des Komplementdetektors 65 von F i g. 1. Wie oben
bereits ausgeführt wurde, besteht die Anzeige dafür, daß ein vom Addierer 20 geliefertes Resultat in Komplementfurm
vorliegt, darin, daß bei einer dezimalen Subtraktion eine Übertragsanzeige a\:f der Statusleitung CO
fehlt (CO = 0).
Die Schaltung von Fig. 14 enthält ein UND-Glied 600 zum Empfang des Zustandsanzcigesignals »Dezimal«
auf der Steuerleitung 27 sowie des Addition/Subtraktion-Steueroignals auf der Steuerleitung 42. Das Übertragsausgangssignal
CO wird über die Leitung 66 und ein Negationsglied 601 Jem UND-Glied 600 zugeführt.
Wenn damit am Ende einer dezimalen Subtraktion die Statusanzeige CO-O vorliegt, erzeugt das UND-Glied
600 ein I-Ausgangssignal. das einer Verriegclungsschaltung 602 zugeführt wird und dort zur gleichen Zeit
gespeichert wird, wenn das Resultat dem Z-Register 53 zugeleitet wird. Sofern das UND-Glied 600 ein 1-Ausgangssignal
liefert, so wird dieses in der Vcrriegelungsschaltung 602 gespeichert, um ein Anzeigesignal für das
Vorliegen eines komplementären Resultats an eine Ausgangsleitung 67 abzugeben.
Sofern eine Rekomplementierung vorgenommen werden soll, wird das Komplementanzeigesignal auf der Leitung
67 dem Steuerten der Datenverarbeitungseinheit zugeführt, in der sich die arithmetische Einheit 10 befindet.
Der Steuerteil der Datenverarbeitungseinheit ieitet daraufhin die erwünschte Rekomplementierung ein.
Das Signal auf Leitung 67 kann ferner einen Leuchtanzeigeverstärker 603 betätigen, der eine Anzeigelampe 604
speist, um den Komplcmentzustand des Resultats optisch zur Anzeige zu bringen.
Im folgenden werden einige typische Rechenbeispiele mit Operanden im Zonen-Dezimalformat zur ergänzenden
Erläuterung der Arbeitsweise der arithmetischen Einheit 10 beschrieben. Es wird hierzu die folgende
Addition von zwei Operanden im Zonen-Dczimalformat gewählt:
Operand A
Operand B
Operand B
Fb /8
+ Fl F9
+ Fl F9
erwartetes Ergebnis Fi Fl
S Die hexadezimale Schreibweise (siehe Tabelle III oben) wird hier und in den folgenden Beispielen benutzt,
um die Operation der Funktionseinheiten der arithmetischen Einheit 10 erläutern zu können. Hierbei wird der
Zonencode »11! 1« für numerische Zeichen auch durch die Hexadezimalzahl /'dargestellt. Die Zeichen »fi<
im obigtn Beispiel stellen somit die Zonenfelder in den beiden Operanden sowie im erwarteten Ergebnis dar. Das
äußerste rechte F in jeder der Zahlen stellt das Vorzeichen dar. Der dem ^entsprechende Vorzeichencode 1111
gibt an, daß alle Zahlen positiv sind.
erwartetes Ergebnis Fi F9
Unterschied zwischen den ZilTenifeidern und dem Vorzeichcnfeid besonders jlu beachten. Betrachtet man
zunächst die Zifiernfelder, so ist ersichtlich, daß aufgrund der Zahlenbasis 10 die beiden zu addierenden Operanden
in jeder ZifTernstelle einen Übertrag erzeugen, wenn die Resultatziffer größer als 9 ist. Eine binärcodierte
Dezimalziffer besteht aus vier Bits. Eine solche Vier-Bit-Kombination bildet ein Hexadezimalsystem der Basis
16, so daß eine vier Bit umfassende binärcodierte Zahl praktisch eine HexadczimalziiTer ist. Wenn zwei solche
Ziffern zueinander addiert werden, erzeugen sie einen Übertrag in die nächsthöhere Stelle für alle Ergebnisse,
die größer sind als 15 (Hexadezimalzahl F). Da der Unterschied in der Zahlenbasis eines solchen Systems gegenüber
dem Dezimalsystem 6 beträgt, wird jedes über die Komplementierer/Modifizierer-Schaltung 33 ankommende
binärcodierte Dezimalziffernfeld um den Faktor 6 erhöht, so daß bei der nachfolgenden binären Addition
im Addierer 20 die Überträge zwischen den ZifTernfeldern den tatsächlichen Dezimalüberträgen enlsprechen.
Die Tabelle V zeigt a!'.e gültR-in Operandenziffern in der ursprünglichen Dezimalform, in ihrer entsprechenden
Binärdarstellung sovie nach der Plus-sechs-Operation in der Schaltung 33.
Eingang | binäre | Nach der Erhöhung | binäre |
Dc/.imal- | Darstellung | hexadezimale | Darstellung |
ZilTer | 0000 | Ziffer | 1110 |
0 | 0001 | 6 | Olli |
1 | 0010 | 7 | 1000 |
2 | 0011 | 8 | 1001 |
3 | 0100 | 9 | 1010 |
4 | 0101 | A | 1011 |
5 | 0110 | B | 1100 |
6 | Olli | C | 1101 |
7 | 1000 | O | UIO |
8 | 1001 | E | MII |
9 | F | ||
Wenn Überträge im Addierer 20 erzeugt werden, sollen diese den Wert des nächsthöheren ZifTcrnfcldes um
den Betrag 1 erhöhen. Das nächsthöhere Feld im Zonen-Dezimalformat ist jedoch jeweils ein Zonenfeld. Daher
muß jeder aus einem Ziffernfeld in ein Zonenfeld einlaufender Übertrag durch dieses Zoncnfeld in das nächsthöhere
ZifTernfeld übertragen werden. Dies geschieht dadurch, daß alle Ziffernfeldbits des Operanden A den
Binärwert 0 und alle Zonenfeldbits des Operanden B den Binärwert 1 erhalten. Während der Addition im Addierer
20 werden somit die in die Zonenfelder einlaufenden Überträge entsprechend der l'oigendcn Tabelle weitcrgeleitet:
Vorbereitetes Zoncnfeld im Operanden A 0000
Vorbereitete Zone im Operanden B 1111
Übertragscingang = 1 \_
Vorbereitete Zone im Operanden B 1111
Übertragscingang = 1 \_
Im EBCDIC-Code haben die Zonenfelder der Operanden bereits den Code 1111. Man kann daher die Zonenfelder
des Operanden B durch den Komplementierer/Modifizierer 33 unverändert übertragen. In diesem Fall
muß natürlich sichergestellt sein, daß die Bits im Vorzeichenfeld durch die Schaltung 33 auf» Uli« gesetzt
werden. Im oben beschriebenen Ausführungsbeispiel werden alle Zonenfeldbits und Vorzeichenfeldbits in den
1-Signalzustand gebracht, wenn ein Operand B durch die Schaltung 33 geführt wird, obwohl dies für die Zonenfeldbits
eigentlich nicht notwendig ist. Die Operanden A und B des oben angegebenen Beispiels werden durch
die Schaltungen 23 und 33 in der aus Tabelle VI ersichtlichen Art verändert.
Tabelle VI | hexadezimal | Veränderung hexadezimal |
binär | OUO Olli |
0000 IUl |
1000 1111 |
Eingang Operand |
Fd F8 Fl F9 |
0608 Π FF |
0000 Uli |
|||
Operand A Operand B |
||||||
Der Ziffernwert eines jeden Ziffernfeldes im Operanden B wird um den Konstantwert 6 erhöht. Die dementsprechend
veränderten Ziffernwerte sind in hexadezimaler und in binärer Darstellung auf der rechten Seite von
Tabelle VI angegeben/Der Vollständigkeit halber sei erwähnt, daß c;e oben angegebenen Operanden jeweils nur
die wertniedrigste Hälfte der Datenflußbreite des Addieren 20 einnehmen, da das hierin beschriebene Ausführungsbeispiel
eine Datenflußbreite von 4 Bytes hat. Die werthöheren beiden Bytes werden somit Tür den linken
Eingang 24 des Addierers entsprechend der Hexadezimalzahl 0000 eingestellt und für den rechten Eingang 34
entsprechend der Hexadezimalzahl Fd Fd.
Bei einer Subtraktion von Operanden im Zonen-Dezimalformat ist die Vorbereitung des Operanden A dieselbe
wie im Fall einer Addition. Dies trifft auch zu fü; die Zonenfelder des Operanden B. Dagegen weicht die
Vorbereitung der Ziffernfelder des Operanden B hiervon ab. Da im Binäraddierer 20 die Subtraktion aus Addition
der Komplementwerte ausgeführt wird, sind die Ziffernfelder des Operanden B vor ihrer Zuführung zum
Addierer 20 zu komplementieren. Die PIus-sechs-Erhöhang der Ziffemwerte erfolgt dabei durch Komplementierung
der Ziffernfelder zur Basis 16 und nicht zur Basis 10, indem man einfach die binären Bits in den Ziffernfeldern
komplementiert und eine Übertragseins der wertniedrigsten Stufe des Addierers 20 über die Übertragseingangsleitung 23 zuführt. Hierdurch wird in vorteilhafterweise ein binäres Zweierkomplement oder ein hexadezimales
Sechzehnerkomplement erzeugt. Letzteres entspricht der Bildung des Zehnerkomplements und tfsr
Addition \on 6. Somit ist die Addition von 6 in den Komplementierungsvorgang einbezogen.
Die Tabelle VII zeigt alle gültigen Eingabeoperanden und die zugehörigen hexadezimalen und binären Darsteiiungen
nach der Kornplementierung In der Schaltung 33,
Für das oben angegebene Subtraktionsbeispiel werden somit die Operanden mit Hilfe der Schaltungen 25 und
33 in der aus Tabelle VIII ersichtlichen Art vorbereitet.
Tabelle | VII | binär | Komplementierung | 1111 |
Eingang | 0000 | hexadezimal binär | 1110 | |
dezimal | 0001 | F | 1101 | |
0 | 0010 | E | 1100 | |
1 | 0011 | D | 1011 | |
2 | 0100 | C | 1010 | |
3 | 0101 | B | 1001 | |
4 | 0110 | Λ | 1000 | |
5 | Olli | 9 | Olli | |
6 | 1000 | 8 | 0110 | |
7 | 1001 | 7 | ||
8 | 6 | |||
9 |
Tabelle VIII | hexadezimal | hexadezimal | Vorbereilei binär |
0110 1110 |
0000 IHI |
1000 0110 |
Eingang Operand |
Fb Pi R /9 |
0608 FEFb |
0000 III! |
|||
Operand A Operand B |
||||||
Die im Addierer ausgeführte Rechenoperation zeigt die Tabelle IX für das oben angegebene Additionsbeispiel
und die Tabelle X für das ober, angegebene Subtraktionsbeispiel.
IS | Addicrerposition | hexadezimal | binär | 0110 Olli 1110 I CS = 0 |
0000 1111 0000 I C6= 1 |
1000 1111 Olli J C7= 1 |
C. | = 0 |
20 | Eingang A Eingang B Ausgang |
0608 Fl FF FEX)I Überträge |
0000 Uli 1111 t C4 = 0 |
|||||
25 | Tabelle X | |||||||
Addiererposition | hexadezimal | binär | ||||||
Eingang A 0608 0000 0110 0000 1000
Eingänge FEFb 1111 1110 1111 0110
Ausgang 04 FF 0000 0100 IUI Uli C=I
i i l i
35
Die Überträge C4, CS, C 6 und C7 bestimmen die Art der auszuführenden Korrekturoperation in der Schaltung
50. Für die Tabellen IX und X wird angenommen, daß die je zwei Bytes umfassenden Operanden rechtsbündig
durch die arithmetische Einheit i0 geführt werden und somit in den beiden niedrigsten Bytcsiufen des
Addierers 20 verarbeitet werden. Dessen ungeachtet müssen die Übertragsausgänge CO, Cl, C2und C3berücksichtigt
werden.
Es sei zunächst die ResulUtkorrektur der ZifTernfelder betrachtet. Da die ZifTernfelder des Operanden B um
den Faktor 6 erhöht worden sind, um entsprechende Ziflernfeldüberträge für die Basis 16 zu erhalten, ist eine
Korrektur des Resultatziffernfeldes nicht erforderlich, wenn bei der Addition im Addierer 20 ein Ziffernfeldübertrag
auftritt. Wenn dies jedoch nicht der Fall ist, muß der entsprechende Resultatziffernwert um den Konstantwert
6 reduziert werden, um die ursprüngliche Werterhöhung rückgängig zu machen. Beim vorliegenden
Beispiel trifft dies für die zwei unbenutzten Ziffernfelder 1 und 3 sowie für die Ziifernfelder 5 und 7 zu. Die
Tabelle XI gibt eine Übersicht über die Korrekturoperation für alle möglichen Resultatziffern des Addierers 20,
ohne daß bei der Bildung dieser Resultatziffern ein Ziffernfeldausgangsübertrag erzeugt wird.
55
60
65
Resultatziffer | Korrigierte | Resullatziffer |
hexa- binär | dezimal | binär |
dezimal |
6 | OUO | 0 | 0000 |
7 | Olli | 1 | 0001 |
8 | 1000 | 2 | 0010 |
9 | 1001 | 3 | 0011 |
A | 1010 | 4 | 0100 |
B | 1011 | 5 | 0101 |
C | UOO | 6 | OUO |
D | HOl | 7 | Olli |
E | IUO | 8 | 1000 |
F | UU | 9 | !0Oi |
4":
Für die Zonenfeldcr ist eine ähnliche Korrektur notwendig; diese hängt jedoch in entgegengesetzter Weise
von den während der Addition erzeugten Übertragssignalen ab. Wenn kein Zonenfeld-Ausgangsübertrag
erzeugt wird, besteht das Resultatzonenfeld aus lauter Einsen, und es ist keine Korrektur notwendig. Wenn
andererseits ein Zonenfeld-Ausgangsübertrag erzeugt wird, besteht das Resultatzonenfeld aus lauter Nullen,
die daraufhin in lauter Einsen umzuwandeln sind, um den korrekten Zonenfeldcode zu erzeugen.
Die Tabelle XII gibt einen Überblick über die verschiedener/Korrekturen der Zonenfelder und der Ziffernfeldei
iiir die verschiedenen Übertragsausgänge einer jeden vier Bits umfassenden Bitgruppe.
Tabelle XII | Erforderlich: Operation Zonenfeld |
ZifTernfeld |
Bitgruppen übertrag |
keine lauter Einsen erzeugen |
Reduzierung der Resultatziffer keine |
0 1 |
||
Wie oben bereits erläutert wurde, sind die Ziffernfelder bei Bedarf durch Inkrementierung um den Konstantwert
10 (hexadezimal A) zu korrigieren anstelle einer Reduzierung um den Konstantwert 6. Diese Korrektur
erfolgt durch Addition des Komplements von 6, ohne daß dabei eine Weiterleitung der erzeugten Überträge
erfolgt, d. h. die Überträge werden ignoriert.
Wendet man die in der Tabelle XII dargestellten Korrekturen auf die oben angeführten Rechenbeispiele an, so
erhält man für das Additionsbeispiel die in der Tabelle XIII gezeigten Ergebnisse und Tür das Subtraktionsbeispiel
die in der Tabelle XIV gezeigten Ergebnisse. Diese Ergebnisse stellen die korrekten Resultatwerte dar, die
den erwarteten Resultatwerten der Rechenbeispiele entsprechen.
Tabelle XIIl | Hexadezimal Binär Bitgruppenüberträge 3 0 |
Uli +0000 |
0000 + 1111 |
0 | 1 | 1 |
FEOl
+0A FO |
1111 | 1111 | UlO IOiO |
0000 1111 |
OUl 0000 |
|
Resultat am Ausgang von ZO Korrekturwert |
FZFl | Hexadezimal Binär Bitgruppenübertriige C 1 |
1000 | Uli | Olli | |
Korrigiertes Resultat Tabelle XIV |
04 FF +FOOA |
1 | 0 | 0 | ||
F4F9 | 0100 0000 |
1111 0000 |
Uli 1010 |
|||
Resultat am Ausgang von 20 Korrekturwert |
0100 | 1111 | 1001 | |||
Korrigiertes Resultat | ||||||
Aus der obigen Erläuterung des dargestellten Ausführungsbeispiels ist erkennbar, daß die Zonenfelder einfach
dadurch korrigiert werden, daß für jedes Zonenfeldbit eine binäre Eins erzeugt wird. Dabei werden die
Zonenfeld-Ausgangsüberträge des Addierers 20 ignoriert. Diese Ausführung weicht von der vorausgehend
erläuterten Korrekturform ab, ist aber dieser im Ergebnis gleichwertig. Das die Zonenfeld-Ausgangsübertrige
benutzende Korrekturverfahren eignet sich jedoch besser zur Erläuterung der angeführten Zahlenbeispiele,
weshalb es auch für die nachfolgende Beschreibung weiterbenutzt werden soll.
Wie bei jeder Komplementrcchnung kann die arithmetische Einheit 10 auch eine Komplementform der
Zonenfelder erzeugen. Dies geschieht beispielsweise bei einer Subtraktion jeweils dann, wenn der Operand B
einen größeren numerischen Wert hat als der Operand A. Die Tabelle XV zeigt dieses Ergebnis für die obigen
Operandenbeispiele, die jedoch zu diesem Zweck bezüglich der Operanden A und B vertauscht wurden.
Tabelle XV | Hexadezimal | Binär | 0001 | ill I | (■'in | 1001 |
F7F9 | Uli | 0110 | HH | 1000 | ||
Operand A | Fb Fi | 1111 | 0001 | 0000 | 1001 | |
Operand B | 0109 | 0000 | 1001 | HH | Olli 1 | |
A modifiziert | B Π | 1111 | 0 | 1 | 1 | |
B modifiziert | 0011 | 0 | 1011 | 0000 | 0001 | |
Bitgruppenüberträge | raoi | UU | 1010 | 1111 | 0000 | |
Addiererausgang | +0AFO | +0000 | 0101 | 1111 | 0001 | |
Korrektur | F5 F\ | 1111 | 0100 | 1101 | 1001 | |
Endgültiges Resultat | FA D9 | 1111 | ||||
Erwartetes Resultat | ||||||
ii
I-P 1J
'κ Das erwartete Ergebnis ist der negative Wert 49. Das »Z>
< in der dritten ZifTernposition bezeichnet das nega-
)=§ »«ve Vorzeichen. Des durch die arithmetische Einheit 10 erzeugte und an das Z-Register 53 gelieferte Resultat ist
;| jedoch das Zehnerkomplement von -49, nämlich +51. Die oben erläuterten Schaltungen zeigen an, daß die an
!·■; 20 das Z-Register «gelieferte Resultatzahl in Komplementform vorliegt. Diesgeschieht durch Anzeige eines NuII-
$ Signals auf der Statusleitung CO, die den Übertragsausgang für den Addierer 20 als Ganzes darstellt. Für eine
^l dezimale Subtraktion ist somit das dem Register 53 zugeführte Resultat ein echter Wert, wenn ein 1-Signal auf
% dem Übertragsausgang CO vorliegt (CO - 1). In diesem Falle ist die Rechenoperation beendet. Wenn andereres
seits der Übertragsausgang COim SignalzusUnd 0 bleibt, liegt das dem Register 53 zugeführie Resultat in Korn-
fe 35 plementform vor. Es kann dadurch in seine echte Darstellung umgesetzt werden, daß man dieses Resultat von
■ einem Operanden A subtrahiert, der aus lauter Nullen besteht, wobei man zusätzlich das Vorzeichen des dabei
erhaltenen Resultatwertes entgegengesetzt dem Vorzeichen des zu rekomplementierenden Wertes einstellt,
d. h., entgegengesetzt zum Vorzeichen des Resultatwertes, der vom Null-Operand A zu subtrahieren ist. Die
Rekomplementierungsoperation für das Beispiel von Tabelle XV zeigt die Tabelle XVl.
30
35
Tabelle XVI | Hexadezimal | Binär | 0000 | 1111 | C | 0000 |
TOFO | 1111 | 0101 | IHl | 0001 | ||
Operand A | FS Fl | 1111 | 0000 | 0000 | 0000 | |
Operand B | 0000 | 0000 | 1010 | mi | ΠΙΟ 1 | |
A modifiziert | FAFE | 1111 | 0 | 0 | 0 | |
B modifiziert | 0000 | 0 | 1010 | 1111 | 1111 | |
Bitgruppenüberträge | FAFF | HH | 1010 | πιο | 1010 | |
Addw/erausgang | +OAEA | +0000 | 0100 | HOl | 1001 | |
Korrektur | FA D9 | IHl | ||||
Endgültiges Resultat | fa m | |||||
Erwartetes Resultat | ||||||
45
Am Ende der Rekomplementierungsoperation tritt erneut auf dem Übertragsausgang CO ein Null-Signal auf.
Dies ist erwartungsgemäß stets der Fall und hat nicht die Bedeutung, daß eine weitere Rekomplementierung
erforderlich ist.
so In den obigen Rechenbeispielen waren jeweils die Vorzeichen der Operanden A und B positiv. Dies wurde
zum Zwecke der einfacheren Erläuterung angenommen. Wenn eine Addition auszuführen ist, bei der ein Operand
positiv und der andere negativ ist, veranlaßt die Vorzeichenverarbeitungsschaltung 40 die arithmetische
Einheit 10 zur Ausführung einer Subtraktion. Wenn umgekehrt eine Subtraktion angefordert ist und die Eingabeoperanden
unterschiedliche Vorzeichen haben, veranlaßt die Schaltung 40 die arithmetische Einheit 10 zur
Verschiedene Beispiele für die Vorzeichenverarbeitung zeigen die Tabellen XVlI bis XX. Die Tabellen XVII
und XVIII gelten für Operanden im Zonen-Dezimalformat und die beiden übrigen Tabellen für Operanden im
gepackten Dezimalformat.
ω Tabelle XVII
Vorzeichen Hexadezimal
65
Angeforderte Operation + | Addition |
Operand A + | F6A% |
Operand B - | Fl D9 |
Ausgeführte Operation | Subtraktion |
Ergebnis + | F4F9 |
Angeforderte Operation | Subtraktion |
Operand A - | F6BB |
Operand B + | F\ C9 |
Ausgeführte Operation + | Addition |
Ergebnis | FSDl |
Tabelle XlX |
Operand B
Ausgeführte Operation Ergebnis
Addition
684 £
193 E
684 £
193 E
Subtraktion
491 D
491 D
Angerorderte Operation | Subtraktion |
Operand A + | 684 F |
Operand B | 193 B |
Ausgeführte Operation + | Addition |
Ergebnis + | 877 C |
Für die Operanden im Zonen-Dezimalformat gibt das vorletzte Symbol rechts den Vorzeichencode an. Für
Operanden im gepackten Dezimalformat gibt das Symbol in der äußersten rechten Position den Vorzeichencode
an. Diese Codes sind aus der Tabeüe !I ersichtlich. Das Resultat hat immer dasselbe Vorzeichen wie der dem
Register 21 zugeführte Operand A. Der Vorzeichencode des Operanden A wird jedoch immer in den oben angegebenen
Resultat-Vorzeichencode umgewandelt, ohne daß sich dabei an der Polarität c'es Vorzeichens etwas
ändert.
Zur ergänzenden Erläuterung der Rekomplementierungsoperation, während der die arithmetische Einheit
10 immer eine Subtraktion ausführt ungeachtet des Vorzeichens der dabei zugeführten Operanden, zeigt die
Tabelle XXI die Rekomplementierung fur ein Operandenpaar im Zonen-Dezimalformat und die Tabelle XXi}
für ein Operandenpaar im gepackten Dezimalformat. Die Tabellen lassen erkennen, daß die Endergebnisse in
beiden Beispielen das entgegengesetzte Vorzeichen aufweisen wie die Komplementergebnisse.
Operand A Operand B
Addition
Fl/49
F6/>8
F5F1
F4D9
Vorzeichen | Hexadezimal |
+ | Addition |
-t- | 193 £ |
- | 684 B |
- | Subtraktion |
+ | 509 C |
- | Subtraktion |
— | 491D |
Angeforderte Operation
Operand A
Operand B
Operand A
Operand B
Ausgeführte Operation
ίο Komplementergebnis
ίο Komplementergebnis
Rekomplementierungsoperation
Endergebnis
Endergebnis
is WeQB ils Resultat einer dezimalen Rechenoperation unmittelbar in echter Form erhalten wird, ist die
Geschwindigkeit für Dezimalrechnungen vergleichbar mit der von Binärrechnungen für Operanden gleicher
Genauigkeit Wenn das Resultat zunächst in Komplementfcrm erhalten wird und danach zu rekomplementieren
ist, ist die Rechengeschwindigkeit um einen Operationstakt langsamer.
Isa beschriebenen Ausfühningsbeispiel wird ein paralleler Binäraddierer mit Übertragsvorausschau als rechnende Einheit benutzt. Statt dessen kann natürlich auch eine andere Rechenschaltung, z. E. ein paralleler binärer Subtrahierer mit Borgervorausschau verwendet werden. In diesem Falle sind die Addition/Subtraktion-Steuerfunktionen umgekehrt. Für eine Addition ist der Operand B zu komplementieren, während er für eine Subtraktion nicht komplementiert wird. Die Übertragsausgangssignale sind in diesem Falle Borger-Ausgangssignale.
Isa beschriebenen Ausfühningsbeispiel wird ein paralleler Binäraddierer mit Übertragsvorausschau als rechnende Einheit benutzt. Statt dessen kann natürlich auch eine andere Rechenschaltung, z. E. ein paralleler binärer Subtrahierer mit Borgervorausschau verwendet werden. In diesem Falle sind die Addition/Subtraktion-Steuerfunktionen umgekehrt. Für eine Addition ist der Operand B zu komplementieren, während er für eine Subtraktion nicht komplementiert wird. Die Übertragsausgangssignale sind in diesem Falle Borger-Ausgangssignale.
Die verschiedenen Schaltungsausführungen wurden anhand vor Schaltelementen in positiver Logik erläutert.
Die Schaltungen können natürlich auch mit Schaltungselementen in negativer Logik oder in einer Mischung aus
positiver und negativer Logik ausgeführt werden. Dabei können die oben erläuterten UND-Glieder, ODER-Glieder
und Negationsglkder ganz oder teilweise durch NAND-Glieder, NOR-Glieder oder andere logische
Schaltungen ersetzt werden.
- .
Claims (1)
- Patentansprüche:1. Arithmetische Einheit fur automatische Rechengeräte zur Addition oder Subtraktion von binär oder binärdezimal verschlüsselten Operanden mit einem Paralleladdierer, dessen Operandeneingänge und des-sen Resultatausgang über je eins Modifizierschaltung geführt sind, die auswählbare Teile der Operanden und des Resultats auf vorgegebene Werte einstellen, dadurch gekennzeichnet, daß zur wahlweisen Verarbeitung binärdezimaler Operanden im gepackten Dezimalformat oder im Zonen-Dezimalformat der Bitstellenbereich der Modifizierschaltungen (23,33,5·) von der niedrigsten zur höchsten Ziffernstelle in jV-Bit-Gruppen unterteilt ist, daß die /V-Bit-Gruppen Torschaltungen (108,112; 144,1*4; 314,325) aufweisen zurίο unveränderten Übertragung der BiU bei Verarbeitung von binären Operanden und von Operanden im gepackten Dezimalformat, daß die zweite und von den folgenden jede übernächste JV-Bit-Gruppe eine bei der Verarbeitung von Operanden im Zonen-Dezimalformat durch Formatsteuersignale aktivierbare Voreinstellschaltung (z. B. 113; 149, 1§7; 31*. 327) enthält, die den Torschaltungen (108,112; 144,164; 314,325) der jeweils gleichen /V-Bit-Gruppe übergeordnet ist und diese durch Anlegen eines vorgegebenen Potentials anυ ihre Ausgangsleitungen unwirksam hält, daß wenigstens eine der beiden eingangsseitigen Modifizierschal tungenΊ&, 33; zusätzliche Schaltmittel (145 bis 14t, 151 bis 153, 156, 158, 1«, 165,166) aufweist,.die logische oder arithmetische Umformungen ausführen, um bei Subtraktion jeweils für einen der binären oder binärdezimal verschlüsselten Operanden dessen Komplementwert zu bilden und bei der Addition von binärdezimal verschlüsselten Operanden eine Korrekturaddition durchzuführen, und daß die Voreinstellschal-tung de>> zusätzlichen Schaltmitteln übergeordnet ist.2 ri rsiiirnei;Κηβ Einheit nach Anspruch I. dadurch gekennzeichnet, daß wenigstens eine dem Vorzeichen einesOperanden zugeordnete /V-Bit-Gruppe mit einer durch Formatsteuersignale einschaltbaren separaten Voreinstellschaltung (12·, 121,114; 174, IM) versehen ist, die den Torschaltungen der JV-Bit-Gruppen übergeordnet ist und diese unwirksam macht, indem sie den Ausgangsleitungen der Torschaltungen ein vorgege-benes Potential zufuhrt. .3. Arithmetische Einheit nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß eine der Operanden-Modifiziersdialtungen (33) Bit-fcomplement-Schaltungen (z. B. 145) enthält, d!s bei Ausführung von Subtraktionen von binären Operanden das binäre Komplement und bei der Ausführung von Subtraktionen binärdezimal verschlüsselter Operanden das hexadezimale Komplement der zugeführten Operanden auf den Ausgangsleitungen der /V-Bit-Gruppen erzeugen.4 Arithmetische Einheit nach einem der Ansprüche 1 bis 3. dadurch gekennzeichnet, daß eine der Modifizierschaltungen (33) für die Operanden für jede Λί-Bit-Gruppe eine Plus-sechs-Additionsschaltung (146 bis 148,151,153,157, /61) eifcnält, die über eine Steuerleitung (166) aktiviert wird, wenn eine Dezimaladdition auszuführen Ist.5 Arithmetische Einheit ..ach einem der Ansprüche I bis 4, dadurch gekennzeichnet, daß eine der Modifizierschaltungen (50) Tür das Resultat für jede JV-Bit-Gruppe eine logische Schaltung (315,318,319,322) zur Subtraktion von sechs vom ResultatzifTernwert der betreffenden /V-Bit-Gruppe enthält, und daß diese logische Schaltung über Übertragsstatusleitungen (CO, Cl bis C7) des Addierers (20) betätigt wird, wenn in der zugeordneten Ziffernstelle des Addierers kein Übertrag aufgetreten ist.6. Arithmetische Einheit nach Anspruch 5, dadurch gekennzeichnet, daß die logische Schaltung (315,318.319, 322) als übertragslose Plus-zehn-Additionsschaltung ausgebildet ist.7. Arithmetische Einheit nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die für jede zweite /V-Bit-Gruppe vorgesehenen Voreinsteilschaltungen (149, 167; 316, 327) sowohl den Bit-Komplement-Schaltungen (z. B. 145) als auch der Additionsschaltung bzw. Subtraktionsschaltung (146, 147, 148,152,153,157,161; 315.318,319,322) übergeordnet sind, indem sie unter Umgehung dieser Schaltungen denAusgangsleitungen der betreffenden /V-Bit-Gruppen vorgegebene Bitwerte zuführen.8. Arithmetische Einheit nach einem der Ansprüche 1 bis 7. dadurch gekennzeichnet, daß in der Modifizierschaltung (33) des einen Operanden für eine das Vorzeichen darstellende Bit-Gruppe eine separate Voreinstellschaltung (174, 178) vorgesehen ist, die sowohl den Bit-Kompleiuentschaltungen (z. B. 145) als auchder Additionsschaltung (146,147,148,152,153,157,161) dieser Gruppe übergeordnet ist und unter Umgehung dieser Schaltungen den Ausgangsleitungen der Gruppe vorgegebene Bitwertc zufuhrt.ij 9. Arithmetische Einheit nach Anspruch 1 bis 8, dadurch gekennzeichnet, daß wahlweise eine der beidenIj niedrigsten Bitgruppe zur Vorzeichendarstellung dient, von denen jede mit einer Voreinslellschallung (117,118,113; 120,121.114 und 173,167; 174,168) versehen ist, die durch die Formatsteuersignale betätigt wird.55 ιό Arithmetische Einheit nach einem der Ansprüche I bis 9, dadurch gekennzeichnet, daß die durch dieΐί Voreinsteilschaltungen (108,113; 149,173,167; 316,327; 120,121,114; 174,168; 117,118,113) erzeugten vor-'\ gegebenen Bitwerte in der einen Operanden-Modifizierschaltung (23) lauter Nullen und in der anderen Ope-ij randen-Modifizierschaltung (33) sowie in der Resultat-Modifizierschaltung (50) lauter Einsen sind.j 11. Arithmetische Einheit nach einem der Ansprüche 1 bis 10, gekennzeichnet durch eine Vorzeichen-60 Verarbeitungsschaltung (40), welche die beiden niedrigsten /V-Bit-Gruppen der beiden Operanden zugeführterhält durch einen Vorzeichendetektor (184,185; 187; 188) für jede dieser Bitgruppen, von denen jeweilseine von einem Formatsteuersignal auswählbar ist, durch eine EXKLUSIV-ODER-SCHALTUNG (200), die an die Ausgänge der Vorzeichendetektoren angeschlossen ist. sowie durch eine weitere EXKLUSIV-ODER-SCHALTUNG (201). die das Ausgangssignal der ersten EXKLUSIV-ODER-SCHALTUNG (200) sowie ein externes Rechenart-Steuersignal zugeführt erhält und die ein Operationssteuersignal für die Modifizierschaltung (33) des einen Operanden erzeugt.12. Arithmetische Einheit nach Anspruch 11, dadurch gekennzeichnet, daß die Vorzeichendetektoren (184. 185; 187; 188) auf einen ein Minuszeichen darstellenden Code ansprechen.13. Arithmetische Einheit nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, daß die Ausgänge der Vorzeichendetektoren (147,185) des einen Operanden den Vorzeichen-Einstellschaltungcn(449,554) in den beiden wertniedrigsten /V-Bit-Gruppen der Resultats-Modifizierschaltung (50) zugeführt werden und daß diese Vorzeichen-Einstellschaltungen in Abhängigkeit von den Formatsteuersignalen auf den Aus- §§ gangsleitungen ein Resultatvorzeichen erzeugen, das dem Vorzeichen dieses Operanden entspricht. sff 14. Arithmetische Einheit nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, daß die Vor-P zeichen-Voreinstellschaltungen (120, 121, 114; 174, 168) der Operanden-Modifizierschalrungen (23, 33)?! sowie die Vorzeichen-Einstellschaltungen (440, 454) der Resultat-Modifizierschaltung (50) durch eineff Steuerleitun* {28) gesperrt werden, die anzeigt, daß es sich um die Verarbeitung von Operandensegmentenψ ohne Vorzeichen (Folgedurchgänge) handelt.§. 15. Arithmetische Einheit nach einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, daß die iV-Bit-iil Gruppen aus je vier Bits bestehen.; 16. Arithmetische Einheit nach einem der Ansprüche 1 bis 15, gekennzeichnet durch eine Komplement-f; Resultatanzeigeschaltung (65), die bei einer Subtraktion wirksam wird und bei Vorliegen eines Komplement-ΐ Resultats ein Steuersignal zur Einleitung einer Rekomplementierungsoperation erzeugt, daß die Modifizier-£· schaltung (23) des einen Operanden eine bei einer Rekomplementierungsoperation betätigte Schaltung (116,r? 115) zum Nuilsetzen aller Bits dieses Operanden aufweist und daß die Vorzeichenverarbeitungsschaltung(40) eine Rekomplementierungsschaltung (30,207) aufweist, die im Rekomplementierungsfalle ein Subtraktionssteuersignal erzeugt und das Endresultatvorzeichen entgegengesetzt dem Komplementremltatvorzeichen einstellt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/587,797 US4001570A (en) | 1975-06-17 | 1975-06-17 | Arithmetic unit for a digital data processor |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2626432A1 DE2626432A1 (de) | 1977-01-13 |
DE2626432C2 true DE2626432C2 (de) | 1985-01-17 |
Family
ID=24351237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2626432A Expired DE2626432C2 (de) | 1975-06-17 | 1976-06-12 | Arithmetische Einheit für automatische Rechengeräte |
Country Status (5)
Country | Link |
---|---|
US (1) | US4001570A (de) |
JP (1) | JPS5811652B2 (de) |
DE (1) | DE2626432C2 (de) |
FR (1) | FR2315122A1 (de) |
GB (1) | GB1512476A (de) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4125867A (en) * | 1976-10-27 | 1978-11-14 | Texas Instruments Incorporated | Electronic calculator or microprocessor having a hexadecimal/binary coded decimal arithmetic unit |
JPS553064A (en) * | 1978-06-22 | 1980-01-10 | Fujitsu Ltd | Binary/decimal adder device |
CA1145054A (en) * | 1979-01-02 | 1983-04-19 | Honeywell Information Systems Inc. | Data processing system with means to align operands |
US4245328A (en) * | 1979-01-03 | 1981-01-13 | Honeywell Information Systems Inc. | Binary coded decimal correction apparatus for use in an arithmetic unit of a data processing unit |
DE3040931C1 (de) * | 1980-10-30 | 1982-04-29 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und Anordnung zur Verknuepfung von Operanden variabler Laenge in Datenverarbeitungsanlagen |
JPS5827241A (ja) * | 1981-08-12 | 1983-02-17 | Hitachi Ltd | 十進演算装置 |
DE3202757A1 (de) * | 1982-01-28 | 1983-08-04 | Jurij Egorovič Moskva Čičerin | Mikrocomputer-prozessor |
JPS58219641A (ja) * | 1982-06-14 | 1983-12-21 | Mitsubishi Electric Corp | マイクロコンピユ−タの演算装置 |
US4799181A (en) * | 1986-09-30 | 1989-01-17 | Honeywell Bull Inc. | BCD arithmetic using binary arithmetic and logical operations |
US4866656A (en) * | 1986-12-05 | 1989-09-12 | American Telephone And Telegraph Company, At&T Bell Laboratories | High-speed binary and decimal arithmetic logic unit |
US4805131A (en) * | 1987-07-09 | 1989-02-14 | Digital Equipment Corporation | BCD adder circuit |
GB2293469A (en) * | 1994-09-22 | 1996-03-27 | Secr Defence | Error detection in arithmetic circuit. |
US5752001A (en) * | 1995-06-01 | 1998-05-12 | Intel Corporation | Method and apparatus employing Viterbi scoring using SIMD instructions for data recognition |
US5758336A (en) * | 1996-05-30 | 1998-05-26 | Matridigm Corp. | Date format and date conversion procedure using a packed binary format |
US5978809A (en) * | 1997-01-27 | 1999-11-02 | Bemer; Robert W. | Method of solving millennium problems of some application programs |
US6449610B1 (en) | 1999-03-26 | 2002-09-10 | International Business Machines Corporation | Memory media and method of processing date data using pseudo zoned decimal format |
US7299254B2 (en) | 2003-11-24 | 2007-11-20 | International Business Machines Corporation | Binary coded decimal addition |
US8612500B2 (en) * | 2007-01-18 | 2013-12-17 | International Business Machines Corporation | Method and decimal arithmetic logic unit structure to generate a magnitude result of a mathematic |
US9335993B2 (en) | 2011-12-29 | 2016-05-10 | International Business Machines Corporation | Convert from zoned format to decimal floating point format |
US9329861B2 (en) | 2011-12-29 | 2016-05-03 | International Business Machines Corporation | Convert to zoned format from decimal floating point format |
JP2013242700A (ja) | 2012-05-21 | 2013-12-05 | Internatl Business Mach Corp <Ibm> | コード最適化方法、プログラム及びシステム |
CN117743242A (zh) * | 2023-11-22 | 2024-03-22 | 中金金融认证中心有限公司 | 一种低速cpu核间偶数末位电平补偿***和补偿方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3508037A (en) * | 1967-01-30 | 1970-04-21 | Sperry Rand Corp | Decimal add/subtract circuitry |
DE1915493C3 (de) * | 1969-03-26 | 1975-09-04 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Schaltung für Multiplikation nach dem Prinzip der fortgesetzten, stellenversetzten Addition |
US3752394A (en) * | 1972-07-31 | 1973-08-14 | Ibm | Modular arithmetic and logic unit |
-
1975
- 1975-06-17 US US05/587,797 patent/US4001570A/en not_active Expired - Lifetime
-
1976
- 1976-05-06 GB GB18555/76A patent/GB1512476A/en not_active Expired
- 1976-05-06 FR FR7614183A patent/FR2315122A1/fr active Granted
- 1976-06-11 JP JP51067876A patent/JPS5811652B2/ja not_active Expired
- 1976-06-12 DE DE2626432A patent/DE2626432C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
US4001570A (en) | 1977-01-04 |
GB1512476A (en) | 1978-06-01 |
JPS5811652B2 (ja) | 1983-03-04 |
DE2626432A1 (de) | 1977-01-13 |
FR2315122B1 (de) | 1979-09-21 |
JPS52143A (en) | 1977-01-05 |
FR2315122A1 (fr) | 1977-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2626432C2 (de) | Arithmetische Einheit für automatische Rechengeräte | |
DE2616717C2 (de) | Digitales Addierwerk | |
DE2712224C2 (de) | Datenverarbeitungsanlage | |
DE1162111B (de) | Gleitkomma-Recheneinrichtung | |
DE1193996B (de) | Schiebespeicher mit Steuervorrichtung | |
DE2230188C2 (de) | Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen | |
DE2063199A1 (de) | Einrichtung zur Ausfuhrung logischer Funktionen | |
DE2405858A1 (de) | Normalisierendes verschiebezaehlernetzwerk | |
DE3303269C2 (de) | ||
DE1271433B (de) | Adressiereinrichtung fuer einen Tabellenwertspeicher | |
DE2826773A1 (de) | Verfahren und schaltungsanordnung zum feststellen der wertigkeit von ziffern in arithmetischen operationen mit dezimalrechnern | |
EP0139207B1 (de) | Schaltung zur CSD-Codierung einer im Zweierkomplement dargestellten, binären Zahl | |
DE2705989C2 (de) | Schaltungsanordnung zum parallelen Addieren oder Subtrahieren von mindestens zwei Eingangszahlen | |
DE2000275A1 (de) | Elektronischer Walzenschalter | |
DE2948340C2 (de) | Informationsübertragungsanordnung für die Übertragung jeweils ausgewählter Informationseinheiten | |
DE1549485C3 (de) | Anordnung zur Division binärer Operanden ohne Rückstellung des Restes | |
DE1774771A1 (de) | Anordnung,um wechselweise eine Addition oder eine aus einer Anzahl logischer Funktionen zwischen den Inhalten einer Stelle zweier Binaerworte durchzufuehren | |
DE1549381B2 (de) | Datenverarbeitungsanlage | |
DE1499227C3 (de) | Schaltungsanordnung für arithmetische und logische Grundoperationen | |
DE1808159B2 (de) | Einrichtung zur umsetzung von dualzahlen in binaer codierte dezimalzahlen in paralleler darstellung | |
DE2737483C3 (de) | Korrektur-Schaltungsanordnung für Additions- oder Substraktionsoperationen mit nicht-hexadezimalen Operanden in hexadezimalen Rechenwerken | |
DE2135607C2 (de) | Schaltungsanordnung zur Inkrementierung oder Dekrementierung | |
DE3138948C2 (de) | Schaltungsanordnung zur Erzeugung von Byte-Kennzeichenbits für die Verarbeitung von Speicheroperanden | |
DE1904365C3 (de) | Verschiebeeinrichtung zur Verschiebung eines (N + 1) Bits aufweisenden Binärausdruckes um bis zu N-Stellen | |
DE2842349C2 (de) | Digital-Analog-Umsetzer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |