WO1987005725A1 - Method of executing emulation - Google Patents

Method of executing emulation Download PDF

Info

Publication number
WO1987005725A1
WO1987005725A1 PCT/JP1987/000165 JP8700165W WO8705725A1 WO 1987005725 A1 WO1987005725 A1 WO 1987005725A1 JP 8700165 W JP8700165 W JP 8700165W WO 8705725 A1 WO8705725 A1 WO 8705725A1
Authority
WO
WIPO (PCT)
Prior art keywords
machine language
computer device
language
program
instruction
Prior art date
Application number
PCT/JP1987/000165
Other languages
English (en)
French (fr)
Inventor
Kunio Tanaka
Seiji Ishii
Original Assignee
Fanuc 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 Fanuc Ltd filed Critical Fanuc Ltd
Publication of WO1987005725A1 publication Critical patent/WO1987005725A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler

Definitions

  • the present invention relates to a simulation execution method, and more particularly to a simulation execution method suitable for debugging a program created in a high-level language. About the method.
  • An emulator is a computer that simulates the operation of another computer, so that the latter pi-dram (mechanical language)
  • a program created in a high-level language for example, a photo-lan, a kobol, or a pass-through
  • a machine language for example, an assembler language
  • the purpose of the present invention is to enable debugging of high-level language programs by emulation, and currently only Instructions in a high-level language program corresponding to the machine language of the present invention can be identified.
  • the invention is disclosed by providing a method for executing a simulation.
  • a line number L for each line of the high-level language program and the line A translation template showing the correspondence between the instruction in the hearing and the ad-hoc A. in the storage area that records the language in accordance with the instruction is created, and the translation template is created.
  • One goal is to use the first language that is a debugger with machine language.
  • the second computer device input to the second viewer is a machine language! Executing the program based on this:
  • FIG. 1 shows a block diagram of a system that realizes a simulation execution method according to the present invention.
  • Figure 2 is a diagram illustrating the relationship between the address in the translation table and the machine language area.
  • BEST MODE FOR CARRYING OUT THE INVENTION FIG. 1 is a block diagram of a system for realizing the method for executing the two simulations according to the present invention.
  • 1 is a first computer device capable of operating in a high-level language program
  • 2 is a second computer device capable of operating in a machine language such as an assembler language.
  • a device for example, a debugger, 3 is a disposable device.
  • the second computer device, the debugger '2 executes instructions at the assembler language level, and executes instructions one instruction at a time. By executing them sequentially, it is possible to confirm the result of the branch instruction, to confirm that the execution is being performed according to the logic design, and to check whether the hardware instruction is executed. It is used to display and change the contents of the standby memory and the flag on / off.
  • 11 1 is a high-level language created by high-level languages such as Firefox, Kobol, and Hasul.
  • the program, 12 is an editing program (compiler)
  • 13 is a machine language such as an assembler language
  • 14 is a high-level language program 11
  • a translation table showing the correspondence with A. 21 is a memo to record machine language and translation tables.
  • Figure 2 shows the relationship between the address A in the translation table 14 and the storage area of the memory 21 that stores the machine language.
  • the instructions in each line of the advanced language program 11 are translated into one or more machine languages, respectively, and converted into a second computer device (debugger). 2) is stored in memory 21.
  • the second computer device 2 rushes to the odesugugomu based on the machine language 13 written in J-M; 21, the second computer device 2 '' Refer to 14 to declare the Rano scholarship and the ⁇ command in the rich language ⁇ Kogeramu 11 corresponding to the current language of the killed language, and Create a mage screen and display it on the display device 3
  • a line identification code L an instruction at the line number
  • a machine language corresponding to the instruction And the address of the storage area A.
  • the language language can be used to create a debugger screen using the command in the high-level language. Therefore, it is based on a high-level language instead of a machine language.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

