DE2500201A1 - Zeichenoperator fuer binaer codierte dezimalziffern - Google Patents

Zeichenoperator fuer binaer codierte dezimalziffern

Info

Publication number
DE2500201A1
DE2500201A1 DE19752500201 DE2500201A DE2500201A1 DE 2500201 A1 DE2500201 A1 DE 2500201A1 DE 19752500201 DE19752500201 DE 19752500201 DE 2500201 A DE2500201 A DE 2500201A DE 2500201 A1 DE2500201 A1 DE 2500201A1
Authority
DE
Germany
Prior art keywords
operator
character
digits
digit
memories
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.)
Granted
Application number
DE19752500201
Other languages
English (en)
Other versions
DE2500201C2 (de
Inventor
Jean-Louis Fressineau
Maurice Hubert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Compagnie Internationale pour lInformatique
Original Assignee
Compagnie Internationale pour lInformatique
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 lInformatique filed Critical Compagnie Internationale pour lInformatique
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)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Dipl.-Ing. Egon Prinz Dr. Gertrud Hauser ο - eooo Monchm 6o, 2. Januar 1973 Dipl.-Ing. Gottfried Leiser ϊι·Λ·ιβ·ι·ΐιοβ·»» 9 c; Π Π ? Π 1 Potentanwälte Tal«9iamiM ι labyrinth Mflrnhm
Τ·Μοη> 81 IS 10
Τ·Ιηι 5212 226 prMd
Pofttdmttoflto: Mündwn 1170 78-800 Bank: Dmtah· Book. Mwidnn 66/05000 Unser Zeichen; C 3025
COMPAGNIE INTERNATIONALE POUR L'INFORMATIQUE 68 Route de Versailles
LOUVECIENNESx . Frankreich
Zeichenoperator für binär codierte Dezimalziffern
Die Erfindung betrifft einen Zeichenoperator für binär codierte Dezimalziffern, welcher in einem Datenverarbeitungssystem Folgen von codierten Elementen verarbeitet, von denen jedes die Anzahl der Binärziffern eines Zeichens enthält, die ein Vielfaches von vier ist, und somit direkt oder nach vorhergehender Umwandlung binär codierte Dezimalziffern eines Zeichens darstellen kann. Solche Zeichenfolgen werden beispielsweise für die Darstellung der Leitbefehle in Datenverarbeitungssystemen angewendet. Die Zeichen sind üblicherweise Oktaden, so daß also jedes Zeichen zwei binär codierte Dezimalziffern enthält.
Die codierten Elemente dieser Zeichenfolgen erscheinen normalerweise nacheinander in einem übertragungsregister und müssen unter der Steuerung eines Mikroprogramms verarbeitet
U... 509829/0620
werden, das durch die Folge seiner Befehlswörter den Ablauf der Arbeit in dem Zeichenoperator bestimmt.
Nach der Erfindung enthält ein solcher Zeichenoperator zwei Zeichenspeicher, einen arithmetisch/logischen Operator für die Verarbeitung der Zeichen und Zeichenpaare, die aus diesen Zeichenspeichern abgelesen werden, eine Organisation mit Zwischenspeicherregister für die Abnahme der sich aus dieser Arbeit ergebenden Zeichen und eine Eingabeorganisation für die Zeichenspeicher, die eine Multiplexierstufe für die Handhabung und Behandlung der Codegruppen vor ihrer Übertragung in die Speicher enthält; dabei handelt es sich um die Behandlung und Handhabung der aus den Registern und Speichern "abgelesenen Codegruppen, wobei aber, falls erforderlich, Konstanten und Ziffern angewendet werden können, die nicht aus diesen Registern und Speichern stammen. Das Übertragungsregister und das Zwischen^eicherregister können zu einem einzigen Register zusammengefaßt sein, das die codierten Elemente der zu verarbeitenden Zeichenfolgen und die von dem arithmetisch/logischen Operator abgegebenen Zeichen über eine Multiplexierstufe empfängt, die durch das Mikroprogramm gesteuert wird.
Die Multiplexierstufe der Eingabeorganisation kann mit einem Eingsng ausgestattet sein* dem ein Vorbehandlungs-Operator für die aus den Registern stammenden Dezimalziffern vorgeschaltet ist, damit die Organisation für die Korrekturen der aus dem arithmetisch/logischen Operator austretenden Dezimalziffern vereinfacht wird; diese Korrekturen ergeben sich aus der Weitergabe der Überträge zwischen den DezLmalziffern auf dieser Ebene.
Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgenden Beschreibung eines Ausführungsbeispiels, das in der Zeichnung dargestellt ist. In der Zeichnung zeigen:
509829/0620
Fig.1 ein Blockschema des Zeichenoperators nach der Erfindung sowie eine Darstellung des Steuerworts des Leitmikroprogramms;
Fig.2 eine Darstellung der Multiplexierstufe in der Speichereingabe-Organisation des Zeichenoperators, zusammen mit einer Tabelle der Bildung der Steuersignale und
Fig.3 eine mögliche ÄusfUhrungsform der Schaltungen des Zeichenoperators für die Verarbeitung von Oktaden-Zeichen.
Jedes codierte Element einer Zeichenfolge, bei dem gewählten Beispiel Oktaden, wird in Fig.1 bei INF über einen Multiplexiorer TS eingegeben, der mit einem Ausgangsregister RS ausgestattet ist und durch ein Feld KTS des Programmworts gesteuert wird, dessen allgemeiner Aufbau im oberen Teil von Fig.1 angegeben ist. Die Stellen desProgrammworts, die für den Zeichenoperator ohne Bedeutung sind, sind in diesem Aufbau mit einem Kreuz markiert. Die erste und die letzte Zeile der Darstellung geben die Benennungen der Felder des Programmworts an, und die zweite und die dritte Zeile, die sich an die erste Zeile anschliessen, beschreiben die Inhalte einiger dieser Felder in mehr Einzelheiten.
Der Multiplexierer TS hat Singänge, die mit dem Ausgang eines arithmetisch/logischen Operators 0D über eine Schaltung 0M verbunden sind, welche die vom Operator 0D abgegebenen Codegruppen berichtigt, wenn bei bestimmten Operationen des arithmetisch/logischen Operators, wie Addition und Subtraktion, Überträge erscheinen. Die Art der vom Operator 0D durchgeführten Arbeit ist durch das Feld K0D Jedes Steuerworts festgelegt. Der Operator 0D kann beispielsweise die folgenden Operationen mit den seinen Eingängen A und B zugeführten Codegruppen durchführen:Addition von B zu A, Subtraktion von B
509829/0620
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 RS hat vorzugsweise eineKapazitä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 der Zeichenoperator arbeitet. Je nachdem, ob die eine oder die andere von zwei Torschaltungen GS und G0 geöffnet ist, werden die aus dem Register RS entnommenen Zeichen entweder zu dem Ausgang S der Anordnung übertragen oder zur Auswertung der codierten Elemente bei der Beschickung oder zur Wiederverwertung der Teilresültate bei der Auswertung dem Eingang der Verarbeitungsschaltung des Operators zugeführt, nämlich einem Eingang s der Multiplexierstufe TD und einem Eingang einer Schaltung 0P, deren Ausgang ebenfalls mit Eingängen des Operator TD verbunden ist.
Es könnten zwei Register nach Art des Registers RS vorgesehen sein, von denen das eine nur die Informationen INF empfängt, während das andere die von der Schaltung 0D/0M abgegebenen Zeichen empfängt, wobei beispielsweise jedes dieser Register einem Hultiplexierer nach Art des Multiplexierers TS zugeordnet ist. Der Ausgang des Taktgebers CTC
5G9Ö29/O62G
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 Zeichenoperators zu entnehmen.
Der Ausgang D der Multiplexierstufe 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 Steuerworts 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 /blesungen 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 Speicher 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 dem Zeichenoperator 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ämlich die Multiplexierstufe TD unter der Steuerung durch das einen Teil des Feldes KAA des Steuerworts bildenden Feldes KTD die Behandlung von Codegruppen zur Festlegung der Zeichen,
509829/0620
die in die Speicher RDA und FlDB einzugeben sind. Derartige Behandlungen hängen natürlich von den Mikroprogrammkonfigurationen ab; als Beispiel können die nachstehend angegebenen Operationen auf dieser Ebene in Betracht gezogen werden, die in Fig.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 CTD des Steuerworts gebildeten Steuerbefehl 1) bis (8) dargestellt ist. Der Multiplexierer TD enthält dann acht Elemente mit jeweils acht Eingängen für die Bildung von Codegruppen mit acht Binärziffern dO bis d7 und deren selektive übertragung zu den Speichern; diese Codegruppen bilden zwei Dezimalziffern, nämlich eine Dezimalziffer dO bis d3 mit größerem Stellenwert und eine Dezimalziffer d4 bis d7 mit kleinerem Stellenwert.
Beim Steuerbefehl (1) überträgt der Multiplexierer die im Register RS abgelesenen Binärziffern sO bis s7 und somit auch die Dezimalziffern sO bis s3 und s4 bis s7 unverändert zu den Speichern.
Beim Steuerbefehl (2) werden die aus dem Operator 0P austretenden Binärziffern pO bis p7, die darin auf Grund der ihm zugeführten Binärzjffern sO bis s7 gebildet werden, vom Multiplexierer TD unverändert zu den Speichern übertragen. Der Operator 0P addiert zu jeder ihm zugeführten Dezimalziffer die Ziffer "6". Die Ziffern pO bis p7 sind somit "binärdezimal+6" codiert, was am Ausgang des arithmetisch/logischen Operators 0D für die Korrekturen der auf dieser Ebene gebildeten Überträge berücksichtigt wird. Der Operator 0P erlaubt ferner, falls erwünscht, die Überprüfung der vorhergehenden binär-dezimalen Codierung, weil es dann keine Überträge geben darf, die durch die Addition von "6" zu jeder der eingegebenen Dezimalziffern erzeugt werden.
509829/0620
Beim Steuerbefehl (3) überträgt der Multiplexier TD die Dezimalziffern pO bis p3 und p4 bis p7 zu den Speichern, jedoch unter Vertauschung ihrer gegenseitigen Lagen. Die aus dem Multiplexierer TD austretende Codegruppe enthält die Dezimalziffer p4 bis p7 als Ziffer des niedrigeren Stellenwerts und die Dezimalziffer pO bis p3 als Ziffer des höheren Stellenwerts,
Beim Steuerbefehl (4) bildet der Multiplexierer ein Zeichen, das die Dezimalziffer M5n als Ziffer des höheren Stellenwerts enthält, und als Ziffer des niedrigeren Stellenwerts die aus dem Operator 0P austretende Ziffer p4 bis p7 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 0P abgegebenen Ziffer pO bis p3 des höheren Stellenwerts. Diese beiden Operationen können ""Spreizen11 (englisch "unpack") genannt werden.
Beim Steuerbefehl (6) bildet der Multiplexierer ein verkettetes Zeichen, dessen Ziffer des niedrigeren Stellenwerts die vom Operator 0P abgegebene Ziffer p4 bis p7 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 b? bis b"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 Multiplexierer DT zu den Speichern ein Zeichen, das eine Ziffer fO bis f3 des höheren Stellenwerts enthält, deren Ursprung später erläutert wird, sowie eine Ziffer des niedrigeren Stellenwerts, die durch die Ziffer pO bis p3 des höheren Stellenwerts des vom Operator 0P abgegebenen Zeichens, gebildet ist, die somit
509829/0620
"rechtsbündig verschoben" ist.
Beim Steuerbefehl (8) überträgt der Multiplexierer zu den Speichern ein Zeichen, dessen Ziffer des höheren Stellenwerts aus der Ziffer p4 bis p7 des niedrigeren Stellenwerts des vom Operator 0P abgegebenen Zeichens gebildet ist, die somit "linksbündig verschoben" ist, und das eine Ziffer zO bis z3 des niedrigeren Stellenwerts enthält, deren Ursprung anschliessend zugleich mit demjenigen der Ziffer fO bis f3 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 ah bis a7 des niedrigeren Stellenwerts Jedes im Speicher RDA abgelesenen Zeichens wird einem Eingang eines elementaren Multiplexierers T1 zugeführt, und die Ziffer des höheren Stellenwerts dieses Zeichens wird einem Eingang eines elementaren Multiplexierers T2 zugeführt. An seinem anderen Eingang empfängt der elementare Multiplexierer T1 die Dezimalziffer "6", und der elementare Multiplexierer T2 empfängt an seinem anderen Eingang eine Dezimalziffer, die von einem Register AT stammt. Wenn der Multiplexierer T1 aktiviert ist, liefert er die Codegruppe fO bis f3» ¥enn der elementare Multiplexierer T2 aktiviert ist, liefert er die Codegruppe zO bis z3.
In das Register AT ist eine Codegruppe eingegeben, die durch den Makrobefehl festgelegt ist, der in dem System die Durchführung des Mikroprogramms verursacht hat,das den Zeichenoperator 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 AT stehende Codegruppe bezeichnet dann eine im Befehl adressierte Feldnummer. Bei dem Beispiel von Fig.1 erfolgt die Eingabe in das
509829/0620
— Q —
Register AT über das Register RS; sie könnte jedoch auch unabhängig von diesem Register erfolgen.
Der Aufbau der elementaren Multiplexierer T1 und T2 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 LeitorganßM0" 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 Darstellung erfolgt das Füllen dieser Register über das Register RS , doch könnte es auch unabhängig von diesem Register geschehen. Das Register CT empfängt am Beginn der Arbeit über eine Torschaltung, die durch einen auf Grund des Feldes 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. Anschliessend 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ührung jedes Mikrobefehls des Mikroprogramms mit einer Codegruppe beschickt, die von dem Feld KAU des Mikrobefehls stammt; die Eingabe erfolgt über eine Torschaltung, die durch das Bestätigungssignal ACQ entsperrt wird, das die Durchführung des vorhergehenden Mikrobefehls bestätigt. Solange die Inhalte des Register CT und EC verschieden sind, übertragen die Multiplexierer T1 und T2 die vom Speicher RDA abgelesenen
509829/0620
Dezimalziffern zu dem Multiplexierer TD. Wenn die Inhalte der Register CT und EC gleich sind, liefert der Multiplexierer T1 die Dezimalziffer "6" und der Multiplexierer T2 liefert die im Register AT stehende Codegruppe.
Fig.3 zeigt nochmals einen Teil des Schemas von Fig.1 für die Behandlung von Qktaden-Codegruppen; die Verarbeitung von Codegruppen mit einer größeren Ziffernzahl ist aus der vorstehenden Beschreibung offensichtlich. Die in Fig.3 mit I bezeichneten Schaltungen sind Inverter. Der Operator 0P enthält zwei voneinander unabhängige Addierglieder 0P1 und 0P2, damit zu jeder eingegebenen vierstelligen Binärcodegruppe, d.h. zu jeder eingegebenen Dezimalziffer die Ziffer "6" addiert wird. Der arithmetisch/logische Operator 0D arbeitet mit invertierten Inf ormationenauf Grund der von den Speichern RDA und RDB abgegebenen Informationen. Es gibt einen Übertrag R0D vom Operator 0D1 zul. Operator 0D2, wobei jeder Operator mit einer Dezimalziffer oder einem Dezimalziffernpaar arbeitet, und bei M0 ist ein Übertragspeicher dargestellt, welcher den vom Operator 0D2 zum Operator 0D1 zu liefernden Übertrag im Fall von Operationen speichert, die einen solchen übertrag erfordern (und in zwei Zeiten ausgeführt werden). Die Operatoren 0D1 und 0D2 sind Schaltungen nach Art der üblichen Addier/Subtrahier-Funktionsgeneratoren, welche in der Lage sind, die zuvor aufgeführten Operationen durchzuführen. ¥ie fcei den in paralleler Zahlendarstellung arbeitenden dezimalen Addier- und Subtrahierschaltungen ist eine Schaltung 0M1-0M2 vorgesehen, welche die Korrekturen der Überträge zwischen Dezimalziffern bei dezimalen Additionen oder Subtraktionen ermöglicht. Unter Berücksichtigung der durch den Operator 0P erhaltenen Darstellung, der Bedingungen der Zuführung der vom Speicher abgelesenen Ziffern zum Operator 0D und der Tatsache, daß die von den
509829/0620
Operatoren 0D1 und 0D2 abgegebenen Überträge invertiert übertragen werden, arbeitet die Schaltung 0M in folgender Weise bei jeder Dezimalziffer: Wenn die im Operator 0D1 oder im Operator 0D2 durchgeführte Operation einen übertrag erzeugt, wird die vom Operator 0D1 oder vom Operator 0D2. stammende Dezimalziffer durch die Schaltung 0M1 oder durch die Schaltung 0M2 einfach übertragen; im entgegengesetzten Fall wird die Dezimalziffer n6n zu dem Wert der vom entsprechenden Operator 0D 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 0M werden den Eingängen des Multiplexierers TS zugeführt, wo ihnen die geeigneten Verschiebungen für ihre Einordnung im Hinblick auf ihre spätere Entnahme zuteil werden können. Da die Codegruppen aus der Torschaltung G0 mit invertierter Polarität austreten, ist das Vorhandensein eines Inverters bei ihrem Empfang an den Schaltungen 0P und TD erforderlich, damit sie in die normale Polarität zurückgebracht werden. Es wird angenommen, daß weder die Schaltung 0P noch die Schaltung TD invertierende Ausgänge haben, ebensowenig wie die Leseausgänge der Speicher RDA und RDB.
509829/0620

