DE2743575A1 - Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl - Google Patents
Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahlInfo
- Publication number
- DE2743575A1 DE2743575A1 DE19772743575 DE2743575A DE2743575A1 DE 2743575 A1 DE2743575 A1 DE 2743575A1 DE 19772743575 DE19772743575 DE 19772743575 DE 2743575 A DE2743575 A DE 2743575A DE 2743575 A1 DE2743575 A1 DE 2743575A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- bit
- sign
- shift
- loading
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/527—Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
- G06F7/5272—Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products
Description
Die vorliegende Erfindung bezieht sich auf ein Multiplikationsverfahren
sowie eine Einrichtung zur Durchführung des Verfahrens,
wie sie insbesondere in Datenverarbeitungssystei^verwendbar ist.
Im Stand der Technik sind zahlreiche Verfahren zur Multiplikation zweier Zahlen bekannt. Einige dieser Verfahren werden in dem
Buch von Y. Chu "Digital Computer Design Fundamentals", veröffentlicht
durch McGraw-Hill Book Company, Inc.,1962 beschrieben. Ferner sind in den US-Patentschriften 3 551 663 und 3 641 331
Einrichtungen zur Durchführung einer Multiplikation dargestellt und beschrieben. Jedes dieser bekannten Multiplikationsverfahren
besitzt gewisse Vor- und Nachteile. Beispielsweise erfordern einige Verfahren einen ziemlich großen Aufwand an logischen
Schaltkreisen, um die Rechenzeit herabzusetzen und andere bekannte Verfahren benötigen bei geringem Aufwand an logischen Schaltkreiseneine
erhebliche Rechenzeit, um das Ergebnis der Multiplikation zu erzeugen. Dementsprechend ist es in vielen Fällen
von Bedeutung, einen Kompromiß zwischen zusätzlichen logischen Schaltkreisen und der für die Multiplikation erforderlichen
Rechenzeit zu erzielen. Bei einer Multiplikation muß dem Vorzeichen des Multiplikators und des Multiplikanten zusätzliche
Beachtung geschenkt werden. Einige Multiplikationsverfahren erfordern
eine spezielle Behandlung bei einer Zahl mit negativem Vorzeichen. Beispielsweise muß bei einigen Verfahren die negative
Zahl zuerst in eine positive Zahl, beispielsweise über die sogenannte 2er Komplementbildung dieser Zahl,umgewandelt werden. Bei
zwei negativen Zahlen müssen dementsprechend beide Zahlen Ih positive Zahlen umgewandelt werden. Es liegt auf der Hand, daß
eine solche Umwandlung der miteinander zu multiplizierenden Zahlen in Abhängigkeit von ihrem Vorzeichen zusätzliche Rechenzeit
beansprucht und dementsprechend in vielen Fällen nicht toleriert werden kann.
Es ist demgemäß die Aufgabe der vorliegenden Erfindung, ein Multiplikationsverfahren anzugeben, mit dem insbesondere hinsichtlich
negativer oei erträglichem Schaltungsaufwand die für
8098U/0712
Multiplikation erforderliche Zeit auf ein Minimum reduziert wird.
Die Lösung dieser Aufgabe gelingt gemäß dem Xm Anspruch 1 gekennzeichneten
Verfahren. Weitere vorteilhafte Ausgestaltungen des Verfahrens sowie einerEinrichtung zur Durchführung des Ver
fahrens sind den llnteransprüchen entnehmbar.
Gemäß der Erfindung ist für die Multiplikation einer ersten Zahl
mit einer zweiten Zahl ein erstes Register zur Speicherung der ersten Zahl, ein zweites Register und eine Einrichtung zur Ver
bindung des ersten und zweiten Registers vorgesehen, um zwischen diesen Verschiebeoperationen zu gestatten. Ferner ist eine Ein
richtung vorgesehen, die in Abhängigkeit von einem vorbestimmten Zustand des Inhalts des ersten Registers die zweite Zahl in das
zweite Register lädt. Der Inhalt des zweiten Registers wird in das erste Register verschoben und dementsprechend wird der Inhalt
des ersten Registers ebenfalls verschoben. Es ist ferner eine Einrichtung zur Addition der Größe der zweiten Zahl zu einem
vorbestimmten Teil des Inhalts des zweiten Registers und zum Laden des Vorzeichens der zweiten Zahl in die signifikanteste
Bitposition des zweiten Registers vorgesehen. Eine Einrichtung dient der Feststellung des Zustandes einer vorbestimmten Bitposition des ersten Registers und in Abhängigkeit von dem Vorzeichen der ersten Zahl der Freigabe der Verschiebeeinrichtung
und der Einrichtung zum Laden des Vorzeichens der zweiten Zahl in das zweite Register; bzw. der Freigabe der Verschiebeeinrichtung, der Freigabe der Einrichtung zum Laden und der Einrichtung zur Addition. In Abhängigkeit vom Zustand eines solchen
Bits in der vorbestimmten Bitposition des ersten Registers erfolgt daher entweder eine Verschiebung und eine Ladeoperation
oder eine Verschiebung eine Ladeoperation und eine Addition. Diese Operationen werden entsprechend der Anzahl der Bits in
der ersten Zahl entsprechend vielfach durchgeführt, worauf das Ergebnis der Multiplikation dem Inhalt des ersten und zweiten
Registers entnommen werden kann.
8098U/0712
Anhand der Figuren der beiliegenden Zeichnung sei im folgenden
das erfindungsgemäße Verfahren sowie eine Einrichtung zur Durchführung
des Verfahrens näher beschreiben. Es zeigen:
Fig. 1 die Einrichtung gemäß der vorliegenden Erfindung;
Fig. 2 ein die Wirkungsweise der erfindungsgemäßen Einrichtung
veranschaulichendes Flußdiagramm;
Fig. 3 das Format eines ersten, zweiten und dritten Registers, die in der erfindungsgemäßen Einrichtung
verwendet werden können;
Fig. 4-7 Zustandsdiagramme für den Inhalt dieser drei Re
gister während des Multiplikationsverfahrens gemäß der vorliegenden Erfindung;
Fig.8 u.9 Gatterlogik-Schaltkreise, die bei der Einrichtung
gemäß Fig. 1 Verwendung finden können; und
Fig. 10 ein weiteres Ausführungsbeispiel der erfindungsgemäßen Einrichtung.
Gemäß Fig. 1 ist ein erstes Schieberegister 10 und ein zweites Schieberegister 12 angeordnet. Ferner weist die dargestellte Einrichtung ein Speicherregister 14 auf. Bei dem dargestellten Ausführungsbeispiel weist jedes dieser Register vier Bit-Speicherplätze auf. Die Beschränkung auf 4 Bit ist nur als ein Beispiel
anzusehen und es liegt auf der Hand, daß solche Register 16 oder mehr Bit-Speicherplätze aufweisen können, ohne daß dadurch der
Rahmen der vorliegenden Erfindung verlassen wird. Jedes dieser Register weist eine signifikanteste Bit-Position A4, B4 und Y4
und eine am wenigsten signifikante Bitposition A1, B1 und Y1
auf. Die am wenigsten signifikante Bitposition des Registers 12 ist an die signifikanteste Bitposition des Registers 10 angeschlossen. Es ist leicht ersichtlich, daß die Register 10 und 12
tatsächlich als ein einzelnes Schieberegister realisiert werden können, das sodann beim vorliegenden Ausführungsbeispiel 8
Bitpositionen aufweisen müßte. Die Register 10 und 12 sind so miteinander verbunden, daß ihr Inhalt Bit für Bit von links
nach rechts mittels des von der Verschiebesteuerlogik 16 erzeugten Verschiebe-Ausgangssignales verschoben werden kann. Die
8098U/0712
Verschiebesteuerlogik 16, die in näheren Einzelheiten in Fig. 8 dargestellt ist, empfängt ihre Steuersignale von dem am wenigsten
signifikanten Bit A1 des Registers 10, von einem Zähler 18 und
von dem Vorzeichen der ersten Zahl über ein Register bzw. Flip-Flop 20.
Der Zähler 18 wird im allgemeinen auf die Zahl der Bit-Speicherplätze
im Register 10 voreingestellt und er kann auf eine Zahl voreingestellt werden, die nicht größer als die Anzahl der Bits
des Multiplikators ist. Wenn der Zähler 18 auf Null heruntergezählt
ist, so wird die Logik 16 teilweise gesperrt. Zu diesem Zeitpunkt hat die erfindungsgemäße Einrichtung die gesamte Multiplikations-Schrittfolge
durchgeführt und das Ergebnis der Multiplikation steht in den Registern 12 und 10.Eine Additionssteuerlogik
22, die in näheren Einzelheiten in Fig. 9 dargestellt ist, addiert den Inhalt oder einen Teil des Inhalts des Registers 12
zu dem Inhalt cder einem Teil des Inhalts des Registers 14 über einen Addierer 24. Die Logik 22 gestattet ferner die Weiterschaltung
des Vorzeichens des Multiplikanten bzw. der zweiten Zahl im Register 14, wobei dieses Vorzeichen in der signifikantesten
Bitposition B4 abgelegt istfzu der signifikantesten
Bitposition Y4 des Registers 12. Bei eine?: typischen Addition werden die Bits B4, B3, B2 und B1 zu den Bits B4, Y4, Y3 und Y2
addiert und das Ergebnis dieser Addition wird in den Speicherplätzen Y4, Y3, Y2 und Y1 entsprechend abgelegt. Die Verschiebesteuerlogik
16 steht mit der Additionssteuerlogik 22 über verschiedene in den Figuren 8 und 9 näher dargestellte Steuerleitungen
in Verbindung, wobei diese Verbindung in Fig. 1 durch die gestrichelte Linie angedeutet ist. Die Wirkungsweise der
Einrichtung gemäß Fig. 1 geht am besten aus dem Flußdiagramm gemäß Fig. 2 hervor. Beispiele zur Veranschaulichung der Wirkungsweise
der erfindungsgemäßen Einrichtung bei einer Multiplikation
der Zahlen 5 und 6 bei vier verschiedenen Vorzeichenkombinationen sind in den Figuren 4 bis 7 dargestellt, die unter Zugrundelegung
des Formates gemäß Fig. 3 für sich selbst sprechen.In den Figuren 4 bis 7 ist in der Zeile 2 dargestellt, daß der Inhalt
8098 U/0712
des B-Registers 14 während der gesamten Operation der gleiche bleibt, so daß dieser Inhalt nur einmal dargestellt ist, während
die Inhalte der Register 10 und 12 sich beim Ablauf der Multiplikation
jeweils verändern. Die Größe des Ergebnisses ist in der letzten Zeile einer jeden dieser Figuren durch ein Rechteck
umgrenzt, wobei das Vorzeichen durch das am weitesten links stehende Bit außerhalb des Rechtecks vorgegeben ist. Einzelheiten
der logischen Schaltkreise 16 und 22 werden später erläutert.
Gemäß Fig. 2 wird mit dem Multiplikationsverfahren gemäß der vorliegenden
Erfindung im Block 30 begonnen. Anfänglich ist das Y-Register 12 zurückgestellt und weist in allen Stellen den Wert
"0" auf, wie dies durch den Block 32 angedeutet ist. Ferner wird anfänglich das Vorzeichen der ersten Zahl, das durch die Position
A4 des Registers 10 vorgegeben ist, in das Register des Flip-Flops 20 eingetaktet, was durch den Block 3 4 veranschaulicht
ist. Im Anfangszustand sind somit in dem Register 10 und 14 die erste und zweite Zahl gespeichert und es ist nach den durch die
Blöcke 32 und 34 angezeigten Operationen das Vorzeichen der ersten Zahl im Register 20 gespeichert und jedes Bit innerhalb
des Registers 12 weist den Wert "0" auf.
Wie zuvor angezeigt, ist der Betriebsablauf gemäß der vorliegenden
Erfindung von dem Vorzeichen der ersten Zahl ebenso wie von dem Binärzustand einer vorbestimmten Bit-Position im Register
abhängig, wobei diese Bitposition der am wenigsten signifikanten Bitposition A1 des Registers 10 entspricht. Es kann gezeigt werden,
daß die Bitposition A1 anfänglich benutzt werden kann, um einen solchen Binärzustand anzuzeigen, daß aber danach zur Erhöhung
der Geschwindigkeit der Einrichtung, die Bitposition A2 verwendet wird, um den Binärzustand anzuzeigen. Anfänglich stellt die
erfihdungsgemäße Einrichtung unabhängig von dem Vorzeichen der ersten Zahl im Register 10 fest, ob ein Bit mit dem Wert "1"
sich in der Position A1 befindet. Befindet sich ein Bit mit dem Wert "O" in der Position A1, so wird der Inhalt des Registers
8098 U/0712
mindestens um eine Bitposition nach rechts verschoben, bis ein
Bit mit dem Wert "1" in der Position A1 aufgefunden wird. Durch
diese Verschiebungen ebenso wie durch später noch zu beschreibende Verschiebungen wird der Zähler 18 herabgezählt und dementsprechend
werden solche Verschiebungen /deren Anzahl der Anzahl von Bitpositionen des Registers 10 entsprechen kann, gezählt, um
festzustellen, wann das Ergebnis der Multiplikation tatsächlich in den Registern 12 und 10 gespeichert ist. Wenn daher anfänglich
Bits mit dem Wert "0" in den Positionen A1 und A2 abgelegt sind und ein Bit mit dem Wert "1" sich in der Position A3 befindet,
so sind zwei Verschiebungen erforderlich, bis ein Bit mit dem Wert "1" in der Position A3 bei der Verschiebung feststellbar
ist. Es sei darauf verwiesen, daß die Position A4 das Vorzeichen der ersten Zahl enthält. Wenn beispielsweise das Bit in der
Position A4 den Wert "1" aufweist, dann ist die entsprechende Zahl negativ und wenn das Bit in der Position A4 den Wert "0"
aufweist, so ist die Zahl positiv.
Im Block 36 gemäß Fig. 2 wird daher festgestellt, ob das Bit in der Position A1 den Wert "1" aufweist oder nicht. Lautet die
Antwort nein, so wird in den Block 28 eingetreten, in welchem die Bits im Register 10 nach rechts verschoben werden und der
Wert "0" in der Bitposition Y1 des Registers 12 in die Bitposi
tion A4 des Registers 10 verschoben wird. Es ist jedoch ersicht lich, daß bei der Verwirklichung der erfindungsgemäßen Einrich
tung eine Vereinfacn^ahingehend erfolgt, daß der gesamte Inhalt
des Registers 12 und 10 in Richtung auf die am wenigstens signi
fikante Bitposition verschoben wird, wodurch das gleiche Ergebnis erzielt wird. Zusätzlich wird bei jeder stattgefundenen Verschie
bung der Zähler 18 um 1 herabgezählt. Zu diesem Zeitpunkt wird
im Block 36 danach gefraot,ob das Bit in der Position A1 den
Wert "1" aufweist. Wird diese Frage mit "ja" beantwortet, so wird in den Block 40 eingetreten, in welchem die Operation des
Blockes 3 8 wiederholt wird, wobei jedoch danach im Block 42 der Inhalt des B-Registers 14 in das Y-Register 12 geladen wird. Dies
geschieht über die Steuerlogik 22 und den Addierer 24.
B098U/071 2
Es kann gezeigt werden, daß das Laden des gesamten Inhalts des Registers 14 in das Register 12 ohne einen Addierer ausgeführt
werden kann, indem ein einfacher Gatteraufbau verwendet wird,
wobei das Gatter beim Auftreten des Wertes "1" in der Position A1 und in Abhängigkeit von der im Block 40 durchgeführten Verschiebeoperation
betätigt wird. In diesem Zeitpunkt ist somit der Inhalt des Registers 10 wenigstens einmal verschoben worden
und die am weitesten links stehende Bitposition weist von dem Register 12 her den Wert "O" auf und zusätzlich ist der Inhalt
des Registers 14 in das Register 12 geladen worden. Es ist er
kennbar, daß eine weitere Frage am Ende des Blockes 38 gestellt werden kann und zwar diejenige, ob der Zähler 18 auf Null
heruntergezählt hat. Lautet die Antwort "nein", so· wird in den Block 36 erneut eingetreten;und lautet die Antwort "ja", so ist
ersichtlich, daß das Ergebnis den Wert Null aufweist und das Verfahren an diesem Punkt endet.
Nach der Operation im Block 42 wird in den Block 44 eingetreten
und eine zuvor gemachte Feststellung, ob die erste Zahl A im Register 10 eine positive Zahl ist oder nicht, wird durch den
Zustand "O" im Flip-Flop 20 angezeigt. In Abhängigkeit von der Antwort im Block 44 wird sodann eine von zwei Schrittfolgen
ausgelöst, wobei in beiden Schrittfolgen anfänglich erneut der Binärzustand des Bits in der Position A1 des Registers 1O festgestellt wird, wie durch die Blöcke 46 und 48 angezeigt.
Wenn aufgrund der Feststellungen in den Blöcken 46 und 48 die
erste Zahl A positiv ist, was durch das Flip-Flop 20 angezeigt wird, so wird, wenn der Binärzustand der Bitposition A1 des
Registers 10 den Wert "0" aufweist, die anhand der Blöcke 38 und 40 erwähnte Verschiebeoperation ebenso wie eine vollständige
Verschiebung des Inhalts des Registers 12 durchgeführt und es erfolgt ein Laden des Vorzeichens der zweiten Zahl, wie sie durch
die Position B4 im Register 14 vorgegeben ist, in die Position Y4 des Registers 12. Ist die erste Zahl A eine positive Zahl
8098U/0712
und weist der Zustand des Bits in der Position A1 des Registers 10 den Wert "1" auf, so findet nicht nur eine Verschiebung und
Ladeoperation statt, sondern es erfolgt ebenfalls noch eine Addition des Inhalts des B-Registers 14 zu B4 und den Bitpositionen
Y4, Y3 und Y2 des Y-Registers 12, worauf das Ergebnis im Register 12 abgelegt wird. Wenn die erste Zahl A im Register 1O
anfänglich eine negative Zahl darstellt, was durch das Flip-Flop 20 angezeigt wird, so ist die folgende Operation die gleiche
wie gerade beschrieben mit der Ausnahme, daß die Verschiebung und die Ladeoperation für das Vorzeichen von dem Binärzustand "1"
in der Position A1 des Registers 10 abhängig ist und die Verschiebe-, Lade- und Additionsoperation von dem Binärzustand "0"
in der Position A1 abhängig gemacht wird.
In näheren Einzelheiten sei nunmehr als erstes Beispiel der Fall
betrachtet, in der die Zahl A eine positive Zahl ist. In diesem Fall wird in den Block 48 eingetreten und wenn die Bitposition
A1 des Registers 10 den Binärwert "0" aufweist und dementspre- chen die Frage im Block 48 mit "nein" beantwortet wird, so wird
zum Block 50 weitergeschritten, in welchem eine Verschiebeoperation ausgeführt wird, bei der die Bitpositionen A4 bis A2
nach rechts in die Positionen A3 bis A1 verschoben werden, das Bit Y1 in die Bitposition A4 übertragen wird und die Bits Y4 bis
Y2 in die Positionen Y3 bis 1 übertragen werden. Zusätzlich wird der Zähler 18 heruntergezählt. Ferner ist nach der Verschiebeoperation
in die Bitposition Y4 des Registers 12 das Vorzeichen der zweiten Zahl B im Register 14 geladen worden, was durch den
Block 52 angezeigt ist. Zu diesem Zeitpunkt wird im Block 54 festgestellt, ob der Zählstand des Zählers 18 den Wert Null auf
weist oder nicht. Wird die Frage mit "nein" beantwortet, so wird
in den Block 44 erneut eingetreten. Wird die Frage mit "ja" beantwortet, so wird in den Block 66 eingetreten.
Wurde die Frage im Block 48 mit "ja" beantwortet, was gleichbe
deutend damit ist, daß der Binärzustand des Bits in der Position A1 den Wert "1" aufweist, so wird in den Block 56 eingetreten.
809814/0732
Im Block 56 wird die gleiche Operation wie im Block 50 ausgeführt.
Die Additionssteuerlogik 22, die im Zusammenhang mit Fig. 9 noch näher erläutert wird, stellt sicher, daß der gesamte Inhalt des
Registers 12 ebenso wie derjenige des Registers 10 verschoben worden ist. Sodann wird in den Block 57 eingetreten, zu welchem
Zeitpunkt das Vorzeichen der zweiten Zahl in der Position B4 in die Position Y4 des Registers 12 geladen ist, wie dies auch im
Block 52 der Fall war. Danach wird in den Block 58 eingetreten, wobei folgende Operation ausgeführt wird. Der Inhalt des Registers
14 wird im wesentlichen zu B4 und einem Teil des Inhalts
des Registers 12 addiert. Insbesondere wird der Inhalt der Bitpositionen
B4, B3, B2 und B1 des Registers 14 zu dem Inhalt der Bitpositionen B4, Y4, Y3 und Y 2 addiert, worauf das Ergebnis
in den Positionen Y4, Y3, Y2 und Y1 des Registers 12 abgelegt wird, was durch den Block 60 veranschaulicht ist. Am Ende der im
Block 60 vorgesehenen Operation wird in den Block 54 eingetreten, durch welchen festgestellt wird, ob der Zähler 18 einen Zählstand
von Null aufweist oder nicht und wenn diese Frage mit "nein" beantwortet wird, so wird erneut in den Block 44 eingetreten.
Lautet die Antwort "ja", so wird in den Block 66 eingetreten.
Wenn die erste Zahl A eine negative Zahl ist, was durch die Antwort
"nein" im Block 44 angezeigt wird, so wird in den Block 46 eingetreten. Erneut wird im Block 46 festgestellt, ob der Zustand
der Bitposition A1 des Registers 10 den Binärwert "1" oder den Binärwert "0" aufweist. Wenn der Zustand in der Bitposition
A1 den Binärwert "1" aufweist, so wird die Frage mit "ja" beantwortet und es wird im Block 50 die Verschiebeoperation und
sodann im Block 52 die Ladeoperation für das Vorzeichen ausgeführt. Sodann wird erneut gefragt, ob der Zählstand des Zählers
18 den Wert Null aufweist oder nicht. Wenn die Frage mit "nein" beantwortet wird, so wird in den Block 44 erneut eingetreten. Im
Block 44 wird der Zustand des Flip-Flops 20 überprüft, welches im gesetzten Zustand die Logik 16 oder die Logik 22 in die Lage
versetzt, die geeignete Operation auszuführen. Wenn die erste Zahl A im Register 10 negativ war und sich im Block 46 ergab,
8098U/0712
daß die Position A1 den Wert "0" aufweist, so wird in den Block eingetreten, worauf die Verschiebe-, Lade- und Additionsoperation
in den Blöcken56, 57, 58 und 60 ausgeführt wird und worauf in den
Block 54 eingetreten wird, und sofern die Operation noch nicht vollständig ist, in den Block 44 erneut zurückgekehrt wird. Es
ist ersichtlich, daß an der Ausgangsseite des Blockes 42 eine überprüfung vorgenommen werden kann, ob der Zähler aufgrund der
Operationen in den Blöcken 38 und 40 auf Null heruntergezählt hat oder nicht und daß inden Block 66 direkt eingetreten werden kann,
ohne daß ein Eintritt in den Block 44 erfolgt. Ein solcher Zustand kann beispielsweise auftreten, wenn sich anfänglich ein
BitmusteriOOO im Register 10 befindet.
Weist der Zähler 18 einmal den Zählstand Null auf^owjrd hierdurch
angezeigt, daß die Anzahl der ausgeführten Gesamtverschiebungen mindestens gleich der Anzahl von Bits in der ersten Zahl ist oder
falls man die zusätzliche Logik, die zur Bestimmung der Anzahl von Bits in der ersten Zahl erforderlich ist, nicht zu benutzen
wünscht, so ist der Zählstand gleich Null nach der Gesamtanzahl
von Verschiebungen entsprechend der Anzahl von Bitpositionen im Register 10. Infolge der Beantwortung der Frage im Block 54 mit
"ja" wird in den Block 66 eingetreten, in welchem die Verschiebeoperation,
wie sie durch den Block 50 angezeigt ist, erneut wiederholt wird, um die Ergebnisgröße in den Positionen Y3 bis Y1 und
A4 bis A1 in den Registern 12 und 10 zu erzeugen. Darauf wird in den Block 68 eingetreten, wobei das Vorzeichen der zweiten Zahl
in die Position Y4 des Registers 12 geladen wird. Danach ist das
Ergebnis der Multiplikation in den Registern 12 und 1O abgelegt, was aus dem Block 70 hervorgeht. Das Vorzeichen befindet sich in
der Position Y4 des Registers 12 und das signifikanteste Bit der Ergebnisgröße befindet sich in der Position Y3 des Registers 12
und das am wenigsten signifikante Bit befindet sich in der Position A1 des Registers 10. Das Ergebnis erfordert keine weitere
Bearbeitung, wenn die ursprünglich in das Register 10 geladene erste Zahl A eine positive Zahl war. Wenn jedoch die erste
in das Register 10 geladene Zahl A eine negative Zahl war, so
8098U/071 2
stellt sich das tatsächliche Ergebnis als das 2er Komplement des Inhalts der Register 12 und 10 dar. Einrichtungen zur Umwandlung
des 2er Komplements einer Zahl sind im Stand der Technik bekannt. Eine zweckmäßige Regel zur Umkehrung positiver oder negativer Zahlen
in 2er Komplement-Darstellung besteht darin, rechts zu beginnen und die Binärwerte "0" beizubehalten bis zum Erreichen
des ersten Binärwertes "1" und beginnend mit der auf den Binärwert "1" folgenden Binärziffer alle folgenden Binärziffern umzutauschen.
Mit dem Ergebnis des Multiplikationsverfahrens in den Registern 12 und 10 wird das Verfahren im Block 72 verlassen.
Gemäß Fig. 8 ist die Verschiebesteuerlogik 16 dargestellt. Die Bitposition A1 des Registers 10 ist an den Eingang eines Vergleichers
100 angeschlossen, der durch den Ausgang eines ODER-Gatters 102 betätigt wird. Im Anfangszustand ist das Flip-Flop
gesetzt und gibt den Vergleicher 100 über das ODER-Gatter 102 frei und bereitet ferner die Gatter 106 und teilweise auch das
Gatter 108 vor. Der Ausgang des Vergleichers 100 bildet den Eingang für mehrere Gatter,u.a. für ein ODER-Gatter 110, das ein
Signal zur vollständigen Freigabe des UND-Gatters 106 erzeugt, wenn im Anfangszustand entweder ein Binärwert "1" oder ein Binärwert "0" durch den Vergleicher 100 in der Bitposition A1 des Registers
10 festgestellt wird. Beim Vorliegen einer dieser Bedingungen wird über das ODER-Gatter 112 und das UND-Gatter 114
ein Verschiebesignal erzeugt, wobei das UND-Gatter 114 solange
freigegeben ist, bis der Zähler 18 auf Null heruntergezählt hat. Eine gesonderte Verschiebung wird ferner erzeugt, wie dies durch
den Block 66 in Fig. 2 angezeigt ist, nachdem der Zählstand des Zählers 18 auf Null heruntergezählt ist.
Zum gleichen Zeitpunkt, indem das Gatter 106 vollständig durchgeschaltet
ist, wird das Gatter 108 vollständig durchgeschaltet, wenn durch den Vergleicher 100 der Binärwert "1" festgestellt
worden ist. In Abhängigkeit von einem solchen beim ersten Vergleich festgestellten Binärzustand "1" wird das Flip-Flop 104
zurückgestellt, worauf die Gatter 106 bzw. 108 gesperrt werden.
8098U/0712
Ferner sperrt der anfänglich durch den Vergleicher 100 festgestellte
Binärzustand "1" über den Inverter 120 das Gatter 118
und somit die Freigabe des Vergleichers 100. Die gerade beschriebene Operation wird wiederholt, wenn ein Binärwert "O" durch den
Vergleicher 100 festgestellt wird. Der Ausgang des Gatters 100 ist ferner an die Additionssteuerlogik 22 angeschlossen, um über
das Signal auf der Leitung 80 das Laden des gesamten Inhalts des Registers 14 in das Y-Register 12 gemäß dem Block 42 in Fig. 2
zu befehlen.
Für jede Verschiebung nach Durchführung dieser Anfangsoperationen
und solange der Zähler 18 nicht auf Null heruntergezählt hat, ist das UND-Gatter 122 freigegeben und versetzt über das ODER-Gatter
102 den Vergleicher 100 in die Lage, festzustellen, ob ein Binärwert "1" oder ein Binärwert "0" in der Position A1 des Registers
10 vorliegt. Wenn das Flip-Flop 20 den Binärwert "1" aufweist und somit anzeigt, daß die erste Zahl A negativ ist und wenn somit
tatsächlich die Position A1 des Registers 10 den Binärzustand
"1" aufweist, so wird das UND-Gatter 124 vollständig freigegeben
und ruft eine Verschiebeoperation hervor. Auch in Abhängigkeit von der Durchschaltung des Gatters 124 bewirkt das ODER-Gatter
126 das Laden von B4 nach Y4 mittels eines Signales auf der Leitung 82. Dieses Signal wird der Logik 22 zugeführt, um die Operation
in den Blöcken 52 und 57 zu erzeugen. Wenn die erste Zahl A eine negative Zahl ist und andererseits das Bit in der Position
A1 den Binärwert "0" aufweist, so wird das UND-Gatter 128 betätigt
und ruft die Verschiebung gemäß dem Block 56 in Fig. 2 hervor und bewirkt über das ODER-Gatter 126 das Laden von B4 nach
Y4 mittels des Signales auf der Leitung 82. Daraufhin bewirkt das UND-Gatter 130 die Addition von B4 bis B1 zu B4, Y4 bis Y2 aufgrund
der von dem ODER-Gatter 129 erhaltenen Signale. Ferner legt die Additionssteuerlogik 22 das Ergebnis der Addition in
dem Y-Register ab, was durch den Block 60 veranschaulicht ist. Dies erläutert die Operation, wenn die erste Zahl negativ ist
und durch den Vergleicher 100 entweder ein Binärwert "1" oder ein Binärtwert "0" angezeigt wird. Es sei darauf verwiesen, daß
80981 A/0712
die Leitungen 80, 81 und 82 die Steuerleitungen darstellen, die
in Fig. 1 durch die gestrichelte Linie angezeigt sind.
Wenn die erste Zahl Λ eine positive Zahl ist, was durch den
Binärwert "0" am Ausgang des Flip-Flops 20 angezeigt wird und wenn der Vergleicher 100 den Binärwert "1" in der Position A1
des Registers 10 feststellt, so wird das UND-Gatter 132 durchgeschaltet
und ruft somit am Ausgang des UND-Gatters 114 das Verschiebesignal
hervor. Ferner veranlaßt das Signal am Ausgang des Gatters 132 über das ODER-Gatter 126 das Laden von B4 nach Y4,
worauf B4 bis B1 zu B4, Y4 bis Y2 beim Durchsteuern des UND- Gatters 130 addiert wird. Danach wird das Ergebnis im Y-Register
12 abgelegt. Wenn andererseits die erste Zahl A eine positive Zahl ist und der Vergleicher 100 den Binär zustand "0" anzeigt, so
wird das UND-Gatter 134 durchgesteuert und ruft hierdurch die Verschiebeoperation gemäß Block 50 in Fig. 2 hervor und bewirkt
ferner über das ODER-Gatter 126 das Laden des Inhalts der Position B4 in die Position Y4.
Wenn der Zähler 18 schließlich auf Null heruntergezählt hat, so
wird die Verschiebeoperation des Blockes 66 über den Inverter ausgelöst, worauf eine Ladeoperation erfolgt, wie dies durch den
Block 68 gemäß Fig. 2 veranschaulicht ist. Dies geschieht dadurch, daß der normalerweise von dem Zähler 18 ausgegebene Binärzustand
"1" in den Binärzustand "0" umschaltet, wenn der Zählstand den Wert Null erreicht, so daß am Eingang des Inverters 136 der Wert
"0" und an dessen Ausgang der Wert "1" auftritt, wodurch die Verschiebeoperation über das ODER-Gatter 112 freigegeben wird.
Hierdurch wird ferner das Laden des Inhalts der Position B4 in die Position Y4 über die Logik 2 2 freigegeben, wobei dies durch
das auf der Leitung 82 über das ODER-Gatter 12 6 erzeugte Signal
ausgelöst wird.
Nach dieser Operation steht das Ergebnis der Multiplikation in den
Registern 12 und 10. WSnn das durch das Flip-Flop 20 angezeigte Vorzeichen negativ ist, so befindet sich das Ergebnis in einer
80981 4/071 2
2er Komplementdarstellung in den Registern 12 und 10. Die Verarbeitung
der 2er Komplementdarstellung ist im Stand der Technik bekannt und wird durch die Freigabe des UND-Gatters 140
ausgelöst, wobei das sodann gewonnene Ergebnis in den Registern 12 und 10 oder in einer anderen Speichereinrichtung abgelegt
wird.
Die Additionssteuerlogik 22 ist in Fig. 9 dargestellt. Das Register
14 ist ebenso wie das Register 12 an mehrere Gatter angeschlossen.
Dem Register 12 wird ferner das Ausgangssignal des Addierers 24 über mehrere Gatter zugeführt. Zum Laden des Inhalts
des Registers B in das Register Y wird das Signal auf der Leitung 80 aktiviert, wodurch die Gatter 200, 201, 202 und 203
durchgesteuert werden und der Inhalt des Registers 14 über die ODER-Gatter 204, 205, 206 und 207 dem Eingang A des Addierers
zugeführt wird. Der am Eingang A anstehende Wert wird in das Y-Register
12 über die UND-Gatter 230, 231, 232 und 233 und die ODER-Gatter 234, 235, 236 und 237 übertragen. Der am Eingang A
des Addierers 24 anstehende Wert wird solange nicht geändert, bis das Additionsfreigabesignal auf der Leitung 81 aktiviert wird.
Zum Laden der Position B4 in die Position Y4 wird das Signal auf der Leitung 82 aktiviert, wodurch der Binärzustand in der Position
B4 des Registers 14 über das UND-Gatter 209, das ODER-Gatter 204, den Addierer 24, das UND-Gatter 250 und das ODER-Gatter
234 in die Position Y4 des Registers 12 übertragen wird. Bei der Addition der Positionen B4 bis B1 zu B4, Y4 bis Y2 wird
das Ergebnis dieser Addition entsprechend in den Positionen Y4, Y3, Y2 und Y1 des Registers 12 abgelegt. Es sei ferner darauf
verwiesen, daß gemäß dem Block 56 in Fig. 2 der gesamte Inhalt der Register 12 und 10 verschoben wird. Dementsprechend werden
nach einer solchen vollständigen Verschiebung und dem Laden des Vorzeichens im Block 57 gemäß Fig. 2 im Block 58 die Positionen
B4 bis B1 zu B4, Y4 bis Y2 hinzuaddiert. Aufgrund der Anzeige einer solchen Additionsoperation betätigt das Signal auf der
Leitung 81 die UND-Gatter 260, 220, 221 und 222, so daß über
8098U/071 7
die ODER-Gatter 204, 205, 206 und 207 der Inhalt der Positionen
B4, B3, B2 und B1 an den Eingang A des Addierers 24 angelegt
wird. Zur gleichen Zeit wird der Inhalt der Positionen B4, Y4,
Y3 und Y2 über die durchgeschalteten UND-Gatter 261, 223, 224
und 225 dem Eingang B des Addierers 24 zugeführt. Das Ergebnis der Addition auf den Ausgangsleitungen des Addierers 24 wird
über die UND-Gatter 262, 238, 239 und 240 und über die ODER-Gatter 234, 23 5, 236 und 237 in die Positionen Y4, Y3, Y2 und
Y1 des Registers 12 übertragen.
Es liegt auf der Hand, daß verschiedene Änderungen hinsichtlich
der Einrichtung gemäß der vorliegenden Erfindung vorgenommen
werden können, ohne daß hierbei der Rahmen der Erfindung verlassen wird. Es ist ebenfalls bereits darauf verwiesen worden,
daß beispielsweise die Register 12 und 10 ein einziges Register bilden können. Es ist ferner ersichtlich, daß die Gatterlogik
gemäß den Figuren 8 und 9 auf verschiedene andere Weisen verwirklicht werden kann, ohne daß hierbei der Rahmen der vorliegenden Erfindung verlassen wird. Ferner kann die Einrichtung
gemäß der vorliegenden Erfindung teilweise durch die Verwendung eines mikroprogranimierten Rechners verwirklicht werden. So wurde
beispielsweise die Torsteuerung, die übertragung, das Laden und die Addition von dem Anmelder teilweise durch die Verwendung
eines solchen Rechners verwirklicht.
Eine weitere Möglichkeit zur Verwirklichung der erfindungsgemäßen
Einrichtung ist in Fig. 10 dargestellt. Hierbei sind nur die Register 10, 12 und 14, der Addierer 24 sowie die Gatterlogik
und 13 dargestellt. Die Anordnungen des Zählers 18 ebenso wie
des Flip-Flops 22 und die Aufschaltung der Position A1 des Registers 10 werden in der zuvor dargestellten Weise beibehalten.
Die Gatter logik 11 dient über ihre Eingänge A und B entweder dem Laden von B nach Y4 oder der Addition von B4, Y4, Y3 und Y2 zu
B4 bis B1 in Abhängigkeit von einem Auswahlsignal, das beispielsweise auf den Leitungen 81 und 82 in der Ausführung gemäß
Fig. 8 erzeugt werden kann. Die andere Gatterlogik 13 dient der
8098U/071 2
Zuführung des gesamten Inhalt:; des Registers 14 zu dem Eingang B des Addierers 24, um eine Addition mit dem Wert am Eingang Λ des
Addierers 24 hervorzurufen. Der Wert am Eingang A des Addierers 24 wird hierbei durch den Eingang B der Logik 11 aufgrund eines
Freigabesignales übertragen. Das Freigabesignal kann hierbei auf der Leitung 81 erzeugt werden oder durch ein Signal auf der
Leitung 80 gemäß Fig. 8, wodurch hierbei der gesamte Inhalt des B-Registers 14 in einfacher Weise in das Y-Register 12 aufgrund
des Ladesignales übertragen wird. Zusätzlich ist gemäß Fig. 10 nur eine Verschiebung des Inhalts des Registers 10 erforderlich,
wobei der Inhalt der Position Y1 ohne Änderung des Inhalts der Position Y1 in die Position A4 des Registers 10 kopiert bzw.
geladen wird. Die verbleibende Verschiebeoperation wird in einem solchen Fall durch den Addierer 24 hervorgerufen.
8098 14/07 12
Claims (1)
- HONEYWELL INFORMATION SYSTEMS HK
2OO Smith Street·.
Waltham, Mass., USA27. September 1977 5101550 GeVerfahren und Einrichtung zur Multiplikation einer ersten Zahlmit einer zweiten ZahlPatentansprüche:1, Verfahren zur Multiplikation einer ersten Zahl mit einer zweiten Zahl, gekennzeichnet durch folgende Schritte:a. Ladender ersten Zahl in ein erstes Schieberegister (10);b. Laden der zweiten Zahl in ein Speicherregister (14);c. Laden eines vorbestimmten Bitmusters in ein zweites Schieberegister (12);d. Erzeugung eines ersten Signales, wenn sich ein Bit mit einem ersten Zustand in einer vorbestimmten Bitposition des ersten Schieberegisters befindet oder Erzeugung eines zweiten Signales, wenn sich ein Bit mit einem zweiten Zustand sich in dieser vorbestimmten Bitposition befindet;e. Verschiebung des Inhalts des ersten Schieberegisters um ein Bit und des Inhalts des zweiten Schieberegisters in das erste Schieberegister in Abhängigkeit von dem ersten oder zweiten Signal;f. Laden des Inhalts des Speicherregisters in das zweite Schieberegister nach dem Verschiebeschritt aufgrund des ersten Signales;g. Wiederholung des Verschiebeschritts und Laden des Vorzeichens der zweiten Zahl in das zweite Schieberegister in Abhängigkeit von ersten und zweiten Kombinationen der ersten und zweiten Signale und des Vorzeichens der ersten Zahl; und8098 U /071 2ORIGINAL INSPECTEDh. Wiederholung der Verschiebeschritte und des Ladens des Vorzeichens der zweiten Zahl in das zweite Schieberegister und Addition des Inhalts des zweiten Schieberegisters in Abhängigkeit von dritten und vierten Kombinationen der ersten und zweiten Signale und des Vorzeichens der ersten Zahl.2. Verfahren nach Anspruch 1, gekennzeichnet durch die Freigabe des Verschiebeschrittes für eine Anzahl entsprechend der Anzahl von Bitpositionen im ersten Schieberegister.3. Verfahren nach Anspruch 2,dadurch gekennzeichnet, daß die ersten, zweiten, dritten und vierten Signalkombinationen wie folgt definiert sind: Positives Vorzeichen und zweites Signal, negatives Vorzeichen und erstes Signal, positives Vorzeichen und erstes Signal, und negatives Vorzeichen und zweites Signal.4. Verfahren nach Anspruch 2,dadurch gekennzeichnet, daß das Ergebnis der Multiplikationen in dem ersten und zweiten Schieberegister erzeugt wird.5. Einrichtung zur Durchführung des Verfahrens nach Anspruch 1, gekennzeichnet durcha. ein erstes Register (10) zur Speicherung der ersten Zahl (A), wobei dieses erste Register eine vorbestimmte Bitposition aufweist;b. ein zweites Register (12);c. Mittel (16) zur bitweisen Verschiebung des Inhalts des ersten Registers und des zweiten Registers, wobei der Inhalt des zweiten Registers in das erste Register verschoben wird;d. auf einen vorbestimmten Zustand ansprechende Mittel (16, 22,24), um die zweite Zahl (B) in das zweite Register (12) zu laden; undS098U/071227A3575e. eine auf das Vorzeichen der ersten Zahl und auf den Bitzustand in der vorbestimmten Position des ersten Registers ansprechende Freigabeeinrichtung, um entweder die Mittel (16) zur Verschiebung des Inhalts des ersten Registers (10) und des zweiten Register (12) und das Laden des Vorzeichens der zweiten Zahl (B) in eine vorbestimmte Bitposition des zweiten Registers (12) freizugeben oderdie Mittel (16) zur Verschiebung des Inhalts des ersten und zweiten Registers, das Laden des Vorzeichens der zweiten Zahl (B) in eine vorbestimmte BLtposition des zweiten Registers und die Addition der zweiten Zahl zu dem Inhalt des zweiten Registers freizugeben.6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der vorbestimmte Zustand durch einen Teil des Inhalts des ersten Registers (10) unabhängig vom Vorzeichen der ersten oder zweiten Zahl festgelegt ist.7. Einrichtung nach Anspruch 6, dadurch gekennzeichnet, daß der Teil des Inhalts des ersten Registers die vorbestimmte Position des ersten Registers bildet.8. Einrichtung nach Anspruch 7, gekennzeichnet durcha. auf ein Bit eines ersten Zustandes in der vorbestimmten Position des ersten Registers ansprechende Mittel, um die Mittel zum Verschieben der ersten Zahl in dem ersten Register vor dem Laden der zweiten Zahl in das zweite Register freizugeben; undb. auf ein Bit eines zweiten Zustandes in der vorbestimmten Position des ersten Registers ansprechende Mittel, um die Mittel zum Verschieben und Laden freizugeben.B098U/07129. Einrichtung nach Anspruch 5,dadurch gekennzeichnet, daß die Mittel zur Freigabe umfassen:a. Mittel (16) , die in Abhängigkeit eines positiven Vorzeichens der ersten Zahl (A) und eines ersten Bitzustandes in der vorbestimmten Position des ersten Registers (10) oder in Abhängigkeit eines negativen Vorzeichens der ersten Zahl (A) und eines zweiten Bitzustandes in der vorbestimmten Position des ersten Registers (10) die Verschiebung und das Laden des Vorzeichens der zweiten Zahl (B) in die vorbestimmte Position des zweiten Registers (12) freigeben; undb. Mittel (16), die in Abhängigkeit eines positiven Vorzeichens der ersten Zahl und eines zweiten Bitzustandes in der vorbestimmten Position des ersten Registers (10) oder in Abhängigkeit einesnegativen Vorzeichens der ersten Zahl und eines ersten Bitzustandes in der vorbestimmten Position des ersten Registers (10) die Verschiebung, das Laden des Vorzeichens der zweiten Zahl (B) in die vorbestimmte Position des zweiten Registers (12) und die Addition der zweiten Zahl (B) zu dem Inhalt des zweiten Registers (12) freigeben.10. Einrichtung nach Anspruch 5, gekennze lehnet durch Mittel zur freigäbe der Verschiebung von Bits um eine Anzahl mindestens entsprechend der Anzahl von Bits in der ersten Zahl (A), worauf das Ergebnis der Multiplikation in dem ersten und zweiten Register (10,12) auftritt.11. Einrichtung nach Anspruch 5, gekennzeichnet durch Mittel zur Freigabe der Verschiebung von Bits um eine Anzahl entsprechend der Anzahl von Bits in der ersten Zahl (A), worauf das Ergebnis der Multiplikation in dem ersten und zweiten Register (10,12) auftritt.8098U/071?12. Einrichtung nach Anspruch 11, gekennze ichneteine
durch auf ein negatives Vorzeichen der ersten Zahl (Λ) ansprechende Einrichtung zur Erzeugung eines Signales, welches anzeigt, daß das 2er Komplement des Resultates in dem ersten und zweiten Register als Ergebnis zu nehmen ist.13. Einrichtung nach Anspruch 5 oder einem der folgenden, dadurch gekennzeichnet, daß die Bits in dem ersten und zweiten Register (10,12) entsprechend ihrer Wertigkeit angeordnet sind und daß bei der Bitverschiebung jeweils das am wenigsten signifikante Bit des zweiten Registers (12) in die signifikanteste Bitposition des ersten Registers (10) verschoben wird.14. Einrichtung nach Anspruch 13, dadurch gekennzeichnet, daß das Vorzeichen der zweiten Zahl (B) in die signifikanteste Bitposition des zweiten Registers (12) geladen wird.8098 U /071 2
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/728,093 US4086474A (en) | 1976-09-30 | 1976-09-30 | Multiplication technique in a data processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2743575A1 true DE2743575A1 (de) | 1978-04-06 |
Family
ID=24925388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19772743575 Withdrawn DE2743575A1 (de) | 1976-09-30 | 1977-09-28 | Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl |
Country Status (8)
Country | Link |
---|---|
US (1) | US4086474A (de) |
JP (1) | JPS5343445A (de) |
AU (1) | AU510638B2 (de) |
CA (1) | CA1096503A (de) |
DE (1) | DE2743575A1 (de) |
FR (1) | FR2366622A1 (de) |
GB (1) | GB1547329A (de) |
HK (1) | HK37380A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3335026A1 (de) * | 1982-09-29 | 1984-03-29 | National Semiconductor Corp., 95051 Santa Clara, Calif. | Digitale datenverarbeitungsschaltung |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4319325A (en) * | 1978-07-24 | 1982-03-09 | Intel Corporation | Digital processor for processing analog signals |
US4228518A (en) * | 1978-09-25 | 1980-10-14 | Motorola, Inc. | Microprocessor having multiply/divide circuitry |
JPS5899839A (ja) * | 1981-12-10 | 1983-06-14 | Toshiba Corp | 符号付き乗算補正回路 |
US4577282A (en) * | 1982-02-22 | 1986-03-18 | Texas Instruments Incorporated | Microcomputer system for digital signal processing |
CA1202988A (en) * | 1982-08-30 | 1986-04-08 | Bernard Huang | Wheel suspension with eccentric shear disc |
NL8203520A (nl) * | 1982-09-10 | 1984-04-02 | Philips Nv | Digitale filterinrichting. |
US4564920A (en) * | 1982-12-02 | 1986-01-14 | Mostek Corporation | Multiplier with hybrid register |
US4761756A (en) * | 1983-08-24 | 1988-08-02 | Amdahl Corporation | Signed multiplier with three port adder and automatic adjustment for signed operands |
US4829585A (en) * | 1987-05-04 | 1989-05-09 | Polaroid Corporation | Electronic image processing circuit |
US4868778A (en) * | 1987-05-19 | 1989-09-19 | Harris Corporation | Speed enhancement for multipliers using minimal path algorithm |
US4890253A (en) * | 1988-12-28 | 1989-12-26 | International Business Machines Corporation | Predetermination of result conditions of decimal operations |
US7774399B2 (en) * | 2007-09-24 | 2010-08-10 | Vns Portfolio Llc | Shift-add based parallel multiplication |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3627999A (en) * | 1969-11-28 | 1971-12-14 | Comcet Inc | Two{40 s complement negative number multiplying circuit |
US3691359A (en) * | 1970-07-28 | 1972-09-12 | Singer General Precision | Asynchronous binary multiplier employing carry-save addition |
US3805043A (en) * | 1972-10-11 | 1974-04-16 | Bell Telephone Labor Inc | Serial-parallel binary multiplication using pairwise addition |
US3816732A (en) * | 1973-03-29 | 1974-06-11 | Rockland Systems Corp | Apparatus and method for serial-parallel binary multiplication |
-
1976
- 1976-09-30 US US05/728,093 patent/US4086474A/en not_active Expired - Lifetime
-
1977
- 1977-07-20 CA CA283,169A patent/CA1096503A/en not_active Expired
- 1977-09-08 AU AU28647/77A patent/AU510638B2/en not_active Expired
- 1977-09-08 FR FR7727259A patent/FR2366622A1/fr active Granted
- 1977-09-27 JP JP11600377A patent/JPS5343445A/ja active Granted
- 1977-09-28 DE DE19772743575 patent/DE2743575A1/de not_active Withdrawn
- 1977-09-29 GB GB40613/77A patent/GB1547329A/en not_active Expired
-
1980
- 1980-07-10 HK HK373/80A patent/HK37380A/xx unknown
Non-Patent Citations (1)
Title |
---|
DE-B.: Secher, Funktioneller Aufbau digit. Rechenanlagen, Springer 1973, S. 38-41 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3335026A1 (de) * | 1982-09-29 | 1984-03-29 | National Semiconductor Corp., 95051 Santa Clara, Calif. | Digitale datenverarbeitungsschaltung |
Also Published As
Publication number | Publication date |
---|---|
GB1547329A (en) | 1979-06-13 |
AU510638B2 (en) | 1980-07-03 |
US4086474A (en) | 1978-04-25 |
FR2366622A1 (fr) | 1978-04-28 |
CA1096503A (en) | 1981-02-24 |
FR2366622B1 (de) | 1984-11-23 |
JPS5732807B2 (de) | 1982-07-13 |
AU2864777A (en) | 1979-03-15 |
HK37380A (en) | 1980-07-18 |
JPS5343445A (en) | 1978-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1956209C3 (de) | Multipliziervorrichtung | |
DE2523860C3 (de) | Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion | |
DE2625973A1 (de) | Verfahren und anordnung zur redundanzvermindernden transformation von bildern | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE1162111B (de) | Gleitkomma-Recheneinrichtung | |
DE2162486A1 (de) | Digital gesteuerter Impulsgenerator | |
DE2743575A1 (de) | Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl | |
DE2933474A1 (de) | Anordnung fuer den informationsaustausch zwischen den speichern einer datenverarbeitungsanlage und den diese bildenden verarbeitungseinrichtungen | |
DE2310553A1 (de) | Vorrichtung zur durchfuehrung arithmetischer und logischer operationen | |
DE2235802C2 (de) | Verfahren und Einrichtung zur Prüfung nichtlinearer Schaltkreise | |
DE1119567B (de) | Geraet zur Speicherung von Informationen | |
DE4010735C2 (de) | ||
DE1078353B (de) | Verfahren und Vorrichtung zum Rechnen und zur numerischen Integration | |
EP0265555B1 (de) | Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen | |
DE2019603A1 (de) | Digital-analoge Recheneinrichtung | |
DE2203143C3 (de) | Rechenanordnung zum Dividieren von Dezimalzahlen | |
DE1125685B (de) | Rechenmaschine | |
DE1549485C3 (de) | Anordnung zur Division binärer Operanden ohne Rückstellung des Restes | |
DE1094020B (de) | Periodisch arbeitende numerische Rechenmaschine | |
DE1549461C3 (de) | ||
DE1103646B (de) | Inkrement-Rechenmaschine | |
DE2539245C2 (de) | ||
DE2657404B2 (de) | Steuerwerk | |
DE1524131C (de) | Binär-dezimales Serien-Serien-Rechenwerk mit Dezimalübertragkorrektor zur Addition und Subtraktion zweier binär-codierter Dezimalzahlen | |
DE10009451C1 (de) | Recheneinheit für eingeschränkte Signalverarbeitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8139 | Disposal/non-payment of the annual fee |