JPH0365728A - Solution system for referring to label in translation system - Google Patents

Solution system for referring to label in translation system

Info

Publication number
JPH0365728A
JPH0365728A JP1201189A JP20118989A JPH0365728A JP H0365728 A JPH0365728 A JP H0365728A JP 1201189 A JP1201189 A JP 1201189A JP 20118989 A JP20118989 A JP 20118989A JP H0365728 A JPH0365728 A JP H0365728A
Authority
JP
Japan
Prior art keywords
name
hash
chain
label
same
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.)
Granted
Application number
JP1201189A
Other languages
Japanese (ja)
Other versions
JP2560848B2 (en
Inventor
Bunji Yagi
八木 文治
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 JP1201189A priority Critical patent/JP2560848B2/en
Publication of JPH0365728A publication Critical patent/JPH0365728A/en
Application granted granted Critical
Publication of JP2560848B2 publication Critical patent/JP2560848B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE:To shorten average reference time of a label by registering the label defined for the first time in a source program to the hash chain of a hash table corresponding to its hash value, and registering other same labels in a same name chain starting from the same label in the hash table. CONSTITUTION:Every time the label is defined in the source program, a label table 3 generating means retrieves the hash chain 31 starting from the entry of the hash table 2 corresponding to the hash value related to that label and obtained by a hash value calculating means 13, and if the same label does not exist, it registers the label of this time in this hash chain. When the same label exists, it registers the label of this time in the same name chain starting from this existing same label, and on the other hand, every time the label is referred to in the source program, the label table retrieving means 12 retrieves the hash chain 31 starting from the entry of the hash table 2 corresponding to the hash value obtained by the hash value calculating means 13 and related to that label and the same name chain derived from the hash chain at need. Thus, the average reference time of the label is shortened.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は翻訳システムにおける名標の参照解決方式に関
する。
DETAILED DESCRIPTION OF THE INVENTION [Industrial Field of Application] The present invention relates to a name reference resolution method in a translation system.

〔従来の技術〕[Conventional technology]

原始プログラムの翻訳システムにおいては、原始プログ
ラム中で定義された名標を名標テーブルに登録しておき
、その後に参照するという名標の参照解決処理が行われ
る。そして、通常、翻訳システムにおけるこの種の名標
の参照解決方式は、名標テーブルをハツシング技法で検
索することにより実現している。ハツシング技法とは、
名標テーブルとは別にハツシュテーブルを用意して、名
標テーブル生成時に名標からハツシュ値を求め、同一ハ
フシュ値を持つ名標をハツシュテーブルの同−エントリ
から始まるチェーン(ハツシュチェーンと呼ばれる)に
登録しておき、名標の参照解決時はそのハツシュチェー
ンをたどって名標を検索する技法である。そして、従来
の名標の参照解決方式では、同一名標であっても原始プ
ログラム中で定義された名標はその個数だけ名標テーブ
ルの同一のハツシュチェーンに登録し、その後に参照す
る方式が採用されていた。
In a source program translation system, a name name defined in a source program is registered in a name name table, and then reference resolution processing for the name name is performed. Usually, this kind of name reference resolution method in a translation system is realized by searching a name name table using a hashing technique. What is the hacking technique?
A hash table is prepared separately from the name table, the hash value is calculated from the name when the name table is generated, and the name name with the same hash value is linked to a chain starting from the same entry in the hash table (a hash chain). This is a technique in which the hash chain is searched for by registering the name in a name tag (called a name tag), and then searching for the name tag by following the hash chain when resolving the name name reference. In the conventional name name reference resolution method, even if the names are the same, the number of names defined in the source program is registered in the same hash chain of the name table, and then referenced. had been adopted.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来の名標の参照解決方式においても名標の参
照解決処理は可能であるが、原始プログラム中で同一名
標が多数定義されればされる程、対応するハツシュチェ
ーンの名標数が増加し、名標の平均参照時間が長くなる
という欠点がある。
Although name reference resolution processing is possible with the conventional name name reference resolution method described above, the more the same name name is defined in the source program, the more the number of name names in the corresponding hash chain decreases. This has the disadvantage that the average reference time for famous landmarks increases.

本発明はこのような名標の平均参照時間を短縮すること
を目的としている。
The present invention aims to reduce the average reference time for such landmarks.

〔課題を解決するための手段] 本発明は上記の目的を達成するために、名標テーブル作
成手段2泡標テーブル検索手段、ハツシュ値計算手段を
備え、ハツシュテーブルおよび名標テーブルを使用して
名標の参照解決を行う翻訳システムにおいて、前記名標
テーブル作成手段は、原始プログラム中で名標が定義さ
れる毎に、前記ハツシュ値計算手段により求めたその名
標にかかるハツシュ値に相当する前記ハツシュテーブル
のエントリから始まるハツシュチェーンを検索し、同一
名標が存在しないときはそのハツシュチェーンに今回の
名標を登録し、同一名標が存在するときはその存在した
同一名標から始まる同名チェーンに今回の名標を登録し
、他方、前記名標テーブル検索手段は、原始プログラム
中で名標が参照される毎に、前記ハツシュ値計算手段に
より求めたその名標にかかるハツシュ値に相当する前記
ハツシュテーブルのエントリから始まるハツシュチェー
ン及び必要に応してそのハツシュチェーンから派生する
前記同名チェーンを検索する。
[Means for Solving the Problems] In order to achieve the above object, the present invention includes a name table creation means 2, a bubble table search means, and a hash value calculation means, and uses a hash table and a name table. In a translation system that performs reference resolution of name marks, the name table creation means calculates a hash value corresponding to the name name calculated by the hash value calculation means each time a name name is defined in the source program. Search for the hash chain starting from the entry in the hash table, and if the same name does not exist, register the current name in that hash chain, and if the same name exists, register the same name that existed. The current name name is registered in the same name chain starting from the name name, and on the other hand, the name name table search means searches for the name name obtained by the hash value calculation means every time the name name is referenced in the source program. The hash chain starting from the hash table entry corresponding to the hash value and, if necessary, the same name chain derived from the hash chain are searched.

