JPS61180344A - 高級言語のステツプ実行システム - Google Patents

高級言語のステツプ実行システム

Info

Publication number
JPS61180344A
JPS61180344A JP60019868A JP1986885A JPS61180344A JP S61180344 A JPS61180344 A JP S61180344A JP 60019868 A JP60019868 A JP 60019868A JP 1986885 A JP1986885 A JP 1986885A JP S61180344 A JPS61180344 A JP S61180344A
Authority
JP
Japan
Prior art keywords
return
function
point
level language
execution system
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
JP60019868A
Other languages
English (en)
Inventor
Fumisada Yamazaki
山崎 文貞
Yoshinori Takahashi
義則 高橋
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.)
Omron Corp
Original Assignee
Omron Tateisi Electronics Co
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 Omron Tateisi Electronics Co filed Critical Omron Tateisi Electronics Co
Priority to JP60019868A priority Critical patent/JPS61180344A/ja
Publication of JPS61180344A publication Critical patent/JPS61180344A/ja
Pending legal-status Critical Current

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

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)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 く産業上の利用分野〉 本発明は、プログラミング言語、特に日常使われる数式
や記号に近い形で書く高級言語のステップ実行システム
に関する。
〈発明の概要〉 本発明は、高級言語で書かれたプログラムをデバッグす
る高級言語のステップ実行システムに、ステップリター
ンという新たな概念を取入れ、このコマンドが入力され
れば、呼出し元に戻った場合、自動的にブレイクがかか
るようにして、デバッグ作業の効率向上全図ったもので
ある。
〈従来の技術〉 一般に、高級言語で書かれたプログラムをデバッグ(d
ebug )する場合、文(行)単位のステップ実行が
できるものもあるが、多くは関数単位で行われているの
が現状である。
ところで、成る関数単位のデバッグが完了した後、プロ
グラム処理を呼出し元へ戻す場合、従来′は、呼出し元
で新たにブレイクポイントラ設定するか、あるいはその
ま\ステップ実行を継続して行かなければならなか、つ
た。
プログラムをデバッグする時のデバッグ作業工数が多く
、効率的なデバッグを実施することができなかった。
そこで、本発明は、上述した問題点に鑑み、関数単位の
デバッグを効率的に実施することのできQ る高級言語のステップ実行Mk提供することを目的とし
ている。
く問題点を解決するための手段〉 前記の目的を達成するために、本発明は、高級言語で書
かれたプログラム金デバッグするステップ実行システム
であって、関数のリターンアドレスにブレイクポイント
としてのステップリターンを設定して実行させ、ブレイ
ク発生後にブレイクポイントラ解除することを特徴とす
る。
〈実施例〉 以下、図面?参照しながら本発明の一実施例を説明する
第1図は本発明が適用される高級言語のステップ実行シ
ステムの概略的ブロック図である。第1図において、1
は命令を解読し、命令にしたがって演′!X動作、記憶
動作、入出力動作、制御動作を行うマイクロプロセッサ
(CPU)、2tifバツクの対象となる被デバツグプ
ログラムが格納されているメモリ(RAM)、3はデバ
ッグプログラムが格納されているメモリ(ROM)、4
はオペレータがデバッグ時に利用するデバッグ用情報表
示装置(CRT )であり、5はキー人力装置(キーボ
ード)であって、これらは、それぞれ図示しない制御信
号バス、アドレスバス、双方向データバスに接続されて
いる。
第2図は第1図のメモリ2に格納されている被デバツグ
プログラムの構成図である。この被デバツグプログラム
は2つの関数main(主プログラム)とfuncti
on A(副プログラム)から構成されている。副プロ
グラムは後述の新たな概念であるステップリターンを備
えて成り、呼出し命令(call )によって起動実行
される。また、主プログラムの0点は呼出し元を示し、
この0点で副プログラムつま9、関数func、 (A
) k呼出している。尚、矢印■〜■は実行順序を示す
関数func、(A)が呼出された時、所謂割込みが発
生した時のスタックメモリマツプを第3図に示す。
第3図において、6は関数func、(A)内で使用さ
れる局所変数(各ブロック(手続き)内で宣言される)
エリア、7は戻シ番地を格納するリターンアドレスエリ
ア、8は関数func、(A)の引数エリア、9はスタ
ックポインタである。このスタックポインタ9でスタッ
クメモリのアドレスが操作される。
第4図は2つの関数mainとfunc、(A)に必要
な局所変数エリアのサイズNと各関数の配置アドレス(
先頭番地と最終番地)の具体的データの一例を示す構成
図である。これらの局所変数エリアサイズNと配置アド
レスは、第1図のメモリ2に格納される被デバツグプロ
グラムをコンパイルする際に設定され、コンパイラが出
力するものである。
次に、上述した高級言語のステップ実行システム全周い
て関数func・(A)の0点(実行順序■)から関数
mainの0点(呼出し元)へ戻る動作について説明す
る。
先ず、オペレータが呼出し元(0点)へ戻れというコマ
ンド要求をキーボード5t−介してデバッグプログラム
(メモリ3)に与える。この指令を受けたCPULは制
御信号にしたがってデバッグプログラム(メモリ3)か
らデータを読出し、現在のプログラムカウンタの値と被
デバツグプログラム(メモリ2)の第4図に示すデータ
とから、割込みによって現在ストップしている関数に関
する局所変数エリア6のサイズNt求める。
次いで、CPU1は、現在のスタックポインタ9の値と
先に求めた局所変数エリア6のサイズNとから、当該関
数のリターンアドレスが格納されているスタック内の当
該リターンアドレスを求め、これを取出す。そして、取
出されたリターンアドレス(戻9番地)にブレイクポイ
ント(breakpaint )としてのステップリタ
ーンを設定して実行させる。この時の実行過程は、ステ
ップリターンによシ実行順序■及び■の手順を経て呼出
し元である0点に戻る。そしてとの0点に戻った時点で
プログラム処理は自動的にブレイクする。
この時、CPU1は現在実行中の命令の番地の次の番地
を保持しているプログラムカウンタの値と、先のリター
ンアドレスとを比較することで、0点(呼出し元)であ
ることの確認を行い、この確認後、前記ブレイクポイン
トラ自動的に解除する。従って、デバッグ対象関数に関
する呼出し関数内のステップリターンまでの実行は、ブ
レイクポイントを設定することなく行うことができる。
〈発明の効果〉 以上詳述したように、本発明は高級言語のステップ実行
システム内に、ステップリターンという新比な概念き取
込み、このコマンド要求に基づき、プログラム処理が呼
出し元に戻った時、その処理が自動的にブレイクするよ
うにしたものであるから、従来のように、呼出し元に戻
る場合、オペレータがいちいち呼出し元を確認し、しか
る後、ブレイクポイン)を設定して実行させるといった
作業が不要となり、プログラムのデバッグ時における作
業工数を著しく低減せしめ得て、デバッグの効率向上に
役立つ効果が大きい。延いては、プログラムの生産性の
向上を図ることもできる。
【図面の簡単な説明】
第1図は本発明が適用される高級言語のステップ実行シ
ステムの概略的ブロック図、第2図は被デバツグプログ
ラムの構成図、第3図はスタックポインタで指定された
スタックメモリの構成図、第4図はコンパイラが出力す
る処理対象としてのデータの一例金示す構成図である。 1・・・CPU(マイクロプロセッサ)、2・・・メモ
リ(RAM)、3・・・メモリ(ROM)、4・・デノ
くラグ月情報表示装置(cRT)、5・・・キー人力装
置、916.スタックポインタ、N・・・局所変数エリ
アサイズ。

