JPH0296244A - プログラム実行方式 - Google Patents

プログラム実行方式

Info

Publication number
JPH0296244A
JPH0296244A JP24805488A JP24805488A JPH0296244A JP H0296244 A JPH0296244 A JP H0296244A JP 24805488 A JP24805488 A JP 24805488A JP 24805488 A JP24805488 A JP 24805488A JP H0296244 A JPH0296244 A JP H0296244A
Authority
JP
Japan
Prior art keywords
control
program
user
interpreter
programs
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
JP24805488A
Other languages
English (en)
Inventor
Kazuhisa Hayashi
和久 林
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 JP24805488A priority Critical patent/JPH0296244A/ja
Publication of JPH0296244A publication Critical patent/JPH0296244A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 [j卒衷りの利用分野] 本発明はインタプリタを用いてアプリケーションプログ
ラムを実行するプログラム実行方式に関する。
[従来の技術] 従来、この種のプログラム実行方式ては、アプリケ−シ
ミIンプログラムはイ列えばBへSICやC0BOLな
どのプログラミング言+:nによって記述され、これは
−!11、コンパイルされ、実行可能な形式のオブジェ
クトコードに変換されて保存される。実行に際しては、
インタプリタがオブジェクトコードをメモリドに読み出
し、その開始番地から一つずつ解釈してその示すことを
実行することとなっていた。
[発明が解決しようとする課題] ヒ述した従来のインタプリタによるプログラム実行方式
は、ハードウェア固有の命令コードで書かれたプログラ
ムによるプログラム実行方式と比較して、ハードウェア
に依存する部分はインタプリタ内に抑え込み任せること
ができるので、オブジェクトコードとしてはハードウェ
アに依存しなくてよいという利点があるが、反面、その
実行速度が極端に遅くなるという欠点がある。
[課題を解決するための手段] 本発明のプログラム実行方式は、 オブジェクトコードが、プログラムを実行するハードウ
ェアに固有の命令コードとは独立した命令コードで記述
されているアプリケーションプログラムと、プログラム
を実行するハードウェアに固有の命令コードで記述され
ている利用者固有プログラムとを含み、該アプリケーシ
ョンプログラム中に、インタプリタによる制御を利用者
固有プログラムに移すべき命令コードよりなる制御移行
指示部を有し、 インタプリタが、オブジェクトコードの実行中に前記制
御移行指示部を検出したとき、その次の命令コード番地
を退避するとともにその中に指定されている利用者固有
プログラムに制御を移し、該利用者r’il有プログラ
ムから制御が戻されたとき、退避した命令コード番地を
指示するとともにi(制御を元に戻す制御移行部を有し
ている。
[作 用] インタプリタが命令コードを逐次に取出して解釈し実行
するオブジェクトコードは、実行を受持つハードウェア
に固有の命令コードとは独立の命令コードでコンパイル
されているアプリケーションプログラムと、実行を受持
つハードウェアに固有の命令コードでコンパイルされて
いる利用者固有プログラムとを含み、かつアプリケーシ
ョンプログラムのオブジェクトコード中には、利用者固
有プログラムへ一制御を移す命令コードである制御移行
指示部を有している。そこで、インタプリタがオブジェ
クトコードの実行中、制御移行部がこれを監視して、制
御移行指示部を検出したとき、その中に含まれている利
用者固有プログラムの名11[「にしたがい、その利用
者固有プログラムへインタプリタの制御を祁す。その処
理が終了すると制御は制御移行部へ戻され、制御移行部
は移行時に退避して置いた■制御移行指示部の次の命令
コード番地を取出す。そこで、インタプリタは再びこの
番地からアプリケーションプログラムのオブジェクトコ
ードの実行に戻る。
このようにして、利用者は特に高速処理を必要とする部
分を利用者固有プログラムとして作成しておき、その他
のハードウェアに依存しない部分と制御移行指示部でリ
ンクさせて一元化することにより、手間をかけずにイン
タプリタによる処理を高速に行なわせることができる。
[実施例] 次に、本発明の実Mi例について図面を参照して説明す
る。
第1図は本発明のプログラム実行方式の一実施例の構成
を示すブロック図、第2図は本実施例の各部詳細とその
動作を示すための説明図、第3図は制御移行部5の処理
を示す流れ図である。
インタプリタ4か実行すべきオブジェクトコード1は、
1つずつ実行される命令コードの他に利用者固有プログ
ラム部2と制御移行指示部3と有し、一方、オブジェク
トコード1を解釈し実行するインタプリタ4は、利用者
固有プログラム部2と制御移行指示部3との間に情報を
交換し、必要な:l+11御を行なう制御移行部5を有
している。利用者固有プログラム部2は、 COB叶や
アセンブラで作成され命令を実行するハードウェアに固
有の命令コードにコンパイルされた命令コード部であり
、本実施例では3個の利用者固有プログラムB、D、F
を含む。オブジェクトコード2の他の部分は、同様にC
0BOLやアセンブラで作成されてコンパイルされたも
ので、ただしハードウェア固有の命令コードとは全く独
立した形式の命令コードのプログラムA、C,E、Gよ
りなり、実行開始番地210より始まり実行終了番地2
11に終る。
途中に含まれる制御移行指示部21.22.23は、例
えば、 C0DOLのプログラム呼出し命令である”C
へ1.じに対するオブジェクトコートとしてこの制御移
行指示部21〜2:iをそれぞれ生成するようなコンパ
イラにより実現できる命令コードであり、制御を移行す
べき利用者固有プログラムの名前の情報を持っている。
利用者固有プログラムB、D。
FとアプリケーションプログラムA、C,E、Gとは、
それぞれ別にコンパイルされた後、一つにまとめるため
リンクが行なわれ、そのとき、制御移行指示部21〜2
3が有する前記名前の情報は制御を移行すべき利用者固
有プログラムB、D、Fの人口番地に変換されて保持さ
れる。このようにリンクして一元化することにより、オ
ブジェクトコード2はその中に必要な利用者固有プログ
ラムB、D、Fを包含することができる。インタプリタ
4は、オブジェクトコード2を逐次実行し、その制御移
行部5により制御移行指示部21〜23をそれぞれ検出
したとき利用者プログラムB、D、Fにそれぞれ制御を
移し、終了とともに元のプログラムC,E、Gへ制御を
戻す。
次に、第2図および第3図により本実施例の動作を説明
する。
いま、オブジェクトコード2が起動されると、インタプ
リタ4は実行開始番地210から順次命令コードを取り
出し、オブジェクトコード2のアプリケ−シミ1ンプロ
グラムAの部分を解釈実行するが、このとき制御移行部
5は取り出された命令コードを受取り(ステップ31)
、この命令コードが制御移行指示部の命令コードが否か
を判定する(ステップ32)。判定の結果、異なるとき
はインタプリタ4はふたたび次の命令コードを取り出し
、同様の動作を繰り返す。判定の結果が制御移行指示部
21であれば、制御移行部5はその中の利用者固有プロ
グラムの人[1番地を求め(ステップ33)、次に、制
御移行指示部21の次の命令コードの番地を退避しくス
テップ34)、ステップ33で求めた番地へ制御を移す
(ステップ35)。すなわち、プログラムの制御は第2
図中の矢印a0とす、に示すように利用者固有プログラ
ム部1の利用者固有プログラムBに制御が移る。利用者
固有プログラムBはハードウェア固有の命令コードから
なっているので、インタプリタ4を介することなく命令
コードを実行する(ステップ36)。利用者固有プログ
ラムの最後には、通常”!’、XIT1)IIOG+(
八)A”なと制御を元に戻す命令が書かれているので、
処理の終了後、制御は再び矢印す、のように制御移行部
5に戻される。そこで制御移行部5かステップ34で退
避した番地を取出し通知すると、制御がインタプリタ4
へ戻る(ステップ37)。プログラムの実行は矢印al
のように移り、インタプリタ4は再びオブジェクトコー
ド2の制御移行指示部21の次の番地からプログラムC
の部分を実行する。以下全く同様にして、制御移行指示
部22.2:Iについても利用者固有プログラムD、F
へ制御が移り命令コードが実行され、処理の終了後に再
び元のアプリケーションプログラムE、Gに戻る。すな
わち、プログラムの実行は実行開始番地210から始ま
り、A4B4C−+D−+E→F−+Gと進み、実行終
了番地211で終って完結する。
[発明の効果] 以ト説明したように本発明は、ハードウェア固有の命令
コードからなる利用者固有プログラムと、利用者固有プ
ログラムへの制御移行を指示する制御移行指示部とをオ
ブジェクトコード内に持ち、利用者か高速に実行したい
部分は利用者固有プログラムとして作成し、その他のハ
ードウェアに依Hしないオブジェクトコードとリンクし
ておき、インタプリタ内に利用者固有プログラムへの制
御移行を行なう制御移行部を設けて、制御移行部が制御
移行指示部を検出したとき制御を利用者固有プログラム
へ移行することにより、インタプリタでは遅くなる処理
を高速に行なわせることかできる効果がある。また、オ
ブジェクトコード中に利用者固有プログラムを包含して
いるのでオブジェクトプログラムは1つのものとして管
理でき、さらに、プログラムのロードは起動時に1度だ
け行なえばよいので、制御を利用者固有プログラムに渡
す毎にロードする必要がなくなり、その分オーバーヘッ
ドが少なくなるという効果がある。
【図面の簡単な説明】
第1図は本発明のプログラム実行方式の−実施例の構成
を示すブロック図、第2図は本実施例の各部詳細とその
動作を示すための説明図、第3図は制御移行部5の処理
を示す流れ図である。 !・・・オブジェクトコード、 2・・・利用者固有プログラム部、 3、21.22.23・・・制御移行指示部、4・・・
インタプリタ、 5・・・制御移行部、 ^、 C,E、 G−・・アプリケーションプログラム
、11、 D、 F・・・利用者固有プログラム、21
0・・・実行開始番地、 211−・・実行路r番地。 a、、al、b、、bl・・・矢印(制御方向)。

Claims (1)

  1. 【特許請求の範囲】 1、インタプリタを用いてオブジェクトコードを逐次実
    行するプログラム実行方式において、 オブジェクトコードが、プログラムを実行するハードウ
    ェアに固有の命令コードとは独立した命令コードで記述
    されているアプリケーションプログラムと、プログラム
    を実行するハードウェアに固有の命令コードで記述され
    ている利用者固有プログラムとを含み、該アプリケーシ
    ョンプログラム中に、インタプリタによる制御を利用者
    固有プログラムに移すべき命令コードよりなる制御移行
    指示部を有し、 インタプリタが、オブジェクトコードの実行中に前記制
    御移行指示部を検出したとき、その次の命令コード番地
    を退避するとともにその中に指定されている利用者固有
    プログラムに制御を移し、該利用者固有プログラムから
    制御が戻されたとき、退避した命令コード番地を指示す
    るとともに制御を元に戻す制御移行部を有していること
    を特徴とするプログラム実行方式。
JP24805488A 1988-09-30 1988-09-30 プログラム実行方式 Pending JPH0296244A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24805488A JPH0296244A (ja) 1988-09-30 1988-09-30 プログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24805488A JPH0296244A (ja) 1988-09-30 1988-09-30 プログラム実行方式

Publications (1)

Publication Number Publication Date
JPH0296244A true JPH0296244A (ja) 1990-04-09

Family

ID=17172516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24805488A Pending JPH0296244A (ja) 1988-09-30 1988-09-30 プログラム実行方式

Country Status (1)

Country Link
JP (1) JPH0296244A (ja)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PC TECHK KNOW9800=1984 *

Similar Documents

Publication Publication Date Title
JP2666847B2 (ja) 異種言語間連絡方式
JP4573189B2 (ja) プログラムコード変換方法
JPH01154267A (ja) 入出力機器制御プログラムのアドレス解決方法
JPH04245543A (ja) サブプログラム呼び出しを実行する方法および装置と            コンパイラ装置
JPH11242597A (ja) Javaバイトコードデータのフローグラフの生成方法
US8214815B2 (en) Reducing the run-time cost of invoking a server page
JPH0721034A (ja) 文字列複写処理方法
KR950006617B1 (ko) 프로그램 동작시에 프로그램 유닛의 연결 방법 및 장치
US5404531A (en) Method and apparatus for compiler processing on program related to data transfer and calculation, and method of managing memory
JPH0296244A (ja) プログラム実行方式
JP2000122876A (ja) 情報処理装置
JPH11249873A (ja) ドライバ機能の動的管理方式及び動的管理方法
JPS6273333A (ja) エミュレーション制御装置
JPH02308330A (ja) 知識情報処理装置
JP2022023631A (ja) アセンブリ命令変換プログラム、アセンブリ命令変換方法、及び情報処理装置
JPS60178539A (ja) 情報処理装置におけるバイパス制御方式
JPS62171036A (ja) コンパイラのモジユ−ル共用方式
JPH04266126A (ja) サブルーチンコール制御方式
JP2621898B2 (ja) 外部参照型アドレス定数の動的解決処理方式
JPH1124939A (ja) プログラム変換方法
JP2003216443A (ja) 中間コード実行装置および方法
JPH08115221A (ja) Cコンパイラ
JPH02110636A (ja) タグ・アーキテクチャマシンのデバッグ装置とそのコンパイラ
JPH06119203A (ja) デバック行削除装置
JPH01140236A (ja) プログラムの逆コンパイル方式