〔作用〕[Effect]

本発明の翻訳システムにおける名標の参照解決方式にお
いては、原始プログラム中で定義された名標であってそ
のハツシュ値が同一となる名標のうち、異なる名標はそ
のハツシュ値に相当するハツシュテーブルのエントリか
ら始まるハツシュチェーンに登録され、同じ名標はその
内の1つがハツシュチェーンに、他の名標は前記1つの
名標から始まる同名チェーンにそれぞれ登録され、参照
時にはそのハツシュチェーンおよび必要に応じて同名チ
ェーンが検索される。
In the name reference resolution method in the translation system of the present invention, among the names defined in the source program and having the same hash value, different names have the same hash value. It is registered in the hash chain starting from the stable entry, one of the same name marks is registered in the hash chain, and the other name marks are registered in the same name chain starting from the one name mark, and when referenced, that name is registered in the hash chain. chain and, if necessary, a chain with the same name.

〔実施例〕〔Example〕

次に、本発明の実施例について図面を参照して詳細に説
明する。
Next, embodiments of the present invention will be described in detail with reference to the drawings.

第1図は本発明の一実施例の構成国であり、1は翻訳シ
ステム、2はハツシュテーブル、3は名標テーブルであ
る。
FIG. 1 shows the constituent countries of an embodiment of the present invention, where 1 is a translation system, 2 is a hash table, and 3 is a name table.

ハツシュテーブル2はハツシュ値「OJ〜「m」に対応
するエントリを有し、各エントリには対応するハツシュ
チェーンが存在する場合にはその先頭の名標を指示する
ポインタが格納され、そのようなハツシュチェーンが存
在しない場合にはNULL値が格納されている。
The hash table 2 has entries corresponding to the hash values "OJ~"m", and each entry stores a pointer pointing to the first name of the corresponding hash chain if it exists. If such a hash chain does not exist, a NULL value is stored.

名標テーブル3には、複数の名標が登録される。A plurality of name names are registered in the name name table 3.

