DE2500201C2 - Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer Zeichenfolge - Google Patents
Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer ZeichenfolgeInfo
- Publication number
- DE2500201C2 DE2500201C2 DE2500201A DE2500201A DE2500201C2 DE 2500201 C2 DE2500201 C2 DE 2500201C2 DE 2500201 A DE2500201 A DE 2500201A DE 2500201 A DE2500201 A DE 2500201A DE 2500201 C2 DE2500201 C2 DE 2500201C2
- Authority
- DE
- Germany
- Prior art keywords
- program
- character
- operator
- multiplexer
- register
- 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
- 230000015654 memory Effects 0.000 claims description 39
- 238000012546 transfer Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 2
- 230000000295 complement effect Effects 0.000 claims 1
- 238000007792 addition Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011282 treatment Methods 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- XUKUURHRXDUEBC-KAYWLYCHSA-N Atorvastatin Chemical compound C=1C=CC=CC=1C1=C(C=2C=CC(F)=CC=2)N(CC[C@@H](O)C[C@@H](O)CC(O)=O)C(C(C)C)=C1C(=O)NC1=CC=CC=C1 XUKUURHRXDUEBC-KAYWLYCHSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30025—Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
-
- 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/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/3808—Details concerning the type of numbers or the way they are handled
- G06F2207/3828—Multigauge devices, i.e. capable of handling packed numbers without unpacking them
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Complex Calculations (AREA)
- Debugging And Monitoring (AREA)
- Image Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
Eine programmgesteuerte Anordnung dieser Art ist aus der US-PS 35 64 507 bekannt Bei der bekannten
Anordnung ist eine arithmeiisch/lc fische Einheit schleifenförmig mit zwei Eingangsregistern und einem Aus-
gangsregister zusammengeschaltet Durch die arithmetisch/logische Einheit können daher bestimmte Operationen an den nacheinander zugeführten Zeichen durchgeführt werden. Der Umfang der so an den Zeichen
durchführbaren Operationen ist jedoch relativ gering.
Die arithmetisch/logische Einheit kann beispielsweise systematisch an jedem hindurchgehenden Zeichen eine
Operation vornehmen. Die Zeichen erscheinen dann am Ausgang der Einheit mit den durch diese bedingten Veränderungen. Eine solche Anordnung kann also jeweils
nur auf das gerade übertragene Zeichen einwirken. Eine Verknüpfung verschiedener Zeichen aus einer Zeichenfolge oder eine Verwertung der Ergebnisse früherer
Operationen bei der Behandlung später zugeführter Zeichen ist nicht möglich.
Der Erfindung liegt die Aufgabe zugrunde, eine programgesteuerte Anordnung zur Durchführung von
Operationen an den Zeichen einer Zeichenfolge anzugeben, die eine paarweise Verarbeitung von Zeichen
unter beliebiger Vertauschung der Zeichenbestandteile
ermöglicht, die zu verschiedenen Zeiten in derselben
Zeichenfolge auftreten.
Diese Aufgabe wird bei der programmgesteuerten Anordnung nach dem Oberbegriff des Patentanspruchs
1 durch dessen kennzeichnende Merkmale gelöst
Die erfindungsgemäße programmgesteuerte Anordnung enthält in der den arithmetisch/logischen Operator und die Eingangs- und Ausgangsregister enthaltenden Schleife einen Multiplexer. Die so gebildete Schleife
25 OO
liegt im Nebenschluß zu dem Übertragungsregister, in dem nacheinander die Zeichen der Zeichenfole erscheinen.
In der einfachsten Form können die zugeführten Zeichen vom Übertragungsregister über den Multiplexer
unverändert in die Zeichenspeicher eingebracht werden. Die Zeichen können dann entweder einzeln aus
einem der Speicher entnommen und einer Operation durch den Ope-. ator unterworfen werden, oder es können
gleichzeitig zwei Zeichen aus den beiden Speichern entnommen und im Operator miteinander verknüpft to
werden. Durch wiederholte Umläufe in der geschlossenen Schleife ergibt bereits die einfachste Form der Anwendung
der programmgesteuerten Anordnung eine außerordentliche Vielfalt von Verarbeitungsmöglichkeiten.
Programmierbare Multiplexer mit Speicherfunktion sind an sich bereits bekannt (»Integrated Circuits Data
Book«, Texas Instruments, 1. Ausgabe, Juli 1971, Seite 9-358). Als Anwendungsgebiete sind aber lediglich das
Multiplexieren einer bestimmten Anzahl von Eingängen auf eine Ausgangsleitung sowie die Parallel/Scrien-Umsetzung
angegeben.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Ausführungsbeispiele der Erfindung werden nun unter Bezugnahme auf die Zeichnung näher beschrieben.
In der Zeichnung zeigt
F i g. 1 ein Blockschema einer Ausführungsform der programmgesteuerten Anordnung sowie eine Darstellung
des Steuerworts eines Leitmikroprogramms, το
F i g. 2 eine Tabelle der Bildung der Steuersignale und
F i g. 3 eine Ausführungsform der Anordnung für die Verarbeitung von Oktaden-Zeichen.
Jedes codierte Element einer Zeichenfolge, bei dem gewählten Beispiel Oktaden, wird in F i g. 1 bei INF
über einen (zweiten) Multiplexer TS eingegeben, der mit einem Ausgangsregister RS ausgestattet ist und
durch ein FeJd KTSdes Programmworts gesteuert wird, dessen aligemeiner Aufbau im oberen Teil von F i g. 1
angegeben ist. Die Stellen des Programmworts, die für den Zeichenoperator ohne Bedeutung sind, iind in diesem
Aufbau mit einem Kreuz markiert Die erste und die letzte Zeile der Darstellung geben die Bennungen
der Felder des Programmworts an, und die zweite und die dritte Zeile, die sich an die erste Zeile anschließen,
stellen die Inhalte einiger dieser Felder in mehr Einzelheiten dar.
Der Multiplexer TS hat Eingänge, die mit dem Ausgang eines arithmetisch/logischen Operators ΦΩ über
eine Schaltung ΦΜ verbunden sind, welche die vom Operator ΦΌ abgegebenen Codegruppen berichtigt,
wenn bei bestimmten Operationen des arithmetisch/logischen Operators, wie Addition und Subtraktion, Überträge
erscheinen. Die Art der vom Operator Φΰ durchgeführten
Arbeit ist durch das Feld ΚΦΩ jedes Steuerworts
festgelegt Der Operator ΦΟ kann beispielsweise die folgenden Operationen mit den seinen Eingängen A
und Bzugeführten Codegruppen durchführen: Addition
von ö zu A. Subtraktion von B von A, Konjunktion von
A und B, logische Vereinigung von A und B, Disjunktion
von A und B, Übertragung von A, Übertragung von B, Addition einer Einheit zu einer der Codegruppen, Subtraktion
einer Einheit von einer der Codegruppen; der Operator kann beispielsweise auch so gesteuert werden,
daß er eine Codegruppe mit lauter Nullen oder eine Codegruppe mit lauter Einsen liefert; diese Aufzählung
ist natürlich in keiner Weise vollständig.
Das Register RShal vorzugsweise eine Kapazität von
mehreren Zeichen, und es wird dann Zeichen für Zeichen unter der Steuerung durch einen örtlichen »Taktgeber«
CTC abgelesen, der beispielsweise ein zu einer
geschlossenen Schleife geschalteter Zähler ist Bei jedem Impuls dieses Taktgebers werden die Zeichen in
dem Register RS um eine Stelle verschoben, und sie treten somit in diesem Takt aus, welcher der Takt ist, in
dem die Anordnung arbeitet Je nachdem ob die eine oder die andere von zwei Torschaltungen GS und ΘΦ
geöffnet ist, werden die aus dem Register RS entnommenen Zeichen entweder zu dem Ausgang 5 der Anordnung
übertragen oder zur Auswertung der codierten Elemente bei der Beschickung oder zur Wiederverwertung
der Teilresultate bei der Auswertung dem Eingang der Verarbeitungsschaltung des Operators zugeführt,
nämlich einem Eingang s der (ersten) Multiplexerstufe TD und einem Eingang einer Schaltung ΦΡ, deren Ausgang
ebenfalls mit Eingängen des Operators Φΰ verbunden
ist
Es könnten zwei Register nach Ari de? Registers RS
vorgesehen sein, von denen das eine nur die Informationen INF empfängt, während das andere die von der
Schaltung ΦΌ/ΦΜ abgegebenen Zeichen empfängt,
wobei beispielsweise jedes dieser Register einem Multiplexer nach Art des Multiplexers TS zugeordnet ist Der
Ausgang des Taktgebers CTC würde dann vom Eingang KTS so gesteuert, daß die Informationen entweder von
dem einen oder von dem anderen dieser beiden Register entnommen werden. Das mit dem arithmetisch/logischen
Operator verbundene Register könnte dann, falls erwünscht, nur die Kapazität eines Zeichens haben. Eine
solche Organisation mit zwei Registern würde es möglich machen, codierte Elemente der Zeichenfolgen einzugeben
und zugleich die Rechenergebnisse des Operators zu entnehmen.
Der Ausgang d der Multiplexerstufe TD ist mit den
Eingängen von zwei Zeichenspeichern RDA und RDB verbunden, deren Schreibadressen AE und deren
Schreibsteuerungen CE in den Feldern KRN bzw. KAR des jteuerworts enthalten sind. Die Schreibbefehle können
natürlich nicht gleichzeitig vorhanden sein. Die Leseadresse des Speichers RDA ist in dem Feld KLN des
Steuerworts angegeben, und die Leseadresse des Speichers RDB ist in dem Feld KEB des Steuerworts angegeben.
Die beiden Ablesungen erfolgen bei den meisten Elementaroperationen gleichzeitig. Ferner kann ein Lesen
des Speichers RDA gleichzeitig mit einem Schreiben im Speicher RDA oder mit einem Schreiben im
Speicher RDB erfolgen. Diese Gleichzeitigkeit wird üblicherweise nicht auf den Speicher RDB angewendet.
Ferner wird üblicherweise die Zeichenkapazität des Speici.eis RDB größer als diejenige des Speichers RDA
gewählt, damit der Speicher RDB beispielsweise als Pufferspeicher
für eine vollständige Folge von codierten Elementen dienen kann, die am Eingang INF eingegeben
wird, während der Speicher RDA dann hauptsächlich die Rolle eines Arbeitsspeichers im Verlauf der Verwertung
dieser codierten Elemente in der Anordnung hat; die Eingabe und die Verwertung können sich im
Verlauf der Arbeit überlappen. Sowohl bei der Eingabe als auch bei der Verwertung bewirkt nämiich die Multiplexerstufe
TD unter der Steuerung durch das einen Teil des Feldes KA Λ des Steuerworts bildende Feld
KTD die Behandlung von Codegruppen zur Festlegung der Zeichen, die in die Speicher RDA und RDB einzugeben
sind. Derartige Behandlungen hängen natürlich von den Mikroprogrammkop.figurationen ab; als Beispiel
können die nachstehend angegebenen Operationen auf
25 OO 201
dieser Ebene in Betracht gezogen werden, die in F i g. 2
für den Fall von Oktaden-Zeichen, also für Zeichen mit zwei Dezimalziffern, und von acht auf Grund der dreistelligen
Codegruppe des Feldes KTD des Steuerworts gebildeten Steuerbefehle (1) bis (8) dargestellt ist Der
Multiplexer TD enthält dann acht Elemente mit jeweils acht Eingängen für die Bildung von Codegruppen mit
acht Binärziffern dO bis dl und deren selektive Übertragung
zu den Speichern; diese Codegruppen bilden zwei Dezimalziffein, nämlich eine Dezimalziffer dO bis
d 3 mit größerem Stellenwert und eine Dezimalziffer d4
bis t/7 mit kleinerem Stellenwert.
Beim Steuerbefehl (1) überträgt der Multiplexer TD die im Register RS abgelesenen Binärziffern s 0 bis s 7
und somit auch die Dezimalziffern s 0 bis s 3 und 5 4 bis
5 7 unverändert zu den Speichern.
Beim Steuerbefehl (2) werden die aus dem Operator ΦF austretenden Biiiäfziffcrn ρ 0 bis ρ 7, die darin auf
Grund der ihm zugeführten Binärziffern s 0 bis 5 7 gebildet werden, vom Multiplexer TD unverändert zu den
Speichern übertragen. Der Operator ΦΡ addiert zu jeder ihm zugeführten Dezimalziffer die Ziffer »6«. Die
Zilfern pO bis ρ 7 sind somit »binär-dezimal+ 6« codiert,
was am Ausgang des arithmetisch/logischen Operators <PD für die Korrekturen der auf dieser Ebene
gebildeten Überträge berücksichtigt wird. Der Operator ΦΡ erlaubt ferner, falls erwünscht, die Überprüfung
der vorhergehenden binär-dezimalen Codierung, weil es dann keine Überträge geben darf, die duch die Addition
von »6« zu jeder der eingegebenen Dezimalziffern erzeugt werden.
Beim Steuerbefehl (3) überträgt der Multiplexer TD die Dezimalziffern ρ 0 bis ρ 3 und ρ 4 bis ρ 7 zu den
Speichern, jedoch unter Vertauschung ihrer gegenseitigen Lagen. Die aus dem Multiplexer TD austretende
Codsgruppe enthält die Deziniaiziffer ρ 4 bis ρ 7 als
Ziffer des niedrigeren Stellenwerts und die Dezimahiffer ρ 0 bis ρ 3 als Ziffer des höheren Stellenwerts.
Beim Steuerbefehl (4) bildet der Multiplexer TD ein Zeichen, das die Dezimalziffer »5« als Ziffer des höheren
Stellenwerts enthält, und als Ziffer des niedrigeren Stellenwerts die aus dem Operator ΦΡ austretende Zif
fer ρ 4 bis ρ 7 des niedrigeren Stellenwerts. Beim Steuerbefehl (5) bleibt die übertragene Ziffer des höheren
Stellenwerts die Ziffer »5«, aber die Ziffer des niedrigeren Stellenwerts besteht aus der vom Operator ΦΡ abgegebenen
Ziffer ρ 0 bis ρ 3 des höheren Stellenwerts. Diese beiden Operationen können »Spreizen« (englisch
»unpack«) genannt werden.
Beim Steuerbc-iehl (6) bildet der Multiplexer TD ein
verkettetes Zeichen, dessen Ziffer des niedrigeren Stellenwerts die vom Operator ΦΡ abgegebene Ziffer ρ 4
bis ρ 7 des niedrigeren Stellenwerts ist, und dessen Ziffer des höheren Stellenwerts aus einer vom Speicher
RDB abgelesenen Ziffer besteht, die jedoch invertiert ist d.h. daß ihre Binärziffern zu »1« komplementiert
sind, also eine Dezimalziffer ΐ~4 bis 7Γ7; dies bedeutet
daß die im Speicher RDB gelesene Ziffer eine Dezimalziffer des niedrigeren Stellenwerts eines gespeicherten
Zeichens ist
Beim Steuerbefehl (7) überträgt der Multiplexer TD zu den Speichern ein Zeichen, das eine Ziffer /0 bis /3
des höheren Stellenwerts enthält deren Ursprung später erläutert wird, sowie eine Ziffer des niedrigeren Stellenwerts,
die durch die Ziffer ρ 0 bis ρ 3 des höheren Stellenwerts des vom Operator ΦΡ abgegebenen Zeichens
gebildet ist die somit »rechtsbündig verschoben« ist
Beim Steuerbefehl (8) überträgt der Multiplexer zu den Speichern ein Zeichen, dessen Ziffer des höheren
Stellenwerts aus der Ziffer ρ 4 bis ρ 7 des niedrigeren Stellenwerts des vom Operator ΦΡ abgegebenen Zeichens
gebildet ist, die somit »linksbündig verschoben« ist und das eine Ziffer ζ 0 bis ζ 3 des niedrigeren Stellenwerts
enthält, deren Ursprung anschließend zugleich mit demjenigen der Ziffer /0 bis fZ des Steuerbefehls
(7) erläutert wird.
ίο Wie zuvor erwähnt wurde, kann der Speicher RDA
abgelesen werden, wenn gleichzeitig ein Zeichen eingeschrieben wird. Die Ziffer a 4 bis a 7 des niedrigeren
Stellenwerts jedes im Speicher RDA abgelesenen Zeichens wird einem Eingang eines elementaren Multiplexers
Tl zugeführt, und die Ziffer des höheren Stellenwerts dieses Zeichens wird einem Eingang eines elementaren
Multiplexers Tl zugeführt. An seinem anderen Eingang empfängt der elementare Multiplexer Tl
die Dezimalziffer »6«, und der elementare Mulitplexer T2 empfängt an seinem anderen Eingang eine Dezimalziffer,
die von einem Register A T stammt. Wenn der Multiplexer T1 aktiviert ist, liefert er die Codegruppe
/0 bis /3. Wenn der elementare Multiplexer T2 aktiviert ist, liefert er die Codegruppe ζ 0 bis ζ 3.
In das Register Λ T ist eine Codegruppe eingegeben,
die durch den Makrobefehl festgelegt ist der in dem System Ve Durchführung des Mikroprogramms verursacht
hat das die Anordnung zum Einsatz gebracht hat; diese Eingabe findet nur dann statt, wenn das Steuerwort
des am Beginn dieses Mikroprogramms stehenden Mikrobefehls die Ziffer »1« in seinem Feld KC enthält.
Die im Register A T stehende Codegruppe bezeichnet dann eine im Befehl adressierte Feldnummer. Bei dem
Beispiel von F i g. 1 erfolgt die Eingabe in das Register
ATüber das Register RS; sie könnte jedoch auch unabhängig
von diesem Register erfolgen. _
Der Aufbau der elementaren Multiplexer Tl und / 2
ist offensichtlich. Jeder von ihnen enthält vier Elemente mit zwei Eingängen für Binärziffern, also zwei Torschaltungen,
die in jedem Element unter entgegengesetzten Bedingungen gesteuert werden, je nachdem, ob das
Ausgangssignal eines Leitorgans »0« oder »1« ist.
Bei dem dargestellten Beispiel ist dieses Leitorgan ein Komparator COMP, der die Inhalte von zwei Registern
EC und CT vergleicht die durch das Programm gefüllt werden. Bei der Darstelung erfolgt das Füllen dieser
Register über das Register ÄS, doch könnte es auch unabhängig von diesem Register geschehen. Das Register
CTempfängt am Beginn der Arbeit über eine Torso
schaltung, die durch einen auf Grund des Felde ■ KAR des ersten Steuerworts gebildeten Befehl entsperrt
wird, eine Codegruppe, welche die Anzahl der in dieser Arbeit durchzuführenden Elementaroperationen festlegt
Diese Codegruppe kann von dem Feld KAU dieses
Steuerworts stammen. Anschließend bewirkt jedes Steuerwort eine Verringerung des Inhalts des Registers
CT um eine Einheit (oder auch eine Erhöhung um eine Einheit je nach dem Aufbau des laufenden Mikroprogramms).
Das Register .EC wird am Beginn der Ausfüh-
rung jedes Mikrobefehls des Mikroprogramms mit einer Codegruppe beschickt die von dem Feld KA U des
Mikrobefehls stammt; die Eingabe erfolgt über eine Torschaltung, die durch das Bestätigungssignal ACentsperrt
wird, das die Durchführung des vorhergehenden
Mikrobefehls bestätigt Solange die Inhalte der Register CTund EC verschieden sind, übertragen die Multiplexer
Tl und T2 die vom Speicher RDA abgelesenen Dezimalziffern
zu dem Multiplexer TD. Wenn die Inhalte der
25 OO
7
Register CT und EC gleich sind, liefert der Multiplexer
T\ die Dezimalziffer »6«, und der Multiplexer Tl liefert die im Register A Tstehende Codegruppe.
Fig.3 zeigt nochmals einen Teil des Schemas von
F i g. 1 für die Behandlung von Oktaden-Codegruppen; die Verarbeitung von Codegruppen mit einer größeren
Ziffer.ti.3hl ist aus der vorstehenden Beschreibung offensichtlich. Die in Fig.3 mit /bezeichneten Schaltungen sind Inverter. Der Operator ΦΡ enthält zwei voneinander unabhängige Addierglieder ΦΡ 1 und ΦΡ2, da- ίο
mit zu jeder eingegebenen vierstelligen Binärccdegruppe. d. h. zu jeder eingegebenen Dezimalziffer die Ziffer
»6« addiert wird. Der arithmetisch/logische Operator ΦΩ arbeitet mit invertierten Informationen auf Grund
der von den Speichern RDA und RDB abgegebenen is Informationen. Es gibt einen Übertrag RΦD vom Operator Φΰ 1 zum Operator Φϋ 2, wobei jeder Operator
mit einer Dezimalziffer oder einem Dezimalziffempaar arbeitet, und bei ΜΦ ist ein Übertragspeicher dargestellt, welcher den vom Operator Φΰ 2 zum Operator
Φΰ 1 zu liefernden Übertrag im Fall von Operationen
speichert, die einen solchen Übertrag erfordern (und in zwei Zeiten ausgeführt werden). Die Operatoren ΦΟ1
und <PD 2 sind Schaltungen nach Art der üblichen Addier/Subtrahier-Funktionsgeneratoren, welche in der
Lage sind, die zuvor aufgeführten Operationen durchzuführen. Wie bei den in paralleler Zahlendarstellung arbeitenden dezimalen Addier- und Subtrahierschaltungen ist eine Schaltung ΦΜΙ — ΦΜ2 vorgesehen, welche die Korrekturen der Überträge zwischen Dezimal-
ziffern bei dezimalen Additionen oder Subtraktionen ermöglicht Unter Berücksichtigung der durch den Operator ΦΡ erhaltenen Darstellung, der Bedingungen der
Zuführung der vom Speicher abgelesenen Ziffern zum Operator Φϋ und der Tatsache, daß die von den Opera-
*_.. ^(Π4 1 -Jtl"fc Λ _l I _ ^1*~—λ..!1__ ι........
tiert übertragen werden, arbeitet die Schaltung ΦΜ in
folgender Weise bei jeder Dezimalziffer: Wenn die im ;,
Operation einen Übertrag erzeugt, wird die vom Operator ΦΩΧ oder vom Operator Φΰ2 stammende Dezimalziffer durch die Schaltung ΦΜ\ oder durch die
Schaltung ΦΜ 2 einfach übertragen; im entgegengesetzten Fall wird die Dezimalziffer »6« zu dem Wert der
vom entsprechenden Operator Φΰ abgegebenen Dezimalziffer addiert, was der Durchführung der Subtraktion (-6) entspräche, wenn die Operation in normaler
Polarität durchgeführt würde.
Die Ausgangssignale der Schaltung ΦΜ werden den Eingängen des Multiplexers TS zugeführt, wo ihnen die
geeigneten Verschiebungen für ihre Einodnung im Hinblick auf ihre spätere Entnahme zuteil werden können.
Da die Codegruppen aus der Torschaltung Gi? mit invertierter Polarität austreten, ist das Vorhandensein eines Inverters bei ihrem Empfang an den Schaltungen
ΦΡund TD erforderlich, damit sie in die normale Polarität zurückgebracht werden. Es wird angenommen, daß
weder die Schaltung ΦΡ noch die Schaltung TD invertierende Ausgänge haben, ebensowenig wie die Leseausgänge der Speicher RDA und RDB.
ro
65
Claims (8)
1. Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer Zeichenfolge, die aus binär codierten Dezimalziffern
bestehen und nacheinander in einem Übertragungsregister erscheinen, mit zwei Zeichenspeichern, einem arithmetisch/logischen Operator, der an die
Ausgänge der beiden Zeichenspeicher angeschlossen ist, um eine durch einen Programmbefehlsteil
bestimmte Operation an den aus einem Zeichenspeicher oder aus beiden Zeichenspeichern entnommenen Zeichen durchzuführen, einem Zwischenspeicherregister für die Ergebnisse der vom Operator
durchgeführten Operationen und mit einer Eingabeanordnung für die Beschickung der Zeichenspeicher,
gekennzeichnet durch einen ersten Multiplexer ( iD), der Ziffern, und/oder Zeichencodegnippcn von den Ausgängen des (Jbertragungsregisters (RS), des Zwischenspeicherregisters
(RZ) und der Zeichenspeicher (RDA, RDB) empfängt und an seinen mit den Eingängen der Zeichenspeicher verbundenen Ausgängen unter der Steuerung durch einen ersten Programmbefehlsteil (KTD)
daraus durch Auswahl von Bitgruppen gebildete Zeichen abgibt
2. Programmgesteuerte Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß das Übertragungsregb'.er (RS) und das Zwischenspeicherregister (RZ) zu einem einzigen Register (RS/RZ) zusammengefaßt sind, dessen Eingänge an die Ausgänge eines durch einen weiterer Programmbefehlsteil
(KTS) gesteuerten zweiten Multiplexers (TS) angeschlossen sind, der einerseits die Zeichen der Zeichenfolge (bei INF) und andererseits die vom arithmetisch/logischen Operator (Φΰ) abgegebenen Ergebnisse empfängt
3. Programmgesteuerte Anordnung nach Anspruch 2, bei welcher der arithmetisch/logische Operator (Φΰ) Operationen durchführt, die Übertr?ge
zur Folge haben, dadurch gekennzeichnet, daß der erste Multiplexer (TD) Eingänge (p) hat, die an die
Ausgänge eines Vorbehandlungs-Operators (ΦΡ) angeschlossen sind, daß der Vorbehandlungs-Operator (ΦΡ) zu jeder ihm zugeführten binär codierten
Dezimalziffer die Dezimalziffer «6« addiert und daß dem arithmetisch/logischen Operator (ΦΩ) eine
Übertragskorrekturschaltung (ΦΜ) nachgeordnet ist, die von jeder Dezimalziffer, bei deren Bildung im
arithmetisch/logischen Operator (ΦΌ) kein Übertrag aufgetreten ist, die Dezimalziffer »6« subtrahiert.
4. Programmgesteuerte Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß der erste
Multiplexer (TD) Eingänge zur Vertauschung der Stellenwerte wenigstens der von dem Vorbehandlungs-Operator (ΦΡ) abgegebenen Dezimalziffern
hat.
5. Programmgesteuerte Anordnung nach Anspruch 3 oder 4, dadurch gekennzeichnet, daß der
erste Multiplexer (TD) Eingänge für die Verkettung wenigstens der von dem Vorbehandlungs-Operator
(ΦΡ) abgegebenen binär codierten Dezimalziffern mit Konstantenziffern und/oder aus den Zeichenspeichern (RDA, RDB) abgelesenen Dezimalziffern
hat.
6. Programmgesteuerte Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß der erste
Multiplexer (TD) Eingänge (B) hat, die mit den Ausgängen wenigstens eines Zeichenspeichers (RDB)
verbunden sind und eine Komplementierung der Binärziffern der aus dem Zeichenspeicher abgelesenen
binär codierten Dezimalziffern bewirken.
7. Programmgesteuerte Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß der erste
Multiplexer (TD) Eingänge (f, z) hat, die mit den
Ausgängen von weiteren Multiplexern (T 1, Γ2) verbunden sind, die einerseits die aus wenigstens einem
Zeichenspeicher (RDA) ausgelesenen Dezimalziffern und andrerseits von außen zugeführte Dezimalziffern empfangen und je nach ihrer Steuerung ent-
weder die aus dem Zeichenspeicher ausgelesenen Dezimalziffern oder die von außen zugeführten Dezimalziffern übertragen.
8. Programmgesteuerte Anordnung nach Anspruch 7, gekennzeichnet durch einen Komparator
(COMP), der die Inhalte von zwei Registern (EQ CT)
vergleicht, von denen das eine Register (CT) am Beginn der Ausführung eines Arbeitsprogramms der
Anordnung beschickt wird und das andere Register (EC) am Beginn der Ausführung jedes Programmbe
fehls beschickt wird, und daß das in Abhängigkeit
von der Koinzklenz bzw. Nichtkoinzidenz der Inhalte der Register (EQ CT) gebildete Ausgangssignal
des Komparator (COMP) die weiteren Multiplexer (Tl, 72) steuert
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR7400463A FR2291542A1 (fr) | 1974-01-07 | 1974-01-07 | Operateur de caracteres travaillant en decimal binaire |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2500201A1 DE2500201A1 (de) | 1975-07-17 |
DE2500201C2 true DE2500201C2 (de) | 1985-01-10 |
Family
ID=9133174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2500201A Expired DE2500201C2 (de) | 1974-01-07 | 1975-01-03 | Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer Zeichenfolge |
Country Status (8)
Country | Link |
---|---|
US (1) | US4041290A (de) |
BE (1) | BE824064A (de) |
DE (1) | DE2500201C2 (de) |
ES (1) | ES433614A1 (de) |
FR (1) | FR2291542A1 (de) |
GB (1) | GB1490791A (de) |
IT (1) | IT1027154B (de) |
NL (1) | NL7416663A (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4276596A (en) * | 1979-01-02 | 1981-06-30 | Honeywell Information Systems Inc. | Short operand alignment and merge operation |
US4189767A (en) * | 1978-06-05 | 1980-02-19 | Bell Telephone Laboratories, Incorporated | Accessing arrangement for interleaved modular memories |
CA1145054A (en) * | 1979-01-02 | 1983-04-19 | Honeywell Information Systems Inc. | Data processing system with means to align operands |
US4246644A (en) * | 1979-01-02 | 1981-01-20 | Honeywell Information Systems Inc. | Vector branch indicators to control firmware |
US4268909A (en) * | 1979-01-02 | 1981-05-19 | Honeywell Information Systems Inc. | Numeric data fetch - alignment of data including scale factor difference |
US4718033A (en) * | 1985-06-28 | 1988-01-05 | Hewlett-Packard Company | Intermediate decimal correction for sequential addition |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR1436161A (fr) * | 1964-04-06 | 1966-04-22 | Ibm | Unité arithmétique et logique |
US3621219A (en) * | 1967-08-15 | 1971-11-16 | Hayakawa Denki Kogyo Kk | Arithmetic unit utilizing magnetic core matrix registers |
US3571582A (en) * | 1968-02-29 | 1971-03-23 | Gen Electric | Serial bcd adder/subtracter utilizing interlaced data |
US3564507A (en) * | 1968-04-10 | 1971-02-16 | Ibm | Asynchronous interface for use between a main memory and a central processing unit |
JPS5036542B1 (de) * | 1969-12-15 | 1975-11-26 | ||
US3701105A (en) * | 1970-07-24 | 1972-10-24 | Ibm | A central processing unit in which all data flow passes through a single arithmetic and logic unit |
JPS5021330B1 (de) * | 1970-11-30 | 1975-07-22 | ||
JPS5314182B2 (de) * | 1972-05-31 | 1978-05-16 | ||
US3899667A (en) * | 1972-12-26 | 1975-08-12 | Raytheon Co | Serial three point discrete fourier transform apparatus |
-
1974
- 1974-01-07 FR FR7400463A patent/FR2291542A1/fr active Granted
- 1974-12-20 NL NL7416663A patent/NL7416663A/xx not_active Application Discontinuation
- 1974-12-20 IT IT70724/74A patent/IT1027154B/it active
-
1975
- 1975-01-03 BE BE1006364A patent/BE824064A/xx not_active IP Right Cessation
- 1975-01-03 DE DE2500201A patent/DE2500201C2/de not_active Expired
- 1975-01-06 GB GB392/75A patent/GB1490791A/en not_active Expired
- 1975-01-06 US US05/539,034 patent/US4041290A/en not_active Expired - Lifetime
- 1975-01-07 ES ES433614A patent/ES433614A1/es not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2500201A1 (de) | 1975-07-17 |
IT1027154B (it) | 1978-11-20 |
US4041290A (en) | 1977-08-09 |
GB1490791A (en) | 1977-11-02 |
BE824064A (fr) | 1975-07-03 |
NL7416663A (nl) | 1975-07-09 |
FR2291542B1 (de) | 1978-03-31 |
ES433614A1 (es) | 1976-11-16 |
FR2291542A1 (fr) | 1976-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1499722C2 (de) | Einrichtung zur Modifizierung von Informationswörtern | |
DE2846117C2 (de) | Datenprozessor | |
DE1237363B (de) | Arithmetisch-Logische-Einheit | |
DE2055784A1 (de) | Datenverarbeitungssystem | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2746505C2 (de) | ||
DE1900141B2 (de) | Hilfssteuerwerk fur eine Datenver arbeitungsanlage | |
DE1269393B (de) | Mikroprogramm-Steuerwerk | |
DE1178623B (de) | Programmgesteuerte datenverarbeitende Maschine | |
DE2023354A1 (de) | Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit | |
DE2926322C2 (de) | Speicher-Subsystem | |
DE1197650B (de) | Parallel-Addierer | |
DE1213144B (de) | Anordnung zur Verarbeitung von Daten | |
DE2527062B2 (de) | Anpassungsfähiger Adressendecodierer | |
DE2063199A1 (de) | Einrichtung zur Ausfuhrung logischer Funktionen | |
DE2753650C2 (de) | Zeithaltende Einrichtung mit einem Register zum Speichern von Zeitzähldaten | |
DE2433436A1 (de) | Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer | |
DE2500201C2 (de) | Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer Zeichenfolge | |
DE1115488B (de) | Datenverarbeitungssystem | |
DE2830334C2 (de) | ||
DE3121046C2 (de) | ||
DE1168129B (de) | Verfahren zur Verarbeitung von Daten | |
DE2057587A1 (de) | Inhaltsadressierter Speicher | |
DE2644180C3 (de) | Datenverarbeitungssystem | |
DE1499286B2 (de) | Datenbearbeitungsanlage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OGA | New person/name/address of the applicant | ||
8178 | Suspension cancelled | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |