DE1499281B1 - Rechenmaschine fuer logarithmische Rechnungen - Google Patents

Rechenmaschine fuer logarithmische Rechnungen

Info

Publication number
DE1499281B1
DE1499281B1 DE19651499281 DE1499281A DE1499281B1 DE 1499281 B1 DE1499281 B1 DE 1499281B1 DE 19651499281 DE19651499281 DE 19651499281 DE 1499281 A DE1499281 A DE 1499281A DE 1499281 B1 DE1499281 B1 DE 1499281B1
Authority
DE
Germany
Prior art keywords
register
stored
logarithm
constant
number stored
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.)
Pending
Application number
DE19651499281
Other languages
English (en)
Inventor
An Wang
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.)
Wang Laboratories Inc
Original Assignee
Wang Laboratories Inc
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 Wang Laboratories Inc filed Critical Wang Laboratories Inc
Publication of DE1499281B1 publication Critical patent/DE1499281B1/de
Pending 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/498Computations with decimal numbers radix 12 or 20. using counter-type accumulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • 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/544Methods 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 for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions
    • 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/3001Arithmetic instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Complex Calculations (AREA)

Description

1 2
Die vorliegende Erfindung betrifft eine Rechen- ten 1 — 1/RA multipliziert wird, bis sie kleiner als 1
maschine für logarithmische Rechnungen mit zwei geworden ist, anschließend die kleiner als 1 gewor-
Rechenwerken, einem Leitwerk und einer Vergleichs- dene Zahl so oft mit der Konstanten 1 + 1/RA+1
schaltung. multipliziert wird, bis die gespeicherte Zahl größer
Bekanntlich können bei Verwendung von Log- 5 als 1 geworden ist, anschließend die größer als 1 ge-
ariihmen viele Rechenvorgänge, insbesondere höhere wordene Zahl so oft mit der Konstanten 1 — 1/RA+2
Rechenoperationen, vereinfacht werden. Logarith- multipliziert wird, bis die gespeicherte Zahl wieder
mische Rechnungen ließen sich bisher mit Rechen- kleiner als 1 geworden ist usf., bis der Unterschied
maschinen jedoch nur ungenau oder mit großem zwischen der im ersten Register gespeicherten Zahl
apparativem Aufwand durchführen. io und 1 kleiner als ein vorgegebener Wert ist.
Es ist bekannt, logarithmische Rechnungen mit Bei der Erzeugung des Logarithmus einer Zahl Digitalrechnern, in deren Speicherwerk Logarithmen- wird, kurz gesagt, diese Zahl in ein Produkt von vortafeln gespeichert sind, durchzuführen. Dies erfordert gegebenen Konstanten zerlegt, und der gewünschte schon bei mäßigen Genauigkeitsanforderungen eine Logarithmus wird dadurch gebildet, daß die Logunverhältnismäßig große Speicherkapazität. 15 arithmen der das Produkt bildenden Konstanten
Es sind ferner Binärzahl-Rechenmaschinen mit summiert werden. Die Konstanten haben vorzugs-
Mantissenwerken bekannt, die aus komplizierten weise die Form 1 + l/RA, dabei ist^4 eine ganze Zahl
Diodenmatrizen bestehen. Auch hier ist der Aufwand und R die Grundzahl des Zahlensystems, dem die
an Bauelementen und Rechenoperationen verhältnis- Zahl angehört, deren Logarithmus gebildet werden
mäßig hoch. 20 soll. Bei Verwendung solcher Konstanten kann die
Weiterhin ist es bekannt, einen Näherungswert des Produktbildung durch eine Verschiebung und einen Logarithmus zur Basis 2 einer Zahl dadurch zu er- einzigen Additions- oder Subtraktionsschritt durchzeugen, daß man die betreffende Zahl im binären geführt werden. Bei Rechnungen im Dezimalsystem Zahlensystem darstellt, die 1 in der höchsten Stelle können die Konstanten unter anderem also die dieser Zahl vernachlässigt, den Rest der Zahl als die 25 Werte 0,9, 1,01, 0,999 usw. haben. Der Algorithmus, auf das Komma folgenden Ziffern eines Binärbruches nach dem die vorliegende Rechenmaschine arbeitet, ansieht und diesen Binärbruch als die Mantisse des wird an Hand der Beschreibung eines Ausführungsgesuchten Logarithmus verwendet. Die Zweierpotenz beispiels noch näher erläutert. Beim gegenwärtigen des Stellenwertes der vernachlässigten 1 wird als Entwicklungstand der Verknüpfungsglieder läßt sich Kennziffer verwendet. Dieses Verfahren genügt je- 30 der Logarithmus einer Zahl in weniger als 50MiIIidoch keinen höheren Genauigkeitsansprüchen. Sekunden erzeugen.
Der vorliegenden Erfindung liegt dementsprechend Antilogarithmen (also Numeri aus Logarithmen)
die Aufgabe zugrunde, eine Rechenmaschine für log- lassen sich mit einer abgeänderten Steuerung der
arithmische Rechnungen anzugeben, die nur einen Rechenmaschine ebenfalls erzeugen,
geringen apparativen Aufwand, insbesondere ein sehr 35 Die erzeugten Logarithmen werden in digitaler
kleines Speicherwerk, erfordert und logarithmische Form gespeichert, so daß sie je nach den durch-
Rechnungen der verschiedensten Art mit sehr hoher zuführenden mathematischen Operationen für eine
Genauigkeit durchzuführen gestattet. unmittelbare Weiterverarbeitung oder gewünschten-
Diese Aufgabe wird gemäß der Erfindung bei falls auch für eine zeitweilige Übertragung in einen einer Rechenmaschine für logarithmische Rechnun- 40 HilfsSpeicher zur Verfügung stehen. Die Rechengen mit zwei Rechenwerken, einem Leitwerk und maschine gemäß der Erfindung erlaubt die Durcheiner Vergleichsschaltung dadurch gelöst, daß das führung von Additionen, Subtraktionen, Mulitplikaerste Rechenwerk ein erstes Register, eine Schaltungs- tionen, Divisionen, Exponentialrechnungen sowie ein anordnung zum Erzeugen eines um A Stellen ver- Arbeiten mit doppelten Logarithmen (log log). Trotz schobenen Wertes einer im ersten Register gespei- 45 dieser vielfältigen Möglichkeiten kann die vorliegende cherten Zahl, und ein Addier-Subtrahier-Werk zum Rechenmaschine als kompakte Tischrechenmaschine Addieren bzw. Subtrahieren der stellenverschobenen ausgeführt werden.
Zahl zu bzw. von der im ersten Register gespeicher- Bezüglich der Weiterbildungen und Ausgestaltunten Zahl unter Erzeugung eines Resultates, das gleich gen der Erfindung wird auf die Unteransprüche verdem Produkt aus der im ersten Register gespeicher- 50 wiesen.
ten Zahl mit einer Konstanten der Form 1 + 1/RA Ein Ausführungsbeispiel der Erfindung wird im
ist, daß das zweite Rechenwerk ein zweites Register folgenden an Hand der Figuren näher erläutert, es
zur Akkumulation der Logarithmen der jeweiligen zeigt
Konstanten, die in einem Konstantenspeicher ge- Fig. 1 eine schematische Darstellung der eine
speichert sind, enthält, daß die mit dem ersten Re- 55 Tastatur enthaltenden Vorderseite einer beispiels-
gister koppelbare Vergleichsschaltung an das Leit- weisen Rechenmaschine, und
werk ein Signal liefert, das anzeigt, ob die im ersten Fig. 2 ein Blockschaltbild, das den logischen AufRegister gespeicherte Zahl durch einen Additions- bau einer beispielsweisen Rechenmaschine zeigt,
bzw. Subtraktionsvorgang größer bzw. kleiner als 1 Fig. 1 zeigt vereinfacht ein Steuerpult 10 einer geworden ist, und daß das Leitwerk bei Einstellung 60 Tisch- oder Bürorechenmaschine. Das Steuerpult entder Maschine auf den Betriebszustand »Logarith- hält Anzeigeeinrichtungen 12 a, 14 a, 16 a für drei mieren«, bei welchem im zweiten Register der Log- Register, nämlich ein Akkumulatorregister 12, ein arithmus der in das erste Register eingegebenen Zahl Eingangsregister 14 und ein Logarithmenregister 16. gebildet wird, unter Steuerung durch das von der Die Anzeige kann mittels elektronischer Einrichrun-Vergleichsschaltung erzeugte Signal bewirkt, daß die 65 gen, ζ. B. Kathodenstrahköhren oder Ziffernanzeigeim ersten Register gespeicherte Zahl, solange sie Glimmentladungsröhren erfolgen,
größer als 1 ist, so oft durch Subtraktion ihres um Außer den Anzeigeeinrichtungen der Register ent- A Stellen verschobenen Wertes mit der Konstan- hält das Steuerpult eine Anzahl von Steuereinrichtun-
gen, insbesondere Tasten. Im mittleren Bereich be- anderen erfolgt über Torschaltungen 68 α, 68 & bzw. rindet sich ein Tastenfeld 30' zur Eingabe von Dezi- 68 c und Leitungen 78 α, 78 & bzw. 78 c.
malzahlen in das Eingangsregister 14, es enthält zehn Selbstverständlich können in der Praxis die verTasten, die mit 30-1 bis 30-0 bezeichnet sind und schiedensten Addierwerke verwendet werden, und entsprechende Ziffernwerte tragen. Es sind außerdem 5 zwar sowohl Serienaddierwerke als auch Parallelnoch eine Anzahl von Funktionstasten vorgesehen, addierwerke, und auch die Übertragungssteuerung nämlich eine Additionstaste 32, eine Subtraktions- kann in der verschiedensten Weise ausgebildet sein, taste 34, eine Multiplikationstaste 36, eine Divisions- Die Daten werden in das Register 14 von einer taste 38, eine Quadrattaste 40, eine Reziprokquadrat- dem Tastenfeld 30' zugeordneten Umsetzer- und taste 42, eine Quadratwurzeltaste 44 und eine Rezi- io Steuereinheit 30 oder von einer getrennten Eingangsprokquadratwurzeltaste 46. Eine dritte Tastengrappe einrichtung, z. B. einer Bandstation, über eine Adresdient zur Übertragung von Daten zwischen den siereinheit 80 zugeführt, die die eingegebenen Daten Registern 12, 14, 16. Durch einen Druck auf die -über Leitungen 82 in entsprechende Stufen 70 des Taste 50 wird der im Eingangsregister 14 gespeicherte Registers 14 leitet. Die Eingangsdaten können auch Wert in den entsprechenden Logarithmus verwandelt 15 programmierte Steuerbefehle enthalten. Die erste und im Register 16 gespeichert, praktisch in der Ziffer, die durch einen üblichen Umsetzer in der dem gleichen Weise wie bei Betätigung der Multiplikations- Tastenfeld 30' zugeordneten Steuereinheit 30 in einen taste 36. Bei der Betätigung der Taste 52 wird im geeigneten Binärcode umgewandelt wurde, wird unter Akkumulatorregister 12 der Antilogarithmus der im Steuerung durch die Adressiereinheit 80 in die der Logarithmusregister 16 gespeicherten Zahl erzeugt, ao höchsten Stelle zugeordnete Stufe eingeführt, die Durch die Taste 54 kann der Inhalt des Logarithmus- nächste Ziffer in die der zweithöchsten Stelle zugeregistersl6 direkt, also ohne logarithmische Um- ordnete Stufe usw. Die Kommataste 60 steuert das Wandlung, in das Eingangsregister 14 übertragen Weiterschalten eines Dezimalkomma-Speicherregisters werden, während bei Betätigung der Taste 56 der 84. Dieses Register wird für jede eingegebene Ziffer Inhalt des Akkumulatorregisters 12 ohne logarith- 25 durch ein Signal auf einer Leitung 86 von der Steuermische Umwandlung in das Logarithmusregister 16 einheit 30 weitergeschaltet, bis die Taste 60 gedrückt übertragen wird. wird, was auf einer Leitung 88 ein Signal entstehen
Es ist außerdem eine Dezimalkommataste 60 vor- läßt, das das Weiterschalten beendet. Der Inhalt des gesehen, die es gestattet, die Lage des Kommas in Registers 84 gibt dann die Dezimalstellen der in das der in das Register 14 eingegebenen Zahl zu be- 30 Register 14 eingegebenen und durch die Anzeigeeinstimmen. Eine Reihe von Tasten 62, 64 ermöglichen richtung 14 α wiedergegebenen Zahl an. Gewünschteneine Übertragung zwischen dem Logarithmusregister 16 falls kann auch das Komma dargestellt werden. Wenn und Hilfsregistern, wobei die Tasten 62 die Ubertra- die ia das Register 14 einzugebende Zahl kleiner als gung vom Logarithmusregister in die Hilf sregister und 1 ist, wird die Kommataste 60 gedruckt, bevor die Tasten 64 die Übertragung von den zugehörigen 35 irgendwelche Werte durch die Steuereinheit 30 einge-Hilfsregistern in das Logarithmusregister 16 steuern. führt werden, worauf dann die Ziffern der Zahl ein-
Die in F i g. 2 dargestellte Schaltungsanordnung schließlich aller Nullen serienmäßig eingegeben
der Rechenmaschine enthält die drei erwähnten Re- werden.
gister 12, 14 und 16, welche als Schieberegister aus- Die Rechenmaschine enthält außerdem eine gebildet sind und jeweils eine entsprechende Anzahl 40 Programmiereinheit oder ein Leitwerk 90, das durch von Stufen 70 α, 70 δ bzw. 70 c enthalten. Mit den die Tasten 32, 34, 36, 38, 40, 42, 44, 46 steuerbar Schieberegistern 12, 14 bzw. 16 ist jeweils ein Dezi- ist, ferner einen Konstantenspeicher 92 für logarithmaladdierwerk 72 a, 72 & bzw. 72 c gekoppelt, das in mische Konstanten und einen Logarithmusmodifizierüblicher Weise aufgebaut sein kann und mit einer kreis 94. Das Leitwerk 90 bestimmt entsprechend der Steuerstufe 74 α, 746 bzw. 74 c verbunden ist, die 45 betätigten Operationstaste, welche Rechenoperation bestimmt, ob das betreffende Addierwerk eine Addi- auszuführen ist, und steuert die Additions-Subtraktion oder Subtraktion durchzuführen hat. Wenn die tions-Steuerstufen 74, die den Registern 14, 16 zuge-Rechenmaschine Dezimalzahlen verarbeiten soll, ent- ordnet sind, eine dem Register 14 zugeordnete Verhält jede Stufe 70 a, 70 b bzw. 70 c vier Flip-Flops bzw. zögerungseinheit 96 und nach Wunsch den Modifi-Stufen zur Speicherung von Signalen in binärcodiertei 50 zierkreis 94, um den Inhalt der beiden Register 14, Dezimalform. Bei der Durchführung von Additionen 16 zu verändern.
oder Subtraktionen (was durch die Steuerstufen 74 α, Der Speicher 92 speichert die Logarithmen von
74 b bzw. 74 c bestimmt wird) werden dem betreffen- vorher festgelegten Konstanten, die in einer Beziehung
den Addierwerk 72 a, 72 b bzw. 72 e einerseits über zur Grundzahl des Zahlensystems stehen, das bei der
eine Leitung 76a, 76 b bzw. 76c eine Signalfolge, die 55 Rechenmaschine verwendet wird, im vorliegenden
dem Addenden (bzw. Subtrahenden) entspricht, und Falle also das Dezimalsystem. Die Basis dieser Lo-
andererseits eine aus der letzten Stufe L des betreffen- garithmen ist beliebig und kann beispielsweise die
den Registers herausgeschobene Signalfolge, die dem Zahl e sein. Beim vorliegenden Ausführungsbeispiel
Augenden (bzw. Minuenden) entspricht, serienmäßig werden folgende Werte verwendet:
zugeführt, und die im Addierwerk dabei gebildeten 60
Ergebnisziffern werden in die der höchsten Stelle des
betreffenden Registers entsprechende Stufe M eingegeben und dann mit den anderen gespeicherten
Signalen im Register verschoben. Nach einer vollständigen Verschiebung des Registerinhaltes ist dann 65
das Resultat, also die Summe oder Differenz, im Register gespeichert.
Eine Übertragung von einem Register zu einem
Konstante Logarithmus
10 2,302585093
2 0,693147181
0,9 0,105360516
1,01 0,009950331
0,999 0,001000500
1,0001 0,000099995
Es ist ersichtlich, daß die letzten vier Konstanten die Form 1 ± 1/BA haben, wobei R = 10 und A der Reihe nach gleich den ganzen Zahlen 1, 2, 3 bzw. 4 ist. Jeder unter Steuerung durch das Ausgangssignal des Leitwerkes 90 auf der Leitung 98 aus dem Speieher 92 herausgelesene Logarithmus wird über eine Leitung in einem Kabel 100 und den Modifizierkreis 94 dem Addierwerk 72 zugeführt, um den Inhalt der Register 16 in einer Additions- oder Subtraktionsoperation, die ebenfalls durch das Leitwerk 90 ge- ίο steuert wird, zu verändern. Das Leitwerk 90 veranlaßt auch, daß der Inhalt des Registers 14 bei einer Multiplikationsoperation durch die Konstanten verändert wird. Ein Flip-Flop 102 und ein ODER-Kreis 104 steuern das Weiterschalten des Leitwerkes 90, und das Flip-Flop wird in Abhängigkeit von einer Änderung des Wertes der in einem der Register 14 oder 16 gespeicherten Größen betätigt. Diese Änderungsoperationen sind zwar koordiniert, können jedoch in der verschiedensten Weise durchgeführt werden, beispielsweise praktisch gleichzeitig, oder eine Änderungsoperation kann vollendet werden und die andere dann begonnen und als Funktion der ersten durchgeführt werden.
Nachdem eine Zahl in das Register 14 eingegeben worden ist, wird die Taste für die gewünschte Operation gedrückt. Angenommen, es sei der Logarithmus der eingegebenen Zahl zu bilden und das Logarithmusregister 16 sei leer. Bei Betätigung der Taste 50 wird dem Leitwerk 90 ein Impuls über den ODER-Kreis 104 zugeführt, worauf das Leitwerk Steuersignale für den ersten Schritt der Logarithmusbildung erzeugt. Der erste Schritt besteht darin, die Dezimalstelle in der für die Operation erforderlichen Weise einzustellen, so daß die im Register 14 gespeicherte Zahl zwischen 0,1 und 1,0 liegt. Dies erfolgt durch einen Verschiebungsvorgang, für den beispielsweise der Verzögerungskreis 96 verwendet werden kann. Eine Verschiebung um eine Stelle nach links entspricht einer Multiplikation um den Faktor 10, während eine entsprechende Verschiebung nach rechts einer Division durch 10 entspricht. Bei dem vorliegenden Ausführungsbeispiel wird gleichzeitig mit jeder Verschiebung eine entsprechende Subtraktion (oder Addition) des Logarithmus der Grundzahl, nämlich von 10 zu dem Inhalt des Logarithmusregisters 16 durchgeführt.
Die Verschiebungoperationen werden fortgesetzt, und bei jeder Verschiebung wird der Inhalt des Dezimalkommaregisters über eine Leitung 106 von einer Abfrageeinrichtung 108 geändert, bis das Kommaregister 84 auf Null schaltet und dabei dann ein Ausgangssignal auf einer Leitung 110 auftritt. Dieses Ausgangssignal setzt über ein Kabel 112 das Flip-Flop 102, und durch dessen Umschalten wird das Leitwerk 90 über den ODER-Kreis 104 weitergeschaltet. Eine andere Möglichkeit besteht darin, daß die Verschiebungsoperationen fortgesetzt werden, bis die der höchsten Stelle M zugeordnete Stufe 120 des Registers 14 den Wert Null und die nächste Stufe 122 einen von Null verschiedenen Wert speichern. Beim Auftreten dieses Zustandes wird das Flip-Flop 102 durch ein Signal über eine Leitung 124 und das Kabel 112 gesetzt und das Leitwerk 90 auf Schritt 2 weitergeschaltet. Das nächste Ausgangssignal vom Leitwerk 90 setzt das Flip-Flop 102 über eine Leitung 126 in Vorbereitung für den nächsten Leitwerkschrittimpuls zurück.
Wenn der Inhalt des Registers 14 richtig eingeordnet ist, wird die betreffende Zahl mit 2 multipliziert. Diese Operation (Leitwerkschritt 2) erfolgt dadurch, daß der Inhalt des Registers 14 zu sich selbst hinzuaddiert wird. Sobald die der höchsten Stelle entsprechende Stufe 120 des Registers 14 einen von Null verschiedenen Wert speichert, wird auf der Leitung 124 ein Signal erzeugt, das das Leitwerk 90 auf Schritt 3 weiterschaltet. Gleichzeitig mit jeder Multiplikation des Inhaltes des Registers 14 wird der Logarithmus von 2 vom Inhalt des Logarithmusregisters 16 abgezogen.
Beim Schritt 3 bewirkt das Leitwerk eine Multiplikation des Inhaltes des Registers 14 mit der Konstanten 0,9 und eine entsprechende Addition des Logarithmus von 0,9 zum Inhalt des Logarithmusregisters 16. Dieser Multiplikationsvorgang (X0,9) kann mit einer einzigen Addierwerkoperation durchgeführt werden, bei der der zehnte Teil der im Register 14 gespeicherten Größe von dieser Größe abgezogen wird. Der zehnte Teil dieser Größe wird durch eine Verschiebung um eine Stelle unter Steuerung durch den Verzögerungskreis 96 und durch Einführen der verzögerten Größe über das Addierwerk 72 in einem Subtraktionsvorgang bewirkt. Wenn der Inhalt der Stufe 120 zu Null wird, schaltet das Ausgangssignal auf der Leitung 124 das Leitwerk 90 auf Schritt 4.
Die Änderungsoperation wird in entsprechender Weise fortgesetzt, indem mit den Konstanten
1,01 (1 +1/102); 0,999 · (1 - 1/10»)
usw. multipliziert wird, bis der Inhalt des Registers 14 mit einer bestimmten Genauigkeit an Eins angenähert ist. (Wenn die Konstante 0,99999 [Schritt 7] erreicht ist, kann die Differenz zwischen dem Inhalt des Registers 14 und 1 direkt zum Inhalt des Logarithmusregisters 16 addiert werden.) Die im Logarithmusregister gespeicherte Größe ist dann der Logarithmus der ursprünglich im Register 14 gespeicherten Zahl. In der folgenden Tabelle sind als Beispiel für eine solche Operation die Schritte zur Erzeugung des natürlichen Logarithmus der Zahl 2,10 durch die oben beschriebene Einrichtung aufgeführt:
Leitwerk
schritt
Konstante Register 14 Register 16
2,100000 0,00000
1 X 0,1 0,210000 2,30259
2 X2 0,420000 1,60944
2 X2 0,840000 0,91629
2 X2 1,680000 0,22314
3 X 0,9 1,512000 0,32850
3 X 0,9 1,3608 0,43389
3 X 0,9 1,22472 0,53922
3 X 0,9 1,102248 0,64458
3 X 0,9 0,992024 0,74994
4 Xl5Ol 1,001944 0,73999
5 X 0,999 1,000943 0,74099
5 X 0,999 0,999943 0,74199
6 X 1,0001 1,000042 0,74189
7 X 0,99999 1,000032 0,74190
7 X 0,99999 1,000022 0,74191
7 X 0,99999 1,000012 0,74192
7 X 0,99999 1,000002 0,74193
In das Register 14 wird nun die nächste Größe mittels des Tastenfeldes 30' od. dgl. eingegeben. Wenn eine Multiplikation auszuführen ist, wird der Logarithmus dieser Größe in der beschriebenen Weise gebildet, wobei er zu dem Logarithmus hinzuaddiert wird, der bereits im Logarithmusregister 16 gespeichert ist, während bei einer Division die Schritte zur Erzeugung des Logarithmus der zweiten Größe in komplementärer Folge durchgeführt werden, so daß dieser Logarithmus praktisch von dem im Logarithmusregister 16 gespeicherten Wert abgezogen wird.
Wenn eine Zahl quadriert werden soll, verdoppelt der Modifizierkreis 94 bei Betätigung der entsprechenden Funktionstaste alle logarithmischen Werte, die vom Speicher 92 übertragen werden. In entsprechender Weise läßt sich eine Quadratwurzel unmittelbar dadurch erhalten, daß man die einzelnen logarithmischen Werte halbiert, die vom Speicher 92 in das Register 16 übertragen werden.
Wenn ein Logarithmus in den Numerus verwandelt werden soll (antilog), werden die Ubertragungsschritte umgekehrt, und das Register 14 wird anfänglich auf den Wert 1,0 eingestellt. Das Logarithmusregister 16 enthält den Logarithmus der Zahl, die im Register 12 erzeugt werden soll. Zuerst wird die Kennziffer des Logarithmus festgestellt und auf einen Wert kleiner als 0 eingestellt, indem mit einem ganzen Vielfachen von 10 multipliziert oder dividiert wird. Ein Ausgangssignal auf einer Leitung 130 von der der höchsten Stelle des Registers 16 entsprechenden Stufe schaltet das Leitwerk 90 weiter. Die Lage des Kommas wird gespeichert.
Dex Inhalt des Registers 14 wird dann mit 0,9 multipliziert, und der entsprechende logarithmische Wert wird zum Inhalt des Registers 16 hinzuaddiert, bis der Inhalt des Logarithmusregisters größer als 0 wird. Das Leitwerk 90 wird dann weitergeschaltet und bewirkt, daß der Inhalt des Registers 14 mit der Größe 1,01 multipliziert und der Logarithmus dieser Konstanten vom Inhalt des Logarithmusregisters 16 subtrahiert wird. Dies wird wiederholt, bis der Inhalt des Logarithmusregisters kleiner als 0 wird, worauf das Leitwerk 90 weitergeschaltet wird. Wenn das Register 16 in allen zählenden Stufen Nullen enthält, ist im Register 14 der Numerus des ursprünglich im Register 16 gespeicherten Logarithmus enthalten.
In der folgenden Tabelle sind die Schritte bei der Umwandlung der Zahl 4,23845 in ihren Numerus (Antilogarithmus) aufgeführt:
Fortsetzung der Tabelle
Leitwerk
schritt
Konstante Register 14 Register 16 Dezimal-
Komma-
stelle
1,000000 4,23845 0
1 0,1 1,000000 1,93586 1
1 0,1 1,000000 99,63327 2
2 0,9 0,900 99,73863 2
2 0,9 0,81 99,84399 2
2 0,9 0,729 99,94935 2
2 0,9 0,6561 00,05471 2
3 1,01 0,662661 00,04476 2
3 1,01 0,669287 00,03481 2
3 1,01 0,675979 00,02486 2
3 1,01 0,682738 00,01491 2
3 1,01 0,689565 00,00496 2
3 1,01 0,696460 99,99501 2
Leitwerk
schritt
Konstante Register 14 Register 16 Dezimal-
Komma-
stelle
4
4
4
4
4
0,999
0,999
0,999
0,999
0,999
0,695764
0,695069
0,694374-
0,693680
0,692987
99,99601
99,99701
99,99801
99,99901
00,00001
2
2
2
2
2
Der Antilogarithmus beträgt 69,2987.
Der Logarithmus eines Logarithmus kann dadurch erhalten werden, daß man den Inhalt des Registers 16 in das Register 14 überträgt und dann eine Übertragung bei gleichzeitiger Logarithmusbildung durchführt. Der Vorgang kann in entsprechender Weise
so umgekehrt werden, um Antilogarithmen zu bilden. Gewöhnliche Zahlen können in üblicher Weise mit Hilfe des Akkumulatorregisters 12 addiert oder subtrahiert werden. An Stelle der 3rei Addierwerke kann gewünschtenfalls ein im Zeitmultiplexbetrieb arbeitendes Addierwerk verwendet' werden. Es war auch bereits erwähnt worden, daß man außer einer Steuerung von Hand auch mit einer Programmsteuerung mittels eines Bandes arbeiten-kann, wenn beispielsweise die Rechenmaschine zur Durchführung einer verwickelten Operationsfolge gesteuert werden soll. Es ist auch möglich, von einem Band oder einem anderen Aufzeichnungsträger unverarbeitete Daten in die Rechenmaschine einzugeben, um eine Reihe von Rechnungen durchzuführen1. >:\"
Die Erfindung ermöglicht also die Erzeugung von Logarithmen einer Zahl mittels einer logischen Schaltungsanordnung, bei der Baueinheiten verwendet werden, wie sie in Computern üblich sind. Wie in Fig. 2 dargestellt ist, enthält das Gerät beispielsweise ein Akkumulatorregister 12 und ein Eingangsregister 14. Ein mit dem Akkumulatorregister 12 gekoppeltes Addierwerk ermöglicht, den Inhalt des Eingangsregisters 14 zum Inhalt des Akkumulatorregisters 16 in üblicher Weise zu addieren oder von diesem zu subtrahieren. Ein entsprechendes Addierwerk ist mit dem Eingangsregister gekoppelt, außerdem ist ein Logarithmusregister vorgesehen, dem ein entsprechendes Addierwerk zugeordnet ist. Das Gerät enthält ferner einen Speicher 92, in dem Logarithmen bestimmter Konstanten gespeichert sind, die die allgemeine Form 1 ± 11 RA haben, wobei R die Grundzahl des Zahlensystems und A eine ganze Zahl ist. Beim Dezimalsystem haben diese Konstanten die Werte 0,9, 1,01, 0,999 usw. Der Inhalt des Eingangsregisters kann mit Konstanten dieser Form multipliziert werden, indem einfach ein verschobener Wert des Inhalts des Registers zum ursprünglichen Inhalt addiert oder von diesem subtrahiert wird.
Bei der Erzeugung eines Logarithmus wird mit der ersten Konstanten eine Reihe von Multiplikationen durchgeführt, bis die im Eingangsregister gespeicherte Zahl kleiner als 1 geworden ist. Mit der zweiten Konstanten wird dann eine entsprechende Reihe von Multiplikationen ausgeführt, bis die Zahl im Eingangsregister wieder größer als 1 geworden ist. Anschließend wird dann wieder so lange mit der dritten Konstanten multipliziert, bis die Zahl im Eingangsregister wieder kleiner als 1 ist. Diese Multiplikations-
009 519/190
reihen werden wiederholt, bis der Unterschied zwischen 1 und der im Eingangsregister gespeicherten Zahl kleiner als eine vorgegebene Größe geworden ist. Gleichzeitig mit jedem unter Mitwirkung des Eingangsregisters 14 durchgeführten Multiplikationsvorgang wird der Inhalt des Logarithmusregisters ebenfalls verändert, indem der Logarithmus der bei der Multiplikation verwendeten Konstanten addiert wird, wenn die Konstante kleiner als 1 ist, während der Logarithmus der Konstanten subtrahiert wird, wenn diese größer als 1 ist.
Die gleichlaufenden Änderungen der Inhalte des Eingangsregisters 14 und Logarithmusregisters 16 werden durch das Leitwerk 90 gesteuert, das auf Änderungen des Inhaltes des Eingangsregisters von einem Wert kleiner als 1 auf einen Wert größer als 1 und umgekehrt anspricht und eine neue Konstante für die Änderungsoperation heranzieht. Wenn die Größe im Eingangsregister mit einer gewünschten Genauigkeit an 1 angenähert ist, entspricht die im Logarithmusregister gespeicherte Größe mit einer entsprechenden Genauigkeit dem Logarithmus der anfänglich im Eingangsregister enthaltenden Größe.
Antilogarithmen können durch Umkehrung dieses Verfahrens gebildet werden. Doppelte Logarithmen kann man dadurch erhalten, daß man den Logarithmus eines Logarithmus bildet. Potenzen lassen sich ebenfalls ohne Schwierigkeiten durch Verwendung einer logarithmischen Änderungseinrichtung 94 erhalten.
Das oben beschriebene Ausführungsbeispiel ist für Dezimalzahlen ausgelegt, selbstverständlich ist die Erfindung nicht auf ein Zahlensystem mit einer bestimmten Grundzahl beschränkt, sondern kann auch für Multiplikationen, Divisionen und andere höhere mathematische Operationen in einem Zahlensystem beliebiger Grundzahl verwendet werden. Die für die Rechenmaschine benötigte Speicherkapazität ist klein, da nur eine relativ kleine Anzahl bestimmter Logarithmen (bei dem beschriebenen Ausführungsbeispiel sieben) gespeichert werden müssen. Infolge des einfachen logischen Aufbaues läßt sich die Rechenmaschine in Form einer kompakten Tischrechenmaschine verwirklichen, mit der bequem sehr genaue Rechnungen ausgeführt werden können, wie es bisher nur mit viel größeren und aufwendigeren Maschinen möglich war. Die logische Anordnung gestattet mit Hilfe des Leitwerkes 90 und der Steuerung durch die Tastatur außer der Bildung von Logarithmen auch Additionen und Subtraktionen, die durch Übertragung zwischen dem Eingangsregister und dem Akkumulatorregister über die Gattereinheiten 68 durchgeführt werden, sowie entsprechende Übertragungen in nicht dargestellte Hilfsspeicherregister, was durch Tasten 62, 64 gesteuert wird. Die Rechenmaschine ermöglicht also ein rasches Durchführen einer Vielfalt von Operationen bei Eingabe und Programmsteuerung von Hand. Gewünschtenfalls kann mit der Maschine eine Folge von Operationen durchgeführt werden, die durch ein Band eingegeben wird, welches das Leitwerk 90 steuert. Die Rechenmaschine erlaubt also auch die Durchführung komplexer mathematischer Rechnungen. Selbstverständlich kann die Basis der im Speicher 92 gespeicherten Logarithmen irgendeinen beliebigen Wert haben, und die Rechnungen können auch in einem Zahlensystem mit einer von 10 verschiedenen Grundzahl durchgeführt werden.