Claims (8)

  1. Patentansprüche
    ,) Zeichenoperator für binär codierte Dezimalziffern, der unter der Steuerung eines Mikroprogramms arbeitet, um Zeichenfolgen zu verarbeiten, die nacheinander in einem Übertragungsregister erscheinen, gekennzeichnet durch zwei Zeichenspeicher, einen arithmetisch/logischen Operator für Zeichen und Zeichenpaare, die aus den Zeichenspeichern abgelesen werden, eine Organisation mit Zwischenspeicherregister für die Ergebnisse der vom Operator durchgeführten Operationen und eine Eingabeorganisation für die Zeichenspeicher mit einem Multiplexierer zur Bildung und Übertragung von Zeichen, der unter anderem Ziffern- und Zeichen-Codegruppen empfängt, die von den Registern und den Zeichenspeichern abgegeben werden.
  2. 2. Zeichenoperator nach Anspruch 1, dadurch gekennzeichnet,
    daß das Übertragungsregister und das Zwischenspeicherregister zu einem einzigen Register zusammengefaßt sind, das über eine Multiplexierstufe für die codierten Elemente der Zeichenfolgen und für die in dem Operator gebildeten Ergebniszeichen zugänglich ist.
  3. 3. Zeichenoperator nach Anspruch 1 oder 2, bei welchem der arithmetisch/logische Operator Operationen durchführt, die Überträge und somit Fortpflanzungen von Überträgen zwischen Ziffern zur Folge haben, dadurch gekennzeichnet, daß zur Vereinfachung der Organisation des arithmetisch/logischen Operators in dieser Hinsicht die Multiplexierstufe außer einem direkten Zugang für die von den Registern und Zeichenspeichern abgegebenen Zeichencodegruppen einen indirekten Zugang aufweist, der über einen Operator zur Vorbehandlung der Codegruppen geht, die durch solche Operationen in dem arithmetisch/logischen Operator zu verarbeiten sind.
    509829/0620
  4. 4. Zeichenoperator nach Anspruch 3, dadurch gekennzeichnet, daß der Vorbehandlungs-Operator zu Jeder ihm zugeführten binär codierten Dezimalziffer, den Wert H6M addiert und daß die Korrekturschaltungen für die Weitergabe der Überträge in dem arithmetisch/logischen Operator den Wert "6" von der Codegruppe jeder Ziffer abziehen, die bei ihrer Bildung in dem Operator keinen Übertrag verursacht hat.
  5. 5. Zeichenoperator nach Anspruch 3, dadurch gekennzeichnet, daß der Multiplexierer einen Eingang zur Vertauschung der Stellenwerte wenigtens der von dem Vorbeharidlungs-Operator abgegebenen Dezimalziffern aufweist.
  6. 6. Zeichenoperator nach Anspruch 3, dadurch gekennzeichnet, daß der Multiplexierer Eingänge für die Verkettung wenigstens der von dem Vorbehandlungs-Operator abgegebenen Ziffern mit Konstantenziffern und/oder in den Zeichenspeichern abgelesenen Dezimalziffern hat, wobei wenigstens ein Zifferneingang für die wenigstens in einem der Speicher abgelesenen Ziffern die Komplementierung der Binärelemente der Ziffern auf "1" bewirkt.
  7. 7. Zeichenoperator nach Anspruch 6, dadurch gekennzeichnet, daß zwischen Ziffernausgängen für in dem bzw. den Zeichen- speichern abgelesene Ziffern und Verkettungseingängen des Multiplexierers elementare Multiplexierer eingefügt sind, welche die Speicherziffern durch Konstantziffern und/oder Ziffern ersetzen, die in wenigstens einem Register abgelesen worden sind, das bei jedem Beginn Άψ? Ausführung einer Arbeit des Operators beschickt wird.
  8. 8. Zeichenoperator nach Ansprudi 7, dadurch gekennzeichnet, daß die Steuerung der elementaren Multiplexierer durch Feststellung der Nichtkoinzidenz und der Koinzidenz der Inhalte
    509829/0620
    ..14-
    von zwei weiteren Registern erfolgt, von denen das eine am Beginn der Ausführung eines Mikroprogramms beschickt wird, während das andere am Beginn derAusführung Jedes Mikrobefehls dieses Mikroprogramms beschickt wird.
    509829/0620
    Le e rseite
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 true DE2500201A1 (de) 1975-07-17
DE2500201C2 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
US4246644A (en) * 1979-01-02 1981-01-20 Honeywell Information Systems Inc. Vector branch indicators to control firmware
CA1145054A (en) * 1979-01-02 1983-04-19 Honeywell Information Systems Inc. Data processing system with means to align operands
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

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564507A (en) * 1968-04-10 1971-02-16 Ibm Asynchronous interface for use between a main memory and a central processing unit
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