図では、ハツシュテーブル2のハツシュ(直’ OJか
ら始まるハツシュチェーン31に名標al、a2、a3
.a4が登録され、ハツシュ値「2」から始まるハツシ
ュチェーン33に名標blが登録され、ハツシュ値「m
」から始まるハツシュチェーン34に名標cl、c2が
登録され、さらにハツシュチェーン31に登録された名
標a3から始まる同名チェーン32に、ハツシュチェー
ン31中の名標a3と同一名標a3が登録されている。
In the figure, names al, a2, a3 are added to the hash chain 31 starting from the hash (direct) OJ of the hash table 2.
.. a4 is registered, the name tag bl is registered in the hashish chain 33 starting from the hashish value "2", and the hashish value "m" is registered.
Name marks cl and c2 are registered in the hash chain 34 starting from ``, and furthermore, in the same name chain 32 starting from the name mark a3 registered in the hash chain 31, the same name mark a3 as the name mark a3 in the hash chain 31 is registered. is registered.

また、翻訳システム1は、図示しない原始プログラムを
翻訳して目的プログラム等を生成するシステムであり、
本発明の名標の参照解決方式にかかる機能部として、名
標テーブル作成手段11名標テーブル検索手段12およ
びハ・ンシュ値計算手段13を有している。
Further, the translation system 1 is a system that translates a source program (not shown) to generate a target program, etc.
Functional units related to the name reference resolution method of the present invention include name name table creation means 11 name name table search means 12 and hash value calculation means 13.

ハツシュ値計算手段13は、名標のハシシュ値を計算す
る手段であり、名標テーブル作成手段11および名標テ
ーブル検索手段12から呼び出される。
The hashish value calculation means 13 is a means for calculating the hashish value of a name tag, and is called by the name name table creation means 11 and the name name table search means 12.

名標テーブル作成手段11は、原始プログラム中で名標
が定義される毎に翻訳システム1によって呼び出される
手段である。名標テーブル作成手段11は呼び出される
と、ハツシュ値計算手段13により求めた名標にかかる
ハツシュ値に相当するハツシュテーブル2のエントリか
ら始まるハツシュチェーンを検索し、同一名標が存在し
ないときはそのハツシュチェーンに今回の名標を登録し
、同一名標が存在するときはその存在した同一名標から
始まる同名チェーンに今回の名標を登録するといった処
理を行う。
The name table creation means 11 is a means that is called by the translation system 1 every time a name is defined in the source program. When called, the name table creation means 11 searches for a hash chain starting from the entry in the hash table 2 that corresponds to the hash value for the name name calculated by the hash value calculation means 13, and if no identical name name exists, registers the current name mark in the hash chain, and if the same name tag exists, performs processing such as registering the current name mark in the same name chain starting from the existing same name mark.

名標テーブル検索手段12は、原始プログラム中で名標
が参照される毎に翻訳システム1によって呼び出される
手段である。名標テーブル検索手段12は呼び出される
と、ハツシュ値計算手段13により求めた名標にかかる
ハツシュ値に相当するハツシュテーブル2のエントリか
ら始まるハツシュチェーン及び必要に応じてそのハツシ
ュチェーンから派生する同名チェーンを検索するといっ
た処理を行う。
The name table search means 12 is a means that is called by the translation system 1 every time a name is referenced in the source program. When called, the name table search means 12 creates a hash chain starting from the entry in the hash table 2 corresponding to the hash value for the name name calculated by the hash value calculation means 13 and, if necessary, derives from the hash chain. Processes such as searching for chains with the same name are performed.

以下、このように構成された本実施例の動作を説明する
The operation of this embodiment configured as described above will be explained below.

翻訳システム1は、原始プログラム中で名標が定義され
る毎に名標テーブル作成手段11を呼び出す。
The translation system 1 calls the name name table creation means 11 every time a name name is defined in the source program.

名標テーブル作成手段11は、まずハツシュ値計算手段
13を呼び出して今回の名標のハツシュ値を求め、次に
このハツシュ値に相当するハソシュテーフ゛lし2のエ
ントリから始まるハツシュチェーンの名標と今回登録す
べき名標とを順番に比較していく。そして、同一名標が
既にそのハツシュチェーンに登録されている場合には、
今回の名標をハツシュチェーンではなく上記登録済の同
一名標から始まる同名チェーンに追加し、同一名標が未
だ1つも登録されていない場合に限り、今回の名標をそ
のハツシュチェーンに追加する。すなわち、第1図にお
いてハツシュチェーン31上の名標a3.同名チェーン
32上の名標a3が共に登録されていない場合に名標a
3の定義が現れたときには、先ずハツシュチェーン31
上に名標a3が登録され、その後に同一名標a3が現れ
た場合にはハツシュチェーン31上の名標a3から始ま
る同名チェーン32に名標a3が登録されるものである
The name table creation means 11 first calls the hash value calculation means 13 to obtain the hash value of the current name name, and then calculates the name name of the hash chain starting from the hash value 1 to 2 entry corresponding to this hash value. We will compare the names that should be registered this time in order. If the same name tag is already registered in that hash chain,
Add this name mark to the same name chain that starts from the same name mark registered above instead of the hash chain, and only if there is no same name mark registered yet, add this name mark to that hash chain. to add. That is, in FIG. 1, the name mark a3. on the hash chain 31. If name mark a3 on the same name chain 32 is not registered together, name mark a
When the definition of 3 appears, first the hash chain 31
If the name mark a3 is registered above and the same name mark a3 appears thereafter, the name mark a3 is registered in the same name chain 32 starting from the name mark a3 on the hash chain 31.

さて、翻訳システムlは、原始プログラム中で定義され
た全ての名標の処理を終えると、次に、原始プログラム
中で名標が参照される毎に名標テーブル検索手段12を
呼び出す。
After the translation system 1 has finished processing all the names defined in the source program, it then calls the name table search means 12 every time a name is referenced in the source program.

名標テーブル検索手段12は、まずハツシュ値計算手段
13を呼び出して今回の名標のハツシュ値を求め、次に
このハツシュ値に相当するハツシュテーブル2のエント
リから始まるハツシュチェーンの名標を順番に検索し参
照解決すべき名標を得る。また、この名標が第1図の同
名チェーン32の如く同名チェーンを有している場合、
名標テーブル検索手段12は、さらにその同名チェーン
の名標テーブルを順番に検索して参照解決すべき名標を
決定するものである。
The name table search means 12 first calls the hash value calculation means 13 to obtain the hash value of the current name name, and then searches the name name of the hash chain starting from the entry in the hash table 2 corresponding to this hash value. Search in order to obtain landmarks to be referenced and resolved. Also, if this name tag has a same name chain like the same name chain 32 in Fig. 1,
The name table search means 12 further searches the name table of the same name chain in order and determines the name to be referenced and resolved.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明の翻訳システムにおける名
標の参照解決方式においては、原始プログラム中で初め
て定義された名標はそのハツシュ値に相当するハツシュ
テーブルのエントリから始まるハツシュチェーンに登録
し、その他の同一名標はハツシュテーブル中の上記間し
名標から始まる同名チェーンに登録するようにしたので
、原始プログラム中で同一名標が多数定義された場合で
もハツシュチェーンの名標数が増加せず、名標の平均参
照時間を短縮することができる効果がある。
As explained above, in the name reference resolution method in the translation system of the present invention, a name defined for the first time in a source program is registered in the hash chain starting from the hash table entry corresponding to its hash value. However, other identical names are registered in the same name chain starting from the above intermediate name in the hash table, so even if many identical names are defined in the source program, the names in the hash chain are This has the effect of reducing the average reference time for landmarks without increasing the number of landmarks.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例の構成国である。 図において、 1・・・翻訳システム 2・・・ハツシュテーブル 3・・・名標テーブル 11・・・名標テーブル作成手段 12・・・名標テーブル検索手段 13・・・ハツシュ値計算手段 31.33.34・・・ハツシュチェーン32・・・同
名チェーン
FIG. 1 shows the constituent countries of one embodiment of the present invention. In the figure, 1... Translation system 2... Hash table 3... Name name table 11... Name name table creation means 12... Name table search means 13... Hash value calculation means 31 .33.34...Hatush chain 32...Chain with the same name

Claims (1)

【特許請求の範囲】 名標テーブル作成手段、名標テーブル検索手段、ハッシ
ュ値計算手段を備え、ハッシュテーブルおよび名標テー
ブルを使用して名標の参照解決を行う翻訳システムにお
いて、 前記名標テーブル作成手段は、原始プログラム中で名標
が定義される毎に、前記ハッシュ値計算手段により求め
たその名標にかかるハッシュ値に相当する前記ハッシュ
テーブルのエントリから始まるハッシュチェーンを検索
し、同一名標が存在しないときはそのハッシュチェーン
に今回の名標を登録し、同一名標が存在するときは該存
在した同一名標から始まる同名チェーンに今回の名標を
登録し、 前記名標テーブル検索手段は、原始プログラム中で名標
が参照される毎に、前記ハッシュ値計算手段により求め
たその名標にかかるハッシュ値に相当する前記ハッシュ
テーブルのエントリから始まるハッシュチェーン及び必
要に応じて該ハッシュチェーンから派生する前記同名チ
ェーンを検索することを特徴とする翻訳システムにおけ
る名標の参照解決方式。
[Scope of Claim] A translation system that includes a name name table creation means, a name name table search means, and a hash value calculation means, and performs name name reference resolution using the hash table and the name name table, comprising: the name name table; Each time a name is defined in the source program, the creation means searches for a hash chain starting from an entry in the hash table that corresponds to the hash value for the name obtained by the hash value calculation means, If the name does not exist, the current name is registered in that hash chain, and if the same name exists, the current name is registered in the same name chain starting from the existing same name, and the name name table search is performed. The means includes a hash chain starting from an entry in the hash table corresponding to the hash value for the name calculated by the hash value calculation means, and the hash as necessary, each time the name is referenced in the source program. A name reference resolution method in a translation system, characterized in that the same-name chain derived from the chain is searched.
JP1201189A 1989-08-04 1989-08-04 Name reference reference resolution method in translation system Expired - Fee Related JP2560848B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1201189A JP2560848B2 (en) 1989-08-04 1989-08-04 Name reference reference resolution method in translation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1201189A JP2560848B2 (en) 1989-08-04 1989-08-04 Name reference reference resolution method in translation system

Publications (2)

Publication Number Publication Date
JPH0365728A true JPH0365728A (en) 1991-03-20
JP2560848B2 JP2560848B2 (en) 1996-12-04

Family

ID=16436826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1201189A Expired - Fee Related JP2560848B2 (en) 1989-08-04 1989-08-04 Name reference reference resolution method in translation system

Country Status (1)

Country Link
JP (1) JP2560848B2 (en)

Also Published As

Publication number Publication date
JP2560848B2 (en) 1996-12-04

Similar Documents

Publication Publication Date Title
US6560596B1 (en) Multiscript database system and method
CN105608113B (en) Judge the method and device of POI data in text
JPH09319757A (en) Information retrieving system
CN104794130B (en) Relation query method and device between a kind of table
JPH0365728A (en) Solution system for referring to label in translation system
CN116719843A (en) Query method, storage medium and device for database system
JP2002259443A (en) Document control system, document search method and document search program
JPH0644309A (en) Data base managing system
JPH03174653A (en) Method and device for control of key word
CN1510592B (en) Key word matching specifications for rapid network fluid characteristic test
JPH02227734A (en) Label retrieving device
JPH03164939A (en) Label reference resolution system for translation system
JPH04107628A (en) Back-up system for reuse of software
JPH03245233A (en) Label retrieving system
CN112765174B (en) Hash connection-based detection method, device, equipment and storage medium
JPH1185787A (en) Method for retrieving and registering information having link structure
JPH021030A (en) Compiling system
US20220066989A1 (en) Techniques for case insensitive lookup and case collision detection
JPH0423167A (en) Command retrieving system
JPH0214327A (en) High speed solving system for data referring
JPS63266543A (en) Retrieving system for label table
CN112182040A (en) Data query method, device, equipment and storage medium
JPH05108719A (en) Information retrieving device
CN109325025A (en) A kind of restructural integrated approach of multi-source heterogeneous platform
JPS63271533A (en) Reference solution system for name of translation system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees