JPH0327444A - 代入文の例外検査オブジェクト削除方式 - Google Patents

代入文の例外検査オブジェクト削除方式

Info

Publication number
JPH0327444A
JPH0327444A JP16225089A JP16225089A JPH0327444A JP H0327444 A JPH0327444 A JP H0327444A JP 16225089 A JP16225089 A JP 16225089A JP 16225089 A JP16225089 A JP 16225089A JP H0327444 A JPH0327444 A JP H0327444A
Authority
JP
Japan
Prior art keywords
data
check object
exception check
range
exception
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
JP16225089A
Other languages
English (en)
Inventor
Shinji Obara
小原 晋二
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 JP16225089A priority Critical patent/JPH0327444A/ja
Publication of JPH0327444A publication Critical patent/JPH0327444A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は目的プログラムを生成ずるためのコンパイラに
関し、特に代人文に対する例外検査オブジェクトの生成
処理を行うことができるコンパイラにおける代人文の例
外検査オブジェクト削除方式に関する。
〔従来の技術〕
従来、この種のコンパイラでは、オプション等により代
人文に対する例外検査オブジェクトの生戒処理を行える
ようになっているが、代人文の送出し側のデータの値が
受取り側のデータの値域に入っているかどうかを検査す
る例外検査オブジェク1・を無条件に生成していた。
〔発明が解決しようとする課題〕
上述した従来のコンパイラでは、代入文の送出し側のデ
ータの値が受取り側のデータの値域に入っているかどう
かを検査する例外検査オブジェク1・を無条件に生成し
ていたので、ソースプログラムで宣言されたデータの値
域があらかしめわかっていて代入文の送出し側のデータ
の値域が受取り側のデータの値域に含まれていることが
明らかな場合でも例外検査オブジェク1・が生成される
ことになり、目的プログラムが大きくなり、また目的プ
ログラムの実行速度も遅くなるという欠点がある。
本発明の目的は、上述の点に鑑み、代入文の送出し側の
データの値域が受取り側のデータの値域に含まれている
場合に例外検査オブジェクトを生成しないようにして、
目的プログラムの大きさを小さくし、目的プログラムの
実行速度を速くするようにした代人文の例外検査オブジ
ェクト削除方式を提供することにある。
〔課題を解決するための手段〕
本発明の代入文の例外検査オブジェクト削除方式は、代
入文に対する例外検査オブジェク1・の生成処理を行う
ことができるコンパイラにおいて、ソースプログラムで
宣言されたデータの値域を記憶するデータ属性記憶域と
、代入文の例外検査を行う中間言語が生成されている場
合に前記データ属性記憶域を参照して代人文の送出し側
のデータの値域が受取り側のデータの値域に含まれてい
るか否かを判断し含まれているときには例外検査オブジ
ェクトを生成しないようにする例外検査オブジェクト削
除手段とを有する。
〔作用〕
本発明の代人文の例外検査オブジェクト削除方式では、
データ属性記憶域がソースプログラムで宣言されたデー
タの値域を記憶し、例外検査オブジェクト削除手段が代
入文の例外検査を行う中間言語が生成されている場合に
データ属性記憶域を参照して代入文の送出し側のデータ
の値域が受取り側のデータの値域に含まれているか否か
を判断し含まれているときには例外検査オブジェクトを
生成しないようにする。
〔実施例〕
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明の一実施例に係る代人文の例外検査オ
ブジェクト削除方式の構威を示すブロソク図である。本
実施例の代入文の例外検査オブジェクト削除方式は、コ
ンパイラ2が人力するソースプログラムIと、フロント
エンド部21および例外検査オブジェクト削除千段21
1を有するバソクエンド部22を含むコンパイラ2と、
フロントエンド部21が出力しバンクエンド部22が人
力する中間言語3と、フロントエンド部21がデータ属
性を出力しバンクエンド部22がデータ属性を入力する
データ属性記憶域4と、ハソクエンド部22が出力する
目的プログラム5とから、その主要部が構或されている
。
ソースプログラム1中の”A  RANGE a..a
2”は、データAが最小値a1から最大値a2までの値
域をもつという宣言であり、“BRANGE  b,,
,b2″は、データBが最小値b,から最大値b2まで
の値域をもつという宣言である。また、“A:=B.”
は、データAにデータBを代入することを指示する代人
文である。
中間言語3中の“RANGECHK  A.B″は、デ
ータAに対してデータBを代入する前に例外検査を行う
ことを指示する中間言語である。また、“A:−B.”
は、ソースプログラム1中の“A:=B.”と同様の意
味をもつ中間言語である。
データ属性記憶域4は、ソースプログラム1で宣言され
たデータAの値域(a+..a2〕およびデータBの値
域(bl..b2)記憶する。
目的プログラム5中の〔 〕で囲んだ部分は、例外検査
オブジェクトを示し、上の行から順に説明すると、まず
データBの値とデータAの最小値a1とを比較し、デー
タBの値が小さければ、RANGE−ERRに飛ぶ。次
に、データBの値とデータAの最大値a2とを比較し、
データBの値が大きければ、RANGE−ERRに飛ふ
。また、”MVM  A,8.12a″は、データAに
データBをデータAのデータ長だけ代入することを指示
するオブジェクトである。
第2図を参照すると、例外検査オブジェクト削除手段2
21における例外検査オブジェクト削除可否の判断処理
は、最小値比較ステソプ2211と、最大値比較ステソ
ブ22l2と、例外検査オブジェクト削除可判断ステソ
プ2213と、例外検査オブジェクト削除不可判断ステ
ップ2214とからなる。
次に、このように構成された本実施例の代入文の例外検
査オブジェクト削除方式の動作について説明する。
コンパイラ2が起動されると、まずフロントエンド部2
lは、ソースプログラムlを入力し、ソースプログラム
1で宣言されたデータAの値域〔a+..a2)および
データBの値域(b+ ..bz)をデータ属性記憶域
4に出力する。また、フロントエンド部21は、ソース
プログラム1を入力して中間言語3を出力し、特にソー
スプログラム1中の代入文“A:=B.”を人力した場
合には、代人文“A:一B;”の送出し側のデータBも
受取り側のデータAもソースプログラム1で値域を宣言
されたデータであるので、中間言語“A : =B ;
”の前に例外検査を行う中間言語“RANGECHK 
 A,B″を生成する。
次に、バンクエンド部22は、中間言語3を入力して目
的プログラム5を出力する。特に、中間言語”RANG
ECHK  A,B”を入力ずると、バソクエンド部2
2は、例外検査オブジェクト削除千段221によりデー
タ属性記憶域4のデータAの値域(a+..az)およ
びデータBの値域(b+..b2〕を人力し、中間言語
“RANGECHK  A,B”に対する例外検査オブ
ジェクトを目的プログラム5中に出力するか否かの判定
を行う。この判定は、中間言語“A:=B;”の送出し
側のデータBの値域(b+..b2)が受取り側のデー
タAの値域(a+..az)に含まれるかどうかを検査
することにより行われる。
詳しくは、例外検査オブジェクト削除手段22lは、デ
ータBの最小値b1がデータAの最小値a1より大きい
かどうかを判定し(ステップ221■)、より大きくな
ければデータBの値がデータAの値域(a+..az)
より小さくなる場合があり得るので例外検査オブジェク
ト削除不可と判断する(ステップ2214)。また、デ
ータBの最小値b1がデータAの最小値a,より大きけ
れば、次にデータAの最大値a2がデータBの最大値b
2より大きいかどうかを判定し〈ステソプ2212)、
より大きくなければデータBの値がデータAの値域(a
+..az)より大きくなる場合があり得るので例外検
査オブジェクト削除不可と判断する(ステソプ2 2 
1 4)。データAの最大値a2がデータBの最大値b
2より大きければ、送出し側のデークBの値域(b+.
.bz)が受取り側のデータAの値域(a+..az)
に含まれるので、例外検査オブジェクト削除可と判断す
る(ステップ2213)。
そして、例外検査オブジェクト削除可と判断した場合に
は、例外検査オブジェクト削除手段22lは、バンクエ
ンド部22から中間言語“RANGECHK  A,B
″に対する例外検査オブジェクトを目的プログラム5に
出力させない(削除する)。すなわち、送出し側のデー
タBの値域(b+..bz)が受取り側のデータAの値
域〔a1..a2〕に含まれていれば、目的プログラム
5中の〔 〕で囲んだ部分である例外検査オブジェクト
は生成されない。
〔発明の効果〕
以上説明したように本発明は、ソースプログラムで宣言
されたデータの値域に基づいて代入文の送出し側のデー
タの値域が受取り側のデータの値域に含まれているかど
うかを判断し含まれている場合にはこの代人文に対する
例外検査オブジェクトを生成しないようにしたことによ
り、目的プロダラムの大きさを小さくすることができ、
また目的プログラムの実行速度を速くすることができる
という効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例に係る代入文の例外検査オブ
ジェクト削除方式の構威を示すブロソク図、 第2図は第l図中の例外検査オブジェクト削除手段にお
ける例外検査オブジェクト削除可否の判断処理を示す図
である。 図において、 1・・・ソースプログラム、 2・・・コンパイラ、 3・・・中間言語、 4・・・データ属性記憶域、 5・・・目的フ゜ログラム、 21・・フロントエンド部、 22・・バンクエンド部、 221・例外検査オブジェクト削除手段である。

Claims (1)

  1. 【特許請求の範囲】 代入文に対する例外検査オブジェクトの生成処理を行う
    ことができるコンパイラにおいて、ソースプログラムで
    宣言されたデータの値域を記憶するデータ属性記憶域と
    、 代入文の例外検査を行う中間言語が生成されている場合
    に前記データ属性記憶域を参照して代入文の送出し側の
    データの値域が受取り側のデータの値域に含まれている
    か否かを判断し含まれているときには例外検査オブジェ
    クトを生成しないようにする例外検査オブジェクト削除
    手段と を有することを特徴とする代入文の例外検査オブジェク
    ト削除方式。
JP16225089A 1989-06-23 1989-06-23 代入文の例外検査オブジェクト削除方式 Pending JPH0327444A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16225089A JPH0327444A (ja) 1989-06-23 1989-06-23 代入文の例外検査オブジェクト削除方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16225089A JPH0327444A (ja) 1989-06-23 1989-06-23 代入文の例外検査オブジェクト削除方式

Publications (1)

Publication Number Publication Date
JPH0327444A true JPH0327444A (ja) 1991-02-05

Family

ID=15750855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16225089A Pending JPH0327444A (ja) 1989-06-23 1989-06-23 代入文の例外検査オブジェクト削除方式

Country Status (1)

Country Link
JP (1) JPH0327444A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4842832B2 (ja) * 2003-11-30 2011-12-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 内部に取り付けられたカバー保持手段を備えたフードプロセッサ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4842832B2 (ja) * 2003-11-30 2011-12-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 内部に取り付けられたカバー保持手段を備えたフードプロセッサ

Similar Documents

Publication Publication Date Title
US6442572B2 (en) Method of and computer system for performing a transaction on a database
JPH08292881A (ja) プログラム影響範囲表示装置
US20100153911A1 (en) Optimized storage of function variables
JPH0378031A (ja) 例外検査/代入文オブジェクトの削除方式
JPH0395631A (ja) 条件文の目的プログラムの削減方式
JPS6378231A (ja) 部分的プログラム結合方式
Carroll An island parsing interpreter for the full augmented transition network formalism
JP3011001B2 (ja) バッファ制御システム
JPH0546404A (ja) 分岐命令削除最適化方式
JPH0285931A (ja) 関数呼出しの最適化強化方式
JPH0240720A (ja) 目的プログラム出力指示方式
JPH05113882A (ja) 中間フアイルによる外付けマン・マシン・インターフエース実現方式
JP3327634B2 (ja) プログラム変換装置、およびプログラム変換方法
JPH05250173A (ja) 書換え規則検証方式
JPH0816431A (ja) 利用者プログラムのデバッグ処理システム
JPH05324344A (ja) 関数呼出し時の引数処理最適化方法
JPS59109944A (ja) 端末エコ−制御方式
JPH05216669A (ja) 制約伝播方式
JPH05298113A (ja) リスト関数作成方式
JPH06301549A (ja) プログラム翻訳装置
JPS60235243A (ja) デ−タ処理装置
JPH033039A (ja) オブジエクトロード処理方法
JPH0581047A (ja) テストプログラム実行制御処理方式
JPH01100633A (ja) 目的プログラム生成方式
JPH06242961A (ja) コンパイラシステム