Family Cites Families (7)

* 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
JPS5036542B1 (de) * 1969-12-15 1975-11-26
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564507A (en) * 1968-04-10 1971-02-16 Ibm Asynchronous interface for use between a main memory and a central processing unit
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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TEXAS-Instruments, Integrated Circuits Data Book, 1. Ed. Juli 71, S. 9-358 *

Also Published As

Publication number Publication date
IT1027154B (it) 1978-11-20
ES433614A1 (es) 1976-11-16
NL7416663A (nl) 1975-07-09
GB1490791A (en) 1977-11-02
US4041290A (en) 1977-08-09
FR2291542B1 (de) 1978-03-31
DE2500201C2 (de) 1985-01-10
BE824064A (fr) 1975-07-03
FR2291542A1 (fr) 1976-06-11

Similar Documents

Publication Publication Date Title
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE1237363B (de) Arithmetisch-Logische-Einheit
DE2117936A1 (de) Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems
DE2161886A1 (de) Befehlsausführungssystem in einer elektronischen Datenverarbeitungsanlage
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE2930441C2 (de) Anzeigeeinrichtung zur wahlweisen dynamischen oder statischen Anzeige
DE1900141B2 (de) Hilfssteuerwerk fur eine Datenver arbeitungsanlage
DE2036729A1 (de) Digital Datenverarbeiter
DE1269393B (de) Mikroprogramm-Steuerwerk
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
DE2753650C2 (de) Zeithaltende Einrichtung mit einem Register zum Speichern von Zeitzähldaten
DE1115488B (de) Datenverarbeitungssystem
DE1114050B (de) Elektronischer Gleitkomma-Rechner
DE2500201A1 (de) Zeichenoperator fuer binaer codierte dezimalziffern
DE2364865A1 (de) Erweitertes speicheradressenbildungssystem eines digitalen rechnersystems
DE2245284A1 (de) Datenverarbeitungsanlage
DE1168129B (de) Verfahren zur Verarbeitung von Daten
DE3340362A1 (de) Verfahren und vorrichtung zur division von bcd-zahlen
DE1184122B (de) Addiervorrichtung
DE2164718A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/Ausgabe-Einheiten mittels einer Zentraleinheit
DE2523755A1 (de) Divisionsverarbeitungssystem mit 2n-facher genauigkeit
DE1806464A1 (de) Adressengenerator fuer einen Digitalrechner
DE1499286A1 (de) Datenbearbeitungsanlage
DE2952072A1 (de) Einrichtung zur verarbeitung binaer codierter dezimalzahlen

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