JPS6324424A - プログラムデバツグ方式 - Google Patents

プログラムデバツグ方式

Info

Publication number
JPS6324424A
JPS6324424A JP61166600A JP16660086A JPS6324424A JP S6324424 A JPS6324424 A JP S6324424A JP 61166600 A JP61166600 A JP 61166600A JP 16660086 A JP16660086 A JP 16660086A JP S6324424 A JPS6324424 A JP S6324424A
Authority
JP
Japan
Prior art keywords
execution
reverse direction
program
instruction
executed
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
JP61166600A
Other languages
English (en)
Inventor
Hiroyoshi Takeda
武田 浩良
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP61166600A priority Critical patent/JPS6324424A/ja
Publication of JPS6324424A publication Critical patent/JPS6324424A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明はプログラムデバッグ方式、特に実行状態に応
じて逆方向実行演算部でプログラム命令を逆方向に実行
することのできるよってされたプログラムデバッグ方式
に関するものである。
〔従来の技術〕
第3図は典型的なデータ処理装置の概略図、第9図は従
来のプログラムのデバッグ手屓を示す図である。第3図
において、(ハはプログラム命令の実行順序を制御する
制御部、(−)はプログラム命令を1つづつ演算する演
算部、(31はプログラムが格納されている記憶部であ
る。
次に動作について説明する。いま、プログラム命令で演
算を実行させるように指定されたものとする。制御部(
ハは記憶部(3)を制御して記憶部[,71に記憶され
ているデータを演算部(コ)て与えて演算を実行する。
つづいて、プログラム実行項序に従って記憶部(Jlに
記憶されている新たな命令を取り出して演算部(21で
実行させる。このようにプログラム命令な顆次実行させ
て行くだけで実行状態は次のプログラム命令実行により
逐次変化し、実行状態の全ての履歴が保持されることが
なかった。このような動作シーケンスは第1図に示され
ている。
〔発明が解決しようとする問題点〕
従来のデバッグ方式では、プログラム実行順序に従って
、即ち順方向に実行するのみであった。
また実行直前の命令を実行前の状態に戻したい場合又は
実行して来たプログラムのある地点まで戻って再実行さ
せたい場合には、戻り点の実行状態をデバッグする人が
正確に覚えておき復元処理をする必要があった。そして
、−戻り点の実行状態は各種レジスタ類、インディケー
タ類、記憶部の状態等があり、多量の情報を覚えておく
必要がある。しかも任意の地点に戻るためには、−命令
実行毎にこの実行状態を保持しておく必要がある。
これら情報を逐次保持し、戻り点が決まるとそれに対応
した情報を基に実行開始状態を再設定することはデバッ
グを行う人に大き々負担である2井に、綿密なデバッグ
の妨げとなり、後で障害の原因となるという問題点があ
った。
この発明は上記のような問題点を解決するためKなされ
たもので、順次実行して来たプログラム命令を逆方向に
実行すると共にプログラム命令演算の逆結果を生じるよ
うにされたプログラムデバッグ方式を得ることを目的と
する。
〔問題点を解決するための手段〕
この発明にかかるプログラムデバッグ方式は順方向実行
順序とは反対の逆方向実行頭片を制御する逆方向実行制
御部と、順方向実行演算と反対の逆方向に演算をおこな
う逆方向実行演算部と、スタック部とを備え、実行状態
情報に応じて、スタック部に保持されている情報を用い
て、逆方向実行演算部で逆方向に演算するようにしたも
のである。
〔作 用〕
この発明のプログラムデバッグ方式においては、逆方向
実行を可能とするだめ、実行を制御する実行状態情報に
順方向実行モードと逆方向実行モードとを設け、この一
つのモードを変更することにより命令実行方式を変える
ようにする。また、スタック部を設けて順方向実行時に
逆方向実行に不可欠な情報、即ち非論理的な情態変化の
起る前の状態情報をスタック部に保持するようにされる
ため、このスタック部の保持内容は逆方向演算結果を得
る演算機能を正しく動作させるために使用される。
〔実施例〕
以下、この発明の一実施例によるプログラムデバッグ方
式を第7図及び第一図を参照して説明する。第7図はこ
の発明のプログラムデバッグ方式のブロック図、第一図
はこの発明のプログラムデバッグ手順を示す図である。
第1図において、(/a)は制御部、(/b)は逆方向
実行制御部、(ユa)は演算部、(コb)は演算部(コ
a)Kよる演算結果とは逆の演算結果を得るための逆方
向実行演算部、fJlは記憶部、(り)は実行状態情報
、(tl i;tスタック部である。
次(動作を説明する。従来のデバッグ方式による実行は
、第V図にその手順が示されているように、制御部(/
a)がプログラム命令の指示する演算を演算部(コ8)
で行わせ、次に実行すべきプログラム命令の格納アドレ
スを割り出して記憶部(3)に指示し命令を取出す処理
を1繰返す。これと同時に、制御部(/a)は分岐元の
アドレス及び実行状態情報変更前の情報等をスタック部
(s)に保持しておく。一方、演算部(ユa)は、例え
ば、記憶部f、y)へのデータ格納前の格納アドレスの
記憶内容、レジスタにロードする前のそのレジスタの内
容等をスタック部1slに保持する。このスタック処理
はデバッグ実行の時のみ行なう。この第V図の例では、
最初は直前の命令から再実行をするようにしているがデ
バッグの内容により再確認を要する命令地点まで戻り、
その実行開所状態を状態保存を見ながら、デバッグする
人が手操作により再設定を行なう。このようにデバッグ
実行時に、実行を成る所で止め、実行状態情報(り)を
逆方向実行と指示すると、以後この実行状態情報(&l
を順方向実行と指示するまで次の処理を行なう。制御部
(/a)は実行状態情報+4=)が逆方向実行を指示し
ていると、逆方向実行制御部(/b)に制御を渡す。逆
方向実行制御部(/b)では直前に実行した命令の格納
アドレスを必要に応じてスタック部(slから取り出す
よう(して割り出し、制御部(/a)に指示して記憶部
(3)からその直前に実行した命令を取り出す。そして
、この命令の指示する演算の逆方向演算を逆方向実行演
算部(tb)にさせる。そして、このような実行を繰返
す。また、逆方向実行演算部(コb)の演算は必要に応
じてスタック部(slから引出しながら行なう。このよ
うにして実行したプログラムの各命令の実行前に状態が
再現して行く、このようなデバッグ手順は第一図に示さ
れている。
なお、上記実施例では、演算部(コa)、逆方向実行演
算部(コb)の利用するスタックとし°〔スタック部を
7個設けたが並列演算を行なう場合スタック部を並列演
算分設けてもよい。
また、上記実施例ではデバッグ実行待任意の地点で止め
そこから任意の地点へ逆方向実行可能な方式を説明した
が、デバッグ実行速度を上げるため戻る地点、即ち再実
行開始点を分岐点のみとするとか、指定点のみにすると
か限定した実施でも同様の効果を得ることができる。
〔発明の効果〕
以上に説明したように、この発明のプログラムデバッグ
方式はプログラムの実行を逆方向にし各命令の実行結果
を実行前の状態に戻るように実行されるようにしたので
、プログラムのデバッグにおいてプログラムのある部分
をテストデータを変え、繰返し実行させ、確認をしたり
、実行結果が不都合な場合、逆戻りしながら障害原因を
追求したり、障害を修正して実行確認したりすることが
容易てなり品質の高いプログラムの作成が短時間で実現
できる効果がある。
【図面の簡単な説明】
第7図はこの発明の一実施例によるプログラムデバッグ
方式のブロック図、第一図はこの発明のプログラムデバ
ッグ手順を示す図、第3図は従来の典型的なデータ処理
装置の概略図、第1図は従来のプログラムデバッグ手順
を示す図である。 図において、(1)、Oh)・・制御部、(/b)・・
逆方向実行制御部、(コ)、テコa)・・演算部、(ユ
b)・・逆方向実行演算部、(3)・・記憶部、[u>
・・実行状態情報、lSl・・スタック部。 なお、各図中、同一符号は同−又は相当部分を示す。 然2図 昂4図 手続補正書「自発1 昭和62年 4月 3目 持許庁長宮殿 1、 イト;件の表示 昭和61年↑、″P許願第166600  号2、 発
明の名称 プログラムデバッグ方式 3、  ?+Ii正をする者 事件との関係  特許出願人 住 所     東京都千代ITI区丸の内二丁口2 
各3号名 称  (601)三菱電機株式会社代表者志
岐守哉 4、代理人 住 所     東京都千代[U区丸の内二丁114 
許1号丸の内ビルディング4階 五 補正の内容 (1)  明細書第3頁第6行「は各種レジスタ類。 インディケータ類、」を「は各種レジスタ類、インディ
ケータ類、」と補正する。 (2)  開門第6頁第7行lその実行開所状態を」を
[その実行開所状態を、jと補正する。

Claims (1)

    【特許請求の範囲】
  1. 逆方向にプログラム命令の実行を制御する逆方向実行制
    御部と、逆方向に前記プログラム命令を演算する逆方向
    実行演算部と、分岐元のアドレス及び実行状態情報の変
    更前情報等を保持しているスタック部とを備え、前記実
    行状態情報に応じて、前記スタック部に保持されている
    情報を用いて前記逆方向実行演算部で逆方向に前記プロ
    グラム命令を実行することを特徴とするプログラムデバ
    ッグ方式。
JP61166600A 1986-07-17 1986-07-17 プログラムデバツグ方式 Pending JPS6324424A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61166600A JPS6324424A (ja) 1986-07-17 1986-07-17 プログラムデバツグ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61166600A JPS6324424A (ja) 1986-07-17 1986-07-17 プログラムデバツグ方式

Publications (1)

Publication Number Publication Date
JPS6324424A true JPS6324424A (ja) 1988-02-01

Family

ID=15834297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61166600A Pending JPS6324424A (ja) 1986-07-17 1986-07-17 プログラムデバツグ方式

Country Status (1)

Country Link
JP (1) JPS6324424A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250228A (ja) * 1988-08-11 1990-02-20 Fujitsu Ltd デバッグ処理装置
JPH03177941A (ja) * 1989-12-07 1991-08-01 Fujitsu Ten Ltd プログラム内容解析装置
JPH03177942A (ja) * 1989-12-07 1991-08-01 Fujitsu Ten Ltd プログラム内容解析装置
JPH03179536A (ja) * 1989-12-07 1991-08-05 Fujitsu Ten Ltd プログラム内容解析装置
JPH07191875A (ja) * 1993-12-27 1995-07-28 Nec Corp デバッガー
US5469550A (en) * 1992-01-28 1995-11-21 Cezzar; Ruknet Reversible computer apparatus and methods of constructing and utilizing same
US5499832A (en) * 1993-05-18 1996-03-19 Honda Giken Kogyo Kabushiki Kaisha Wheel support structure and method of installing wheels in motor vehicle
JPH08320813A (ja) * 1995-05-26 1996-12-03 Nec Corp プログラムシミュレータ装置及びプログラムデバッグ方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250228A (ja) * 1988-08-11 1990-02-20 Fujitsu Ltd デバッグ処理装置
JPH03177941A (ja) * 1989-12-07 1991-08-01 Fujitsu Ten Ltd プログラム内容解析装置
JPH03177942A (ja) * 1989-12-07 1991-08-01 Fujitsu Ten Ltd プログラム内容解析装置
JPH03179536A (ja) * 1989-12-07 1991-08-05 Fujitsu Ten Ltd プログラム内容解析装置
US5469550A (en) * 1992-01-28 1995-11-21 Cezzar; Ruknet Reversible computer apparatus and methods of constructing and utilizing same
US5499832A (en) * 1993-05-18 1996-03-19 Honda Giken Kogyo Kabushiki Kaisha Wheel support structure and method of installing wheels in motor vehicle
JPH07191875A (ja) * 1993-12-27 1995-07-28 Nec Corp デバッガー
JPH08320813A (ja) * 1995-05-26 1996-12-03 Nec Corp プログラムシミュレータ装置及びプログラムデバッグ方法

Similar Documents

Publication Publication Date Title
JPH0756892A (ja) マスク付きベクトル演算器を持つ計算機
JPS6324424A (ja) プログラムデバツグ方式
JPH05341819A (ja) Sfcプログラムのデバッグ装置及びデバッグ方法
JP2552738B2 (ja) データ処理装置
JPH05313946A (ja) マルチプロセッサシステムのデバグ支援装置
JPH02284236A (ja) プログラムデバッグ処理装置
JPH01244547A (ja) プログラム開発デバッグ支援方式
JPS63104150A (ja) プログラムデバツグ方式
JPH02277146A (ja) プログラム・デバッグ方式
JPS61208126A (ja) 被テスト・プログラム実行制御方式
JPH0227447A (ja) デバック方式
JPH0239332A (ja) ソフトウェアブレーク方式
JP2001209412A (ja) シーケンスプログラムのシミュレーション装置
JPH02214946A (ja) デバッグ方式
JPS63278151A (ja) デバッグ装置
JPS60247742A (ja) パイプライン演算制御装置
JPH05224986A (ja) シンボリックデバッガ
JPS61156339A (ja) トレ−ス処理方式
JPH04328644A (ja) デバッグ支援装置
JPS62237533A (ja) デ−タ処理装置
JPS63180141A (ja) 対話型デバツガによるデバツグ方式
JPH01295337A (ja) モニタルーチン制御移行方式
JPH01137340A (ja) マイクロコンピュータ
JPS6010642B2 (ja) シ−ケンス制御装置
JPH04302001A (ja) プログラマブルコントローラ