明 細 書
ェ ミ ュ レ ー シ ョ ン実行方法
技術分野
本発明は ヱ ミ ュ レ ー シ ョ ン実行方法に係 り 、 特に高鈒 言語で作成 さ れた プ ロ グ ラ ム のデバ ッ グ に 適用 し て 好適 な 二 ミ ュ レ 一 シ ョ ン実行方法に関す る 。
背景技術
エ ミ ユ レ 一 ン ョ ン と は 、 あ る コ ン ピ ュ ー タ が別 の コ ン ピュ 一 タ の動作を 模擬す る こ と に よ っ て後者の プ π ダ ラ ム (機械語 べ ル の プ ロ グ ラ ム ) を実行す る こ と で あ る 高級言語で作成 さ れ た プ コ ダ ラ ム を デバッ グす る 際、 上記二 ミ ュ レ ー シ ヨ ン を実行し て デ バ ッ グ す る こ と が考 え ら れ る 。 た と え ば、 第 1 の コ ン ピ ュ ー タ 装置の高級言 語 ( フ ォ ー ト ラ ン 、 コ ボ ル 、 パ ス 力 ル ) で作成 さ れ た プ ロ グ ラ ム を 第 2 の コ ン ピ ュ ー タ 装置で実行可能な機械言 語 ( た と え ば ア ッ セ ン ブ ラ 言語等) に変換 し 、 第 2 の コ ン ビ ュ ー タ 装置が該機械言語に基づ い て前記高級言語 プ σ グ ラ ム に応 じ た処理を実行し て デ バッ グ す る 方法で あ る 。
し か し 、 か か る 方法で は第 2 の コ ン ピ ュ ー タ 装置が現 在実行 し て い る 機械言語 と 高級言語 プ ロ グ ラ ム に おけ る 命令 と の対応が取れず、 デバ ツ グ作業が困難に な る と い う 問題があ る つ
以上か ら 、 本発明 の 目 的は高級言語 プ ロ グ ラ ム のデ バ ッ グ を エ ミ ユ レ 一 シ ョ ン に よ り 行え 、 し か も 現在実行中 の機械言語に対応す る 高級言語プ コ グ ラ ム に お け る 命令 を識別で き る ヱ ミ ユ レ 一 シ ョ ン実行方法を提供す る こ と で の る 発明の開示 の コ ン ピ ュ ー タ 装 お いて 问条及目 5½ザ ゲ ラ ム を機械言語に翻訳す る 際、 該高鈒言 語プ グ ラ ム の各 ラ イ ン 毎 ラ イ ン 蓥号 L と 、 該 ラ イ ン 審号 お け る 命令 と 、 該命令に応 じ た機搣言語 を 記億す る 記億域の ァ ド し ス A . と の対応を 示す翻訳テ 一 プ ル を 作 成 し 、 翻訳テ 一 ゴ ル を 機械言語 と 共に デ バ ッ ガ で あ る 第
2 の ビ ュ 一 タ に入力す る 第 2 の コ ン ビュ ー タ 装置は機械言浯!こ基づ い て プ ロ グ ラ ム を実行す る と 共:こ 、 該機械言語の記億ン ァ ド ス と 翻 、
訳チ 一 ヷ ¾ 周 い て現在実行中 の機械言語に ノ. 応す る 高 ラ- y! § rrcr フ グ ラ ム の ラ イ ン 銎号 と 命合 を認 g し 、 該 ラ イ ン 番 ヽ 命令を用 い て デ バ ゲ用画面等を 作成 し て デ ィ り ス フ ¾ζ置に描画す る -- こ れ に よ り 、 ォ ぺ レ 一タ は機械言語で な く 高級言語に 基づ い た デバツ グ作業が可能に な る : 図面の簡単な説明 第 1 図は本発明 かか る ヱ ミ ュ し ー シ ョ ン 実行方法を 実現す る シ ス テ ム の プ ロ ッ ク 図、 第 2 図は翻訳テ ー プ ル に お け る ァ ド レ ス と 機械言語記 慮域 と の関係説明図で あ る 。 発明 を実旌す る た め の最良の形態 第 1 図は本発明に か か る 二 ミ ュ レ ー ン ョ ン実行方法を 実現す る シ ス テ ム の づ ' コ ッ ク 図で あ る
1 は高级言語プ ロ グ ラ ム で動作可能な第 1 の コ ン ピュ ー タ 装置、 2 は ア ッ セ ン プ ラ 言語等の機械言語で動作可 能な 第 2 の コ ン ピ ュ ー タ 装置で 、 た と え ばデバ ッ ガ 、 3 は デ イ ス プ し ノ 装置で あ る 。 第 2 の コ ン ピ ュ ー タ 装置で あ る デ バ ッ 力' 2 は ァ ッ セ ン プ ラ 言語 レ ベ ル で命令の実行 を 行 う も の で あ り 、 命令を 逐次的に 1 命令づっ実行す る こ と に よ り 、 分岐命令の結果を確認 し た り 、 論理設計通 り に実行が行われて い る か を確認 し た り 、 ハ ー ド ウ ェ ア ン ジ ス タ ゃ待定 ァ ド し ス メ モ リ の内容及び フ 'ラ グ の ォ ン ノ オ フ な ど の表示、 変更 を行 う も の で あ る 。
1 1 は フ 卞 ル ト ラ ン 、 コ ボ ル 、 ハ ス 力 ル等の高級言語 で作成 さ れ た高級言語つ。 グ ラ ム 、 1 2 は編集 プ ロ グ ラ ム ( コ ン パ イ ラ ) 、 1 3 は ァ ッ セ ン プ ラ 言語等の機械言 語、 1 4 は高級言語 プ ゲ ラ ム 1 1 の各 ラ イ ン毎に ラ イ ン 審号 L と 、 該 ラ イ ン 審号に お け る 侖合 と 、 該命令:こ応 じ た前記機械言語を 記億す る 記億域の ァ ド レ ス A . と の対 応を 示す翻訳テ ー ブ ル で あ る 。 2 1 は機械言語や翻訳テ 一 ブル を 記億す る メ モ ': で あ る 。
第 2 図は翻訳テ ー プ ル 1 4 に お け る ア ド ' ス A; と 機械 言語を記億す る メ モ リ 2 1 の記億域 と の関係説明図で あ る 。 高 及言語プ グ ラ ム 1 1 の各 ラ イ ン に お け る 命令は そ れ ぞれ 1 以上の機械言語に翻訳 さ れて第 2 の コ ン ビ ュ . ー タ 装置 ( デ バ ッ ガ) 2 の メ モ リ 2 1 に記億 さ れ る 。 尚、 ラ イ ン番号 L . ( i = 1 , 2 , ' · · * ) の命令に対応す る 機械言語は メ リ 2 1 の ア レ ス A . か ら始 ま る 記億域
X W , ( i = 1 , 2 , · ' · ) に記億 さ れ る 。
次に本発明の - ミ ュ し ― シ ョ ン処理を説明す る -— ま ず、 第 1 の コ ン ピ ュ ー タ 装 B に お い て コ ン ノく' イ ラ 1 2 に よ り 高級言語プ グ ラ ム 1 1 を機械言語 1 3 変 換 し て第 2 の コ ン ピ ュ ー タ 装置 2 メ モ リ 2 1 (第 2 図) に記億す る と 共 、 該高級言語ブ コ ゲ ラ ム の各 ラ イ ン 毎 に - ノ ン ¾号 し と 、 該 ラ イ ン番号(こ お け る 命令 と 、 該命 令 じ た前記機缄言語を記億す る メ モ 2 1 の ァ ド し ス A t の対応を 示す翹訳テ 一 ブル 1 4 を作成し て第 2 の コ ン ヒ ュ ー タ 2 入力す る
第 2 の コ ン ピ ュ ー タ 装置 2 は J - モ ; 2 1 に記億 さ れ た 機械言語 1 3 に基づ い て頌次 ゴ グ ム を突行す る と 共 、 翻訳チ 一 ブ' ' 1 4 を 参照 し て現在実行中 の璣滅言語 の ァ し ス に対応す る 富級言語 ^ コ ゲ ラ ム 1 1 に お る ラ ノ 審号 と ^令を 認議し 、 該 ラ ン ¾号 と 侖佘 ¾用 い - て デバ ゲ m画面等を作成 し て デ ィ ス プ し ィ 装置 3 に搔 画す る
こ れ に よ り 、 才 ベ ―タ は デ ィ ス ゴ ィ 画面を み な が ら機械言語で な く 高級言語:こ基づ い た デバ ッ グ作業が可 能 な る
以上本発明に よ れば、 高級言語プ コ グ ラ ム の各 ラ イ ン 毎に ラ イ ン審号 L . と 、 該 ラ イ ン番号に おけ る 命令 と 、 該 命令に応 じ た機械言語を記億す る 記億域のァ ド レ ス A . と の対応を 示す翻訳テ ー ブ ル を作成し たか ら 、 該 S訳テ 一 づ' ル を参照す る こ と に よ り 現在実行中の機械言語に対応 す る 高級言語の ラ イ ン番号 と 命令を 認識で き る た め 、 該 高级言語の ラ ノ ン審号 、 命令 を 用 い て デ バ 'ジ ゲ ¾画面 を 作成で き 、 従 っ て 機械言語で な く 高級言語に基づ い た デ バ ゲ作業が可能に な る :

Claims

請求の範囲
1 * 第 1 の コ ン ピ ュ ー タ 装置の高級言語プ コ グ ラ ム を第' 2 の コ ン ピュ ー タ 装置で実行可能な機械言語に翻訳 し 、 第 2 の コ ン ビ ュ ー タ 装置が該機械言語に基づ い て 前記 プ ロ グ ラ ム を実行し て デ ノべ ッ グ す る ニ ミ ュ ン 一 シ ョ ン実行 方法に お い て 、
第 1 の コ ン ピ ュ ー タ 装置は 、 高級言語プ コ ゲ ラ ム を機 械言語に翻訳す る 際、 該高級言語プ ロ グ ラ ム の各 ラ イ ン 毎 ラ イ ン蓥号 と 、 該 ラ イ ン番号に お け る 命令 と 、 該侖 令に応 じ た前記機械言語を記億す る 記億域の ァ ス と の対応を示す翻訳テ ー プ ル を作成し 、
第 2 の コ ン ビュ 一 タ 装置は機械言浯に基づ いて プ ロ グ ラ ム を実行す る と 共に 、 前記翻訳テ ー づ' ル も参照 し て現 在実行中の機械言語に文寸応す る 高級言語の ラ ィ ン 審号 と 命令 を認識す る
こ と を待徵 と す る エ ミ ュ レ 一 シ ョ ン実行方法。
2 . 第 1 の コ ン ピ ュ ータ 装置は作成 し た翻訳チ ー フ" ル と 機械言語に よ る ゴ ゲ ラ ム を第 2 の コ ン ピュ 一タ 装置に 入力 し 、 第 2 の コ ン ピ ュ ー タ 装置は該翻訳テ ー ブ ル と 機 械言語 よ る ブ コ グ ラ ム を メ 乇 リ に記億す る こ と を特徵 と す る 請求の範囲第 1 項記載のニ ミ ュ レ ー シ ョ ン実行方 法 o
3 ♦ 第 2 の コ ン ビュ 一タ 装置は現在実行中の機械言語を 記億す る ァ ド し ス に応 じ た ラ イ ト 番号 と 命令を翻訳テ 一 つ- ル か ら 求 め て デ バ ッ グ画面を作成し て デ ィ ス プ レ イ 装 置に 表示す る こ と を特徵 と す る 請求の範囲第 2 項記載の ヱ ミ ュ レ ー ン ョ ン実行方法。
PCT/JP1987/000165 1986-03-17 1987-03-17 Method of executing emulation WO1987005725A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP61/058687 1986-03-17
JP61058687A JPS62214443A (ja) 1986-03-17 1986-03-17 エミユレ−シヨン実行方法

Publications (1)

Publication Number Publication Date
WO1987005725A1 true WO1987005725A1 (en) 1987-09-24

Family

ID=13091460

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1987/000165 WO1987005725A1 (en) 1986-03-17 1987-03-17 Method of executing emulation

Country Status (3)

Country Link
EP (1) EP0261247A1 (ja)
JP (1) JPS62214443A (ja)
WO (1) WO1987005725A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0740228B2 (ja) * 1986-07-28 1995-05-01 株式会社明電舎 コンピユ−タプログラミング言語の処理装置
US5073968A (en) * 1988-08-09 1991-12-17 Hewlett-Packard Company Method and apparatus for marking emulation analysis states
EP0423989A3 (en) * 1989-10-16 1992-09-23 Hewlett-Packard Company Software compiler and linker with improved line number table
US5652869A (en) * 1991-03-07 1997-07-29 Digital Equipment Corporation System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
US5432795A (en) * 1991-03-07 1995-07-11 Digital Equipment Corporation System for reporting errors of a translated program and using a boundry instruction bitmap to determine the corresponding instruction address in a source program
DE69216020T2 (de) * 1991-03-07 1997-07-10 Digital Equipment Corp Verbessertes fehlersuchsystem und -verfahren, besonders für die fehlersuche in einer multi-architekturumgebung
US6016556A (en) * 1997-07-17 2000-01-18 Tektronix, Inc. System for identifying an acquisition sample corresponding to a source code statement

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57100544A (en) * 1980-12-15 1982-06-22 Mitsubishi Electric Corp Debug device
JPS60175155A (ja) * 1984-02-21 1985-09-09 Mitsubishi Electric Corp プログラムデバツグ装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57100544A (en) * 1980-12-15 1982-06-22 Mitsubishi Electric Corp Debug device
JPS60175155A (ja) * 1984-02-21 1985-09-09 Mitsubishi Electric Corp プログラムデバツグ装置

Also Published As

Publication number Publication date
EP0261247A1 (en) 1988-03-30
JPS62214443A (ja) 1987-09-21

Similar Documents

Publication Publication Date Title
KR101076867B1 (ko) 콘텐츠를 생성하기 위한 자동 이미지 캡처
KR101087312B1 (ko) 자동으로 생성된 콘텐츠의 임포테이션
JP2006510496A (ja) ロボットを制御するためのシステム及び方法
WO1987005725A1 (en) Method of executing emulation
JPS59183441A (ja) 拡張言語のデバツグ処理方式
JP2811804B2 (ja) 変数出力範囲指定方式
JP2766042B2 (ja) プログラム転送装置
JPS6033640A (ja) デ−タ・モニタ方式
JPH0262639A (ja) 言語デバッガの中断方式
JPH0421027A (ja) 設定環境の変更方法
JPH0468446A (ja) デバッグ支援装置
JP2590083B2 (ja) ソース・プログラム翻訳処理方法
JPH01316842A (ja) バッチプログラム・デバッグツール
JPH02287824A (ja) 制御文生成方式
JPS5912488A (ja) 表示画面制御方式
JPH0388026A (ja) データ処理装置
JPH0423102A (ja) プログラマブルコントローラ用プログラミング装置
JPS61143855A (ja) プログラムテスト方式
JPH04100155A (ja) 動作表現付コンパイラ装置
JPH04106633A (ja) 逆アセンブル方式
JPH06236282A (ja) データ型サイズ可変なコンパイラ、およびインタプリタ
JPH02267626A (ja) ジョブ駆動装置
JPH01213755A (ja) 画面節作成方式
JP2017091469A (ja) プログラム連携システム、その制御方法、及びプログラム
JPH02191038A (ja) コンパイラ入力データエディット方式

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB

WWE Wipo information: entry into national phase

Ref document number: 1987901687

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1987901687

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1987901687

Country of ref document: EP