JPH02278346A - 例外発生位置表示方式 - Google Patents

例外発生位置表示方式

Info

Publication number
JPH02278346A
JPH02278346A JP1099486A JP9948689A JPH02278346A JP H02278346 A JPH02278346 A JP H02278346A JP 1099486 A JP1099486 A JP 1099486A JP 9948689 A JP9948689 A JP 9948689A JP H02278346 A JPH02278346 A JP H02278346A
Authority
JP
Japan
Prior art keywords
exception
operator
occurred
source program
program
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
JP1099486A
Other languages
English (en)
Inventor
Yukimasa Yoshida
幸正 吉田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP1099486A priority Critical patent/JPH02278346A/ja
Publication of JPH02278346A publication Critical patent/JPH02278346A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は電子計算機システムにおける例外発生位置表示
方式に関するものである。
[従来の技術] プログラムの開発段階にあワては入力データの不正等に
よる異常動作、すなわち例外が発生することが多く、そ
の原因の究明を容易にするために例外が発生した位置を
表示する機能が設けられている。
従来、この種の例外発生位置表示方式では、原始プログ
ラム中の文の位置を表すコードとその文に対応する目的
プログラムの命令コードのアドレスとを対応付けるテー
ブルをコンパイルの段階で作成し、目的プログラムの実
行時に例外が発生した場合、例外が発生した命令コード
のアドレスを元に前記のテーブルを検索することで、例
外が発生した文を求め表示するようにしていた。
〔発明が解決しようとする課題〕
上述したように、従来の例外発生位置表示方式では、目
的プログラムの実行時に例外が発生した場合、例外が発
生した命令コードの属する原始プログラムの文の位置が
表示されるため、膨大な星の原始プログラムから欠陥部
分が絞り込め有用なものであったが、原始プログラム中
の文単位の位置情報しか得られないため、その文に複数
の演算子が含まれている場合、その文のどの演算子で例
外が発生したのかという情報までは判らないという欠点
があった。
例えば、第2図に示すようなFORTRAN言語で記述
された原始プログラムに対応する目的プログラムを実行
したとし、第2行目のREAD文における変数Yまたは
変数Zに対応する入力データが不正であったために、第
3行目の代入文のrY*ZJの演算中に演算例外が発生
したものとすると、原始プログラムの第3行目の文で例
外が発生したということは表示され認識されるが、その
文のどの演算子を実行中に演算例外が発生したのかは判
らなかった。そのため、例外の原因(上記の例では変数
Yまたは変数Zに対応する入力データが不正ということ
。)を究明するための作業を行わなければならないもの
であった。
本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、例外が発生した文のみならず、その
文における演算子までも特定して表示することのできる
例外発生位置表示方式を堤供することにある。
[課題を解決するための手段] 本発明は上記の目的を達成するため、原始プログラム中
での各演算子の位置を検出する演算子位置検出手段と、 目的プログラム生成時に前記演算子位置検出手段により
得られた情報から原始プログラム中での各演算子の位置
を表すコードと目的プログラム中のその演算子に対応す
る命令コードのアドレスとを対応付ける例外発生位置判
定用テーブルを作成する例外発生位置判定用テーブル作
成手段と、目的プログラムの実行に際して例外が発生し
た場合にその例外が発生した命令コードのアドレスを元
に前記例外発生位置判定用テーブルを検索して原始プロ
グラム中の対応する演算子の位置を求める例外発生値1
刊定手段と、 求められた例外発生位置を表示する表示手段とから構成
するようにしている。
〔作用] 本発明の例外発生位置表示方式にあっては、演算子位置
検出手段が原始プログラム中での各演算子の位置を検出
し、目的プログラム生成時に例外発生位置判定用テーブ
ル作成手段が前記演算子位置噴出手段により得られた情
報から原始プログラム中での各演算子の位置を表すコー
ドと目的プログラム中のその演算子に対応する命令コー
ドのアドレスとを対応付ける例外発生位置判定用テーブ
ルを作成し、目的プログラムの実行に際して例外が発生
した場合にその例外が発生した命令コードのアドレスを
元に例外発生位置判定手段が前記例外発生位置判定用テ
ーブルを検索して原始プログラム中の対応する演算子の
位置を求め、求められた例外発生位置を表示手段が表示
する。
〔実施例] 以下、本発明の実施例につき図面を参照して説明する。
第1図は本発明の例外発生位置表示方式の一実施例を示
す構成図である。第1図において、■はコンパイルの対
象となる原始プログラム、2はコンパイルを実行するコ
ンパイラ、5はコンパイラ2により生成される目的プロ
グラムである。なお、コンパイラ2には、本発明の特徴
部分として、原始プログラム1中の各演算子の位置を検
出する演算子位置検出手段3と、目的プログラム5を生
成する時に、/Jt算子位置検出手段3によって検出さ
れた演算子の位置情報を用いて例外発生位置判定用テー
ブル6を作成する例外発生位置判定用テーブル作成手段
4とが設けられている。また、その他の構成として、目
的プログラム5の実行時に例外が発生した場合に動作し
、例外が発生した目的プログラム5の命令コードのアド
レスを元に例外発生位置判定用テーブル6を検索して例
外が発生した命令に対応する演算子の位置を求める例外
発生位置判定手段7と、求められた演算子の位置を表示
装置9に表示させる表示手段8とが設けられている。
以下、具体例を用いて上記の実施例の動作を説明する。
今、第2図に示す如きFORTRAN言語で記述された
原始プログラム1がコンパイラ2に入力されたとする。
コンパイラ2は原始プログラム1を読み込んで周知のコ
ンパイル処理を行うが、この際、コンパイラ2の演算子
位置検出手段3は原始プログラムlに含まれる各演算子
につき、その演算子が属する文の番号およびその文の中
での各演算子のカラム位置を検出する。第2図の原始プ
ログラム1については、第3行目に演算子r*、r+」
「*」が現れるため、第3図に示すように、文の番号と
して「3」を検出し、各演算子「*」’+J、  ’*
Jにつきカラム位置をそれぞれ「13J、  r17」
、r21」と検出する。
次いで、コンパイラ2のコンパイル処理により原始プロ
グラムIの各演算子に対する命令コードのアドレスが決
まった段階で例外発生位置判定用テーブル作成手段4が
動作し、演算子位置検出手段3によって検出された演算
子の位置情報を用い、原始プログラム1中での各演算子
の位置を表すコード(文の番号5力ラム位置)と目的プ
ログラム5中のその演算子に対応する命令コードのアド
レスとを対応付ける例外発生位置判定用テーブル6を目
的プログラム5の一部として作成する。第2図の原始プ
ログラムlに対して生成される目的プログラム5の本体
部分は第4図のようになり、rooloo、〜r001
06Jは命令コードのアドレス(ロケーション)、rF
LDJ等は命令コードである。なお、rF LDJは読
込命令、rFMPJは乗算命令、rFST、は格納命令
、rFADJは加算命令である。しかして、第3図にお
ける文の番号「3」のカラム位置「13」の演算子「*
」に対応する命令コードは第4図においてはアドレスr
00101」のrFMPJであり、文の番号「3」のカ
ラム位置「17Jの演算子「+」に対応する命令コード
はアドレス「o。
105JのrFADJであり、文の番号「3」のカラム
位置「21」の演算子「*Jに対応する命令コードはア
ドレス’00104Jの’ F M P 」であること
から、例外発生位置判定用テーブル作成手段4はこれら
の情報から第5図に示す如き例外発生位置判定用テーブ
ル6を作成する。
例外発生位置判定用テーブル6を含む目的プログラム5
はその後に実行されるが、実行に際して例外が発生する
と例外発生位置判定手段7が動作し、例外の発生した命
令コードのアドレスを用いて例外発生位置判定用テーブ
ル6を検索し、対応する演算子の原始プログラム1にお
ける位置情報を得る。例えば、第4図の目的プログラム
5のアドレス「00104」の命令コードrFMPJで
例外が発生したとすると、アドレスroo104ノをキ
ーに用いて第5図の例外発生位置判定用テーブル6を検
索することにより、文の番号r3゜カラム位置「21J
を得る。
表示手段8は例外発生位置判定手段7が得た位置情報を
適宜加工し、表示装置9に表示する。
そして、プログラム開発者は上記の表示を認識し、その
後の作業の参考にする。
〔発明の効果〕
以上説明したように、本発明の例外発生位置表示方式に
あっては、例外が発生した文およびその文の中の演算子
の位置が表示できるため、例外の発生原因の究明が非常
に容易となる効果がある。
【図面の簡単な説明】
第1図は本発明の例外発生位置表示方式の一実施例を示
す構成図、 第2図は原始プログラムの例を示す図、第3図は演算子
位置検出手段により検出された情報の例を示す図、 第4図は目的プログラムの例を示す図および、第5図は
例外発生位置判定用テーブルの例を示す図である。 図において、 ■・・・・・・原始プログラム 2・・・・・・コンパイラ 3・・・・・・演算子位置検出手段 4・・・・・・例外発生位置判定用テーブル作成手段5
・・・・・・目的フ゛ログラム 6・・・・・・例外発生位置判定用テーブル7・・・・
・・例外発生位置判定手段 8・・・・・・表示手段 9・・・・・・表示装置

