DE2855003A1 - Prozessor fuer ein datum darstellende daten - Google Patents
Prozessor fuer ein datum darstellende datenInfo
- Publication number
- DE2855003A1 DE2855003A1 DE19782855003 DE2855003A DE2855003A1 DE 2855003 A1 DE2855003 A1 DE 2855003A1 DE 19782855003 DE19782855003 DE 19782855003 DE 2855003 A DE2855003 A DE 2855003A DE 2855003 A1 DE2855003 A1 DE 2855003A1
- Authority
- DE
- Germany
- Prior art keywords
- date
- content
- memory
- difference
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Calculators And Similar Devices (AREA)
- Complex Calculations (AREA)
- Input From Keyboards Or The Like (AREA)
Description
■" ο **
Die Erfindung betrifft einen Prozessor für ein Datum darstellende Daten. Ein solches Datum wird gebildet durch einen
Tag, einen Monat und ein Jahr. Ein Prozessor dieser Art ist Bestandteil eines elektronischen Tischrechners, der in der Lage
ist, mit derartigen Daten, die ein bestimmtes Datum darstellen, bestimmte Rechenoperationen vorzunehmen.
Ein kleinformatiger Rechner zur Verarbeitung derartiger Daten als Tischrechner ist bereits vorgeschlagen worden. Bei ihm
werden die eingegebenen ein Datum darstellenden Daten auf der Basis der Differenz des eingegebenen Datums zu einem Bezugsdatum
verarbeitet. Wenn ein unrealistisches Datum, z.B. der erste Tag des 13. Monats 1978 oder der 29. Februar 1978 fälschlicherweise
in den Rechner eingegeben wird, dann werden diese Daten jedoch verarbeitet, ohne zu überprüfen, ob sie falsch oder richtig sind.
Es ergibt sich demgemäß ein falsches Ergebnis. Ein herkömmlicher
Rechner, der ausgelegt ist, ein solches Problem zu lösen, vergleicht nacheinander Tag, Monat und Jahr der eingegebenen Daten
mit den in einem Rechner gespeicherten richtigen Daten, um so herauszufinden, ob das eingegebene Datum tatsächlich existiert
oder nicht. Insbesondere wird zuerst überprüft, ob das eingegebene
Jahr bzw. die sich darauf beziehenden Daten tatsächlich berechenbar sind. Es wird dann auch berechnet, ob die sich auf einen
Monat beziehenden Daten im Bereich von 1 bis 12 liegen. Schließlich werden die Daten, die sich auf einen Tag beziehen, auf der Basis
der Ergebnisse der Überprüfungen von Jahr und Monat geprüft. Bei Überprüfung der sich auf einen Tag beziehenden Daten ist es notwendig
zu prüfen, ob das Jahr ein Schaltjahr ist oder nicht, da davon abhängt, ob der Februar 28 oder 29 Tage hat und demgemäß
der letzte Tag der 28.te oder 29.te ist. Daher muß ein herkömmlicher
Rechner zur Lösung dieser Aufgabe eine große Anzahl von Daten als Bezugsdaten für einen solchen Vergleich speichern. Diese Tatsache
belastet sehr die Herstellungskosten und die Größe eines Prozessors dieser Art, der als Tischrechner eingesetzt werden soll.
909828/0677
-H-
Demgemäß ist es Aufgabe der Erfindung, einen Datenprozessor zu
schaffen, der in der Lage ist, zu beurteilen, ob ein eingegebenes Datum bzw. die dieses Datum darstellende Daten, die verarbeitet
werden sollen, realistisch ist oder nicht, wobei diese Feststellung mit einem erheblich geringeren Aufwand an fest im
Prozessor gespeicherten Daten möglich sein soll. Dabei soll dies insbesondere so möglich sein, daß ein kleinformatiger
elektronischer Tischrechner geschaffen wird, innerhalb dessen eine Überprüfungsfunktion hinsichtlich von eingegebenen Datumsdaten gegeben ist.
Diese Aufgabe wird durch die im Patentanspruch 1 angegebenen Merkmale gelöst. Die Lösung kann man so zusammenfassen:
In einem ersten Speicher werden die ein Datum darstellenden Daten, die verarbeitet werden sollen, gespeichert. Es sind dann
Mittel vorgesehen, um die Differenz dieses eingegebenen zu verarbeitenden Datums gegenüber einem Bezugsdatum zu berechnen. Die
Berechnung erfolgt in Tagen. Es sind dann ferner Mittel vorgesehen, um ein invers-berechnetes Datum zu ermitteln. Dies er-
ebenfails
folgt durch i.nverse Berechnung eines Datums mit Hilfe der Berechnung
der Differenz in Tagen. Das Ergebnis wird dann in einem zweiten Speicher gespeichert. Schließlich sind Mittel vorgesehen,
um den Inhalt des ersten Speichers mit dem Inhalt des zweiten Speichers zu vergleichen. Sind beide Speicherinhalte gleich, so
ist das Datum realistisch. Die gewünschten Operationen können dann ungestört ablaufen. Ist das Datum nicht realistisch, erfolgt
eine Anzeige und/oder der Ablauf der an sich vorgesehen Rechenoperationen wird blockiert.
Ein Ausführungsbeispiel der Erfindung wird im folgenden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben:
909828/0677 " 5 "
Es stellen dar;
2855009
Fig. 1 ein Blockschaltbild eines Ausführungs
Fig. 2 ein Flußdiagramm zur Erläuterung der
Operation des Datenprozessors nach Fig. 1, und
Fig. 3. ein Flußdiagramm zur Erläuterung der inver-
sen Berechnung eines Datums.
909828/0677 " 5
Fig. 1 zeigt ein Blockschaltbild eines bevorzugten Ausführungsbeispiels einee Prozessors für Datumsangaben. Die Daten, die
die Datumsangaben darstellen, werden durch eine Tastatur 1 eingegeben und durch einen Konverter 2 in numerische Daten konvertiert.
Diese numerischen Daten werden dann in einen Datumsspeicher 4 über ein Verknüpfungsglied 3 bei Auftreten eines Signals 14a
eingelesen. Der Datumsspeicher 4 enthält einen Speicherbereich Xj- zur Speicherung des "Tages", einen Speicherbereich X,, zur
Speicherung des "Monats" und einen Speicherbereich Xy zur Speicherung
des "Jahres". Diese Speicherbereiche werden durch ein digitales Zeiteinstellsignal definiert. Das Verknüpfungsglied 3
ist ein UND-Verknüpfungsglied. Das Steuersignal 14a gelangt an das
UND-Verknüpfungsglied von einem Steuersignalgenerator 14, der
nacheinander verschiedene Arten notwendiger Steuersignale für den Ablauf der Operation des Systems erzeugt. Das Signal am Ausgang
des Datumsspeichers 4 gelangt über das UND-Verknüpfungsglied 5 an die Tage-Rechnereinheit Io, in der die Anzahl der Tage errechnet
wird. An den anderen Eingang des UND-Verknüpfungsgliedes 5 gelangt
ein Steuersignal 14b. Die Tage-Rechnereinheit Io wird von einem Steuersignal 14e gesteuert. Sie ist operationsmäßig mit
einem W-Register 2o und einem Z-Register 21 gekoppelt. Das W-Register hat Speicherbereiche Wy, W^ und W«. Ferner ist ein
Speicherkreis 6 zur Speicherung einer Konstanten 365,25 und ein Speicherkreis 7 zur Speicherung einer Konstanten 3o,6 vorgesehen.
Die Ausgänge des Speicherkreises 6 bzw. des Speicherkreises 7 sind u.a. jeweils über ein UND-Verknüpfungsglied 8 bzw. 9 mit der
Tage-Recheneinheit Io verbunden.An den jeweils anderen Eingang
des UND-Verknüpfungsgliedes 8 gelangt ein Steuersignal 14c, an den des UND-Verknüpfungsgliedes 9 ein Steuersignal 14d. Die Tage-Recheneinheit
enthält verschiedene arithmetische Einheiten, z.B. einen Addierer, Verknüpfungsglieder zur Anpassung an die Schnittstellen
mit dem W-Register 2o und dem Z-Register 21, und ferner
Verknüpfungsglieder zur Durchführung bestimmter arithmetischer Operationen. Auf der Grundlage der folgenden Erläuterungen ist
dies jedoch für den Durchschnittsfachmann ersichtlich, so daß weitere Erläuterungen an dieser Stelle nicht erforderlich sind.
909828/0677
Die Tage-Recheneinheit Io berechnet die Differenz der Anzahl von
Tagen zwischen einerseits einem eingegebenen und im Datumsspeicher 4- gespeichertem Datum und andererseits einem gegebenen
Bezugsdatum, z.B. dem 1. März 19oo.
Als Beispiel sei nun die Differenz von Tagen in einem Fall berechnet,
in dem die Daten für das eingegebene Datum zwischen dem 1. März 19oo und dem 28. Februar 21oo liegen und das Bezugsdatum
der 1. März 19oo ist. Dabei wird auf Fig. 2 bezug genommen. Fig. zeigt ein Flußdiagramm zur Erläuterung des Rechenganges. Im ersten
Schritt (1) wird der Inhalt des Datumsspeichers 4 in das W-Register
2o, das mit der Tage-Recheneinheit Io assoziiert ist, synchron zum Steuersignal I1Ia eingelesen. Zu diesem Zeitpunkt wird der
Inhalt des Datumsspeichers U nicht geändert. Gleichfalls zu diesem
Zeitpunkt wird der Inhalt der Speicherbereiche XM X und X„ in
11 j D ι
die Speicherbereiche Wm5 W bzw. Wy eingelesen, so daß die Informationen
bezüglich des "Monats", des "Tages" und des "Jahres" in den Speicherbereichen W^, W^ bzw. Wy des W-Registers 2o gespeichert
sind. Dann wird in einem zweiten Schritt (2) bestimmt, ob der Inhalt des Speicherbereiches W^, d.h. der "Monat" größer
oder gleich 3 ist oder nicht. Ist er gleich oder größer als 3, dann schreitet die Steueroperation zum dritten Schritt (3) vor
und das Ergebnis einer Subtraktion der Zahl 3 vom Inhalt des Speicherbereiches
W^ wird dann berechnet und in den Speicherbereich Ww
als. dessen neuer Inhalt eingelesen. Ist er kleiner als 3, dann schreitet die Operation zum Schritt (5) fort, der darin besteht,
daß zu dem Inhalt des Speicherbereiches W« eine 9 addiert wird und
daß die dadurch erhaltene Summe als dessen neuer Inhalt in den Speicherbereich Ww eingelesen wird. Der Inhalt des Speicherbereiches
Vf., , den man nun entweder durch Schritt (3) oder (5) erhält, ist die Differenz zwischen dem Monat des am Eingang eingegebene Datums
und dem Monat des Bezugsdatums. In diesem Beispiel ist der Bezugsmonat der März und daher ist die Differenz in Monaten von dem
Monat März die sich ergebende Monats-Differenz. Im Falle von Januar bzw. Februar ergeben sich daher als Monats-Differenz vom
Bezugsmonat, also dem März, Io bzw. 11 Monate. Man erhält dies im
Schritt (5). In diesem Fall geht der Rechengang weiter zu Schritt (6), in dem das Ergebnis der Subtraktion von 19ol vom Inhalt des
909828/0677
Speicherbereiches WY, d.h. das "Jahr" in den Speicherbereich WY
als dessen neuer Inhalt eingelesen wird, wobei Januar und Februar als die Monate im vorhergehenden Jahr bezüglich des Bezugsmonats,
d.h. des März, betrachtet werden. Aus diesem Grund muß zur Korrektur in diesem Fall von der Differenz des Jahres
des Datums, das eingegeben wird, und des Bezugsjahres noch eine
"1" abgezogen werden. Daher ist der Inhalt des Speicherbereiches Wy, der im Schritt (6) in diesem eingelesen wird, die Jahresdifferenz
zwischen dem Jahr der Datumseingabe und dem Jahr des Bezugsdatums. Hingegen ist im Falle des Schrittes (3) die Jahresdifferenz
das Ergebnis einer Subtraktion des Bezugsjahres 19oo von dem Jahr des Eingangsdatums, das dann im Schritt (Ό in den
Speicherbereich W», eingeschrieben wird. Ist im Schritt (6) das
Ergebnis negativ, dann sind die Daten des Eingangsdatums in dem Prozessor nicht berechenbar. Es liegt somit ein Fehler vor. Im
Schritt (7) wird die Tagesdifferenz zwischen den Tagesdaten der Datumseingabe und des Bezugsdatums bei Auftreten des Signals 14e
berechnet, indem die in dem Speicherbereich Wy gespeicherte Jahresdifferenz,
die im Speicherbereich W„ gespeicherte Monatsdifferenz
und die im Speicherbereich W^ gespeicherten Tage hierzu herangezogen
werden. Zu diesem Zweck wird die Konstante 365,25 über das UND-Verknüpfungsglied 8 synchron mit dem Steuersignal 14b in die
Tage-Recheneinheit Io eingeführt. Die Konstante 365,25 entspricht derdurchschnittlichen Anzahl von Tagen pro Jahr unter Berücksichtigung
der Schaltjahre. Gleichermaßen wird eine Konstante 3o,6, die in dem Speicherkreis 7 gespeichert ist, von diesem in die Tage-Recheneinheit
Io über das UND-Verknüpfungsglied 9 synchron mit dem Steuersignal 14d eingelesen. Die Summe des ganzzahligen Teils des
Produktes der Konstanten 3 6 5,25 und der im Schritt (4) oder (6) in den Speicherbereich Wy eingelesenen Jahresdifferenz, des ganzzahligen
Teiles des Produktes der Konstanten 3o,6 und der in den Speicherbereich W^ im Schritt (3) oder (5) eingelesenen Monatsdifferenz und der Tag im Speicherbereich Wp wird dann berechnet»
Diese Summe ist die Tagesdifferenz zwischen dem Tagesdatum der Datumseingabe und des Bezugsdatums. Im Schritt (7) ist die Operation
der Ermittlung des ganzzahligen Teils der Produkte mit INT angegeben.
909828/0677 - 9 -
Die derart ermittelte Tagesdifferenz, d.h. die auf diese Art und
Weise berechnete Summe wird dann in das Z-Register eingelesen und dort gespeichert. Dann ermittelt man im Schritt (8), ob der Inhalt
des Z-Registers größer als eine bestimmte Konstante ist, die einem Eingabedatum entspricht, das über dem 28. Februar 21oo
liegt; ist der Inhalt des Z-Registers größer als diese Konstante, dann ist das Datum unberechenbar und es ergibt sich ein Fehler.
Ergibt sich ein Fehler, so ist das in dem Flußdiagramm als ERR angegeben.
Auf diese Weise berechnet die Tage-Recheneinheit Io die Tagesdifferenz
zwischen den Daten für das am Eingang eingegebene Eingangsdatum und dem Bezugsdatum und speichert es im Z-Register 21.
Bei der Erläuterung der folgenden Rechenschritte wird auf Fig. 1 und 3 bezug genommen. Die Inversions-Recheneinheit 13 steht
operationsmäßig mit dem W-Register 2o, dem Z-Register 21 und einem Flip-Flop 22 in Verbindung und enthält (nicht gezeigte) arithmetische
Einheiten (z.B. einen Addierer) sowie Verknüpfungsglieder zur Verbindung der Schnittstellen mit dem W-Register 2o und dem
Z-Register 21. Die Inversions-Recheneinheit 13 wird bei Auftreten des Steuersignals 14h in Betrieb gesetzt. In einem Schritt (Io)
wird eine "0" in die Speicherbereiche Wy, W™ und W^ im W-Register
2o eingelesen und setzt diese Bereiche damit auf ihre Anfangszustände.
In einem Schritt .(11) wird der Inhalt des Speicherkreises 6, nämlich die durchschnittliche Anzahl von Tage pro Jahr, also 3 6 5,25
in die Inversions-Recheneinheit 13 über das UND-Verknüpfungsglied 11 bei Auftreten des Steuersignals IUf, also synchron mit diesem,
eingelesen. In der Inversions-Recheneinheit 13 wird der Inhalt des Z-Registers 21, der gleich der Anzahl der Tage ist, durch die
durchschnittliche Anzahl der Tage, also durch die Zahl 3 65,25 dividiert. Der ganzzahlige Teil des Quotienten, der sich als Ergebnis
dieser Division ergibt, wird dann als invers berechnete Jahresdifferenz in die Speichereinheit Wy eingelesen. Im Schritt (12)
wird dann die Tagesdifferenz, die der Jahresdifferenz entspricht,
d.h. das Produkt des Inhalts des Speicherbereiches Wy mit 365,25 wird
von dem Inhalt des Z-Registers 21 abgezogen. Zur Abrundung des
909828/0677
- Io -
- Io -
2855QQ3
Ergebnisses der Subtraktion auf eine Dezimalzahl wird o,9 hinzu addiert. Das entspricht der Summe von Differenztagen bezogen
auf die Differenzmonate und die Tage an sich. Der ganzzahlige Teil des durch diese Operation erhaltenen Wertes, d.h. das gerundete
Ergebnis dieser Subtraktion, wird dann in das Z-Register 21 eingelesen. Als nächstes wird in einem Schritt (13) das Flip-Flop
2o gesetzt. Das Flip-Flop 2o wird dazu benutzt, zu beurteilen, um festzustellen, ob der in dem vorhergehenden Schritt berechnete
"Monat11 Januar oder Februar ist. Zu diesem Zweck wird
in einem Schritt (14) überprüft, ob der Inhalt des Z-Registers
"O" ist oder nicht. Ist der Inhalt "0" dann ist das Datum der 29. Februar eines Schaltjahres. In diesem Fall wird in einem
Schritt (15) die Zahl 366 in das Z-Register 21 eingelesen und in einem Schritt (16) das Flip-Flop 2 2 zurückgesetzt. In einem
Schritt (17) wird der Inhalt 3o,6 des Registers 7 in die Inversions-Recheneinheit
13 über das UND-Verknüpfungsglied 12 bei Auftreten des d.h. synchron mit dem Steuersignal 14g eingelesen.
In der Inversions-Recheneinheit 13 wird die Konstante 3o,6 dazu benutzt, um den Inhalt des Z-Registers 21 durch sie zu dividieren.
Der ganzzahlige Bestandteil des Quotienten dieser Division wird dann als invers-berechnete Monatsdifferenζ in den Speicherbereich
Vlyj, eingelesen. In einem Schritt (18) wird das Produkt des im
Schritt (17) erhaltenen Quotienten, d.h. der Inhalt des Speicherbereiches Ww und der Konstanten 3o,6 vom Inhalt des Z-Registers
21 abgezogen. Die dabei erhaltene Differenz wird dann in das Z-Register 21 eingelesen. Der ganzzahlige Teil dieses Wertes, den
man durch Rundung der Zahlen des Überschusses unterhalb einer Dezimale durch Addition von o,5 erhält, entspricht der Anzahl der
Tage an sich. Wenn der Überschuß einen ganzzahligen Teil hat, dann ist der Inhalt von Z kleiner als o,6. Dann wird die folgende
Korrektur ausgeführt. Dann wird in einem Schritt (19) geprüft, ob der Inhalt von Z größer als o,6 ist oder nicht. Ist er niedriger
als o,6, in welchem Fall der Überschuß feinen ganzzahligen Teil aufweist, dann schreitet die Operation zum nächsten Schritt (2o)
fort, in welchem die Zahl 31 in das Z-Register eingelesen wird. Es wird dann in einem Schritt (21) die Zahl 1 vom Inhalt des
909828/0677
Speicherbereiches W,, subtrahiert und die erhaltene Differenz als neuer Inhalt in den Speicherbereich Ww eingelesen. Dann
schreitet die Operation zu einem Schritt (2 2) fort, wo zum Inhalt des Z-Registers 21 o,5 hinzu addiert wird, um den Inhalt
auf eine Dezimalstelle zu runden. Der ganzzahlige Teil des gerundeten Ergebnisses wird dann in den Speicherbereich W^ als
invers berechnetes Datum eingelesen.
Die invers berechnete Monatsdifferenz, die man auf diese Weise
erhält, d.h. der Inhalt des Speicherbereiches Ww ist die von
März an gezählte Differenz. Es ergibt sich demnach, daß, wenn dieser Wert zwischen 0 und 9 liegt, der invers berechnete Monat
dadurch erhalten werden kann, daß man zu diesem Wert 3 hinzu addiert. Demgemäß wird in einem Schritt (23) geprüft, ob der Inhalt
des Speicherbereiches W-^ größer als 9 ist oder nicht. Ist
er· gleich oder größer als 9, dann schreitet die Operation zu einem Schritt (2 5) fort, wo 3 zum Inhalt des Speicherbereiches Wu
addiert wird und das Ergebnis dieser Addition als neuer Inhalt in den Speicherbereich Ww als invers berechneter Monat eingelesen
wird. Dann wird in einem Schritt (2 6) das Flip-Flop 2 2 invertiert, d.h. zurückgesetzt, da der invers berechnete Monat in dem Bereich
von März bis Dezember liegt. Andererseits ergibt sich, wenn der Inhalt des Speicherbereiches Ww im Schritt (23) sich als größer
als 9 ergibt, daß dem Monat Januar oder Februar entspricht. Demgemäß wird in einem Schritt (24·) nun die Zahl 9 vom Inhalt des
Speicherbereiches Ww abgezogen und das Ergebnis dann in den Speicherbereich
Ww als invers berechneter Monat eingelesen. In dem Fall, in dem die Monatsdifferenz, d.h. der Inhalt des Speicherbereiches
Ww im Schritt (23) sich als 10 oder 11 Monate ergibt, entspricht
dies dem Januar oder dem Februar. In diesem Fall ist es notwendig, die bezüglich der Tage-Recheneinheit Io erwähnte Korrektur
zu kompensieren, d.h. zu der im Speicherbereich Wy gespeicherten
Jahresdifferenz "1" zu addieren. Demgemäß wird in einem Schritt (27) der Zustand des Flip-Flops 2 2 beurteilt. Ist das
Flip-Flop 22 gesetzt, d.h. im Zustand "1", so schreitet die Operation zum Schritt (2 9) fort, wo zum Inhalt des Speicherbereiches
Wv, d.h. der Jahresdifferenz, der Wert 1 hinzu addiert wird.
909828/0677
- 12 -
Ein Wert, den man durch Addition von 19oo zur Jahresdifferenz
erhält, ist das invers berechnete "entscheidende Jahr" (dominical year). Das Ergebnis dieser Berechnung wird wieder in den Speicherbereich
Wy eingeschrieben. Anderenfalls wird, wenn das Flip-Flop 22 nicht "1" ist, der Schritt (28) durchgeführt. In diesem
Schritt wird dann zum Inhalt des Speicherbereiches Wy 19oo hinzu addiert, d.h. die Jahresdifferenz und die Summe desselben wird
als invers berechnetes "entscheidendes Jahr" eingelesen. Auf diese Weise werden das entscheidende Jahr, die Monate und der Tag,
die invers berechnet worden sind, in den Speicherbereichen Wy, W^
und WD in dem W-Register 2o gespeichert. Das derart berechnete
Datum wird mit den im Datums speicher 4· eingelesenen Datumsdaten im Schritt (3o) verglichen. Wenn beide miteinander koinzident
sind, dann existiert das am Eingang eingegebene Datum tatsächlich. Wenn beide miteinander nicht koinzidieren, dann ist das am Eingang
eingegebene Datum unrealisitisch bzw. falsch.
Das derart invers -berechnete Datum gelangt bei Auftreten eines
Steuersignals I1Ii durch die UND-Verknüpfungsschaltung 15 an das
Register 16. Die Ausgänge der Register 4 und 16 gelangen an ein exklusivesODER-Verknüpfungsglied 17, dessen Ausgang mit dem Reset-Eingang
des RS-Flip-Flops 18 verbunden ist. Der Vergleich des
DatumsSpeichers 4, d.h. der in ihm mit Hilfe der Tastatur 1 für
ein bestimmtes Datum eingegebene Daten mit den invers· berechneten und im Register 16 gespeicherten Daten für ein Datum wird in folgender
Art und Weise ausgeführt:
Zunächst wird ein Steuersignal 14j erzeugt. Dies dient als Setzsignal
für das RS-Flip-Flop 18 zu einem willkürlichen Zeitpunkt
vor der Erzeugung des Signals 14i. Damit wird der Ausgang Q des RS-Flip-Flops 18 auf den logischen Wert "1" gesetzt. In diesem
Zustand steht nun am Ausgang des exklusiven ODER-Verknüpfungsgliedes 17 eine logische "1" und zu diesem Zeitpunkt wird dann
das RS-Flip-Flop 18 so. zurückgestellt, daß am Ausgang Q eine logische "0" und am Ausgang Q eine logische "1" steht. Dieser Zustand
entspricht der Situation, daß der Inhalt des Datumsspeiehers 4
und der Inhalt des Registers 16 nicht koinzident sind. Wenn am
909828/0677
- 13 -
2855Q03
Ausgang des exklusiven ODER-Verknüpfungsgliedes 17 eine logische
"0" erscheint und an den Reset-Eingang des RS-Flip-Flops 18 gelangt, dann entsteht am Ausgang Q eine logische "1" und dieser
Ausgangszustand dauert an. Dieser Zustand zeigt an, daß der Inhalt des Datumsspeichers 4 und des Registers 16 koinzident sind.
Dann gelangt das Signal am Ausgang Q des RS-Flip-Flops 18 an den Steuersignalgenerator 14 und vermittelt ihm dadurch die Information,
daß die Daten des am Eingang eingebenen Datums real existieren oder nicht. Bei Empfang des Ausgangs Q führtder Steuersignalgenerator
IM- eine gegebene Operation aus. Wenn der Prozessor für diese Datumsdaten mit einer Anzeige-Einrichtung zur Darstellung
einer speziellen Bezeichnung versehen ist und wenn der Ausgang Q des RS-Flip-Flops 18 eine logische "0" ist, dann nimmt ein
Operator visuell wahr, daß das eingegebene Datum fehlerhaft ist. Zu diesem Zweck kann z.B. die logische "1" am Ausgang Q an Stelle
der "0" am Ausgang Q benutzt werden.
Es seien zwei Fälle betrachtet; im einen sei der erste Tag des 13. Monats im Jahre 1977 und für den zweiten Fall der erste Tag
des Januars 1978 im Datumsspeicher 4 gespeichert. Im Falle des ersten Tags für den 13. Monat 1977 wird von der Tage-Recheneinheit
Io eine Tagesdifferenz von 28.431 berechnet. Diese Tagesdifferenz
gelangt dann an die Inversions-Recheneinheit 13 und wird dort der Inversions-Berechnung unterzogen, die den ersten Januar 1978 ergibt,
welches Datum dann im Register 16 gespeichert wird. Die Kombination des exklusiven ODER-Verknüpfungsgliedes 17 und des RS-Flip-Flops
18 vergleicht nun den ersten Tag des 13. Monats 1977 im Datumsspeicher 4 mit dem 1. Januar 1978. In diesem Fall ergibt
sich am Ausgang Q des RS-Flip-Flops 18 eine logische "0", so daß der Inhalt des Datumsspeichers 4 als unrealistisch angezeigt wird.
Der Steuersignalgenerator 14 zeigt dies durch eine geeignete Anzeigevorrichtung dar und stoppt die nachfolgende Operation. Hingegen
speichert im Falle des 1. Januars 197 8 das Register 16 ebenfalls den invers als Datum berechneten 1. Januar 1978. Der
Ausgang Q des RS-Flip-Flops 18 ist eine logische "1", was zu der Beurteilung führt, daß der Inhalt des Datumspeichers 4 wirklich
existiert. In diesem Falle läuft die normale Funktion des Steuersignalgenerators
14 so ab, daß das Ergebnis dieser Beurteilung
909828/0677
- 14 -
- IM- -
nicht angezeigt wird und daß die Verarbeitung des eingegebenen Datum in der gewünschten Weise stattfindet.
Wie im Vorhergehenden beschrieben, ergibt sich also gemäß der Erfindung, daß ein kleiner Computer bei Durchführung der beschriebenen
Operation an Datumsdaten beurteilen kann, ob das Datum realistisch oder nicht ist. Der Nachteil, der darin besteht,
daß ein fehlerhaft eingegebenes Datum der folgenden Berechnung unterworfen wird, kann daher vermieden werden. Bei
dem beschriebenen Ausführungsbeispiel war das Bezugsdatum der 1. März 19oo. Selbstverständlich ist man nicht auf dieses Datum
begrenzt. Die Methode zur Berechnung der Anzahl der Daten und der inversen Berechnung können ebenso in Abhängigkeit von dem gewählten
Bezugsdatum geändert werden. Das Register 16 kann dadurch eliminiert werden, daß man das W-Register 2o direkt zum Vergleich
mit dem Inhalt eines X-Registers einsetzt, wobei die Funktion des Verknüpfungsgliedes 15 in der der Inversions-Recheneinheit
13 enthalten ist. Für die Speicher 4, 16, 2o und 21 können auch Speicherschaltungen mit zufälligem Zugriff (Random Access
Memories) verwendet werden.
- Ende der Beschreibung -
909828/0677
Claims (1)
- Patentansprüche(iy Prozessor für ein Datum darstellende Daten, dadurch gekennzeichnet , daß ein erster Speicher (4) zur Speicherung des zu verarbeitenden eingegebenen Datums vorgesehen ist, daß ferner eine Recheneinheit (lo) vorgesehen ist, die in Tagen die Differenz des eingegebenen Datums gegenüber einem Bezugsdatum berechnet, daß ferner eine Inversions-Recheneinheit (13) vorgesehen ist, die die genannte Differenz zwischen dem eingegebenen Datum und dem Bezugsdatum in Tagen invers berechnet, daß ferner ein zweiter Speicher (16) vorgesehen ist, um das invers berechnete Datum zu speichern, und daß ferner Mittel (17, 18) vorgesehen sind, die den Inhalt des ersten Speichers (4) mit dem Inhalt des zweiten Speichers (16) vergleichen.2. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß der Ausgang der genannten Mittel (17, 18) zum Vergleich der Inhalte der beiden Speicher (4, 16) einen Steuersignalgenerator (14) zur Steuerung des Ablaufs weiterer Verarbeitungsschritte an dem eingegebenen Datum und/oder eine Anzeige, die Fehloperationen anzeigt, ansteuern.909828/06773. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß das Bezugsdatum der 1. März 1900 ist.- Ende der Patentansprüche -9098 '2 8/0677
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP52153934A JPS6035701B2 (ja) | 1977-12-20 | 1977-12-20 | 日付け情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2855003A1 true DE2855003A1 (de) | 1979-07-12 |
DE2855003C2 DE2855003C2 (de) | 1983-10-27 |
Family
ID=15573263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2855003A Expired DE2855003C2 (de) | 1977-12-20 | 1978-12-20 | Prozessor für ein Datum darstellende Daten |
Country Status (3)
Country | Link |
---|---|
US (1) | US4233665A (de) |
JP (1) | JPS6035701B2 (de) |
DE (1) | DE2855003C2 (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4862346A (en) * | 1985-07-02 | 1989-08-29 | Vlsi Technology, Inc. | Index for a register file with update of addresses using simultaneously received current, change, test, and reload addresses |
JPH0720634Y2 (ja) * | 1986-10-16 | 1995-05-15 | カシオ計算機株式会社 | 日付データ記憶装置 |
JPH0726761Y2 (ja) * | 1986-10-16 | 1995-06-14 | カシオ計算機株式会社 | データ記憶装置 |
US5761668A (en) * | 1996-03-08 | 1998-06-02 | Adamchick; J. David | Method and apparatus for converting computer software and databases for the year 2000 |
US5763860A (en) * | 1996-12-10 | 1998-06-09 | Denis; Diane T. | Gestational calculator |
US6904437B2 (en) | 1998-06-22 | 2005-06-07 | Stout, Iii Wesley | Date formatting system |
US6092073A (en) * | 1998-09-29 | 2000-07-18 | Coletti; Roger H. | Year 2000 compliance method which overlays day and/or month fields with century data to expand single century systems to handle multiple century data |
US7190795B2 (en) | 2003-10-08 | 2007-03-13 | Henry Simon | Hearing adjustment appliance for electronic audio equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2328054B2 (de) * | 1972-06-02 | 1976-03-18 | Garrett Comtronics Corp., Los Angeles, Calif. (V.St.A.) | Elektronischer tischrechner |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS522356A (en) * | 1975-06-24 | 1977-01-10 | Casio Comput Co Ltd | Electronic desk calculator |
JPS5319066A (en) * | 1976-08-04 | 1978-02-21 | Epson Corp | Calculator with calender |
-
1977
- 1977-12-20 JP JP52153934A patent/JPS6035701B2/ja not_active Expired
-
1978
- 1978-12-19 US US05/971,129 patent/US4233665A/en not_active Expired - Lifetime
- 1978-12-20 DE DE2855003A patent/DE2855003C2/de not_active Expired
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2328054B2 (de) * | 1972-06-02 | 1976-03-18 | Garrett Comtronics Corp., Los Angeles, Calif. (V.St.A.) | Elektronischer tischrechner |
Non-Patent Citations (1)
Title |
---|
US-PS 33 12 951, Sp.1,2,21,22, Fig.1 * |
Also Published As
Publication number | Publication date |
---|---|
JPS5485654A (en) | 1979-07-07 |
US4233665A (en) | 1980-11-11 |
JPS6035701B2 (ja) | 1985-08-16 |
DE2855003C2 (de) | 1983-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2246968A1 (de) | Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen | |
DE1162111B (de) | Gleitkomma-Recheneinrichtung | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
EP0049216B1 (de) | Rechenwerkeinheit mit einer parallelen bidirektionalen Schiebeeinrichtung | |
DE2855003A1 (de) | Prozessor fuer ein datum darstellende daten | |
DE3303269C2 (de) | ||
DE2732008C3 (de) | Einrichtung zur Reduzierung von Fibonacci-p-Codes auf die Minimalform | |
DE1271433B (de) | Adressiereinrichtung fuer einen Tabellenwertspeicher | |
DE2235802A1 (de) | Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise | |
DE1197651B (de) | Datenverarbeitungssystem | |
DE3132611C2 (de) | ||
DE2313246A1 (de) | Spezialrechner | |
DE2214053A1 (de) | Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn | |
DE1549485C3 (de) | Anordnung zur Division binärer Operanden ohne Rückstellung des Restes | |
DE102013209657A1 (de) | FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen | |
DE102009039430A1 (de) | Vorrichtung und Verfahren mit ersten und zweiten Zeittakten | |
DE1549105C3 (de) | Codeprüfanordnung für die Korrektur fehlerhaft übertragener Zeichen | |
DE2239737C2 (de) | Elektronische Vorrichtung zur Verfünffachung einer im 8-4-2-1-Kode binär kodierten Dezimalzahl | |
DE1549449A1 (de) | Einrichtung zur Verarbeitung von Gleitkommazahlen | |
DE102014200465A1 (de) | Vorrichtung und Verfahren zur Bestimmung eines Schätzwertes des Logarithmus einer Eingangsgröße | |
DE2413203A1 (de) | Schaltung fuer die darstellung eines dezimalpunktes | |
DE3246872C2 (de) | ||
DE2539245C2 (de) | ||
DE1190708B (de) | Schaltungsanordnung zum Vergleichen von Signalen | |
DE102021205098A1 (de) | Computerimplementiertes Verfahren und System zur Bestimmung einer Kostenfunktion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAR | Request for search filed | ||
OB | Request for examination as to novelty | ||
OC | Search report available | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |