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

プログラム実行方式

Info

Publication number
JPH02308336A
JPH02308336A JP1130566A JP13056689A JPH02308336A JP H02308336 A JPH02308336 A JP H02308336A JP 1130566 A JP1130566 A JP 1130566A JP 13056689 A JP13056689 A JP 13056689A JP H02308336 A JPH02308336 A JP H02308336A
Authority
JP
Japan
Prior art keywords
variable
data
operand
data area
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
JP1130566A
Other languages
English (en)
Inventor
Tadayoshi Ideshita
井出下 忠良
Masato Matsui
松井 正人
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators Ltd
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, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP1130566A priority Critical patent/JPH02308336A/ja
Publication of JPH02308336A publication Critical patent/JPH02308336A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は動的にデータアドレスを解決するプログラムの
実行に関し、特に高速にデータをアクセスする方式に関
する。
(従来の技術) 従来の方式では、データアドレスが未解決であるプログ
ラムの実行において、プログラム中の1オブジエクト命
令を実行するごとにオブジェクト命令に含まれる変数オ
ペランド内の変数名で、変数とデータエリアとを対応づ
ける変数名テーブルを走査して、変数のデータエリアへ
のアドレスを得てデータをアクセスしていた。
(発明が解決しようとする課題) 上述した従来の方式では、動的に変数オペランドのデー
タアドレスを解決する処理において、変鮫のデータをア
クセスするために、各オブジェクト命令を実行する度に
変数名テーブルを走査してデータアドレスを得ているの
で、変数名テーブルに登録する変数が増加するに伴って
次第にオブジェクト命令の実行時間が増加するという欠
点があった。
本発明の目的は、1個のオブジェクト命令に含まれる変
数オペランドに対して当該変数のデータエリアへのアク
セスが初回であるか否かを判定し、初回であった場合、
変数とデータエリアとを対応づけるための変数名テーブ
ル上の変数エントリを走査し、当該変数と対応する変数
エントリが存在しなかった場合には当該変数用のデータ
エリアを確保して対応する変数エントリを変数名テーブ
ルに登録するとともに、1個のオブジェクト命令に含ま
れる変数オペランド内の変数名をデータエリアへのアド
レスに置換し、変数オペランド内のデータアドレスから
当該変数に対応するデータエリアをアクセスする。とれ
Kよって上記欠点を除去し、オブジェクト命令の実行時
間の増加がないように構成したプログラム実行方式を提
供することにある。
(課題を解決するための手段) 本発明によるプログラム実行方式は、ソースプログラム
を翻訳して生成したオブジェクトプログラム中の1個の
オブジェクト命令に含まれる変数オペランドのデータア
ドレスが未解決であるプログラムのプログラム実行方式
であって、判定手段と、走査手段と、登録手段と、置換
手段と、アクセス手段とを具備して構成したものである
。
判定手段は、1個のオブジェクト命令に含まれる変数オ
ペランドに対して当該変数のデータエリアへのアクセス
が初回であるか否かを判定するためのものである。
走査手段は、初回であった場合、変数とデータエリアを
対応づけるための変数名テーブル上の変数エントリを走
査するためのものである。
登録手段は、当該変数に対応する変数エントリが存在し
なかった場合に、当該変数用のデータエリアを確保して
対応する変数エントリを変数名テーブルに登録するため
のものである。
置換手段は、1個のオブジェクト命令に含まれる変数オ
ペランド内の変数名をデータエリアへのアドレスに置換
するためのものである。
アクセス手段は、変数オペランド内のデータアドレスか
ら当該変数に対応するデータエリアをアクセスするため
のものである。
(実施例) 次に1本発明について図面を参照して説明する。
第1図は、本発明によるプログラム実行方式を示す流れ
図である。
ステップ11では、1個のオブジェクト命令の実行で変
数オペランドが現れた場合に、当該変数オペランドのデ
ータアクセスが初回であるか否かを判定する。
第2図は、オブジェクト命令に含まれる変数オペランド
の形式を表している。第2図において、!1はオペラン
ドIDフィールド、!!2はオペランドステータスフィ
ールド、23はデータ長フィールド、24は変数毛長、
25は変数名/データアドレスフィールドである。
第1図において、ステップ11の判定はオペランドステ
ータスフィールド32を用いて行う。オペランドステー
タスフィールド22の初期値はオフであシ、オフである
か否かにより初回であるか否かを判定する。
第8図は、変数名テーブル31と、変数エントリの形式
と、データエリアテーブル32との関連を表した説明図
である。第8図に〉いて、33は変数名エリア、34は
データアドレスエリア、55はX格納エリア、36はa
drl格納エリア、s7はデータエリアである。変数名
テーブル上の一つの変数エントリは変数名エリア33と
、その変数のデータエリア37への対応を表わすデータ
アドレスエリアs4とで構成されている。
ステップ12では、ステップ11の判定で初回であった
場合、ステップ12では変数名テーブル31上で変数オ
ペランドに含まれる変数名フィールド25と一致する変
数名エリア33を待つ変数エントリの存在を判定する。
変数名フィールド25に対応する変数二ントリが存在し
ていなかった場合、データエリアテーブル32上の空き
領域に、データ長フィールド2′5で示すデータエリア
とデータ長を保持するためのエリアとを確保し、変数名
テーブル51に変数名とデータエリアへの対応を表わす
データアドレスとから成る新しい変数工/トリを追加す
る。これがステップ13である。
ステップ14では、変数オペランドに対してオペランド
ステータスフィールド22をオフからオンにし、変数名
フィールド26の内容を当該変数エントリ内のデータア
ドレス34で置換する。
第4図は、変数オペランドの変数名をデータアドレスに
置換する例である。第4図において、A1〜A6、Bl
〜B5は第2図に対応する各フィールドである。オペラ
ンドステータスフィールドがオフであるため、上述のス
テップ12からステップ14によシ、変数名Xをデータ
アドレスadrlK置換する、これによってオペランド
ステータスフィールドはオンとなる。
ステップ15では、変数のデータをアクセスするために
、ステップ14で置換した変数オペランド内のデータア
ドレスフィールド25を用いて、直接、データエリアを
アクセスして値の格納と値の確保とを行う。
オブジェクト命令に含まれる変数オペランドは、上述し
たように、いったんデータアクセスを施すと、2回目以
降においてステップ12からステップ14を省くため、
変数のデータアクセスを高速に行うことができる。
(発明の効果) 以上説明したように本発明は、即時実行や作成の容易さ
を特徴とするインタプリタによシブログラムを実行する
ことによシ、データアクセスにおいて、コンパイラ言語
で作成されたプログラムなみの性能が得られるという効
果がある。
【図面の簡単な説明】
第1図は、本発明によるプログラム実行方式の一実施例
を説明するフローチャートである。 第2図は、オブジェクト命令に含まれる変数オペランド
の形式を示す説明図である。 M8図は、変数名とデータエリアとを対応付ける変数名
テーブルとデータエリアテーブルとの形式を示す説明図
である。 第4図は、第2図で示した変数オペオンドのデータアド
レスへの置換例を示す説明図である。 11〜15・・・処理ステップ 2°1〜2B、A1〜A5、Bl〜BS−−−−フィー
ルド 31.32・e・テーブル 33〜5T−−−エリア

Claims (1)

    【特許請求の範囲】
  1. ソースプログラムを翻訳して生成したオブジエクトプロ
    グラム中の1個のオブジェクト命令に含まれる変数オペ
    ランドのデータアドレスが未解決であるプログラムのプ
    ログラム実行方式であつて、前記1個のオブジェクト命
    令に含まれる変数オペランドに対して当該変数のデータ
    エリアへのアクセスが初回であるか否かを判定するため
    の判定手段と、前記判定において初回であつた場合、前
    記変数と前記データエリアとを対応づけるための変数名
    テーブル上の変数エントリを走査するための走査手段と
    、当該変数に対応する変数エントリが存在しなかつた場
    合に当該変数用のデータエリアを確保して前記対応する
    変数エントリを変数名テーブルに登録するための登録手
    段と、前記1個のオブジェクト命令に含まれる変数オペ
    ランド内の変数名を前記データエリアへのアドレスに置
    換するための置換手段と、前記変数オペランド内のデー
    タアドレスから当該変数に対応するデータエリアをアク
    セスするためのアクセス手段とを具備して構成したこと
    を特徴とするプログラム実行方式。
JP1130566A 1989-05-23 1989-05-23 プログラム実行方式 Pending JPH02308336A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1130566A JPH02308336A (ja) 1989-05-23 1989-05-23 プログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1130566A JPH02308336A (ja) 1989-05-23 1989-05-23 プログラム実行方式

Publications (1)

Publication Number Publication Date
JPH02308336A true JPH02308336A (ja) 1990-12-21

Family

ID=15037318

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1130566A Pending JPH02308336A (ja) 1989-05-23 1989-05-23 プログラム実行方式

Country Status (1)

Country Link
JP (1) JPH02308336A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06230976A (ja) * 1992-12-22 1994-08-19 Sun Microsyst Inc 参照をリゾルブする方法および装置
JP2006526841A (ja) * 2003-06-02 2006-11-24 サン・マイクロシステムズ・インコーポレイテッド バーチャルマシンにおいてインプレース実行を支援するための近接ベースのアドレス指定

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06230976A (ja) * 1992-12-22 1994-08-19 Sun Microsyst Inc 参照をリゾルブする方法および装置
JP2006526841A (ja) * 2003-06-02 2006-11-24 サン・マイクロシステムズ・インコーポレイテッド バーチャルマシンにおいてインプレース実行を支援するための近接ベースのアドレス指定

Similar Documents

Publication Publication Date Title
US5606700A (en) Computer program product and program storage device for object oriented programming platform
JP2001256042A (ja) 個別アプリケーションパッチ管理装置及び個別アプリケーションパッチ管理方法
JP3489153B2 (ja) ファイルシステム
JP2990609B2 (ja) 計算機システム
JPS5940399A (ja) 情報処理装置
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
JP3095483B2 (ja) レジスタ保存命令処理方法
JPH0465717A (ja) プログラム呼び出し方法
JPH0520082A (ja) オブジエクト指向言語の実行システム
JPH08249024A (ja) プログラマブルコントローラ
JP2507314B2 (ja) リンケ−ジコンベンシヨン方法
JPH0746636A (ja) 電子交換機のファイル更新におけるアドレス変換方法
JPS63221431A (ja) 名標テ−ブル管理方式
JPS6144339B2 (ja)
JPH0245837A (ja) 未生成ラベル検出方法
JPH10133872A (ja) 命令バッファを有するプロセッサ装置
JPS6010336B2 (ja) アドレス比較方式
JPH02146625A (ja) レジスタ個数の拡張方式
JPH04138528A (ja) 縮小命令セットコンピュータにおける共通データアクセス方式
JPS6273346A (ja) アドレス変換装置
JPH01205331A (ja) 大規模プログラムリンク方式
JPH047643A (ja) データ識別方式
JPH05189212A (ja) リンキング方法
JPS63141141A (ja) 命令キヤツシユ試験方式
JPH03138731A (ja) ジョブ間データ共有方式