JPH064348A - プログラムデバッグ方式 - Google Patents

プログラムデバッグ方式

Info

Publication number
JPH064348A
JPH064348A JP4166081A JP16608192A JPH064348A JP H064348 A JPH064348 A JP H064348A JP 4166081 A JP4166081 A JP 4166081A JP 16608192 A JP16608192 A JP 16608192A JP H064348 A JPH064348 A JP H064348A
Authority
JP
Japan
Prior art keywords
program
data
stack
attribute
debug
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4166081A
Other languages
English (en)
Inventor
Hiroyuki Ishimori
浩之 石森
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering 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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP4166081A priority Critical patent/JPH064348A/ja
Publication of JPH064348A publication Critical patent/JPH064348A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 プログラムのデバッグ情報の生成に要する時
間を削減する。 【構成】 デバッグ対象のプログラムをプログラム解析
部で解析する際、データの属性を考慮せずに演算命令群
を作成し、プログラム実行部でプログラムの演算処理を
実行する時に、データの属性を考慮した処理を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はプログラムデバッグ方式
に関し、特にプログラム内の演算処理を解析し、その演
算処理を行う命令の作成を容易にするプログラムデバッ
グ方式に関するものである。
【0002】
【従来の技術】従来において、デバッグ対象のプログラ
ムをデバッグ装置でデバッグする場合、まず、プログラ
ム解析部によってデバッグ対象のプログラムの解析を行
い、デバッグ情報を作成し、このデバッグ情報の作成が
完了したならば、プログラムデバッグ装置でデバッグ対
象のプログラムを実行させるといった方法が実施されて
いる。
【0003】この場合、デバッグ情報はプログラム内の
データおよびデータ属性に関する情報、及びプログラム
内の演算・制御処理をプログラムデバッグ装置に行わせ
る命令群とから構成される。
【0004】ここで、デバッグ対象のプログラムは、そ
のプログラム内で使用するデータの宣言部と、データの
演算等を行うデータ処理部で構成されるが、例えば数値
データにおける整数型と浮動小数点型のように、データ
の属性には、一般的には複数の種類がある。
【0005】そこで、従来は、プログラムを解析した際
に、同一処理であっても属性が異なるデータについて
は、その属性に応じた命令を作成するようにしていた。
すなわち、例えば数値データの加算処理を行なう場合、
整数型であれば整数型の加算命令を作成し、浮動小数点
型であれば、浮動小数点型の命令を作成していた。
【0006】
【発明が解決しようとする課題】しかしながら、上記の
ように、データの属性に応じた命令をプログラムの解析
段階で作成する方法をとった場合、データ属性の情報は
一般的にはメモリ内に保持されているため、メモリをア
クセスする回数が増加する。この結果、デバッグ情報の
作成時間が長くなり、必要なデバッグ情報を容易に得る
ことができないという問題がある。
【0007】本発明の目的は、デバッグ対象のプログラ
ムの実行に必要なデバッグ情報を短時間で容易に作成す
ることができるデバッグ方式を提供することである。
【0008】
【課題を解決するための手段】上記の目的を達成するた
め、本発明のプログラムデバッグ方式は、デバッグ対象
のプログラムの実行に必要なデータを保持する第1のス
タックの他に該データの属性を保持する第2のスタック
を設け、デバッグ対象のプログラムを解析した際に、デ
ータの属性が異なる同一処理の命令については同一の命
令から成るデバッグ情報を作成し、プログラムを実行す
る際に前記第2のスタックの属性を参照し、該属性に応
じた命令を実行させるようにしたものである。
【0009】
【作用】上記手段によれば、データの属性情報はプログ
ラムの実行時まで第2のスタックに保持しておき、プロ
グラムの実行時にデータの属性に対応した命令を選択し
て実行させるので、解析段階でメモリをアクセスする回
数が減少し、結果的に、必要なデバッグ情報を短時間の
うちに極めて容易に作成することができる。
【0010】
【実施例】以下、本発明を図示する実施例に基づき詳細
に説明する。
【0011】図1は、本発明によるプログラムデバッグ
装置の一実施例の構成を示すブロック図であり、このプ
ログラムデバッグ装置1は、入力装置2および出力装置
3と接続され、コマンド解析部4、デバッグ支援部5、
プログラム実行部6、プログラム解析部7、第1のスタ
ック10、第2のスタック11から構成されている。
【0012】コマンド解析部4は、デバッグ作業者が入
力装置2から入力した操作命令を解析し、これをもとに
デバッグ支援部5、プログラム実行部6、プログラム解
析部7に各種の指示を与えるものである。
【0013】デバッグ支援部5は、デバッグ対象のプロ
グラム8の実行に関する情報、例えばプログラム8の実
行状態、プログラム8内のデータなどを出力装置3に表
示し、デバッグ作業者からの指示をもとにプログラム8
の実行に関する情報を更新するものである。
【0014】プログラム実行部6は、プログラム8とデ
バッグ情報9をもとにプログラム8の実行を行うもので
ある。
【0015】プログラム解析部7は、デバッグ対象のプ
ログラム8を読み込んで解析を行い、デバッグ情報9を
作成するものである。この場合、デバッグ対象のプログ
ラムを解析した際に、データの属性が異なる同一処理の
命令については同一の命令から成るデバッグ情報9を作
成する。
【0016】第1のスタック10は演算処理対象のデー
タを保持するものであり、第2のスタック11はデータ
の属性を保持するものである。
【0017】以上の構成において、デバッグ対象のプロ
グラム8をデバッグする場合、まずプログラム解析部7
によってプログラム8の解析を行い、デバッグ情報9を
作成する。
【0018】このデバッグ情報9はプログラム8内のデ
ータおよびデータ属性に関する情報、及びプログラム8
内の演算・制御処理をプログラムデバッグ装置1に行わ
せる命令群から構成される。このデバッグ情報9の作成
が完了したならば、プログラムデバッグ装置1のもとで
プログラム8を実行することが可能となる。
【0019】そこで、プログラム実行部6は、プログラ
ム8とデバッグ情報9をもとにプログラム8を実行す
る。一方、デバッグ支援部5は、プログラム8の実行状
態、プログラム8内のデータなどプログラム8の実行に
関する情報を出力装置3に表示し、デバッグ作業者から
の指示をもとにプログラム8の実行に関する情報を更新
する。
【0020】以上がプログラムデバッグ装置1の一般的
動作である。
【0021】図2は、デバッグ対象のプログラム8の一
例を示す図である。プログラム8にはプログラム8内で
使用するデータの宣言部21と、データの演算等を行う
データ処理部22がある。プログラム8で使用できるデ
ータの属性は、前述したように一般的には複数の種類が
ある。従って、演算処理の方式は、データの属性に応じ
て複数通りになる。
【0022】従来技術においては、プログラム8の上で
同一の演算処理でも、対象となるデータの属性に応じて
複数の演算処理命令を使い分けてデバッグ情報9を作成
していたので、データ宣言部21に記述されているデー
タの属性をその都度参照しなければならず、多くの時間
が費やされていた。
【0023】しかし、本発明においては、プログラム解
析時に図3に示すようなデータ属性テーブル31をデバ
ッグ情報9の一つとして作成し、このテーブル31のデ
ータ32と属性33とを第1のスタック10および第2
のスタック11に保持させ、プログラム8を実行する際
に、プログラム実行部6に参照させるようにすることに
より、デバッグ情報9の作成時間を削減するようにして
いる。
【0024】なお、データ属性テーブル31には、プロ
グラム8で用いられるデータ32のそれぞれについて、
データ属性33が登録されている。
【0025】図4は、演算処理対象のデータを保持する
第1のスタック10と、データの属性を保持する第2の
スタック11の構造を示すものであり、プログラム8で
使用するデータとその属性について全て保持できるよう
に構成されている。この第1のスタック10および第2
のスタック11には、プログラム8を実行する前に、図
3のデータ属性テーブル31からデータおよび属性の情
報が転送されて保持される。
【0026】図5は、本発明のデバッグ装置1によるデ
バッグ手順を示すフローチャートである。
【0027】まず、プログラムデバッグ装置1は、プロ
グラム8の演算処理命令を実行したとき、演算対象のデ
ータを第1のスタック10にセットし、さらに当該デー
タの属性情報を第2のスタック11にセットする(ステ
ップ51,52)。そして、第2のスタック11の属性
情報を参照し、データ属性に応じた処理に振り分ける
(ステップ53)。
【0028】例えば、データの属性が整数型である場
合、整数型の命令にしたがった演算処理を実行する(ス
テップ54,55)。しかし、浮動小数点型である場
合、浮動小数点型の命令にしたがった演算処理を実行す
る(ステップ56,57)。
【0029】図6はプログラム8とデバッグ情報9の一
例を示す説明図であり、本発明によって作成されるデバ
ッグ情報9と並列に従来の方法で作成されるデバッグ情
報12を示している。
【0030】この例において、81,82はデータ宣言
部であり、データ宣言部81で整数型のAA,BBとい
う名称のデータ領域を宣言し、一方のデータ宣言部82
では浮動小数点型のCC,DDという名称のデータ領域
を宣言している。
【0031】83〜87は処理部であり、83はAA,
BBに数値「1」を代入する処理、84はCC,DDに
数値「1」,「0」を代入する処理、85はAAとBB
とを加算してAAに代入する演算式、86はCCとDD
とを加算してCCに代入する演算式、87はプログラム
の処理を終了させる命令である。
【0032】本発明によって作成されるデバッグ情報9
の中の91,92は処理13,14の演算式に対応する
命令、93はAA,BBの領域のデータを第1のスタッ
ク10に読み込むと共に、第2のスタック11に属性デ
ータを読み込む命令、94は第1のスタック10に保持
されたデータの加算命令、95は第1のスタック10の
データをAAに転送する8命令、96はCC,DDの領
域のデータを第1のスタック10に読み込む共に、第2
のスタック11に属性データを読み込む命令、97は第
1のスタック10に保持されたデータの加算命令、98
は第1のスタック10のデータをCCに転送する命令、
99は処理を終了する命令である。
【0033】一方、従来の方法で作成されるデバッグ情
報12の中の121〜129は上記91〜99の処理に
対応する命令であるが、123,124,126,12
7の部分が本発明と異なる。
【0034】すなわち、命令123,126ではデータ
の属性はスタックに読み込まない。また、命令124は
整数型の加算命令であり、127は浮動小数点型の加算
命令である。
【0035】これに対し、本発明においては、同一加算
命令であれば、データの属性に関係無く同一の加算命令
94、97が作成される。
【0036】このように本実施例によれば、プログラム
実行部6は、プログラム8の実行時にデータ属性を考慮
した処理を行うため、プログラム解析部7がプログラム
8の処理部22を解析して演算命令に変換する際に、デ
ータ属性を考慮する必要がなくなり、プログラム8の解
析とデバッグ情報9の作成に要する手間と時間を削減す
ることができる。
【0037】
【発明の効果】以上説明したように本発明によれば、演
算対象のデータを保持するスタックの他に、当該データ
の属性を保持するスタックを設け、プログラムの解析時
でなく実際の実行時にデータ属性を考慮した演算を行う
ようにしているので、プログラムを解析して演算命令に
変換する際に、データ属性をその都度考慮する必要がな
くなり、プログラムの解析とデバッグ情報の作成に要す
る時間を削減し、デバッグ情報を短時間で容易に得るこ
とができる。
【図面の簡単な説明】
【図1】本発明によるプログラムデバッグ装置の一実施
例を示すブロック構成図である。
【図2】デバッグ対象のプログラムの一例を示す図であ
る。
【図3】プログラム解析の結果作成されるデータ属性テ
ーブルの構造を示す説明図である。
【図4】演算処理で使われるデータのスタックと属性情
報のスタックの構成図である。
【図5】本発明における演算処理のフローチャートであ
る。
【図6】本発明において作成されるデバッグ情報を従来
のデバッグ情報と比較する形で示した説明図である。
【符号の説明】
1…プログラムデバッグ装置、2…入力装置、3…出力
装置、4…コマンド解析部、5…デバッグ支援部、6…
プログラム実行部、7…プログラム解析部、8…プログ
ラム、9…デバッグ情報、10…第1のスタック、11
…第2のスタック、21…データ宣言部、22…処理
部、31…データ属性テーブル。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 デバッグ対象のプログラムを解析し、該
    プログラムの実行に必要なデータおよび該データの属性
    に応じた命令群から成るデバッグ情報を作成し、この作
    成したデバッグ情報に基づいてデバッグ対象のプログラ
    ムを実行するプログラムデバッグ方式において、 デバッグ対象のプログラムの実行に必要なデータを保持
    する第1のスタックの他に該データの属性を保持する第
    2のスタックを設け、デバッグ対象のプログラムを解析
    した際に、データの属性が異なる同一処理の命令につい
    ては同一の命令から成るデバッグ情報を作成し、プログ
    ラムを実行する際に前記第2のスタックの属性を参照
    し、該属性に応じた命令を実行させることを特徴とする
    プログラムデバッグ方式。
