JPS63223931A - 論理図実行ル−ト出力処理方式 - Google Patents
論理図実行ル−ト出力処理方式Info
- Publication number
- JPS63223931A JPS63223931A JP62058558A JP5855887A JPS63223931A JP S63223931 A JPS63223931 A JP S63223931A JP 62058558 A JP62058558 A JP 62058558A JP 5855887 A JP5855887 A JP 5855887A JP S63223931 A JPS63223931 A JP S63223931A
- Authority
- JP
- Japan
- Prior art keywords
- execution
- source
- logic diagram
- display
- line
- 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
Links
- 238000010586 diagram Methods 0.000 title claims abstract description 100
- 238000012545 processing Methods 0.000 title claims abstract description 72
- 238000012546 transfer Methods 0.000 claims description 6
- 238000003672 processing method Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 22
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
プログラムの制御構造およびデータ構造を図形要素で表
記する論理図によるプログラムのデバッグを支援するシ
ステムにおいて、デバッグ対象となる論理図ソースの各
実行文ごとに、その行番号。
記する論理図によるプログラムのデバッグを支援するシ
ステムにおいて、デバッグ対象となる論理図ソースの各
実行文ごとに、その行番号。
対応する実行形式プログラムのアドレス情報および実行
通過情報を記憶する中断管理テーブルを設け、該中断管
理テーブルに記憶された実行通過情報に基づいて、論理
図ソースを、その実行ルートが明示される態様で表示す
る手段を設けることにより、論理図ソースにおける制御
の流れを、容易に把握できるようにしている。
通過情報を記憶する中断管理テーブルを設け、該中断管
理テーブルに記憶された実行通過情報に基づいて、論理
図ソースを、その実行ルートが明示される態様で表示す
る手段を設けることにより、論理図ソースにおける制御
の流れを、容易に把握できるようにしている。
本発明は、プログラムの設計ドキュメントとして利用可
能な論理図ソースを、論理図コンパイラによって中間言
語プログラムに翻訳し、この中間言語プログラムをさら
にコンパイル・リンクすることによって、論理図ソース
に記述された処理を実現する実行形式プログラムを生成
する論理図処理システムにおいて、その生成された実行
形式プログラムを実際に計算機で実行させることによっ
て、論理図ソースの実行ルートの検証を可能とする論理
図実行ルート出力処理方式に関するものである。
能な論理図ソースを、論理図コンパイラによって中間言
語プログラムに翻訳し、この中間言語プログラムをさら
にコンパイル・リンクすることによって、論理図ソース
に記述された処理を実現する実行形式プログラムを生成
する論理図処理システムにおいて、その生成された実行
形式プログラムを実際に計算機で実行させることによっ
て、論理図ソースの実行ルートの検証を可能とする論理
図実行ルート出力処理方式に関するものである。
計算機によって実行するプログラムの生産性を上げるこ
とが、近年、ますます重要性を増している。そのため、
プログラムの設計ドキュメントを。
とが、近年、ますます重要性を増している。そのため、
プログラムの設計ドキュメントを。
ソースプログラムとしても利用可能とした論理図計算機
言語が開発されている。この論理図に基づいて生成され
たプログラムを、PJ易かつ有効にデバッグできるよう
にして、生産性だけでなく、信頼性についても向上でき
るようにすることが望まれる。
言語が開発されている。この論理図に基づいて生成され
たプログラムを、PJ易かつ有効にデバッグできるよう
にして、生産性だけでなく、信頼性についても向上でき
るようにすることが望まれる。
第7図は本発明の詳細な説明図である。
プログラムの生産性を向上させ、また解読性・保守性を
向上させるため、制御構造体を図記号で表記し、制御の
範囲とレベルとを制amで明示すると共に、その図記号
等に対応して、十分な文章を記述できるようにした論理
図による計算機言語処理システムが開発されている。
向上させるため、制御構造体を図記号で表記し、制御の
範囲とレベルとを制amで明示すると共に、その図記号
等に対応して、十分な文章を記述できるようにした論理
図による計算機言語処理システムが開発されている。
この論理図は、設定ドキュメントとして利用可能であり
、さらに翻訳処理によって実行形式プログラムを生成す
るためのソースプログラムとしても利用可能である。
、さらに翻訳処理によって実行形式プログラムを生成す
るためのソースプログラムとしても利用可能である。
第7図に示す論理図ソースファイル10には。
図示省略した論理図エディタによって作成された論理図
ソースが格納されている。論理図コンパイラ60は、論
理図ソースファイル10から論理図ソースを入力し、こ
れを例えばC言語等による中間言語に翻訳する。そして
翻訳結果を、中間言語ソースファイル63に格納し、論
理図ソースと中間言語プログラムとの対応情報を、論理
図マツプファイル11に格納する。
ソースが格納されている。論理図コンパイラ60は、論
理図ソースファイル10から論理図ソースを入力し、こ
れを例えばC言語等による中間言語に翻訳する。そして
翻訳結果を、中間言語ソースファイル63に格納し、論
理図ソースと中間言語プログラムとの対応情報を、論理
図マツプファイル11に格納する。
中間言語コンパイラ61は、既存のCコンパイラ等であ
って、中間言語プログラムをオブジェクトプログラムに
翻訳し、オブジェクトプログラムファイル64に格納す
る。リンカ62は、プログラム結合処理によって、オブ
ジェクトプログラムを実行形式プログラムに変換し、実
行形式プログラムファイル13に格納する。またターゲ
ットマツプファイル12に、いわゆるシンボルテーブル
等を含む実行形式プログラムのアドレス情報を格納する
。
って、中間言語プログラムをオブジェクトプログラムに
翻訳し、オブジェクトプログラムファイル64に格納す
る。リンカ62は、プログラム結合処理によって、オブ
ジェクトプログラムを実行形式プログラムに変換し、実
行形式プログラムファイル13に格納する。またターゲ
ットマツプファイル12に、いわゆるシンボルテーブル
等を含む実行形式プログラムのアドレス情報を格納する
。
この実行形式プログラムファイル13に格納された実行
形式プログラムを、メモリにローディングして計算機に
より実行させることにより、論理図ソースによって定め
られた処理が行われることになる。この論理図によるプ
ログラムが、正しく動作するか否かを確認し1間違いが
あった場合。
形式プログラムを、メモリにローディングして計算機に
より実行させることにより、論理図ソースによって定め
られた処理が行われることになる。この論理図によるプ
ログラムが、正しく動作するか否かを確認し1間違いが
あった場合。
それを修正するために、デバッグが必要となる。
これには、単に処理結果のデータをチェックするだけで
なく、論理図ソースにおける制御の流れを調べることが
有効な場合が多い。
なく、論理図ソースにおける制御の流れを調べることが
有効な場合が多い。
従来、中間言語プログラムレベルのシンボルによるデバ
ッガ(デバッグを支援するプログラム)はあったが、論
理図ソースレベルのデバッガはなく、また論理図ソース
レベルで実行ルートを自動追跡する手段はなかった。
ッガ(デバッグを支援するプログラム)はあったが、論
理図ソースレベルのデバッガはなく、また論理図ソース
レベルで実行ルートを自動追跡する手段はなかった。
論理図のプログラム設計者が、デバッグなどのために、
実行ルートを追跡する場合、従来、予めデバッグ対象と
なる論理図ソース中の各所に、実行を一時的に停止させ
る実行文を埋め込んでおき。
実行ルートを追跡する場合、従来、予めデバッグ対象と
なる論理図ソース中の各所に、実行を一時的に停止させ
る実行文を埋め込んでおき。
その停止点でプログラムが停止したかどうかを一つ一つ
チェックしなければならなかった。そのため、実行ルー
トの追跡に時間がかかり、十分なデバッグ情報を得るこ
とができないという問題があった。特に、論理図ソース
は、中間「語を介して実行形式のプログラムに変換され
るため、論理図ソース行番号による実際の制御の流れを
把握することは困難であった。
チェックしなければならなかった。そのため、実行ルー
トの追跡に時間がかかり、十分なデバッグ情報を得るこ
とができないという問題があった。特に、論理図ソース
は、中間「語を介して実行形式のプログラムに変換され
るため、論理図ソース行番号による実際の制御の流れを
把握することは困難であった。
本発明は上記問題点の解決を図り、簡単にかつ見易い形
で、論理図ソースの制御の流れを把握できるようするこ
とを目的としている。
で、論理図ソースの制御の流れを把握できるようするこ
とを目的としている。
第1図は本発明の基本構成例を示す。
第1図において、14はCPUおよびメモリからなる処
理装置、15はデバッグを支援するプログラムからなる
論理図デバッガ、16は論理図ソースに対応する実行形
式プログラムのデバッグ対象プログラム、18は中断管
理テーブル、19はデバッグ対象プログラム16に中断
処理用の制御移行命令を埋め込むシステム中断点設定部
、20は中断処理用の制御移行命令によって制御を渡さ
れる実行処理部、22は実行ルート情報を含むデバッグ
情報をディスプレイに表示する表示処理部。
理装置、15はデバッグを支援するプログラムからなる
論理図デバッガ、16は論理図ソースに対応する実行形
式プログラムのデバッグ対象プログラム、18は中断管
理テーブル、19はデバッグ対象プログラム16に中断
処理用の制御移行命令を埋め込むシステム中断点設定部
、20は中断処理用の制御移行命令によって制御を渡さ
れる実行処理部、22は実行ルート情報を含むデバッグ
情報をディスプレイに表示する表示処理部。
25はディスプレイ、26は論理図ソースや各種マツプ
ファイル等のテキストが表示されるメイン表示エリア、
27は実行停止行、2B−1ないし28−3は実行結果
のデータが表示されるデータ表示エリア、29はモード
設定情報が表示されるモード表示エリア、31は論理図
の制御構造体に関する制御範囲とレベルとを表す論理図
剤msを表す。
ファイル等のテキストが表示されるメイン表示エリア、
27は実行停止行、2B−1ないし28−3は実行結果
のデータが表示されるデータ表示エリア、29はモード
設定情報が表示されるモード表示エリア、31は論理図
の制御構造体に関する制御範囲とレベルとを表す論理図
剤msを表す。
中断管理テーブル18は、デバッグ対象となる論理図ソ
ースの一連の各実行文ごとに、そのソース行番号と、そ
の行に対応するターゲットであるデバッグ対象プログラ
ム16のアドレス情報を記憶する。また、中断処理に関
する各種モード情報およびその実行文についての実行回
数を記憶する領域を持っている。
ースの一連の各実行文ごとに、そのソース行番号と、そ
の行に対応するターゲットであるデバッグ対象プログラ
ム16のアドレス情報を記憶する。また、中断処理に関
する各種モード情報およびその実行文についての実行回
数を記憶する領域を持っている。
実行処理部20は、システム中断点設定部19によって
デバッグ対象プログラム16内に埋め込まれた中断処理
用の制御移行命令により制御を得て、中断管理テーブル
18に基づきデバッグ対象プログラム16の実行を制御
するものである。実行を停止した位置に該当する中断管
理テーブル18のエントリを、停止アドレスによって検
索し。
デバッグ対象プログラム16内に埋め込まれた中断処理
用の制御移行命令により制御を得て、中断管理テーブル
18に基づきデバッグ対象プログラム16の実行を制御
するものである。実行を停止した位置に該当する中断管
理テーブル18のエントリを、停止アドレスによって検
索し。
その実行回数に1を加算する。なお、この実行回数の初
期値は0である。
期値は0である。
表示処理部22は、システム中断点またはユーザが指定
した中断点で、ディスプレイ25のメイン表示エリア2
6に、デバッグ対象となっている論理図ソースを、実行
停止位置が明示される態様で表示すると共に、指定され
た実行結果のデータを、データ表示エリア28−1等に
表示する処理を実行する。この表示のときに、特に、中
断管理テーブル18の実行回数槽を参照し、実行回数が
1以上の行について、その行番号にアングラインを付け
るとか、論理図制御線31を太線で表示するとかして、
実行された文と実行されなかった文とを一目で区別でき
るように表示する処理を行う。
した中断点で、ディスプレイ25のメイン表示エリア2
6に、デバッグ対象となっている論理図ソースを、実行
停止位置が明示される態様で表示すると共に、指定され
た実行結果のデータを、データ表示エリア28−1等に
表示する処理を実行する。この表示のときに、特に、中
断管理テーブル18の実行回数槽を参照し、実行回数が
1以上の行について、その行番号にアングラインを付け
るとか、論理図制御線31を太線で表示するとかして、
実行された文と実行されなかった文とを一目で区別でき
るように表示する処理を行う。
本発明によれば、予め中断管理テーブル18によって、
論理図ソースの各実行文と、ターゲットであるデバッグ
対象プログラム16のアドレス情報とが対応づけられる
。従って、実行処理部20は、予め埋め込まれた割込み
命令等の制御移行命令により制御が渡された場合に、中
断したターゲットのアドレスを中断管理テーブル18か
ら探し出すことによって、そのアドレス情報を持つソー
ス行番号を得ることができる。そのソース行番号を持つ
中断管理テーブル18のエントリの実行回数槽を更新す
ることにより、実行ルートの履歴を管理することが可能
となる。
論理図ソースの各実行文と、ターゲットであるデバッグ
対象プログラム16のアドレス情報とが対応づけられる
。従って、実行処理部20は、予め埋め込まれた割込み
命令等の制御移行命令により制御が渡された場合に、中
断したターゲットのアドレスを中断管理テーブル18か
ら探し出すことによって、そのアドレス情報を持つソー
ス行番号を得ることができる。そのソース行番号を持つ
中断管理テーブル18のエントリの実行回数槽を更新す
ることにより、実行ルートの履歴を管理することが可能
となる。
表示処理部22は、実行処理部20からの通知により、
論理図ソースの表示にあたって、中断管理テーブル1日
を調べ、実行された行の論理図制御線31を強調して表
示するなどして、実行ルートが明示されるa様で表示す
る。従って、論理図ソースの制御の流れを容易に把握す
ることが可能となる。
論理図ソースの表示にあたって、中断管理テーブル1日
を調べ、実行された行の論理図制御線31を強調して表
示するなどして、実行ルートが明示されるa様で表示す
る。従って、論理図ソースの制御の流れを容易に把握す
ることが可能となる。
第2図は本発明の一実施例処理構成、第3図は本発明に
関連する表示画面の例、第4図は本発明の一実施例に係
る実行位置・実行ルート表示処理説明図、第5図は本発
明の一実施例に係るユーザ中断点設定処理説明図、第6
図は本発明の一実施例に係るカバレジ処理説明図を示す
。
関連する表示画面の例、第4図は本発明の一実施例に係
る実行位置・実行ルート表示処理説明図、第5図は本発
明の一実施例に係るユーザ中断点設定処理説明図、第6
図は本発明の一実施例に係るカバレジ処理説明図を示す
。
第2図において、第1図と同符号のものは第1図に示す
ものに対応する。17は中断管理テーブル18を生成す
る中断管理テーブル生成処理部。
ものに対応する。17は中断管理テーブル18を生成す
る中断管理テーブル生成処理部。
21は中断点コマンド処理部、23は入力処理部。
39は論理図デバッガの初期設定部、40はコマンド処
理部、41は実行コマンド処理部、42はファイルコマ
ンド処理部、43はモード設定コマンド処理部、44は
システム中断点処理部、45はカバレジ処理部、46は
カバレジファイル、47は実行履歴出力処理部、48は
プリンタ、49は実行位置・実行ルート表示部、50は
データ表示部、51はソース表示管理データである。
理部、41は実行コマンド処理部、42はファイルコマ
ンド処理部、43はモード設定コマンド処理部、44は
システム中断点処理部、45はカバレジ処理部、46は
カバレジファイル、47は実行履歴出力処理部、48は
プリンタ、49は実行位置・実行ルート表示部、50は
データ表示部、51はソース表示管理データである。
初期設定部39は、論理図デバッガの初期設定時に起動
され、中断管理テーブル生成処理部17とシステム中断
点設定部19とを動作させる。中断管理テーブル生成処
理部17は、第7図に示す論理図ソースファイル10.
論理図マツプファイル11. ターゲットマツプファイ
ル12に基づいて、中断管理テーブル18を生成する。
され、中断管理テーブル生成処理部17とシステム中断
点設定部19とを動作させる。中断管理テーブル生成処
理部17は、第7図に示す論理図ソースファイル10.
論理図マツプファイル11. ターゲットマツプファイ
ル12に基づいて、中断管理テーブル18を生成する。
中断管理テーブル18は、論理図ソースファイル毎に分
割して管理され、各論理図ソースに含まれる実行文の数
だけのエントリを存する。
割して管理され、各論理図ソースに含まれる実行文の数
だけのエントリを存する。
中断管理テーブル18の行番号欄には、論理図ソースの
実行文に対する行番号が格納される。次のアドレス欄に
は、対応するターゲット、即ちデバッグ対象プログラム
16の対応アドレスが格納される。モード欄は、ユーザ
中断点情報、中断処理の有効/無効情報、カバレジ0N
10FF等の各種モード情報が設定される。実行回数欄
のデータは、最初0に初期化され、その後、その実行文
が実行されるたびに、lずつ加算される。この実行回数
データは、実行ルートを表示するときに用いられる。
実行文に対する行番号が格納される。次のアドレス欄に
は、対応するターゲット、即ちデバッグ対象プログラム
16の対応アドレスが格納される。モード欄は、ユーザ
中断点情報、中断処理の有効/無効情報、カバレジ0N
10FF等の各種モード情報が設定される。実行回数欄
のデータは、最初0に初期化され、その後、その実行文
が実行されるたびに、lずつ加算される。この実行回数
データは、実行ルートを表示するときに用いられる。
システム中断点設定部19は、デバッグ対象プログラム
16をロードした後、そのデバッグ対象プログラム16
における論理図ソースの各実行文の先頭に対応する位置
に、実行処理部20への制御移行命令(割込み命令等)
を書き込む、なお。
16をロードした後、そのデバッグ対象プログラム16
における論理図ソースの各実行文の先頭に対応する位置
に、実行処理部20への制御移行命令(割込み命令等)
を書き込む、なお。
制御移行命令が書き込まれる位置の元の命令は。
他の領域に退避される。
本実施例では、各実行文ごとに実行処理部20に制御が
渡るシステム中断点と、中断点コマンド処理部21など
によって指定されたユーザ中断点とがある。システム中
断点処理部44は、システム中断点において、その中断
点がユーザ中断点として定義されていることを検出した
場合、入力処理部23を、コマンド受付は可能状態にし
て、ユーザに制御を渡す。
渡るシステム中断点と、中断点コマンド処理部21など
によって指定されたユーザ中断点とがある。システム中
断点処理部44は、システム中断点において、その中断
点がユーザ中断点として定義されていることを検出した
場合、入力処理部23を、コマンド受付は可能状態にし
て、ユーザに制御を渡す。
また、カバレジの指定が予めなされている場合には、実
行処理部20は、各システム中断点ごとにカバレジ処理
部45を起動し、中断管理テーブル18から実行停止行
の行番号情報を得て、カバレジファイル46にその行番
号情報を出力する処理を行う。このようにして収集され
た履歴情報は。
行処理部20は、各システム中断点ごとにカバレジ処理
部45を起動し、中断管理テーブル18から実行停止行
の行番号情報を得て、カバレジファイル46にその行番
号情報を出力する処理を行う。このようにして収集され
た履歴情報は。
後に、実行履歴出力処理部47によって、プリンタ48
やディスプレイ25に出力できるようになつている。
やディスプレイ25に出力できるようになつている。
論理図デバッガの起動時およびユーザ中断点では、各種
コマンドにより、デバッグ制御情報を指定できるように
なっている。そのコマンドとして。
コマンドにより、デバッグ制御情報を指定できるように
なっている。そのコマンドとして。
例えば実行コマンド、中断点コマンド、ファイルコマン
ド、データコマンド、モード設定コマンド。
ド、データコマンド、モード設定コマンド。
シンボルコマンド、終了コマンドなどがある。
実行コマンド処理部41は、実行コマンドの処理を行い
、サブコマンドによる指定により、1実行文ごとの実行
1次のユーザ中断点までの実行。
、サブコマンドによる指定により、1実行文ごとの実行
1次のユーザ中断点までの実行。
指定開始位置から指定停止位置までの実行などの制、御
情報を記憶する。
情報を記憶する。
中断点コマンド処理部21は、サブコマンドによって、
ユーザ中断点の登録、ユーザ中断点の削除、ユーザ中断
点の有効化、ユーザ中断点の無効化、ユーザ中断点の一
覧表示、中断点のデータ監視などに関する処理を行う。
ユーザ中断点の登録、ユーザ中断点の削除、ユーザ中断
点の有効化、ユーザ中断点の無効化、ユーザ中断点の一
覧表示、中断点のデータ監視などに関する処理を行う。
ファイルコマンド処理部42は、指定により。
論理図ソースの表示やマツプファイルなどのテキスト表
示を行う処理を実行する。モード設定コマンド処理部4
3は、中断モード、表示更新、カパレジモード、表示内
容の選択に関する4つのサブコマンドを処理する。中断
モードのサブコマンドでは、ファイル単位で中断点の限
定を行うことが可能になっている。表示更新のサブコマ
ンドでは。
示を行う処理を実行する。モード設定コマンド処理部4
3は、中断モード、表示更新、カパレジモード、表示内
容の選択に関する4つのサブコマンドを処理する。中断
モードのサブコマンドでは、ファイル単位で中断点の限
定を行うことが可能になっている。表示更新のサブコマ
ンドでは。
全システム中断点における表示更新、またはユーザ中断
点だけでの表示更新のいずれかを選択できるようになっ
ている。カバレジモードのサブコマンドでは、カバレジ
処理部45によるデータの収集を選択できるようになっ
ている。表示内容の選択のサブコマンドは、第1図に示
すモード表示エリア29に、モード情報を表示するか、
ターゲットのレジスタの内容を表示するかを指示する。
点だけでの表示更新のいずれかを選択できるようになっ
ている。カバレジモードのサブコマンドでは、カバレジ
処理部45によるデータの収集を選択できるようになっ
ている。表示内容の選択のサブコマンドは、第1図に示
すモード表示エリア29に、モード情報を表示するか、
ターゲットのレジスタの内容を表示するかを指示する。
表示処理部22は、ディスプレイ25におけるメイン表
示エリアの表示行数分9例えば20行分のソース表示管
理データ51を管理する。このソース表示管理データ5
1は2表示する論理図ソースの行番号、その行における
制御線などの記号部の長さ、記号部の表示属性、テキス
ト全体の長さ。
示エリアの表示行数分9例えば20行分のソース表示管
理データ51を管理する。このソース表示管理データ5
1は2表示する論理図ソースの行番号、その行における
制御線などの記号部の長さ、記号部の表示属性、テキス
ト全体の長さ。
テキスト部の表示属性、テキストデータ、テキスト部の
漢字位置を示す漢字位置フラグ等の情報を持つ。記号部
の表示属性は、その行が実行された経路であった場合に
、実行ルートを示すために利用される。テキスト部の表
示属性は、現在の実行停止位置を反転表示する場合に、
その属性を示すために利用される。漢字位置フラグは、
左右スクロールが行われた場合の漢字表示処理に使用さ
れる。
漢字位置を示す漢字位置フラグ等の情報を持つ。記号部
の表示属性は、その行が実行された経路であった場合に
、実行ルートを示すために利用される。テキスト部の表
示属性は、現在の実行停止位置を反転表示する場合に、
その属性を示すために利用される。漢字位置フラグは、
左右スクロールが行われた場合の漢字表示処理に使用さ
れる。
第3図は1本発明の一実施例に係る表示画面の例であっ
て、第3図(a)はユーザ中断点における表示の例、第
3図(b)は同じ中断点における中間言語テキストの表
示例、第3図(c)は論理図マツプの表示例である。
て、第3図(a)はユーザ中断点における表示の例、第
3図(b)は同じ中断点における中間言語テキストの表
示例、第3図(c)は論理図マツプの表示例である。
この例では、論理図ソースの第36行に、予め中断点コ
マンドによってユーザ中断点の登録がなされ、データ表
示エリア28−1には、横座標のデータ表示、データ表
示エリア2日−2には、縦座標のデータ表示についての
指定がなされている。
マンドによってユーザ中断点の登録がなされ、データ表
示エリア28−1には、横座標のデータ表示、データ表
示エリア2日−2には、縦座標のデータ表示についての
指定がなされている。
このデバッグ対象となっている論理図ソースに対し、実
行コマンドにより実行を指示すると、論理図ソースの第
36行目に対応する実行形式プロダラムのアドレスで、
実行が停止され、第3図(a)図示のように、ディスプ
レイのメイン表示エリア26に、論理図ソースの表示が
なされる。
行コマンドにより実行を指示すると、論理図ソースの第
36行目に対応する実行形式プロダラムのアドレスで、
実行が停止され、第3図(a)図示のように、ディスプ
レイのメイン表示エリア26に、論理図ソースの表示が
なされる。
特に、現在中断している位置である実行停止行27が、
他の行と異なる態様で表示される。また。
他の行と異なる態様で表示される。また。
論理図側′4′B線31について、実行されたルートが
太線または他と異なる色で表示されるので、実行ルート
のチェックも可能となっている。メイン表示エリア26
は、上下左右にスクロールして表示させることができる
。各データ表示エリア28−1〜28−3には、中断点
における途中結果のデータが表示される。
太線または他と異なる色で表示されるので、実行ルート
のチェックも可能となっている。メイン表示エリア26
は、上下左右にスクロールして表示させることができる
。各データ表示エリア28−1〜28−3には、中断点
における途中結果のデータが表示される。
第3図(a)に示す論理図ソースが、どのような中間言
語に展開されているかを調べる場合、ファイルコマンド
によって、中間言語テキストの表示を指示することによ
り、第3図(b)図示のように、メイン表示エリア26
にそれを表示させることができる。この例では、中間言
語は、C言語ソースプログラムとなっており、C言語の
ソース行番号に続いて1元の論理図ソースの行番号が表
示されるようになっている。これから9例えば論理図ソ
ースの第34行目が、C言語のソースでは。
語に展開されているかを調べる場合、ファイルコマンド
によって、中間言語テキストの表示を指示することによ
り、第3図(b)図示のように、メイン表示エリア26
にそれを表示させることができる。この例では、中間言
語は、C言語ソースプログラムとなっており、C言語の
ソース行番号に続いて1元の論理図ソースの行番号が表
示されるようになっている。これから9例えば論理図ソ
ースの第34行目が、C言語のソースでは。
第19行ないし第22行になっていることが分かる。
また、第7図に示す論理図マツプファイル11の表示を
指示することにより、第3図(C)図示のように、論理
図マツプファイルの内容を表示させることができる。こ
こでは、横座標という変数が、変数名Xとして第11行
目で定義され、第31行等で参照、更新の対象となって
いることが示されている。
指示することにより、第3図(C)図示のように、論理
図マツプファイルの内容を表示させることができる。こ
こでは、横座標という変数が、変数名Xとして第11行
目で定義され、第31行等で参照、更新の対象となって
いることが示されている。
これらの表示画面により、論理図ソースだけによるデバ
ッグではなく、中間言語に詳しいユーザは、中間言語レ
ベルによるデバッグを行うことも可能となっている。
ッグではなく、中間言語に詳しいユーザは、中間言語レ
ベルによるデバッグを行うことも可能となっている。
第2図に示す実行位置・実行ルート表示部49は、第3
図(a)に示すような画面を表示するために9例えば第
4図に示す処理を行う。以下の説明における番号■〜■
は、第4図に示す処理番号■〜■に対応する。
図(a)に示すような画面を表示するために9例えば第
4図に示す処理を行う。以下の説明における番号■〜■
は、第4図に示す処理番号■〜■に対応する。
■ 表示する行が、実行停止行27であるかどうかを判
定する。実行停止行27でない場合、処理■を実行し、
実行停止行27である場合には。
定する。実行停止行27でない場合、処理■を実行し、
実行停止行27である場合には。
処理■を実行する。
■ 第2図に示す現在処理している行のソース表示管理
データ51におけるテキスト部表示属性を通常の表示と
する。
データ51におけるテキスト部表示属性を通常の表示と
する。
■ ソース表示管理データ51におけるテキスト部表示
属性を反転表示とする。
属性を反転表示とする。
■ 中断管理テーブル18を参照し9表示する行の実行
回数が1以上になっているかどうかを判定する。0であ
る場合、処理■を実行し、1以上である場合9処理■を
実行する。
回数が1以上になっているかどうかを判定する。0であ
る場合、処理■を実行し、1以上である場合9処理■を
実行する。
■ ソース表示管理データ51における記号部表示属性
、即ち、第3図(a)に示す論理図制御線31の表示属
性を、未通過(通常の表示)にする。
、即ち、第3図(a)に示す論理図制御線31の表示属
性を、未通過(通常の表示)にする。
■ 記号部表示属性を通過の状態に設定する。
■ ソース表示管理データ51に基づいて、1行分の表
示を行う。
示を行う。
■ 最下行まで表示したかどうか2例えば20行分表示
したかどうかを判定し9表示した場合には、処理を終了
する。まだである場合には、処理■へ制御を戻し1次行
について同様に処理を繰り返す。
したかどうかを判定し9表示した場合には、処理を終了
する。まだである場合には、処理■へ制御を戻し1次行
について同様に処理を繰り返す。
第2図に示す中断点コマンド処理部21による中断点の
設定は9例えば第5図に示すように行われる。ここでは
、カーソル位置による設定例を示している。以下の説明
における番号■〜■は、第5図に示す処理番号■〜■に
対応する。
設定は9例えば第5図に示すように行われる。ここでは
、カーソル位置による設定例を示している。以下の説明
における番号■〜■は、第5図に示す処理番号■〜■に
対応する。
■ カーソル位置は有効かどうかを調べる。カーソル位
置がデータ表示エリアにある場合などには、無効とされ
る。
置がデータ表示エリアにある場合などには、無効とされ
る。
■ カーソル位置が有効である場合、その位置に表示さ
れている論理図ソースのファイル名と行番号とを得る。
れている論理図ソースのファイル名と行番号とを得る。
■ その行が実行文であるか否かを調べる。データ文で
あるような場合には2次の処理■をスキップする。
あるような場合には2次の処理■をスキップする。
■ ユーザ中断点を中断管理テーブル18に登録する。
なお、ユーザ中断点の解除についても、同様に行われる
。
。
第2図に示すカバレジ処理部45は1例えば第6図に示
すように処理する。以下の説明における番号■〜■は、
第6図に示す処理番号■〜■に対応する。
すように処理する。以下の説明における番号■〜■は、
第6図に示す処理番号■〜■に対応する。
■ カバレジモードがONになっているか否かを調べる
。OFFである場合には、処理を終了する。
。OFFである場合には、処理を終了する。
■ ターゲットの中断位置に該当する論理図ソースのフ
ァイル名1行番号を得る。
ァイル名1行番号を得る。
■ ファイル名が前の中断点から変化したかどうかを調
べる。変化しない場合、処理■へ制御を移す。
べる。変化しない場合、処理■へ制御を移す。
■ ファイル名変更のデータとファイル名を所定のカバ
レジ用バッファへ出力する。
レジ用バッファへ出力する。
■ 行番号をバッファへ出力する。
■ バッファが一杯になったかどうかを調べる。
バッファが一杯になっていない場合、処理を終了する。
■ バッフ1が一杯になった場合、カバレジファイルを
追加モードで0PENする。
追加モードで0PENする。
■ バッファ内のデータをカバレジファイルへ出力する
。
。
■ カバレジファイルをCLO5EL、処理を終了する
。
。
このようにして、カバレジファイルには、モードの指定
により自動的に実行履歴情報が収納されるので、後に、
第2図に示す実行履歴出力処理部4.7により、デバッ
グ時の環境表示9行別通過回数表示、関数別呼び出し回
数の表示、論理図ソースごとに実行位置をマークしての
印刷などを行うことができる。特に、この実行位置をマ
ークしての印刷では、論理図の制御範囲およびレベルを
示す論理図制御線を強調印字することなどにより。
により自動的に実行履歴情報が収納されるので、後に、
第2図に示す実行履歴出力処理部4.7により、デバッ
グ時の環境表示9行別通過回数表示、関数別呼び出し回
数の表示、論理図ソースごとに実行位置をマークしての
印刷などを行うことができる。特に、この実行位置をマ
ークしての印刷では、論理図の制御範囲およびレベルを
示す論理図制御線を強調印字することなどにより。
論理図の特長を活かした見易い実行ルートの表示が可能
である。
である。
C発明の効果〕
以上説明したように1本発明によれば、論理図ソースの
処理における実際の実行ルートを、論理図の特長である
見易さを活かした形で表示することができるようになり
、デバッグや処理解析が容易になる。従って、論理図に
よって生成されたプログラムの信頼性および保守性を向
上させることができる。
処理における実際の実行ルートを、論理図の特長である
見易さを活かした形で表示することができるようになり
、デバッグや処理解析が容易になる。従って、論理図に
よって生成されたプログラムの信頼性および保守性を向
上させることができる。
第1図は本発明の基本構成例、第2図は本発明の一実施
例処理構成、第3図は本発明に関連する表示画面の例、
第4図は本発明の一実施例に係る実行位置・実行ルート
表示処理説明図、第5図は本発明の一実施例に係るユー
ザ中断点設定処理説明図、第6図は本発明の一実施例に
係るカバレジ処理説明図、第7図は本発明の詳細な説明
図を示す。 図中、14は処理装置、15は論理図デバッガ。 16はデバッグ対象プログラム、18は中断管理テーブ
ル、19はシステム中断点設定部、20は実行処理部、
22は表示処理部、25はディスプレイ、26はメイン
表示エリア、27は実行停止行、2111〜28−3は
データ表示エリア、29はモード表示エリア、31は論
理図制御線を表す。
例処理構成、第3図は本発明に関連する表示画面の例、
第4図は本発明の一実施例に係る実行位置・実行ルート
表示処理説明図、第5図は本発明の一実施例に係るユー
ザ中断点設定処理説明図、第6図は本発明の一実施例に
係るカバレジ処理説明図、第7図は本発明の詳細な説明
図を示す。 図中、14は処理装置、15は論理図デバッガ。 16はデバッグ対象プログラム、18は中断管理テーブ
ル、19はシステム中断点設定部、20は実行処理部、
22は表示処理部、25はディスプレイ、26はメイン
表示エリア、27は実行停止行、2111〜28−3は
データ表示エリア、29はモード表示エリア、31は論
理図制御線を表す。
Claims (1)
- 【特許請求の範囲】 プログラムの制御構造およびデータ構造を図形要素で表
記する論理図ソースにより生成された実行形式プログラ
ムを計算機により実行させることによって、論理図ソー
スにおける実行ルート情報を出力する論理図実行ルート
出力処理方式であって、 上記論理図ソースの各実行文ごとに、その行番号と、対
応する実行形式プログラムのアドレス情報と、実行通過
情報とを記憶する中断管理テーブル(18)と、 上記実行形式プログラム内に埋め込まれた中断処理用の
制御移行命令により制御を得て、上記論理図ソースの実
行文ごとに、上記中断管理テーブル(18)における実
行通過情報を更新する実行処理手段(20)と、 上記中断管理テーブル(18)に記憶された実行通過情
報に基づいて、デバッグ対象となっている論理図ソース
を、その実行ルートが明示される態様で表示する表示処
理手段(22)とを備えたことを特徴とする論理図実行
ルート出力処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62058558A JPS63223931A (ja) | 1987-03-13 | 1987-03-13 | 論理図実行ル−ト出力処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62058558A JPS63223931A (ja) | 1987-03-13 | 1987-03-13 | 論理図実行ル−ト出力処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63223931A true JPS63223931A (ja) | 1988-09-19 |
Family
ID=13087784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62058558A Pending JPS63223931A (ja) | 1987-03-13 | 1987-03-13 | 論理図実行ル−ト出力処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63223931A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04217034A (ja) * | 1990-12-19 | 1992-08-07 | Fujitsu Ltd | プログラムトレースの表示方式 |
JPH0962538A (ja) * | 1995-08-29 | 1997-03-07 | Nec Corp | 効率化支援装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5633742A (en) * | 1979-08-25 | 1981-04-04 | Fujitsu Ltd | Arithmetic processor having debug processing function |
JPS6195458A (ja) * | 1984-10-17 | 1986-05-14 | Hitachi Ltd | 図式プログラム・テスト方法 |
JPS61213935A (ja) * | 1985-03-18 | 1986-09-22 | Omron Tateisi Electronics Co | 高級言語プログラムのデバック装置及びそのステップ方式 |
-
1987
- 1987-03-13 JP JP62058558A patent/JPS63223931A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5633742A (en) * | 1979-08-25 | 1981-04-04 | Fujitsu Ltd | Arithmetic processor having debug processing function |
JPS6195458A (ja) * | 1984-10-17 | 1986-05-14 | Hitachi Ltd | 図式プログラム・テスト方法 |
JPS61213935A (ja) * | 1985-03-18 | 1986-09-22 | Omron Tateisi Electronics Co | 高級言語プログラムのデバック装置及びそのステップ方式 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04217034A (ja) * | 1990-12-19 | 1992-08-07 | Fujitsu Ltd | プログラムトレースの表示方式 |
JPH0962538A (ja) * | 1995-08-29 | 1997-03-07 | Nec Corp | 効率化支援装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0785510B1 (en) | Program debugging system for debugging a program having a graphical user interface | |
US6026362A (en) | Tool and method for diagnosing and correcting errors in a computer program | |
JP3612294B2 (ja) | デバッグ方法およびデバッグ装置 | |
JPH10124495A (ja) | 原稿テキスト生成処理装置及びそのプログラム記憶媒体 | |
US7225432B2 (en) | Methods and systems for debugging a computer program code | |
US7043717B2 (en) | Debugging apparatus and method | |
JPS63223931A (ja) | 論理図実行ル−ト出力処理方式 | |
JPS62113244A (ja) | プログラムテスト装置 | |
JPH06332689A (ja) | プログラムの表示方法およびプログラムの編集受付け方法 | |
JPS63223928A (ja) | 論理図デバツグ処理方式 | |
JPH02146630A (ja) | マイクロプロセッサのプログラム開発システム | |
JP4387288B2 (ja) | 制御用表示装置、エディタ装置、プログラムおよび記録媒体 | |
JP2772047B2 (ja) | プラント監視操作装置 | |
JP2001318796A (ja) | 内外イベントドリブン方式によるプログラム実行制御方法、記録媒体およびプログラム作成支援システム | |
JPS61213936A (ja) | 高級言語プログラムのステツプ実行方式 | |
JPH0863369A (ja) | 最適化情報出力方式 | |
JP2659366B2 (ja) | デバッグ方法及びその装置 | |
JP2023087457A (ja) | ロボットプログラミング支援装置、ロボットプログラミング支援プログラム、及び、ロボットプログラミング支援方法 | |
JPH0731616B2 (ja) | プログラムデバッグ装置 | |
JPH04236635A (ja) | 識別名検索処理方式 | |
JPH05108372A (ja) | コンパイラ最適化処理内容の出力方式 | |
JPH01316842A (ja) | バッチプログラム・デバッグツール | |
Denhaa | Design environments and the user interface for CAD of control systems | |
JP2008047061A (ja) | 高水準言語のデバッグ方法 | |
JPH05342052A (ja) | デバッグ方式 |