Claims (4)

Patentansprüche:
1. Rechenmaschine für logarithmische Rechnungen mit zwei Rechenwerken, einer Vergleichsschaltung und einem Leitwerk, dadurch gekennzeichnet, daß das erste Rechenwerk (14, 68 δ, 72 b, 74 b, 76 b, 96) ein erstes Register (14), eine Schaltungsanordnung (68 b, 96) zum Erzeugen eines um A Stellen (A = 1, 2 ...) verschobenen Wertes einer im ersten Register gespeicherten Zahl, und ein Addier-Subtrahier-Werk (72 b, 74 b) zum Addieren bzw. Subtrahieren der stellenverschobenen Zahl zu bzw. von der im ersten Register gespeicherten Zahl unter Erzeugung eines Resultates, das gleich dem Produkt aus der im ersten Register gespeicherten Zahl mit einer Konstanten der Form 1 + 1/RA ist (R = Grundzahl des verwendeten Zahlensystems), daß das zweite Rechenwerk (16, 72 c, 74 c) ein zweites Register (16) zur Akkumulation der Logarithmen der jeweiligen Konstanten, die in einem Konstantenspeicher (92) gespeichert sind, enthält, daß die mit dem ersten Register koppelbare Vergleichsschaltung (102) an das Leitwerk (90) ein { Signal liefert, das anzeigt, ob die im ersten Register gespeicherte Zahl durch einen Additionsbzw. Subtraktionsvorgang größer bzw. kleiner als 1 geworden ist, und daß das Leitwerk (90) bei Einstellung der Maschine auf den Betriebszustand »Logarithmieren«, bei welchem im zweiten Register (16) der Logarithmus der in das erste Register (14) eingegebenen Zahl gebildet wird, unter Steuerung durch das von der Vergleichsschaltung (102) erzeugte Signal bewirkt, daß die im ersten Register (14) gespeicherte Zahl, solange sie größer als 1 ist, so oft durch Subtraktion ihres um A Stellen verschobenen Wertes mit der Konstanten 1 — 1/RA multipliziert wird, bis sie kleiner als 1 geworden ist, anschließend die kleiner als 1 gewordene Zahl so oft mit der Konstanten 1+1/RA+1 multipliziert wird, bis die gespeicherte Zahl größer als 1 geworden ist, anschließend die größer als 1 gewordene Zahl so oft mit der Konstanten 1 — 1/RA+2 multipliziert wird, bis die gespeicherte Zahl wieder kleiner als 1 geworden ist i usf., bis der Unterschied zwischen der im ersten Register gespeicherten Zahl und 1 kleiner als ein vorgegebener Wert ist.
2. Rechenmaschine nach Anspruch 1, dadurch gekennzeichnet, daß bei Einstellung der Maschine auf den Betriebszustand »Delogarithmieren«, bei welchem im ersten Register (14) der Antilogarithmus einer im zweiten Register (16) gespeicherten Zahl gebildet wird, im ersten Register (14) zu Beginn der Rechnung der Wert 1 gespeichert ist, die Vergleichsschaltung mit dem zweiten Register (16) gekoppelt ist und an das Leitwerk (90) ein Signal liefert, das anzeigt, ob die im zweiten Register gespeicherte Zahl größer oder kleiner als 0 ist und das Leitwerk unter Steuerung durch das von der Vergleichsschaltung (102) erzeugte Signal bewirkt, daß, solange die im zweiten Register (16) gespeicherte Zahl kleiner als 1 ist, die im ersten Register gespeicherte Zahl durch Subtraktion ihres um A Stellen verschobenen Wertes mit der Konstanten 1 — 1JRA so oft multipliziert und gleichzeitig zu der im zweiten Register (16) gespeicherten Zahl so oft der Logarithmus der Konstanten 1 — 1/RA addiert wird, bis die im
zweiten Register gespeicherte Zahl größer als O geworden ist, daß dann die im ersten Register gespeicherte Zahl durch Addition ihres um A + 1 Stellen verschobenen Wertes mit der Konstanten 1 + 1/RA+1 so oft multipliziert und jeweils gleichzeitig von der im zweiten Register (16) gespeicherten Zahl der Logarithmus der Konstanten 1+1/RA+1 abgezogen wird, bis die im zweiten Register gespeicherte Zahl wieder kleiner als 1 geworden ist usw., bis der Unterschied zwischen der im zweiten Register gespeicherten Zahl und 0 kleiner als vorgegebener Wert geworden ist.
3. Rechenmaschine nach Anspruch 1 oder 2, gekennzeichnet durch eine Kommasteuerung (84,
108; 102, 120) zur Multiplikation bzw. Division der im ersten Register (14) gespeicherten Zahl mit dem bzw. durch den Faktor R und zur gleichzeitigen Subtraktion bzw. Addition des Logarithmus von R von bzw. zu der im zweiten Register (16) gespeicherten Zahl.
4. Rechenmaschine nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, daß der Konstantenspeicher (92) mit dem zweiten Rechenwerk (16, 72 c, 74 c) über eine Einrichtung (94) gekoppelt ist, in der die aus dem Konstantenspeicher herausgelesenen Logarithmen vor ihrer Einführung in das zweite Register (16) mit einem vorgegebenen Faktor multipliziert werden.
Hierzu 1 Blatt Zeichnungen
DE19651499281 1964-09-22 1965-09-17 Rechenmaschine fuer logarithmische Rechnungen Pending DE1499281B1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US398254A US3402285A (en) 1964-09-22 1964-09-22 Calculating apparatus

Publications (1)

Publication Number Publication Date
DE1499281B1 true DE1499281B1 (de) 1970-05-06

Family

ID=23574642

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19651499281 Pending DE1499281B1 (de) 1964-09-22 1965-09-17 Rechenmaschine fuer logarithmische Rechnungen

Country Status (6)

Country Link
US (1) US3402285A (de)
CH (1) CH463155A (de)
DE (1) DE1499281B1 (de)
GB (1) GB1071726A (de)
NL (1) NL141307B (de)
SE (1) SE342923B (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4198684A (en) * 1964-06-26 1980-04-15 Hewlett-Packard Company Electronic calculator with keyboard-controlled unary function capability
US4309761A (en) * 1964-06-26 1982-01-05 Hewlett-Packard Company Calculator for evaluating numerical answers to problems
US3509329A (en) * 1966-10-24 1970-04-28 Wang Laboratories Calculator
US3610901A (en) * 1969-09-09 1971-10-05 Emerson Electric Co Digital modified discrete fourier transform doppler radar processor
US4051356A (en) * 1971-10-23 1977-09-27 Casio Computer Co., Ltd. Keyboard controlled data converter
US3860808A (en) * 1972-05-09 1975-01-14 Sony Corp Electronic computer system
GB1479718A (en) * 1973-08-02 1977-07-13 Ditmore H Data processing system
JPS5911151B2 (ja) * 1974-06-25 1984-03-13 カブシキガイシヤ ニツポンジドウシヤブヒンソウゴウケンキユウシヨ デジタル式対数関数発生装置
US4078250A (en) * 1974-08-21 1978-03-07 The Singer Company Log-antilog conversion for a digital radar system
US4058708A (en) * 1975-12-05 1977-11-15 Msi Data Corporation Bar code reader and decoder
US4092523A (en) * 1976-08-16 1978-05-30 Paul Tava Conversion calculator
US4218760A (en) 1976-09-13 1980-08-19 Lexicon Electronic dictionary with plug-in module intelligence
US5337266A (en) * 1987-12-21 1994-08-09 Arnold Mark G Method and apparatus for fast logarithmic addition and subtraction
US5359551A (en) * 1989-06-14 1994-10-25 Log Point Technologies, Inc. High speed logarithmic function generating apparatus
US5197024A (en) * 1989-06-14 1993-03-23 Pickett Lester C Method and apparatus for exponential/logarithmic computation
WO1994018632A1 (en) * 1993-02-01 1994-08-18 Lester Caryl Pickett Low latency function generating apparatus and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1124740B (de) * 1958-09-16 1962-03-01 Inst Regelungstechnik Schaltung und Steuerung von Mantissenwerken in Binaerzahl-Rechenmaschinen

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3099742A (en) * 1959-03-13 1963-07-30 Westinghouse Air Brake Co Digital flow computer employing a logarithmic mode of computation
US3141963A (en) * 1959-07-06 1964-07-21 Wissenschaftlich Tech Buro Fur Circuits and control for mantissa devices in binary computing machines

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1124740B (de) * 1958-09-16 1962-03-01 Inst Regelungstechnik Schaltung und Steuerung von Mantissenwerken in Binaerzahl-Rechenmaschinen

Also Published As

Publication number Publication date
NL141307B (nl) 1974-02-15
NL6512342A (de) 1966-03-23
SE342923B (de) 1972-02-21
CH463155A (de) 1968-09-30
US3402285A (en) 1968-09-17
GB1071726A (en) 1967-06-14

Similar Documents

Publication Publication Date Title
DE2246968C2 (de) Einrichtung zur Multiplikation zweier Gleitkommazahlen
DE1499281B1 (de) Rechenmaschine fuer logarithmische Rechnungen
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE1956209C3 (de) Multipliziervorrichtung
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE1282337B (de) Programmgesteuerte elektronische Rechenanlage
DE1146290B (de) Elektronisches Datenverarbeitungssystem
DE2353421B2 (de) Elektronischer rechner
DE1236834B (de) Rechengeraet
DE2902496A1 (de) Digitale datenmultiplikationsanordnung
EP0265555B1 (de) Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen
DE2743575A1 (de) Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl
DE1499174B1 (de) Dividiervorrichtung fuer Digitalrechner
DE3340362C2 (de)
DE2203143C3 (de) Rechenanordnung zum Dividieren von Dezimalzahlen
DE1125685B (de) Rechenmaschine
DE1499281C (de) Rechenmaschine für logarithmische .Rechnungen
DE1909475A1 (de) Im Serienbetrieb arbeitende Umlauf-Datenspeicher- und -verarbeitungseinrichtung
DE1103646B (de) Inkrement-Rechenmaschine
DE1181459B (de) Multiplikationsschaltung fuer elektronische Zifferrechenmaschinen
DE1965830B2 (de) Vorrichtung zur Eingabe einer Dezimalzahl mit wählbarer Kommastelle in eine Rechenmaschine
DE19635111A1 (de) Multiplizierer
DE1101818B (de) Rechenmaschine zur Ausfuehrung von Divisionen und Multiplikationen
DE1934441B2 (de) Befehlswerkgesteuertes rechenwerk fuer einen digitalrechner
DE2158833B2 (de) Einrichtung an einem tastenbetätigten Elektronenrechner zur Durchführung von Reihenberechnungen

Legal Events

Date Code Title Description
E77 Valid patent as to the heymanns-index 1977