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 Zeichenfolge

Info

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
Application number
DE2500201A
Other languages
English (en)
Other versions
DE2500201A1 (de
Inventor
Jean-Louis Les Clayes Sous Bois Fressineau
Maurice Versailles Hubert
Original Assignee
Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris filed Critical Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris
Publication of DE2500201A1 publication Critical patent/DE2500201A1/de
Application granted granted Critical
Publication of DE2500201C2 publication Critical patent/DE2500201C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/491Computations with decimal numbers radix 12 or 20.
    • G06F7/492Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination
    • G06F7/493Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination the representation being the natural binary coded representation, i.e. 8421-code
    • G06F7/494Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/492Indexing scheme relating to groups G06F7/492 - G06F7/496
    • G06F2207/4924Digit-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

Die Erfindung betrifft eine programmgesteuerte An- Ordnung nach dem Oberbegriff des Patentanspruchs 1.
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__ ι........
IVl CII 3fi/ 1 UIlU &L/ L· ttUgCgCl/GIIGII UUCI LI agc III TW
tiert übertragen werden, arbeitet die Schaltung ΦΜ in
folgender Weise bei jeder Dezimalziffer: Wenn die im ;,
Operator Φΰ\ oder im Operator Φΰ2 durchgeführte ||
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
Hierzu 2 Blatt Zeichnungen
65

Claims (8)

25 OO 201 Patentansprüche:
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
DE2500201A 1974-01-07 1975-01-03 Programmgesteuerte Anordnung zur Durchführung von Operationen an den Zeichen einer Zeichenfolge Expired DE2500201C2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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