Claims (1)

    【特許請求の範囲】
  1. 高級言語で書かれたプログラムをデバッグするステップ
    実行システムであつて、関数のリターンアドレスにブレ
    イクポイントとしてのステップリターンを設定して実行
    させ、ブレイク発生後にブレイクポイントを解除するこ
    とを特徴とする高級言語のステップ実行システム。
JP60019868A 1985-02-06 1985-02-06 高級言語のステツプ実行システム Pending JPS61180344A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60019868A JPS61180344A (ja) 1985-02-06 1985-02-06 高級言語のステツプ実行システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60019868A JPS61180344A (ja) 1985-02-06 1985-02-06 高級言語のステツプ実行システム

Publications (1)

Publication Number Publication Date
JPS61180344A true JPS61180344A (ja) 1986-08-13

Family

ID=12011194

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60019868A Pending JPS61180344A (ja) 1985-02-06 1985-02-06 高級言語のステツプ実行システム

Country Status (1)

Country Link
JP (1) JPS61180344A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0310339A (ja) * 1989-06-07 1991-01-17 Yokogawa Electric Corp 関数ステップ機能を有するデバッグ方法
JPH03129439A (ja) * 1989-07-05 1991-06-03 Nec Corp デバッグ方式
JPH0756766A (ja) * 1993-08-10 1995-03-03 Nec Corp トレース装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57153343A (en) * 1981-03-18 1982-09-21 Hitachi Ltd Compile method for architecture program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57153343A (en) * 1981-03-18 1982-09-21 Hitachi Ltd Compile method for architecture program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0310339A (ja) * 1989-06-07 1991-01-17 Yokogawa Electric Corp 関数ステップ機能を有するデバッグ方法
JPH03129439A (ja) * 1989-07-05 1991-06-03 Nec Corp デバッグ方式
JPH0756766A (ja) * 1993-08-10 1995-03-03 Nec Corp トレース装置

Similar Documents

Publication Publication Date Title
JPS61180344A (ja) 高級言語のステツプ実行システム
JPH0581070A (ja) プログラマブルコントローラ、およびプログラマブルコントローラにおけるユーザプログラム実行方法
JPS61180342A (ja) 高級言語のステツプ実行方式
JP2659366B2 (ja) デバッグ方法及びその装置
JP2001166966A (ja) デバッガにおける被テストプログラムの実行環境管理方法
JPH0465729A (ja) シンボリック・デバッガ
JPH0262639A (ja) 言語デバッガの中断方式
JPS5835648A (ja) プログラム実行制御方式
JPH0259829A (ja) マイクロコンピュータ
JPH01152505A (ja) Pcのプログラムデバッグ方式
JPH04333146A (ja) デバッグにおけるプログラムの実行制御方式
JPH02284236A (ja) プログラムデバッグ処理装置
JP2695497B2 (ja) 命令が共用される文の中断通知装置
JPS63163543A (ja) 情報処理装置
JPS638946A (ja) プログラムデバツグサポ−ト方式
JPH0772874B2 (ja) 割込み受取り装置
JPS6214240A (ja) プログラム検査方式
JPH03175539A (ja) デバッグ用マイクロプロセッサ
JPH06214828A (ja) 対話型デバッグ制御装置
JP2006350676A (ja) 組込みシステムのプログラムデバッグ方法
JPH05233365A (ja) 最適化コードデバッグ方式
JPH05342052A (ja) デバッグ方式
JPH0695910A (ja) 異常処理のための対話型デバッグ制御方式
JPS61194531A (ja) 命令実行制御装置
JPS61286936A (ja) ステップ動作制御方式