DE2855003A1 - Prozessor fuer ein datum darstellende daten - Google Patents

Prozessor fuer ein datum darstellende daten

Info

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
Application number
DE19782855003
Other languages
English (en)
Other versions
DE2855003C2 (de
Inventor
Hidetoshi Kosaka
Yukio Maehashi
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Publication of DE2855003A1 publication Critical patent/DE2855003A1/de
Application granted granted Critical
Publication of DE2855003C2 publication Critical patent/DE2855003C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time 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

■" ο **
Beschreibung
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
beispiels ;
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)

  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/0677
    3. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß das Bezugsdatum der 1. März 1900 ist.
    - Ende der Patentansprüche -
    9098 '2 8/0677
DE2855003A 1977-12-20 1978-12-20 Prozessor für ein Datum darstellende Daten Expired DE2855003C2 (de)

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)

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

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

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

Patent Citations (1)

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

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