JP4166081A 1992-06-24 1992-06-24 プログラムデバッグ方式 Pending JPH064348A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4166081A JPH064348A (ja) 1992-06-24 1992-06-24 プログラムデバッグ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4166081A JPH064348A (ja) 1992-06-24 1992-06-24 プログラムデバッグ方式

Publications (1)

Publication Number Publication Date
JPH064348A true JPH064348A (ja) 1994-01-14

Family

ID=15824632

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4166081A Pending JPH064348A (ja) 1992-06-24 1992-06-24 プログラムデバッグ方式

Country Status (1)

Country Link
JP (1) JPH064348A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015122364A1 (de) 2014-12-24 2016-06-30 Kabushiki Kaisha Toyota Jidoshokki Kolben für einen verbrennungsmotor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015122364A1 (de) 2014-12-24 2016-06-30 Kabushiki Kaisha Toyota Jidoshokki Kolben für einen verbrennungsmotor

Similar Documents

Publication Publication Date Title
US5854930A (en) System, method, and computer program product for script processing
US5557774A (en) Method for making test environmental programs
JP3318051B2 (ja) 翻訳処理方法
JPH064348A (ja) プログラムデバッグ方式
JP2820184B2 (ja) ロードモジュール単体テスト支援装置
JPH0510692B2 (ja)
JPH0468446A (ja) デバッグ支援装置
JPH05127945A (ja) プログラム実行状況解析方式
JPH0272407A (ja) ラダー・プログラム変換装置
JPS63106047A (ja) 動的サブル−チン呼び出し方式
JPS62135958A (ja) シミユレ−シヨン方式
JPS6365542A (ja) デバツグ方式
JPH0664541B2 (ja) コマンド処理装置
JPS63157244A (ja) 周辺装置試験プログラムデバグ方式
JPH0283634A (ja) プログラムデバッグ方式
JPH0520051A (ja) ソフトウエアコンバージヨン作業管理装置
JPH1173343A (ja) プログラム試験装置及び記憶媒体
JPH0264744A (ja) 障害解析情報取得方式
JPS63640A (ja) デ−タフロ−の部分ユニツト実行制御方式
JPH04128936A (ja) プログラム実行環境切換え方式
JPH02219136A (ja) プログラム改造時のバグ検査方法
JPS62127948A (ja) プログラムデバッグ処理方式
JPH03265029A (ja) データ集計処理方式
JPH02308355A (ja) インタプリタにおける入力手続き管理方式
JPH02113343A (ja) 試験プログラム実行制御手順の生成方式