Claims (1)

  1. 【特許請求の範囲】 原始プログラム中での各演算子の位置を検出する演算子
    位置検出手段と、 目的プログラム生成時に前記演算子位置検出手段により
    得られた情報から原始プログラム中での各演算子の位置
    を表すコードと目的プログラム中のその演算子に対応す
    る命令コードのアドレスとを対応付ける例外発生位置判
    定用テーブルを作成する例外発生位置判定用テーブル作
    成手段と、目的プログラムの実行に際して例外が発生し
    た場合にその例外が発生した命令コードのアドレスを元
    に前記例外発生位置判定用テーブルを検索して原始プロ
    グラム中の対応する演算子の位置を求める例外発生位置
    判定手段と、 求められた例外発生位置を表示する表示手段とから構成
    されることを特徴とする例外発生位置表示方式。
JP1099486A 1989-04-19 1989-04-19 例外発生位置表示方式 Pending JPH02278346A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1099486A JPH02278346A (ja) 1989-04-19 1989-04-19 例外発生位置表示方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1099486A JPH02278346A (ja) 1989-04-19 1989-04-19 例外発生位置表示方式

Publications (1)

Publication Number Publication Date
JPH02278346A true JPH02278346A (ja) 1990-11-14

Family

ID=14248637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1099486A Pending JPH02278346A (ja) 1989-04-19 1989-04-19 例外発生位置表示方式

