JPH0212344A - プログラム実行装置 - Google Patents
プログラム実行装置Info
- Publication number
- JPH0212344A JPH0212344A JP63161618A JP16161888A JPH0212344A JP H0212344 A JPH0212344 A JP H0212344A JP 63161618 A JP63161618 A JP 63161618A JP 16161888 A JP16161888 A JP 16161888A JP H0212344 A JPH0212344 A JP H0212344A
- Authority
- JP
- Japan
- Prior art keywords
- program
- execution
- address
- statement
- machine language
- 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
- 230000010365 information processing Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 5
- 238000006243 chemical reaction Methods 0.000 abstract description 4
- 238000000034 method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
この発明は高級言語プログラムをコンパイラにより機械
語プログラムに変換しプログラム実行する情報処理装置
において、プログラム実行を高級言語プログラムの行間
で中断する機能を有するプログラム実行装置に関する。
語プログラムに変換しプログラム実行する情報処理装置
において、プログラム実行を高級言語プログラムの行間
で中断する機能を有するプログラム実行装置に関する。
従来の技術
以下図面を参照しながら、従来のプログラム実行方式の
一例について説明する。
一例について説明する。
第2図は、従来のプログラム実行方式の構成、第3図は
メモリの配置、第4図はプログラム実行時の手順を示す
ものである。第2図において、1は高級言語プログラム
でめる。2bはコンパイラである。3bは文番号テーブ
ルである。4bは機械語プログラムである。6はCPU
である。第3図ニおいて、8は機械語サブル−チンであ
る。9は文番号である。10は機械語サブルーチンの先
頭アドレスである。
メモリの配置、第4図はプログラム実行時の手順を示す
ものである。第2図において、1は高級言語プログラム
でめる。2bはコンパイラである。3bは文番号テーブ
ルである。4bは機械語プログラムである。6はCPU
である。第3図ニおいて、8は機械語サブル−チンであ
る。9は文番号である。10は機械語サブルーチンの先
頭アドレスである。
第4図において、11で中断文番号を設定する。
12で文番号を読み出す。13でアドレスを読み出す。
14で実行中断判断をする。15でデバッグ処理をする
。1eでサブルーチンをコールする。
。1eでサブルーチンをコールする。
1了でサブルーチンを実行する。
従来のプログラム実行方式は、高級言語プログラムから
機械語プログラムと文番号テーブルを生成し、メモリに
格納するコンパイラと、プログラム実行時に前記機械語
プログラムと前記文番号テーブルを使ってプログラム実
行するCPUから構成される。
機械語プログラムと文番号テーブルを生成し、メモリに
格納するコンパイラと、プログラム実行時に前記機械語
プログラムと前記文番号テーブルを使ってプログラム実
行するCPUから構成される。
コンパイル時には、高級言語プログラム1のプログラム
文1文を機械語に変換し、サブルーチン8の形で、機械
語プログラム4bに格納される。
文1文を機械語に変換し、サブルーチン8の形で、機械
語プログラム4bに格納される。
前記プログラム文の文番号と前記サブル−チン8の先頭
アドレスは、文番号9とアドレス10として文番号テー
プtv3bに格納する。
アドレスは、文番号9とアドレス10として文番号テー
プtv3bに格納する。
次に、プログラム実行時には、CPU5がソフトウェア
で前記文番号テープ/L/3bを検索しながら、前記機
械語プログラム4bを実行する。
で前記文番号テープ/L/3bを検索しながら、前記機
械語プログラム4bを実行する。
第2図にもとづいて、プログラム実行時の手順を説明す
る。
る。
中断文番号設定11で、プログラム実行を中断したい高
級言語プログラム文の文番号を、中断文番号として設定
する。文番号の読み出し12で、前記文番号テープ)v
3bから文番号9を読み出す。
級言語プログラム文の文番号を、中断文番号として設定
する。文番号の読み出し12で、前記文番号テープ)v
3bから文番号9を読み出す。
アドレスの読み出し13で、前記文番号テーブル3bか
らアドレス1oを読み出す。
らアドレス1oを読み出す。
実行中断判断14で、前記中断文番号と前記文番号9を
比較する。中断文番号と文番号9が等しければ、プログ
ラム実行を中断すべき文であると判断し、デバッグ処理
15へ移るが、もし等しくなければ、サブルーチンコー
7v16へ移る。
比較する。中断文番号と文番号9が等しければ、プログ
ラム実行を中断すべき文であると判断し、デバッグ処理
15へ移るが、もし等しくなければ、サブルーチンコー
7v16へ移る。
サブル−チンコー/L/16では、前記アドレス10を
もとにして、機械語サブルーチン8を呼び出す。
もとにして、機械語サブルーチン8を呼び出す。
サブルーチンの実行17では、呼び出されたサブルーチ
ン8を実行する。この機械語サブルミチンを1つ実行す
ることにより、高級言語プログラムのプログラム文を1
文実行したことになる。
ン8を実行する。この機械語サブルミチンを1つ実行す
ることにより、高級言語プログラムのプログラム文を1
文実行したことになる。
この後、再び交番の読み出し12にもどシ、先に説明し
た手順をくり返し、プログラム実行を進めていく。もし
、プログラム実行を進めていく途中で、実行中断判断1
4において中断文番号と文番号9が等しくなると、デバ
ッグ処理16へ移る。
た手順をくり返し、プログラム実行を進めていく。もし
、プログラム実行を進めていく途中で、実行中断判断1
4において中断文番号と文番号9が等しくなると、デバ
ッグ処理16へ移る。
デバッグ処理16を行なっている間は、プログラム実行
が前記中断文番号で指定した高級言語プログラム文の前
で中断されることになる。デバッグ処理16が終了し、
サブルーチンコー/L/1oへ移ると再びプログラム実
行を再開する。
が前記中断文番号で指定した高級言語プログラム文の前
で中断されることになる。デバッグ処理16が終了し、
サブルーチンコー/L/1oへ移ると再びプログラム実
行を再開する。
発明が解決しようとする課題
しかし、このような方式のものでは、プログラム文が1
行実行される毎に、文番号の読み出し12、アドレスの
読み出し13、実行中断判断14、サブルーチンコー/
I/16の処理が必要となシ、プログラムの実行速度が
遅いという問題点があった。
行実行される毎に、文番号の読み出し12、アドレスの
読み出し13、実行中断判断14、サブルーチンコー/
I/16の処理が必要となシ、プログラムの実行速度が
遅いという問題点があった。
そこで、本発明は上記の問題に鑑み、高級言語プログラ
ムのプログラム実行を、高級言語プログラムの行間で中
断する機能を有しながら、プログラム実行速度を高速化
する方式を提供するものである。
ムのプログラム実行を、高級言語プログラムの行間で中
断する機能を有しながら、プログラム実行速度を高速化
する方式を提供するものである。
課題を解決するための手段
上記問題点を解決するために本発明のプログラム実行方
式は、高級言語プログラムから機械語プログラムと文番
号テーブルを生成しメモリに格納するコンパイラと、前
記文番号テーブルの格納アドレス金前記機械語プログラ
ムの格納アドレスと同じアドレスに変換するアドレス変
換手段と、前記文番号テーブルと指定文番号を比較しC
PUに割込みをかけるトリガ発生手段という構成を備え
たものである。
式は、高級言語プログラムから機械語プログラムと文番
号テーブルを生成しメモリに格納するコンパイラと、前
記文番号テーブルの格納アドレス金前記機械語プログラ
ムの格納アドレスと同じアドレスに変換するアドレス変
換手段と、前記文番号テーブルと指定文番号を比較しC
PUに割込みをかけるトリガ発生手段という構成を備え
たものである。
作 用
この技術的手段による作用は次のようになる。
すなわち、プログラム実行を中断したい文番号とこれか
ら実行しようとするプログラム文の文番号を比較する処
理を、プログラム実行を行うCPUとは別の手段で並行
して行うことにより、前記CPUはプログラム実行のみ
を行えるようになり、プログラム実行を高速化すること
ができるようになる。
ら実行しようとするプログラム文の文番号を比較する処
理を、プログラム実行を行うCPUとは別の手段で並行
して行うことにより、前記CPUはプログラム実行のみ
を行えるようになり、プログラム実行を高速化すること
ができるようになる。
実施例
以下、本発明の一実施例を添付図面にもとづいて説明す
る。第1図は、本発明のプログラム実行方式の構成、第
6図は、コンパイル時のメモリの配置、第6図は、実行
時のメモリの配置である。
る。第1図は、本発明のプログラム実行方式の構成、第
6図は、コンパイル時のメモリの配置、第6図は、実行
時のメモリの配置である。
第1図において、1は高級言語プログラムである。2a
idコンパイラである。3aは文番号テープルである。
idコンパイラである。3aは文番号テープルである。
4aは機械語プログラムである。5はアドレス変換手段
である。6はプログラム実行のためのCPUである。7
はCPUに割込みをかけるトリガ発生手段である。第6
図において、9は文番号である。11は高級言語プログ
ラムを機械語に変換したときに生成する機械語の1つで
ある。
である。6はプログラム実行のためのCPUである。7
はCPUに割込みをかけるトリガ発生手段である。第6
図において、9は文番号である。11は高級言語プログ
ラムを機械語に変換したときに生成する機械語の1つで
ある。
第6図をもとにして、コンパイル時の手順を説明する。
高級言語プログラム1のプログラム文1文を機械語11
に変換し、機械語プログラム4aに格納する。前記プロ
グラム文の文番号を、前記機械語11の格納アドレスか
ら一定オフセットだけずらされたメモリアドレスに、文
番号9として格納する。
に変換し、機械語プログラム4aに格納する。前記プロ
グラム文の文番号を、前記機械語11の格納アドレスか
ら一定オフセットだけずらされたメモリアドレスに、文
番号9として格納する。
次に、第1図と第6図をもとにして、プログラム実行時
の手順を説明する。
の手順を説明する。
実行時には、前記文番号テープ/v3aの格納アドレス
を、前記アドレス変換手段6を用いて、前記機械語プロ
グラムの格納アドレスと同じアドレスに変換する。
を、前記アドレス変換手段6を用いて、前記機械語プロ
グラムの格納アドレスと同じアドレスに変換する。
次に、プログラム実行を一時中断したい高級言語プログ
ラム文の文番号を中断文番号として前記トリガ発生手段
7に格納する。プログラムに起動がかけられると、前記
CPU6は機械語プログラム4aの格納されているメモ
リと、文番号テーブル3aの格納されているメモリに、
同じアドレスで読み出し要求を出す。
ラム文の文番号を中断文番号として前記トリガ発生手段
7に格納する。プログラムに起動がかけられると、前記
CPU6は機械語プログラム4aの格納されているメモ
リと、文番号テーブル3aの格納されているメモリに、
同じアドレスで読み出し要求を出す。
前記トリガ発生手段7は、niJ記アドアドレス読み出
した文番号9と中断文番号を比l咬し、違っていれば何
もしない。
した文番号9と中断文番号を比l咬し、違っていれば何
もしない。
前記CPU6は、前記アドレスから読み出した機械語1
1を実行する。
1を実行する。
このように、前記CPIJeは、アドレスラインに機械
語11の格納アドレスを出し、データラインから機械語
11を読み込むことをくり返して、プログラム実行を進
めていく。
語11の格納アドレスを出し、データラインから機械語
11を読み込むことをくり返して、プログラム実行を進
めていく。
もし、プログラム実行の途中で、前記トリガ発生手段7
において読み込んだ文番号9と中断文番号が一致すれば
、前記トリガ発生手段7は、前記CPtJ6に対して割
り込みをかける。その結果、前記CPt1eは、プログ
ラム実行を一時中断し、所定の割り込みルーチンに設定
しである。デバッグ処理を行う。デバッグ処理を行って
いる間は、プログラム実行は高級言語の行間で中断され
る。
において読み込んだ文番号9と中断文番号が一致すれば
、前記トリガ発生手段7は、前記CPtJ6に対して割
り込みをかける。その結果、前記CPt1eは、プログ
ラム実行を一時中断し、所定の割り込みルーチンに設定
しである。デバッグ処理を行う。デバッグ処理を行って
いる間は、プログラム実行は高級言語の行間で中断され
る。
テ゛バッグ処理を終了し、割υ込みルーチンから復帰す
ると、再びプログラムが実行される。
ると、再びプログラムが実行される。
発明の効果
本発明は、プログラム実行を中断したい中断文番号と実
行しようとするプログラム行の文番号を比I咬する処理
を、プログラム実行を行うCPUとは別の手段で並行し
て行うことにより、プログラム実行を高級言語の行間で
中断する機能を有しながら、プログラムの実行を高速に
荷うことかできる。
行しようとするプログラム行の文番号を比I咬する処理
を、プログラム実行を行うCPUとは別の手段で並行し
て行うことにより、プログラム実行を高級言語の行間で
中断する機能を有しながら、プログラムの実行を高速に
荷うことかできる。
第1図は本発明の一実施例の構成を示すブロックダイヤ
グラム図、第2図は従来のプログラム実行方式の構成図
、第3図は同メモリ配置図、第4図は同手順図、第6図
は本発明の一実施例のコンパイル時のメモリ配置図、第
6図は同実行時のメモリ配置図である。 1・・・・・・高級言語プログラム、2a・・印・コン
パイラ、3a・・・・・・文番号テーブル、4a・・・
・・・機械語プログラム、6・・・用アドレス変換手段
、6・・・・・・CPU。 7・・・・・・トリガ発生手段。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名第 図 リニアアYしス 第 図 第 図 リニアアyしス 第 図 リニアア臂し又
グラム図、第2図は従来のプログラム実行方式の構成図
、第3図は同メモリ配置図、第4図は同手順図、第6図
は本発明の一実施例のコンパイル時のメモリ配置図、第
6図は同実行時のメモリ配置図である。 1・・・・・・高級言語プログラム、2a・・印・コン
パイラ、3a・・・・・・文番号テーブル、4a・・・
・・・機械語プログラム、6・・・用アドレス変換手段
、6・・・・・・CPU。 7・・・・・・トリガ発生手段。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名第 図 リニアアYしス 第 図 第 図 リニアアyしス 第 図 リニアア臂し又
Claims (1)
- 高級言語で表現されたプログラムを実行する情報処理装
置において、前記高級言語プログラムを機械語プログラ
ムに変換し、その機械語プログラムを修飾する文番号テ
ーブルを生成するとともに、前記機械語プログラムおよ
び前記文番号テーブルをメモリに格納するコンパイラと
、前記文番号テーブルの格納アドレスを前記機械語プロ
グラムの格納アドレスと同じアドレスに変換するアドレ
ス変換手段と、前記文番号テーブルと指定文番号を比較
しCPUに割込みをかけるトリガ発生手段とから構成さ
れるプログラム実行装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63161618A JPH0212344A (ja) | 1988-06-29 | 1988-06-29 | プログラム実行装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63161618A JPH0212344A (ja) | 1988-06-29 | 1988-06-29 | プログラム実行装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0212344A true JPH0212344A (ja) | 1990-01-17 |
Family
ID=15738600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63161618A Pending JPH0212344A (ja) | 1988-06-29 | 1988-06-29 | プログラム実行装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0212344A (ja) |
-
1988
- 1988-06-29 JP JP63161618A patent/JPH0212344A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0895821A (ja) | マルチタスクのプログラムデバッグ方法とその装置 | |
US5150474A (en) | Method for transferring arguments between object programs by switching address modes according to mode identifying flag | |
JPH0212344A (ja) | プログラム実行装置 | |
JPH0683597A (ja) | オブジェクト指向プログラム開発装置およびオブジェクト指向プログラム開発方法 | |
JP2560467B2 (ja) | 事後処理管理方式 | |
JPS63178343A (ja) | 中断点の設定方式 | |
JPS63205740A (ja) | プログラム実行トレ−ス処理方式 | |
KR100216533B1 (ko) | 병행 chill 프로그램의 결정적 재실행을 위한 사건 이력 기록 방법 | |
JP2751423B2 (ja) | プログラムデバッグ処理方式 | |
JPH01147624A (ja) | 言語処理系システム | |
JPS5953944A (ja) | プログラム制御方式 | |
JPS61180344A (ja) | 高級言語のステツプ実行システム | |
CN112579088A (zh) | 面向异构混合编程的一站式程序编译方法 | |
JP2786689B2 (ja) | コンパイラ処理方法 | |
JPS62200426A (ja) | 高級言語のマクロ展開方法 | |
JPS61264441A (ja) | コンパイル処理方式 | |
JPH03139703A (ja) | プログラマブルコントローラのタイマ命令処理方式 | |
JPH04205430A (ja) | プログラム実行制御装置 | |
JPS63231640A (ja) | プログラムデバグ方式 | |
JPH08137714A (ja) | マルチタスクプログラムのデバッグ方法およびデバッグシステム | |
JPS59165151A (ja) | 計算機におけるタスク・スケジユ−リング方法 | |
JPS63317839A (ja) | プログラムデバッグ方法 | |
JPH0754465B2 (ja) | プログラム実行処理方式 | |
JPH03122721A (ja) | 未定義シンボル実行方式 | |
JPH04333146A (ja) | デバッグにおけるプログラムの実行制御方式 |