DE3331090A1 - Befehlsuebersetzender rechner - Google Patents

Befehlsuebersetzender rechner

Info

Publication number
DE3331090A1
DE3331090A1 DE19833331090 DE3331090A DE3331090A1 DE 3331090 A1 DE3331090 A1 DE 3331090A1 DE 19833331090 DE19833331090 DE 19833331090 DE 3331090 A DE3331090 A DE 3331090A DE 3331090 A1 DE3331090 A1 DE 3331090A1
Authority
DE
Germany
Prior art keywords
program
command
print
computer
instruction
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
DE19833331090
Other languages
English (en)
Other versions
DE3331090C2 (de
Inventor
Takuro Yamatokoriyama Nara Omori
Shigenobu Tenri Nara Yanagiuchi
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Publication of DE3331090A1 publication Critical patent/DE3331090A1/de
Application granted granted Critical
Publication of DE3331090C2 publication Critical patent/DE3331090C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/105Program control for peripheral devices where the programme performs an input/output emulation function

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Calculators And Similar Devices (AREA)

Description

Befehlsübersetzender Rechner
Die vorliegende Erfindung betrifft einen Rechner, insbesondere eine übersetzunqsschaltung für einen Rechner,
Es sind bereits verschiedene Arten von Rechnern vorgeschlagen worden, beispielsweise ein programmierbarer elektronischer Rechner, ein Personal Computer und ein Taschenrechner. An diese Rechner sind Lese/Schreib-Speicher (RAM) oder Festspeicher (ROM) in Form von Modulen angeschlossen. Diese Speicher speichern ein Programm, welches der Rechner ausführen soll. Jedes Programm kann mehrere Befehle enthalten. Rechner mit gemeinsamem Befehlsaufbau können dasselbe Programm ohne Programmänderung ausführen.
Jedoch kann es selbst bei gemeinsamem Befehlsaufbau vorkommen, daß sich ein oder mehrere spezielle Befehle voneinander unterscheiden, so daß in verschiedenen Rechnern eine vollständig unterschiedliche Steuerung erfolgt. Derartige Befehle müssen zur Anpassung an einen anderen Rechner geändert werden, um durch das Programm die gleiche gewünschte Steuerung zu erreichen. Üblicherweise erweist sich jedoch eine Programmänderung als schwierig.
Es sei z.B. angenommen, es seien ein Rechner "A" und ein weiterer Rechner "B" vorgesehen. Der Rechner "A" führt eine Gruppe von Befehlen "a" aus, unter denen ein Befehl "PRINT" den Rechner veranlaßt, eine Information anzuzeigen. Wenn an den Rechner "A" ein Drucker angeschlossen ist, so befiehlt der Befehl "PRINT" dem Rechner, die Information auszudrucken.
Der Rechner "B" führe eine andere Gruppe von Befehlen "b" aus, von denen der Befehl "PRINT" den Rechner veranlaßt, Information darzustellen, während ein weiterer Befehl "LPRINT" den Rechner anweist, die Information auszudrucken.
Wird ein Programm, welches die Befehle "a" enthält, bei dem Rechner "B" verwendet, so kann nicht eine Programmausführung erwartet werden, weil die Eingabe des Befehls "PRINT" unter Bezugnahme auf das Programm weder den Anzeigebefehl noch den Druckbefehl definieren kann.
Der Erfindung liegt die Aufgabe zugrunde, einen verbesserten Rechner zum übersetzen oder Ändern eines Programms zu schaffen. Außerdem soll eine verbesserte Übersetzungsschaltung für einen Rechner geschaffen werden, damit der Rechner in der Lage ist, während der Ausführung eines Programms einen speziellen Befehl zu übersetzen oder zu ändern. Die Übersetzungsschaltung soll auf eine in einem Teil des Programms enthaltene Anweisung (statement) ansprechen, um mindestens zwei Funktionen zu unterscheiden ■>
Diese Aufgabe wird erfindungsgernäß durch die in Anspruch 1 angegebenen Merkmale gelöst. Gemäß der Erfindung spricht der Rechner auf eine in einem Programm enthaltene Anweisung an, um einen ersten Befehl des Programms in einen zweiten Befehl zu übersetzen oder zu ändern. Es ist ein Speicher vorgesehen, in dem der zweite Befehl gespeichert wird. Der Rechner spricht außerdem auf den Inhalt des Speichers an, um das Programm mit dem zweiten Befehl anstelle des ersten Befehls durchzuführen»
Im folgenden werden Ausführungsbeispiele der Erfindung anhand der Zeichnung näher erläutert. Es zeigen:
Fig. 1 ein Biockdiagrarom einer ia einem srfindvü^s^a^äßan Rechner - ausgebildeten Schaltung,
Fig» 2 und 3 jeweils ein FluSdiagrammj, welches die Arbeits weise des Rechners nach Fig» 1 erläutert„
Fig» 4 den Programmaufbau <bJ."-3s ExnzBlz-BilQvh^xe-la r ijie er In dem Programm enthalten ist, das für der= -:.::. f indrird-gsgen'SEen Rechner verwendet wird und
Fig„ 5 ein Beispiel eines Programms wie ss für dsr* srfindungsgemäßen Rechner verwendet vjirdo
Eine erf indungsgeraäße Über sets ungs- oder &idsrni>gsschaitiiiig kann bei jedem beliebigen Typ von Rechner eingesetzt --/erdeη f unter anderem bei eineKi programmierbaren elektronischen Rechner einem Personal Computer und einem Taschenrechner» Als be~: ::■-zugte Äusführungsforra der Erfindung v/ird ein prorj/ariisiierbarer elektronischer Rechner beschrieben,
Fig<, . 1 zeigt ein Blockdiagramrn einer Schaltung eines prograrr-mi-e? baren elektronischen Rechners. Die Schaltung r;ach Fig.. "■ enthält eine zentrale Verarbeitungseinheit (CP-Ji; "i , -inan Festspeicher (ROM) 2 einen Schreib/Lese-Speicher {~uJA) 2, eine Tastatur 4, einen Anzeigespeicher und Puffer 5, eins imEeiys ■■'- und einen Drucker 7.
Entsprechend den im ROM 2 gespeicherten Schritten Cd.on'c die CPU 1 dazu, über die Tastatur 4 eingegebene Tcistoni^Zo^B^ciou einzulesen und die notwendigen Operationen uurehsuj-^bre^,, ?,,B, Rechenschritte auszuführen= Die CPU 1 hat vreiterhin die iVui:- gabe„ in den Anzeigespeicher und Puffer 5 Juiseigedaten einzuschreiben und die Daten zur Anzeige zu bringen» Eine vjeitere
Aufgabe der CPU 1 besteht darin., in den RAM 3 über Tasten eingegebene Information einzuschreiben und zu veranlassen,daß auf der Anzeige 6 die Anzeigedaten dargestellt werden, wie sie in dem RAM 3 gespeichert sind. Die CPU 1 veranlaßt den Drucker 7, die den Anzeigedaten entsprechende Information auszudrucken.
Die CPU 1 enthält einen Adressbusanschluß 1A, einen Datenbusanschluß 1D, ein Eingabe/Ausgäbe-Port 1P, einen Lese/Schreib-Signal-Anschluß R/W, einen Tasten-Durchschaltsignal-Anschluß S und einen Tasteneingabesignalanschluß K. Die Lese/Schreib-(R/W) Signale werden nach Maßgabe von Mikrobefehlen, die von einem Befehlsdecoder ausgegeben werden, und Zeitsteuersignalen erzeugt. Die Durchschaltsignale S werden dazu benutzt, die über die Tastatur eingegebene Information in Kombination mit den Tasteneingabesignalen festzustellen.
Der ROM 2 speichert Überwachungsschritte zum Auslesen und Anzeigen von über die Tastatur eingegebenen Informationen. Außerdem speichert der ROM 2 Interpreterschritte, damit der Betrieb so erfolgt, wie es das in dem RAM 3 gespeicherte Programm vorgibt. Der RAM 3 speichert das Programm und Daten.
Die Tastatur 4 enthält mehrere Tastenschalter von Zifferntasten, Funktionstasten der vier Grundrechenarten, einer Löschtaste, einer Lösch-Eingabetaste, einer "ENTER"-Taste sowie weiteren Tasten, wie es von einem üblichen Rechner her bekannt ist.
Fig. 2 zeigt ein Flußdiagramm des in dem ROM 2 gespeicherten Programms. In einer bevorzugten Ausführungsform der Erfindung ist das Programm in der Programmiersprache BASIC geschrieben.
Schritt 1: Der Rechner wird eingeschaltet. Schritt 2: Der Rechner wird initialisiert.
Schritt 3: Der Rechner führt eine Tasten-Leseroutine aus, um über die Tastatur eingegebene Informationen zu lesen.
Schritt 4: Es wird festgestellt, ob die "ENTER"-Taste betätigt wird oder nicht.
Schritt 5: Wird die "ENTER"-Taste nicht betätigt, werden Routinen für Tasten-Code-Anzeige oder andere Verarbeitungs-Routinen ausgewählt. Schließlich wird erneut der Schritt zum Einlesen der Tasteneingabe (Schritt..3) ausgewählt.
Schritt 6: Wird festgestellt, daß die "ENTER"-Taste getätigt wirdj, so wird danach festgestellt, ob Tastenbefehle "Befehlsausführung ("RUN ENTER")eingegeben werden.
Schritt 7: Falls nicht, so werden manuelle Operationen durchgeführt, um einen Befehl oder eine Operation durchzuführen, die derzeit auf der Anzeige dargestellt wird.
Schritt 8: Wird festgestellt,, daß der "Laufbefehl11 gegeben wurde, so wird das derzeitig in dem Rechner gespeicherten Programm ausgeführt. Hierzu wird der Rechner initialisiert, damit ein oder mehrere, zu dem Programm gehörige Flags und Speicher zurückgesetzt werden.
Schritt 9: Das LP-Flag wird zurückgesetzt. Das LP-Flag ist derart ausgebildet, daß es bei Ausführung des Befehls "PRINT" den Befehl "PRINT" an den Drucker 7 gibt, während das LP-Flag gesetzt ist, während andernfalls der Befehl "PRINT" an die Anzeige 6 gegeben wird, während das LP-Flag zurückgesetzt ist«, Das Zuführen des Befehls 1PRINT" an den Drucker 7 veranlaßt diesen, Information auszudrucken. Das Zuführen des Befehls "PRINT" an die Anzeige 6 veranlaßt diese, die Information darzustellen .
Das LP-Flag ist innerhalb des RAM 3 gebildet.
Schritt 10s Es wird eine Interpreter-Routine ausgewählt. Anschließend wird erneut der Befehl "Einlesen Tasteneingabe" (Schritt 3) ausgewählt.
Fig« 3 zeigt ein detailliertes Flußdiagramm der in Fig. 1 gezeigten Interpreter-Routine (10).
Schritt 11: Es wird festgestellt, ob der Befehl vorliegt, daß der °'PRINT"-Befehl gleich ist dem Befehl "LPRINT", was ausgedrückt wird durch "PRINT=LPRINt11.
Schritt 12: Falls ja, wird das LP-Flag durch das Programm zurückgesetzt.
Schritt 13: Ein auf den als nächstes auszuführenden Befehl zeigender Zeiger wird vorgerückt.
Schritt 14: Es v/ird festgestellt, ob das Programm zum Ende gekommen ist oder nicht. Falls nicht, wird erneut Schritt 11 aus gewählt.
Schritt 15: Ist die Antwort im Schritt 11 "NEIN", so wird Schritt 15 ausgewählt, um festzustellen, ob der Befehl vorliegt, daß der Befehl "PRINT" gleich ist dem Befehl "PRINT", was ausgedrückt wird durch "PRINt=PRINT". Falls die Antwort im Schritt 15 "JA" ist, wird das LP-Flag zurückgesetzt. Es wird dann der Schritt 13 ausgewählt.
Wenn im Schritt 15 die Antwort "NEIN" ist, so wird festge-. stellt, ob der Befehl "PRINT" vorliegt. Ist die Antwort "JA" so wird der Befehl "PRINT" ausgeführt.
Schritt 18s Es wird festgestellt, ob das LP-Flag gesetzt ist oder nicht,
Schritt 19 s Ist das LP-Flag gesetzt, so werden die Anzeigedaten an den Drucker 7 ausgegeben»
Schritt 20 s 1st das LP-Flay zurückgesetzt so werden die Anzeigedaten an die Anzeige 6 ausgegeben= Anschließend, wird der Schritt 13 ausgeführt. .
Schritt 21s Ist die Anwort im Schritt 17 -1MEIN", so wird Schritt 21 ausgewählt, um festzustellen, ob ein Programmbeendigungsbefehl vorliegt, beispielsweise "ENDE" oder 10STOP01; oder nichtο Falls ja, endet die Interpreter-Routine„ Falls nein, werden die betreffenden Befehle ausgeführt, so daß die Schritts 22 und .13 ausgex-rählt werden= Fig= 4 zeigt den Aufbau eines Einzelzeilensegments eines speziellen Programms„
Das Einzelzeilensegment des Programms xcLrd gebildet durch den Abschnitt "Zeilennummer", einen oder mehrere Befehlssätze und den Abschnitt "ENTER"= Das Programm enthält mehrere Segmente.
Nachdem der Schritt 13 gemäß Fig» 3 ausgeführt wurde, wird der Zeiger auf den Kopf eines nachfolgenden Befehlsatzes gerichtet.
.Fig» 5 zeigt ein Beispiel eines speziellen Programms s \ii,:~ ss bei der Erfindung eingesetzt wird»
Gemäß Figo 5 wird das folgende Programm eingegeben?
10 PRINT = LPRINT
20 PRINT "DRUCKER"
30 PRINT = PRINT
40 PRINT "ANZEIGE"
Während der Ausführung des Befehls in Zeile "10" wird das LP-Flag gesetzt. Der Befehl in Zeile "20" veranlaßt, daß der Drucker 7 das Wort "DRÜCKER" ausdruckt. Der Befehl in Zeile "30" setzt das LP-Flag zurück. Der Befehl in Zeile "40" veranlaßt die Anzeige 6, das Wort "ANZEIGE" darzustellen.
Es sei nochmals das in der Beschreibungseinleitung angesprochene Beispiel herangezogen. Erfindungsgemäß ist wenigstens eine Anweisung (statement) zum übersetzen oder Teilen wenigstens zweier Funktionen in das Programm eingefügt, damit beispielsweise festgestellt wird "PRINT = LPRINT" und"PRINT = PRINT". Hierdurch wird erkannt, daß der Befehl "PRINT" unter den Befehlen (a) dem Befehl 11LPRINT" unter den Befehlen (b) entspricht. Das LP-Flag hat die Aufgabe, zu erkennen, ob eine solche Anweisung vorliegt. Das LP-Flag ist ein wesentlicher Bestandteil der übersetzungs- oder Änderungsschaltung gemäß der Erfindung. Es reicht also eine so kleine Programmänderung wie das Einfügen einer solchen Anweisung in das Programm aus, damit die Befehle "a" auf den Rechner "b" angewendet werden können.
In jedem beliebigen, für den Rechner 11B" geeigneten Programm kann man den Befehl "PRINT" dafür benutzen, sowohl den Befehl "ANZEIGE" zu geben, damit die Anzeigevorrichtung die Anzeigedaten darstellt, als auch den Befehl "DRUCKEN" (PRINT) zu geben, um den Drucker zu veranlassen, die Daten auszudrucken. Hierbei braucht kein separater Bezug auf den Befehl "ANZEIGE" und den Befehl "DRÜCKEN" gegeben zu werden. Während des Programms läßt sich die Funktion des Befehls "PRINT" abhängig von einem Rechner identifizieren und entscheiden.
Die oben beschriebene bevorzugte Ausführungsform der Erfindung
sieht vor, daß die übersetzung eines speziellen Programmbefehls auf der Grundlage der in dem Programm enthaltenen Anweisung durchgeführt wird. Der Progranunübersetzungsbefehl kann durch Betätigen einer Befehlstaste oder durch Auswählen eines Schiebeschalters zur Auswahl einer Betriebsart eingegeben werden. In einem solchen Fall ist keine Programmänderung zum Durchführen des Programms erforderlich. Die Erfindung findet also Anwendung bei solchen Rechnern, die ein festgespeichertes Programm aufweisen und bei denen keine Programmänderung niöglich ist.

Claims (1)

  1. Priorität: 30. August 1982, Nr. 57-151538, Japan
    Patentansprüche
    1ο Befehlsübersetzender Rechner, gekennzeichnet .durch eine Speichereinrichtung (3) zum Speichern eines ersten Programms, einen Anweisungsübersetzer zum übersetzen eines ersten Befehls des ersten Programms in einen- zweiten Befehl eines zweiten Programms, wobei die Speichereinrichtung (3) deart betreibbar ist, daß sie das zweite Programm speichert, und eine Programmausführungseinrichtung (1), die auf den Inhalt der Speichereinrichtung anspricht, und das zweite Programm mit dem zweiten Befehl ausführt O
    2= Rechner nach Anspruch 1, dadurch gekennzeichnet, daß der Anweisungsüborsotzer eine Flag-Kinrichtung aufweist.
    3. Rechner nach Anspruch 1, dadurch gekennzeichnet, daß der Anweisungsübersetzer eine Schalteinrichtung aufweist.
    4. Rechner nach Anspruch 1, dadurch gekennzeichnet,daß die Prograinrrausführungseinrichtung einenDrucker (7) zum Ausdrucken von Daten nach Maßgabe des zweiten Programms aufweist.
    5. Rechner nach Anspruch 1, dadurch gekennzeichnet, daß die Programmausführungseinrichtung eine Anzeige (6) aufweist, mit der nach Maßgabe des zweiten Programms Daten anzeigbar sind.
DE19833331090 1982-08-30 1983-08-29 Befehlsuebersetzender rechner Granted DE3331090A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57151538A JPS5938870A (ja) 1982-08-30 1982-08-30 電子式計算機

Publications (2)

Publication Number Publication Date
DE3331090A1 true DE3331090A1 (de) 1984-03-08
DE3331090C2 DE3331090C2 (de) 1991-05-02

Family

ID=15520696

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19833331090 Granted DE3331090A1 (de) 1982-08-30 1983-08-29 Befehlsuebersetzender rechner

Country Status (3)

Country Link
US (1) US4873628A (de)
JP (1) JPS5938870A (de)
DE (1) DE3331090A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0628036B2 (ja) * 1988-02-01 1994-04-13 インターナショナル・ビジネス・マシーンズ・コーポレーシヨン シミュレーシヨン方法
CA2002201C (en) * 1988-12-06 1999-04-27 John Charles Goettelmann Translation technique
WO1992001990A1 (en) * 1990-07-20 1992-02-06 Temple University - Of The Commonwealth System Of Higher Education System for high-level virtual computer with heterogeneous operating systems
US5430550A (en) * 1991-06-14 1995-07-04 Minolta Camera Kabushiki Kaisha Image reading apparatus which corrects for positional and angular deviation between the image sensor and the document
US5937193A (en) * 1996-11-27 1999-08-10 Vlsi Technology, Inc. Circuit arrangement for translating platform-independent instructions for execution on a hardware platform and method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2907181A1 (de) * 1978-03-13 1979-09-20 Motorola Inc Befehlssatz-modifizierregister fuer einen datenprozessor

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4084235A (en) * 1975-04-14 1978-04-11 Honeywell Information Systems Inc. Emulation apparatus
JPS5313854A (en) * 1976-07-23 1978-02-07 Panafacom Ltd Information processor
US4117536A (en) * 1976-12-27 1978-09-26 International Business Machines Corporation Instruction processing control apparatus
NL7906416A (nl) * 1979-08-27 1981-03-03 Philips Nv Rekenmachinesysteem, waarbij het programmageheugen geschikt is om doorlopen te worden waarbij niet tot een instruktie behorende gegevens apart gedetekteerd worden.
US4415969A (en) * 1980-02-07 1983-11-15 Intel Corporation Macroinstruction translator unit for use in a microprocessor
JPS5714942A (en) * 1980-06-30 1982-01-26 Sharp Corp Display control system
US4370709A (en) * 1980-08-01 1983-01-25 Tracor, Inc. Computer emulator with three segment microcode memory and two separate microcontrollers for operand derivation and execution phases

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2907181A1 (de) * 1978-03-13 1979-09-20 Motorola Inc Befehlssatz-modifizierregister fuer einen datenprozessor

Also Published As

Publication number Publication date
JPS5938870A (ja) 1984-03-02
US4873628A (en) 1989-10-10
DE3331090C2 (de) 1991-05-02

Similar Documents

Publication Publication Date Title
DE3431255C2 (de)
DE2515696C2 (de) Datenverarbeitungssystem
DE3346816C2 (de)
DE4334524C2 (de) Dokumentverarbeitungsvorrichtung
DE3629104C2 (de)
DE3127825C2 (de)
EP0096079B1 (de) Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen
DE3151106C2 (de)
DE2364408A1 (de) System zur erstellung von schaltungsanordnungen aus hochintegrierten chips
DE2711413A1 (de) Formatsteuerung fuer textautomaten
DE1499722B1 (de) Einrichtung zur modifizierung von informationswoertern
DE3805291A1 (de) Tragbare elektronische vorrichtung
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE3034509A1 (de) Elektronisches uebersetzungsgeraet
DE2908691A1 (de) Digitalrechner
DE2145709A1 (de) Datenverarbeitungsanlage
DE3441640A1 (de) Streifenfeldspeichercontroller
DE3327874C2 (de)
DE3121046C2 (de)
DE3214117A1 (de) Elektronisches uebersetzungsgeraet mit erweitertem speicher
DE2245284A1 (de) Datenverarbeitungsanlage
DE3331090A1 (de) Befehlsuebersetzender rechner
DE3316681A1 (de) Computersystem mit programmueberwachungsvorrichtung
DE3000012A1 (de) Schaltungsanordnung zur ausfuehrung eines uebertragungsbefehls in einer datenverarbeitungsanlage
DE3242631C2 (de)

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8128 New person/name/address of the agent

Representative=s name: KLUNKER, H., DIPL.-ING. DR.RER.NAT. SCHMITT-NILSON

D2 Grant after examination
8364 No opposition during term of opposition