Country Status (1)

Country Link
JP (1) JPH02278346A (ja)

Similar Documents

Publication Publication Date Title
US7178135B2 (en) Scope-based breakpoint selection and operation
US20030097613A1 (en) Software debugger, system-level debugger, debugging method, and debugging program
WO2005055051A2 (en) Determining the possibility of adverse effects arising from a code change
JP2557239B2 (ja) プログラム内データ名称標準化方法
KR20000028921A (ko) 반도체 시험장치의 프로그램 작성 시스템
JPH02278346A (ja) 例外発生位置表示方式
JPH02275539A (ja) デバッグ処理方式
JPH02220145A (ja) プログラムトレース方式
KR100329991B1 (ko) 프로젝트 매니저의 체크박스를 이용한 전처리기 디파인 처리방법
CN100418067C (zh) 计算机程序查错辅助方法及系统
JPH05224944A (ja) アラインメント整合方法
JPS6292034A (ja) プログラムデバツグ装置
US7627859B2 (en) Method for configuring non-script language library files to be run as scripts
JPH04316140A (ja) プログラムトレース装置
JPH0250731A (ja) コンパイル装置
JPH0546434A (ja) プログラムデバツグ方式
JPH0675816A (ja) ループ処理誤り検出装置
JPH01266636A (ja) 例外データ表示方式
JPH04217034A (ja) プログラムトレースの表示方式
JPH0245836A (ja) 試験診断プログラムの自動進捗管理方式
JPH03129538A (ja) プログラム評価システム
JPH0264822A (ja) ファイル処理エラー検出方法
JPH02275538A (ja) デバッグ処理方式
JPH01296347A (ja) コンパイラのエラーメッセージ出力方式
JPH064375A (ja) ファイル名検索方法および装置