JPS62197822A - 辞書デ−タ検索方式 - Google Patents
辞書デ−タ検索方式Info
- Publication number
- JPS62197822A JPS62197822A JP61039215A JP3921586A JPS62197822A JP S62197822 A JPS62197822 A JP S62197822A JP 61039215 A JP61039215 A JP 61039215A JP 3921586 A JP3921586 A JP 3921586A JP S62197822 A JPS62197822 A JP S62197822A
- Authority
- JP
- Japan
- Prior art keywords
- index file
- dictionary data
- block
- sub
- file
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、カナ漢字変換辞書、言語翻訳辞書。
など、見出し語に対応するデータ(文字列)を検索する
方式に係り、特に、大容量辞書データを検索するのに好
適な辞書データ検索方式に関する。
方式に係り、特に、大容量辞書データを検索するのに好
適な辞書データ検索方式に関する。
従来辞書データファイルを検索する方法として、例えば
特開昭55−83962号、特開昭56−38661号
に記載されている方法がある。これらの方法は、見出し
語の1文字目もしくは2文字目までを第1次検索対象と
して検索し、得られたアドレス情報より3文字目以降が
格納されている辞書本体を第2次検索する方法である。
特開昭55−83962号、特開昭56−38661号
に記載されている方法がある。これらの方法は、見出し
語の1文字目もしくは2文字目までを第1次検索対象と
して検索し、得られたアドレス情報より3文字目以降が
格納されている辞書本体を第2次検索する方法である。
上記従来技術は、大容量辞書データファイルを接続した
場合の辞書データ検索方法について配慮がされておらず
、見出し語の2文字までが一致しても、3文字目以降が
異なる大量の辞書データを検索するため、検索時間の増
大を招くという問題があった。
場合の辞書データ検索方法について配慮がされておらず
、見出し語の2文字までが一致しても、3文字目以降が
異なる大量の辞書データを検索するため、検索時間の増
大を招くという問題があった。
本発明の目的は、大容量辞書データファイルを高速に検
索でき、かつ少ないバッファメモリで実現できる辞書デ
ータ検索方式を提供することにある。
索でき、かつ少ないバッファメモリで実現できる辞書デ
ータ検索方式を提供することにある。
上記目的を達するため、本発明は、大容量辞書データフ
ァイルが格納されているドライブの物理的最少単位(1
セクタ)を基準として、辞書データファイルの各セクタ
の先頭の見出し語のみを集めたサブインデックスファイ
ルを作成し、さらにサブインデックスの各セクタの先頭
見出し語のみを集めた1セクタのマスクインデックスを
作成して、大容量辞書データファイルを検索する。
ァイルが格納されているドライブの物理的最少単位(1
セクタ)を基準として、辞書データファイルの各セクタ
の先頭の見出し語のみを集めたサブインデックスファイ
ルを作成し、さらにサブインデックスの各セクタの先頭
見出し語のみを集めた1セクタのマスクインデックスを
作成して、大容量辞書データファイルを検索する。
その際、必要とするバッファメモリの大きさは、1セク
タであるマスタインデックスを読み込む場合、1セクタ
、そのマスタインデックスにより、サブインデックスの
該当セクタ(1セクタ)を読み込む場合、1セクタ、さ
らにそのサブインデックスにより、大容量辞書データフ
ァイルの該当する見出し語の格納されているセクタを読
み込む場合、1セクタとなり、1セクタの大きさのバッ
ファメモリを用意するだけで、大容量辞書データファイ
ルを検索することができる。
タであるマスタインデックスを読み込む場合、1セクタ
、そのマスタインデックスにより、サブインデックスの
該当セクタ(1セクタ)を読み込む場合、1セクタ、さ
らにそのサブインデックスにより、大容量辞書データフ
ァイルの該当する見出し語の格納されているセクタを読
み込む場合、1セクタとなり、1セクタの大きさのバッ
ファメモリを用意するだけで、大容量辞書データファイ
ルを検索することができる。
本発明の動作について、以下説明する。
マスタインデックスファイルを読み出し、検索すべき文
字列が、マスタインデックスファイルの見出し語列のn
番目と一致もしくは、n番目と(n+1)番目の間にあ
ることを検索(第1次)する0次にサブインデックスフ
ァイルのn番目のセクタを読み出す、検索すべき文字列
が、読み出したサブインデックス(1セクタ)の見出し
語列のm番目と一致もしくは1m番目と(m+1)番目
の間にあることを検索(第2次)する0次に、サブイン
デックスの各セクタごとに設定されている辞書データフ
ァイルに対するオフセット値kを用いて、辞書データフ
ァイルの(k+m)番目のセクタを読み出す、読み出し
た辞書データファイルの見出し語と検索すべき文字列と
を比較し、一致する見出し語を検索(第3次)する。
字列が、マスタインデックスファイルの見出し語列のn
番目と一致もしくは、n番目と(n+1)番目の間にあ
ることを検索(第1次)する0次にサブインデックスフ
ァイルのn番目のセクタを読み出す、検索すべき文字列
が、読み出したサブインデックス(1セクタ)の見出し
語列のm番目と一致もしくは1m番目と(m+1)番目
の間にあることを検索(第2次)する0次に、サブイン
デックスの各セクタごとに設定されている辞書データフ
ァイルに対するオフセット値kを用いて、辞書データフ
ァイルの(k+m)番目のセクタを読み出す、読み出し
た辞書データファイルの見出し語と検索すべき文字列と
を比較し、一致する見出し語を検索(第3次)する。
これらの動作により、どのような検索すべき文字列でも
、常にマスタインデックスファイル、サブインデックス
ファイル、辞書データファイルを各1回計3回アクセス
するだけで目的とする見出し語を検索することができ、
高速に大容量辞書データファイルを検索することができ
る。また、その際に必要とするバッファメモリの大きさ
は、マスタインデックスファイル(1セクタ)、サブイ
ンデックスファイル(該当すべき1セクタ)、辞書デー
タファイル(該当すべき1セクタ)を読み出すのに各1
セクタ分必要とし、その都度バッファメモリの内容を書
き換えて共通に使用することにより、1セクタ分のみの
バッファメモリサイズで充分である。
、常にマスタインデックスファイル、サブインデックス
ファイル、辞書データファイルを各1回計3回アクセス
するだけで目的とする見出し語を検索することができ、
高速に大容量辞書データファイルを検索することができ
る。また、その際に必要とするバッファメモリの大きさ
は、マスタインデックスファイル(1セクタ)、サブイ
ンデックスファイル(該当すべき1セクタ)、辞書デー
タファイル(該当すべき1セクタ)を読み出すのに各1
セクタ分必要とし、その都度バッファメモリの内容を書
き換えて共通に使用することにより、1セクタ分のみの
バッファメモリサイズで充分である。
以下1本発明の一実施例を第1図、第2図、第3図によ
り説明する。第1図及び第3図は本発明の主要部分であ
る辞書データの構造を示しており。
り説明する。第1図及び第3図は本発明の主要部分であ
る辞書データの構造を示しており。
第2図は辞書検索を行う装置1oのブロック図である。
装置10は検索するコードを入力し検索した結果を出力
する入出力装置!19と、辞書1及びその他のデータを
記憶する外部記憶装置(第1の記憶装置)14と、CP
U (中央処理装置)11からの指令に従って外部記憶
装置114を制御する制御回路12と、CPUIIから
直接読み書きされる内部メモリ(第2の記憶表M)13
と、入出力装置19及び制御回路12を内部メモリ15
のプログラム領域15に格納されたプログラムに従って
制御し辞書検索を遂行するCPUIIから構成される。
する入出力装置!19と、辞書1及びその他のデータを
記憶する外部記憶装置(第1の記憶装置)14と、CP
U (中央処理装置)11からの指令に従って外部記憶
装置114を制御する制御回路12と、CPUIIから
直接読み書きされる内部メモリ(第2の記憶表M)13
と、入出力装置19及び制御回路12を内部メモリ15
のプログラム領域15に格納されたプログラムに従って
制御し辞書検索を遂行するCPUIIから構成される。
又、内部メモリ13はプログラム領域15、作業領域1
6.マスタインデックスファイル領域17.バッファ領
域18に分割されている。
6.マスタインデックスファイル領域17.バッファ領
域18に分割されている。
以下に装置10の動作の概略を説明する。入出力装置1
9から入力された語はCPUIIにとりこまれ、CPU
IIは談話をもとに辞書1を検索する。検索の結果はC
PUI lにより入出力装置19へ出力され、一連の動
作を終了する。本発明の主要部分である辞書検索につい
て更に説明を加える。辞書lは第3図に示すように、マ
スタインデックスファイル100、サブインデックスフ
ァイル200.辞書本体(辞書データファイル)300
から構成されている。第1図を用いて辞書1の構成を説
明する。辞書本体300は、アイウェオ順に並べられた
見出し語と該見出し語に対応する辞書内容から構成され
ている。すなわち、見出し語311の“ア”に対応する
辞書内容311a ”亜”、311b“阿”、311c
“合”等をルコードとして、続く見出し語312“アア
”のレコード、と以下同様にレコードが続き、辞書本体
300を構成する。又、辞書本体300は。
9から入力された語はCPUIIにとりこまれ、CPU
IIは談話をもとに辞書1を検索する。検索の結果はC
PUI lにより入出力装置19へ出力され、一連の動
作を終了する。本発明の主要部分である辞書検索につい
て更に説明を加える。辞書lは第3図に示すように、マ
スタインデックスファイル100、サブインデックスフ
ァイル200.辞書本体(辞書データファイル)300
から構成されている。第1図を用いて辞書1の構成を説
明する。辞書本体300は、アイウェオ順に並べられた
見出し語と該見出し語に対応する辞書内容から構成され
ている。すなわち、見出し語311の“ア”に対応する
辞書内容311a ”亜”、311b“阿”、311c
“合”等をルコードとして、続く見出し語312“アア
”のレコード、と以下同様にレコードが続き、辞書本体
300を構成する。又、辞書本体300は。
ある一定の長さごとにブロックとして切り分け。
各々第1ブロック310.第2ブロツク320・・・と
する。サブインデックスファイル200は辞書本体30
0の各ブロックの先頭の見出し語を集めて形成されてい
る。すなわち、辞書本体300の第1ブロツク310の
最初の見出し語311“ア”がサブインデックスファイ
ル200の最初の見出し語211 ”ア”となり、辞書
本体300の第2ブロツク320の最初の見出し語32
1”7カツキ″がサブインデックスファイル200の次
の見出し語212 ”アカツキ“となる。以下同様にし
て辞書本体300の各ブロックの最初の見出し語を順次
集めることで、サブインデックスファイル200が作ら
れる。このとき、サブインデックスファイル200の見
出し語は、辞書本体300の見出し語と同様、アイウェ
オ順に並んでいる。サブインデックスファイル200も
辞書本体300と同様、ある一定の長さのブロックに切
り分けられ、第1のブロック210.第2のブロック2
20・・・とじている、マスタインデックスファイル1
00は、サブインデックスファイル200の各ブロック
の最初の見出し語を集めて作られる。
する。サブインデックスファイル200は辞書本体30
0の各ブロックの先頭の見出し語を集めて形成されてい
る。すなわち、辞書本体300の第1ブロツク310の
最初の見出し語311“ア”がサブインデックスファイ
ル200の最初の見出し語211 ”ア”となり、辞書
本体300の第2ブロツク320の最初の見出し語32
1”7カツキ″がサブインデックスファイル200の次
の見出し語212 ”アカツキ“となる。以下同様にし
て辞書本体300の各ブロックの最初の見出し語を順次
集めることで、サブインデックスファイル200が作ら
れる。このとき、サブインデックスファイル200の見
出し語は、辞書本体300の見出し語と同様、アイウェ
オ順に並んでいる。サブインデックスファイル200も
辞書本体300と同様、ある一定の長さのブロックに切
り分けられ、第1のブロック210.第2のブロック2
20・・・とじている、マスタインデックスファイル1
00は、サブインデックスファイル200の各ブロック
の最初の見出し語を集めて作られる。
すなわち、サブインデックスファイル200の第1のブ
ロック210の最初の見出し語211“ア″がマスタイ
ンデックスファイル100の最初の見出し語101“ア
”となり、サブインデックスファイル200の第2のブ
ロックの最初の見出し語221“キョクゲイ”がマスタ
インデックスファイル100の次の見出し語102“キ
ョクゲイ”となる。以下この作業をくり返すことによっ
てマスタインデックスファイル100が形成される。
ロック210の最初の見出し語211“ア″がマスタイ
ンデックスファイル100の最初の見出し語101“ア
”となり、サブインデックスファイル200の第2のブ
ロックの最初の見出し語221“キョクゲイ”がマスタ
インデックスファイル100の次の見出し語102“キ
ョクゲイ”となる。以下この作業をくり返すことによっ
てマスタインデックスファイル100が形成される。
マスタインデックスファイル100の見出し語もアイウ
ェオ順に並んでいる。以上の方法で構成された辞書1の
マスタインデックスファイル100゜サブインデックス
ファイル200の見出し語は以下の特徴を持つ。マスタ
インデックスファイル200の2つの隣接する見出し語
InとI n+1に対してアイウェオ順の順位が、In
≦x < I n+1にある語Xは、サブインデックス
ファイル200の第nブロック中の隣接する2つの見出
し語Jnk≦X<Jnk÷1、若しくはJnk≦x<I
n+1 の関係を持ち、更に辞書本体300の第S番目
のブロック中に該当する見出し語が存在する。ここでサ
ブインデックスファイル200中の各ブロック内の見出
し語数をa、TIとすれば、S :、4. am 十に
である。従ってマスタインデックスファイル100の各
見出し語をカウントしながら順次比較し、x < I
pとなったところでやめ、サブインデックスファイル2
00の第P−7ブロツクを内部メモリ13中のバッファ
領域18にロード、更に各見出し語をカウントしながら
順次比較し、x (J qとなったところでやめ、先の
S = ’X2a m + Q−1を求め、辞書本体3
00の第Sブロックをバッファ領域18にロード、見出
し語と順次比較して目的の辞書内容を得る。マスタイン
デックスファイル100は検索処理に毎回使用されるの
で内部メモリ13中にマスタインデックスファイル領域
17を設けてあらかじめ外部記憶装置14からロードし
ておく。−例として語“アガナ″の検索手順を示す。ま
ず、マスタインデックスファイル100の見出し語10
1の“ア”と比較、より後顧であるから続く見出し語1
02“キョクゲイ″と比較、より前順であるからマスタ
インデックスファイル100の検索を終える。この間に
カウントした見出し語は2こであるので2−1=1を求
めサブインデックスファイル200の第1ブロツク21
0をバッファ領域18にロードする。サブインデックス
ファイル200の第1の見出し語211 ”ア”より″
アガナ″は後顧のため、続く見出し語212“アカツキ
”と比較、より後顧であるから続く見出し語213“ア
ジ”と比較、前頭にあたるのでサブインデックスファイ
ル200の検索を終了する。この間にカウントした見出
し語は3こであり、又第1ブロツク210以前には見出
し語かのであることから、(の)+3−1=2を求め、
辞書本体300の第2ブロツク320をバッファ領域1
8にロードする。辞書本体300の第2ブロツクの第1
の見出し語321“アカツキ”は語“アガナ”と異なる
ため、次の見出し語322′″アガナ”と比較、一致し
たので内容322a“購、蹟”を得る。
ェオ順に並んでいる。以上の方法で構成された辞書1の
マスタインデックスファイル100゜サブインデックス
ファイル200の見出し語は以下の特徴を持つ。マスタ
インデックスファイル200の2つの隣接する見出し語
InとI n+1に対してアイウェオ順の順位が、In
≦x < I n+1にある語Xは、サブインデックス
ファイル200の第nブロック中の隣接する2つの見出
し語Jnk≦X<Jnk÷1、若しくはJnk≦x<I
n+1 の関係を持ち、更に辞書本体300の第S番目
のブロック中に該当する見出し語が存在する。ここでサ
ブインデックスファイル200中の各ブロック内の見出
し語数をa、TIとすれば、S :、4. am 十に
である。従ってマスタインデックスファイル100の各
見出し語をカウントしながら順次比較し、x < I
pとなったところでやめ、サブインデックスファイル2
00の第P−7ブロツクを内部メモリ13中のバッファ
領域18にロード、更に各見出し語をカウントしながら
順次比較し、x (J qとなったところでやめ、先の
S = ’X2a m + Q−1を求め、辞書本体3
00の第Sブロックをバッファ領域18にロード、見出
し語と順次比較して目的の辞書内容を得る。マスタイン
デックスファイル100は検索処理に毎回使用されるの
で内部メモリ13中にマスタインデックスファイル領域
17を設けてあらかじめ外部記憶装置14からロードし
ておく。−例として語“アガナ″の検索手順を示す。ま
ず、マスタインデックスファイル100の見出し語10
1の“ア”と比較、より後顧であるから続く見出し語1
02“キョクゲイ″と比較、より前順であるからマスタ
インデックスファイル100の検索を終える。この間に
カウントした見出し語は2こであるので2−1=1を求
めサブインデックスファイル200の第1ブロツク21
0をバッファ領域18にロードする。サブインデックス
ファイル200の第1の見出し語211 ”ア”より″
アガナ″は後顧のため、続く見出し語212“アカツキ
”と比較、より後顧であるから続く見出し語213“ア
ジ”と比較、前頭にあたるのでサブインデックスファイ
ル200の検索を終了する。この間にカウントした見出
し語は3こであり、又第1ブロツク210以前には見出
し語かのであることから、(の)+3−1=2を求め、
辞書本体300の第2ブロツク320をバッファ領域1
8にロードする。辞書本体300の第2ブロツクの第1
の見出し語321“アカツキ”は語“アガナ”と異なる
ため、次の見出し語322′″アガナ”と比較、一致し
たので内容322a“購、蹟”を得る。
本実施例によれば、辞書1の使用する部分だけを内部メ
モリ13にロードするため、内部メモリの効率向上に効
果がある。又本実施例によれば固定長のブロックのサイ
ズを小さく設定することで、必要とされるバッファ領域
18を小さくすることができるので、小メモリ化の効果
がある。更に本実施例では検索のために辞書1の一部を
外部記憶装置14からロードする回数が常に2回である
ため、検索処理時間の安定化、高速化に効果がある。
モリ13にロードするため、内部メモリの効率向上に効
果がある。又本実施例によれば固定長のブロックのサイ
ズを小さく設定することで、必要とされるバッファ領域
18を小さくすることができるので、小メモリ化の効果
がある。更に本実施例では検索のために辞書1の一部を
外部記憶装置14からロードする回数が常に2回である
ため、検索処理時間の安定化、高速化に効果がある。
加えて本実施例では、辞書1が大容量であっても検索に
使用する内部メモリ13を小さくすることが可能であり
、かつ2回の外部記憶装置14からのロードで済むため
小型の電子計算機でも充分高速な検索が可能であるため
、大容量辞書検索装置の価格低減に効果がある。
使用する内部メモリ13を小さくすることが可能であり
、かつ2回の外部記憶装置14からのロードで済むため
小型の電子計算機でも充分高速な検索が可能であるため
、大容量辞書検索装置の価格低減に効果がある。
第2の実施例を第4図を用いて説明する。第1の実施例
においては辞書検索毎に使用するマスタインデックスフ
ァイル100を内部メモリ13の中にマスタインデック
スファイル領域17を設けて常駐させている1本実施例
においては第4図に示すようにマスタインデックスファ
イル100は特定の領域を持たず、バッファ領域18に
検索毎にロードして使用する。
においては辞書検索毎に使用するマスタインデックスフ
ァイル100を内部メモリ13の中にマスタインデック
スファイル領域17を設けて常駐させている1本実施例
においては第4図に示すようにマスタインデックスファ
イル100は特定の領域を持たず、バッファ領域18に
検索毎にロードして使用する。
本実施例によれば、マスタインデックスファイル領域1
7を占有しない分、メモリの小サイズ化の効果がある。
7を占有しない分、メモリの小サイズ化の効果がある。
第3の実施例を以下に説明する。サブインデックスファ
イル200及び辞書本体300は各々ある特定の長さの
ブロックに分けられている0本実施例においてはこのブ
ロックの長さを外部記憶装@14並びに制御回路12が
取り扱い得る最小のデータ長又は最小のデータ長の整数
倍としている。
イル200及び辞書本体300は各々ある特定の長さの
ブロックに分けられている0本実施例においてはこのブ
ロックの長さを外部記憶装@14並びに制御回路12が
取り扱い得る最小のデータ長又は最小のデータ長の整数
倍としている。
本実施例によれば、サブインデックスファイル200及
び辞書本体300のあるブロックを内部メモリ13上に
ロードする場合、外部記憶装置14における物理的アド
レスを容易に求められるため、検索時間短縮の効果があ
る。また、本実施例によれば外部記憶装置14から内部
メモリ13上ヘロードされるデータに無駄な部分がない
ため省メモリ化の効果があり、ブロックとロードされた
データの先頭・末尾が一致するので、ブロックの先頭を
探す、先頭をつめるために転送する。といった処理が不
要となり、検索処理時間短縮の効果がある。
び辞書本体300のあるブロックを内部メモリ13上に
ロードする場合、外部記憶装置14における物理的アド
レスを容易に求められるため、検索時間短縮の効果があ
る。また、本実施例によれば外部記憶装置14から内部
メモリ13上ヘロードされるデータに無駄な部分がない
ため省メモリ化の効果があり、ブロックとロードされた
データの先頭・末尾が一致するので、ブロックの先頭を
探す、先頭をつめるために転送する。といった処理が不
要となり、検索処理時間短縮の効果がある。
第4の実施例を第5図を用いて説明する。辞書本体30
0が非常に大きくブロックの数が多大なものである場合
、サブインデックスファイル200もまた大きくなり多
数のブロックを有することとなる。従ってマスタインデ
ックスファイル100に含まれる見出し語の数が大きく
なり、サイズがサブインデックスファイル20oのブロ
ックサイズで複数のブロックに相当する場合がある。
0が非常に大きくブロックの数が多大なものである場合
、サブインデックスファイル200もまた大きくなり多
数のブロックを有することとなる。従ってマスタインデ
ックスファイル100に含まれる見出し語の数が大きく
なり、サイズがサブインデックスファイル20oのブロ
ックサイズで複数のブロックに相当する場合がある。
このとき、サブインデックスファイル200の各ブロッ
クの先頭の見出し語を集めたものをサブインデックスフ
ァイルA(第2のサブインデックスファイル)400と
し、更にサブインデックスファイルA400をブロック
分割して各ブロックの先頭の見出し語を集めてマスタイ
ンデックスファイル100を形成する。もし、サブイン
デックスファイルA400のブロック数が多く、従って
各ブロックの先頭の見出し語を集めたものが大きい場合
は、サブインデックスファイルB(第3のサブインデッ
クスファイル)として、サブインデックスファイルBを
ブロック分割し各々のブロックの先頭の見出し語を集め
てマスクインデックスフアイル100を形成する。以上
の動作をくり返し複数のサブインデックスファイルn(
第nのサブインデックスファイル)を設けることによっ
て。
クの先頭の見出し語を集めたものをサブインデックスフ
ァイルA(第2のサブインデックスファイル)400と
し、更にサブインデックスファイルA400をブロック
分割して各ブロックの先頭の見出し語を集めてマスタイ
ンデックスファイル100を形成する。もし、サブイン
デックスファイルA400のブロック数が多く、従って
各ブロックの先頭の見出し語を集めたものが大きい場合
は、サブインデックスファイルB(第3のサブインデッ
クスファイル)として、サブインデックスファイルBを
ブロック分割し各々のブロックの先頭の見出し語を集め
てマスクインデックスフアイル100を形成する。以上
の動作をくり返し複数のサブインデックスファイルn(
第nのサブインデックスファイル)を設けることによっ
て。
マスタインデックスファイル100のサイズを制限する
。サブインデックスファイルnが複数ある場合の検索方
法を第5図に示した、サブインデックスファイルnが2
段である場合について説明する。まずマスタインデック
スファイル100を検索、第1の実施例に示した手順で
サブインデックスファイルA400から特定のブロック
を導く。
。サブインデックスファイルnが複数ある場合の検索方
法を第5図に示した、サブインデックスファイルnが2
段である場合について説明する。まずマスタインデック
スファイル100を検索、第1の実施例に示した手順で
サブインデックスファイルA400から特定のブロック
を導く。
サブインデックスファイル200に対するサブインデッ
クスファイルA400の関係はサブインデックスファイ
ルA400に対するマスタインデックスファイル100
の関係と同じであることから、サブインデックスファイ
ルA400の特定のブロックをマスタインデックスファ
イル100と同じ方法で検索し、同じようにサブインデ
ックスファイル200から特定のブロックを導く、サブ
インデックスファイル200の特定のブロックを検索し
て辞書本体300の特定ブロックを導き、辞書本体30
0の特定ブロックから検索目的であるレコードを得る方
法については第1の実施例に述べた通りである。更にサ
ブインデックスファイルの数が増した場合も同じ処理の
くり返しから検索動作を実現できる。
クスファイルA400の関係はサブインデックスファイ
ルA400に対するマスタインデックスファイル100
の関係と同じであることから、サブインデックスファイ
ルA400の特定のブロックをマスタインデックスファ
イル100と同じ方法で検索し、同じようにサブインデ
ックスファイル200から特定のブロックを導く、サブ
インデックスファイル200の特定のブロックを検索し
て辞書本体300の特定ブロックを導き、辞書本体30
0の特定ブロックから検索目的であるレコードを得る方
法については第1の実施例に述べた通りである。更にサ
ブインデックスファイルの数が増した場合も同じ処理の
くり返しから検索動作を実現できる。
本実施例によれば、サブインデックスファイルの段数を
増すことで非常に多くの見出し語を持つ辞書の検索を小
容量のメモリで実現できるため省メモリ化の効果がある
。又9本実施例によれば、サブインデックスファイルの
段数を増やした場合でも同じ検索処理のくり返しで検索
動作を実現できるため、検索処理の単純化の効果がある
。更に本実施例によれば、サブインデックスファイルの
段数が増加した場合、外部記憶装置14からデータをロ
ードする回数は増加するものの、毎回検索する見出し語
の量がバッファ領域18の大きさに限定されたものであ
るため処理時間全体を短くすることができるので、検索
時間短縮の効果がある。
増すことで非常に多くの見出し語を持つ辞書の検索を小
容量のメモリで実現できるため省メモリ化の効果がある
。又9本実施例によれば、サブインデックスファイルの
段数を増やした場合でも同じ検索処理のくり返しで検索
動作を実現できるため、検索処理の単純化の効果がある
。更に本実施例によれば、サブインデックスファイルの
段数が増加した場合、外部記憶装置14からデータをロ
ードする回数は増加するものの、毎回検索する見出し語
の量がバッファ領域18の大きさに限定されたものであ
るため処理時間全体を短くすることができるので、検索
時間短縮の効果がある。
第5の実施例を以下に説明する。サブインデックスファ
イル200の各ブロックの先頭に見出し語に先立ち当該
ブロックより前に位置するブロックの中に含まれている
見出し語の総数をオフセットとして記録しておく、第1
の実施例に示したようにサブインデックス100のある
特定のブロックを検索し続く辞書本体300の特定ブロ
ックを決定するためには、サブインデックスファイル2
00中の当該ブロックより前に位置する全てのブロック
に含まれる見出し語の総数と検索の結果カウントした見
出し語の数の和より1引いた値を求める必要がある。本
実施例ではブロックの先頭にあるオフセットの値に見出
し語を順次検索しつつカウントした値を加えることから
続く辞書本体300内のブロックを特定する。
イル200の各ブロックの先頭に見出し語に先立ち当該
ブロックより前に位置するブロックの中に含まれている
見出し語の総数をオフセットとして記録しておく、第1
の実施例に示したようにサブインデックス100のある
特定のブロックを検索し続く辞書本体300の特定ブロ
ックを決定するためには、サブインデックスファイル2
00中の当該ブロックより前に位置する全てのブロック
に含まれる見出し語の総数と検索の結果カウントした見
出し語の数の和より1引いた値を求める必要がある。本
実施例ではブロックの先頭にあるオフセットの値に見出
し語を順次検索しつつカウントした値を加えることから
続く辞書本体300内のブロックを特定する。
本実施例によれば、検索の際に容易にブロック番号を得
られるので検索時間短縮の効果がある。
られるので検索時間短縮の効果がある。
また本実施例によれば、辞書1を変更して見出し語数が
変わっても検索処理手順は同じでよいため、辞書1の拡
張性をよくする効果がある。
変わっても検索処理手順は同じでよいため、辞書1の拡
張性をよくする効果がある。
第6の実施例を以下に説明する6本実施例では、マスタ
インデックスファイル100の第1の見出し語101の
前にサブインデックスファイル200の先頭の外部記憶
装置14上の論理的または物理的アドレスデータをおき
、又、サブインデックスファイル200の各ブロックの
先頭に各ブロックの先頭の見出し語が示す辞書本体30
0のブロックの先頭の外部記憶装置14上の論理的また
は物理的アドレスデータをおく。辞書検索において、該
アドレスデータに(各ブロックもしくはマスタインデッ
クスファイル100中の検索においてカウントした見出
し語数(n−1)Xブロック長Qの演算結果を加算する
ことによって実際に外部記憶装置14からロードするサ
ブインデックスファイル200中の特定ブロックもしく
は辞書本体300中の特定ブロックの論理的または物理
的アドレスを得られる。
インデックスファイル100の第1の見出し語101の
前にサブインデックスファイル200の先頭の外部記憶
装置14上の論理的または物理的アドレスデータをおき
、又、サブインデックスファイル200の各ブロックの
先頭に各ブロックの先頭の見出し語が示す辞書本体30
0のブロックの先頭の外部記憶装置14上の論理的また
は物理的アドレスデータをおく。辞書検索において、該
アドレスデータに(各ブロックもしくはマスタインデッ
クスファイル100中の検索においてカウントした見出
し語数(n−1)Xブロック長Qの演算結果を加算する
ことによって実際に外部記憶装置14からロードするサ
ブインデックスファイル200中の特定ブロックもしく
は辞書本体300中の特定ブロックの論理的または物理
的アドレスを得られる。
本実施例によれば、外部記憶装置14上の論理的又は物
理的アドレスを容易に求められるので、検索時間短縮の
効果がある。また本実施例によれば検索処理手順を変え
ることなく見出し語数を変えることができるので、辞書
の拡張性向上の効果がある6更に、本実施例によれば、
検索処理手順を変えることなくサブインデックスファイ
ル200、辞書本体300の外部記憶装置14上の配置
を変更することができるので、外部記憶装置14のメモ
リ効率向上の効果がある。
理的アドレスを容易に求められるので、検索時間短縮の
効果がある。また本実施例によれば検索処理手順を変え
ることなく見出し語数を変えることができるので、辞書
の拡張性向上の効果がある6更に、本実施例によれば、
検索処理手順を変えることなくサブインデックスファイ
ル200、辞書本体300の外部記憶装置14上の配置
を変更することができるので、外部記憶装置14のメモ
リ効率向上の効果がある。
第7の実施例を以下に説明する。マスタインデックスフ
ァイル100及びサブインデックスファイル200の各
ブロックの先頭にはそれぞれ第5、第6の実施例で説明
したオフセットデータがおかれている。更に本実施例で
は辞書本体300の各ブロックの先頭にオフセットデー
タとして使用されないデータをターミネータ(識別コー
ド)としておいている、第4の実施例において説明した
ように、マスタインデックスファイル100からサブイ
ンデックスファイル200のあるブロックを導く方法、
また、サブインデックスファイル200のあるブロック
を検索して辞書本体300のあるブロックを導く方法、
更にサブインデックスファイルが多数ある場合に上位の
サブインデックスファイルから下位のサブインデックス
ファイルを導く方法は全て同一である。従って、ロード
したブロックの先頭がターミネータになるまで、順次下
位のインデックスファイルを導く動作を繰り返し、ター
ミネータを検出した時点で辞書本体300の検索方式に
切り換える。
ァイル100及びサブインデックスファイル200の各
ブロックの先頭にはそれぞれ第5、第6の実施例で説明
したオフセットデータがおかれている。更に本実施例で
は辞書本体300の各ブロックの先頭にオフセットデー
タとして使用されないデータをターミネータ(識別コー
ド)としておいている、第4の実施例において説明した
ように、マスタインデックスファイル100からサブイ
ンデックスファイル200のあるブロックを導く方法、
また、サブインデックスファイル200のあるブロック
を検索して辞書本体300のあるブロックを導く方法、
更にサブインデックスファイルが多数ある場合に上位の
サブインデックスファイルから下位のサブインデックス
ファイルを導く方法は全て同一である。従って、ロード
したブロックの先頭がターミネータになるまで、順次下
位のインデックスファイルを導く動作を繰り返し、ター
ミネータを検出した時点で辞書本体300の検索方式に
切り換える。
本実施例によれば、検索処理手順を変えることなくサブ
インデックスファイルの段数を変更できるので、辞書1
の拡張性を高め、検索処理を汎用化する効果がある。
インデックスファイルの段数を変更できるので、辞書1
の拡張性を高め、検索処理を汎用化する効果がある。
第8の実施例を第6図を用いて説明する。辞書本体30
0は見出し語及び内容から成るレコードを単位として構
成されている。この見出し語311と内容311aの間
に見出し語の末尾を示す区切り記号3141次の見出し
語までの距離を示す長さデータ(相対アドレス値)31
5、長さデータ315の終わりを示す区切り記号315
を配置し、また内容311aと内容311bの区切りを
示す区切り記号317、レコード全体の区切りを示す区
切り記号318を配置している。辞書本体300の検索
において、語と見出し語が一致した場合はその内容を長
さデータ315の区切り記号316に後続するデータか
ら得1語と見出し語が一致しない場合は長さデータ31
5をもとに次のレコードの先頭位置を求めて、次の見出
し語と語を比較、以下順次繰り返すことで一致する見出
し語を検索する。
0は見出し語及び内容から成るレコードを単位として構
成されている。この見出し語311と内容311aの間
に見出し語の末尾を示す区切り記号3141次の見出し
語までの距離を示す長さデータ(相対アドレス値)31
5、長さデータ315の終わりを示す区切り記号315
を配置し、また内容311aと内容311bの区切りを
示す区切り記号317、レコード全体の区切りを示す区
切り記号318を配置している。辞書本体300の検索
において、語と見出し語が一致した場合はその内容を長
さデータ315の区切り記号316に後続するデータか
ら得1語と見出し語が一致しない場合は長さデータ31
5をもとに次のレコードの先頭位置を求めて、次の見出
し語と語を比較、以下順次繰り返すことで一致する見出
し語を検索する。
本実施例によれば各レコードの長さ、レコード内の見出
し語長及び内容の長さを可変長にすることができるので
、辞書本体300のメモリ効率向上の効果がある。また
本実施例によれば、見出し語が一致しなかった場合に次
の見出し語が容易に求められるので、検索速度向上の効
果がある。
し語長及び内容の長さを可変長にすることができるので
、辞書本体300のメモリ効率向上の効果がある。また
本実施例によれば、見出し語が一致しなかった場合に次
の見出し語が容易に求められるので、検索速度向上の効
果がある。
第9の実施例を第7図を用いて説明する。サブインデッ
クスファイル200に含まれている見出し語と見出し語
の間に見出し語には用いられないコードであるターミネ
ータ(識別コード)215を設ける。サブインデックス
ファイル200の検索で語より後頭の見出し語を得るた
めに順次見出し語と比較する際に次の見出し語を探す場
合、ターミネータ215を探すことによって次の見出し
語を見つける6マスクインデツクスフアイル100及び
複数のサブインデックスファイルについても同様にして
見出し語をターミネータで区切り、次々に見出し語を得
ることができる。
クスファイル200に含まれている見出し語と見出し語
の間に見出し語には用いられないコードであるターミネ
ータ(識別コード)215を設ける。サブインデックス
ファイル200の検索で語より後頭の見出し語を得るた
めに順次見出し語と比較する際に次の見出し語を探す場
合、ターミネータ215を探すことによって次の見出し
語を見つける6マスクインデツクスフアイル100及び
複数のサブインデックスファイルについても同様にして
見出し語をターミネータで区切り、次々に見出し語を得
ることができる。
本実施例によれば、見出し語の長さを可変長にすること
ができるため、マスタインデックスファ・イル100及
びサブインデックスファイルのメモリ効率向上の効果が
ある。
ができるため、マスタインデックスファ・イル100及
びサブインデックスファイルのメモリ効率向上の効果が
ある。
第10の実施例を以下に説明する。マスタインデックス
ファイル100及びサブインデックスファイル200、
辞書本体300の見出し語がカタカナであった場合、カ
タカナに対応する8ビツト=1バイトのコードは通常1
0100110 (=)〜11011110(=)であ
り、常に最上位ビットが111 IPとなっている。ま
た、該見出し語が英数字であった場合各々の文字に対応
するコードはASCII:l−ドであれば001000
00(=)〜01111111 (=)である。従って
、第8.第9の実施例のように見出し語の区切りに特別
な記号を置くかわりに、見出し語の最後の文字のビット
を操作して見出し語の区切りとすることができる。例え
ば見出し語がカタカナで構成されている場合、各文字の
最上位ビットは常に′″1″であるから見出し語の最後
の文字の最上位ビットを“′の″にすることで文字列の
区切りとする。見出し語を語と比較する場合には見出し
語の最後の文字の最上位ビットを“1”にしてもとのカ
タカナコードに戻す。同様にしてASCIIコード。
ファイル100及びサブインデックスファイル200、
辞書本体300の見出し語がカタカナであった場合、カ
タカナに対応する8ビツト=1バイトのコードは通常1
0100110 (=)〜11011110(=)であ
り、常に最上位ビットが111 IPとなっている。ま
た、該見出し語が英数字であった場合各々の文字に対応
するコードはASCII:l−ドであれば001000
00(=)〜01111111 (=)である。従って
、第8.第9の実施例のように見出し語の区切りに特別
な記号を置くかわりに、見出し語の最後の文字のビット
を操作して見出し語の区切りとすることができる。例え
ば見出し語がカタカナで構成されている場合、各文字の
最上位ビットは常に′″1″であるから見出し語の最後
の文字の最上位ビットを“′の″にすることで文字列の
区切りとする。見出し語を語と比較する場合には見出し
語の最後の文字の最上位ビットを“1”にしてもとのカ
タカナコードに戻す。同様にしてASCIIコード。
シフトJISコード、区点コードも語の識別に関与しな
い固定の値をとるビットを反転させることにより文字列
の区切りを示すことで辞書本体300中のレコードとレ
コード、レコード中の内容と内容の区切りをつけること
ができる。
い固定の値をとるビットを反転させることにより文字列
の区切りを示すことで辞書本体300中のレコードとレ
コード、レコード中の内容と内容の区切りをつけること
ができる。
本実施例によれば区切り記号を追加することなく文字列
そのものに区切りマークを追加し可変長データを扱うこ
とができるので、メモリ効率向上の効果がある。
そのものに区切りマークを追加し可変長データを扱うこ
とができるので、メモリ効率向上の効果がある。
第11の実施例を以下に説明する。辞書本体300の見
出し語に対応する内容に、外部記憶装置14上の特定の
アドレスを示す、アドレスデータを格納する。該アドレ
スデータの指し示す場所には画像情報及び音声情報等見
出し語によって順序を与えられたデータ、大容量のデー
タが格納されている。検索処理によって得た辞書内容で
あるアドレスデータをもとに該データをロードする。
出し語に対応する内容に、外部記憶装置14上の特定の
アドレスを示す、アドレスデータを格納する。該アドレ
スデータの指し示す場所には画像情報及び音声情報等見
出し語によって順序を与えられたデータ、大容量のデー
タが格納されている。検索処理によって得た辞書内容で
あるアドレスデータをもとに該データをロードする。
本実施例によれば、大容量のデータを辞書本体300の
外におくことにより辞書本体300を小さくシ、またブ
ロックに含まれる見出し語数が多くなるので、検索時間
短縮の効果がある。
外におくことにより辞書本体300を小さくシ、またブ
ロックに含まれる見出し語数が多くなるので、検索時間
短縮の効果がある。
第12の実施例を第8図を用いて説明する。辞書本体3
00の第1のブロック310の最後の見出し語319が
“アカス”であり、第2のブロック320の最初の見出
し語321が“アカツキ″であるような場合、第2のブ
ロック320に対応するサブインデックス200の見出
し語212′を“アカツ″′ (識別可能語頭部)とす
る。辞書本体300の第1ブロツク310に含まれる全
ての見出し語は最後の見出し語319の“アカス″より
前順にあり、′アカツ″は゛′アカス”より複類か第2
のブロック220の先頭の見出し語221″アカツキ”
より前順であることから検索手順は既に述べた方法と同
一でよい。すなわち、第nブロック最終の見出し語1
(n 、m)と続く第(n÷)ブロックの先頭の見出し
語I(n+、)に対しI(n、m)<I x<I(n+
、)なる語Ixを上位のサブインデックスファイル又
はマスタインデックスファイル100の見出し語として
用いることができる。
00の第1のブロック310の最後の見出し語319が
“アカス”であり、第2のブロック320の最初の見出
し語321が“アカツキ″であるような場合、第2のブ
ロック320に対応するサブインデックス200の見出
し語212′を“アカツ″′ (識別可能語頭部)とす
る。辞書本体300の第1ブロツク310に含まれる全
ての見出し語は最後の見出し語319の“アカス″より
前順にあり、′アカツ″は゛′アカス”より複類か第2
のブロック220の先頭の見出し語221″アカツキ”
より前順であることから検索手順は既に述べた方法と同
一でよい。すなわち、第nブロック最終の見出し語1
(n 、m)と続く第(n÷)ブロックの先頭の見出し
語I(n+、)に対しI(n、m)<I x<I(n+
、)なる語Ixを上位のサブインデックスファイル又
はマスタインデックスファイル100の見出し語として
用いることができる。
本実施例によれば、見出し語として用いることのできる
語のうち語長の最も短いものを用いることによりサブイ
ンデックスファイルならびにマスタインデックスファイ
ル100のサイズを小さくできるので、省メモリ化の効
果がある。また、本実施例によれば、検索の際に比較す
る語長の短い見出し語を使うことができるので、検索時
間短縮の効果がある。
語のうち語長の最も短いものを用いることによりサブイ
ンデックスファイルならびにマスタインデックスファイ
ル100のサイズを小さくできるので、省メモリ化の効
果がある。また、本実施例によれば、検索の際に比較す
る語長の短い見出し語を使うことができるので、検索時
間短縮の効果がある。
第13の実施例を第9図によって説明する。辞書本体3
00の各ブロックの先頭の見出し語は。
00の各ブロックの先頭の見出し語は。
サブインデックスファイル200の見出し語となった後
辞書本体300から削除されている。検索処理において
、サブインデックスファイル200の検索中に検索する
語と一致する見出し語があった場合、その見出し語に対
応する辞書本体300のブロックの最初に記された辞書
内容を求めることで検索目標の内容を得る。同様にして
サブインデックスファイル200、もしくは第2のイン
デックスファイルの各ブロックの先頭の見出し語を省略
することができる。
辞書本体300から削除されている。検索処理において
、サブインデックスファイル200の検索中に検索する
語と一致する見出し語があった場合、その見出し語に対
応する辞書本体300のブロックの最初に記された辞書
内容を求めることで検索目標の内容を得る。同様にして
サブインデックスファイル200、もしくは第2のイン
デックスファイルの各ブロックの先頭の見出し語を省略
することができる。
本実施例によれば、重なる見出し語を省略することがで
きるので、省メモリ化の効果がある。また1本実施例に
よれば、ブロック先頭の見出し語は上位のサブインデッ
クスファイルもしくはマスタインデックスファイルから
直接参照されるので検索処理が短くなり、平均検索時間
を短縮する効果がある。
きるので、省メモリ化の効果がある。また1本実施例に
よれば、ブロック先頭の見出し語は上位のサブインデッ
クスファイルもしくはマスタインデックスファイルから
直接参照されるので検索処理が短くなり、平均検索時間
を短縮する効果がある。
第14の実施例を第10図を用いて説明する。
辞書1は外部記憶装置14上に第10図に示すように配
置されている。すなわち、マスタインデックスファイル
100は辞書1全体の中央に位置し。
置されている。すなわち、マスタインデックスファイル
100は辞書1全体の中央に位置し。
サブインデックスファイル200はブロックごとに分割
され、各ブロック中の見出し語が示す辞書本体300の
該当ブロックが近くに集まるように辞書本体300を分
割して配置する。従ってマスタインデックスファイル1
00からサブインデックスファイル200の各ブロック
との外部記憶装置14上のアドレスの隔たりの総和が最
小となり、又、サブインデックスファイル200の各ブ
ロックに対して、各々のブロックに含まれる見出し語が
示す辞書本体300の該当ブロックとのアドレスの隔た
りの総和が最小となる構成になる。
され、各ブロック中の見出し語が示す辞書本体300の
該当ブロックが近くに集まるように辞書本体300を分
割して配置する。従ってマスタインデックスファイル1
00からサブインデックスファイル200の各ブロック
との外部記憶装置14上のアドレスの隔たりの総和が最
小となり、又、サブインデックスファイル200の各ブ
ロックに対して、各々のブロックに含まれる見出し語が
示す辞書本体300の該当ブロックとのアドレスの隔た
りの総和が最小となる構成になる。
本実施例によれば、辞書検索処理において外部記憶装置
14から順次ロードするデータが外部記憶装置14上の
近い場所に常にあるため、外部記憶装置14のアクセス
時間を短縮できるので、検索時間を短縮する効果がある
。
14から順次ロードするデータが外部記憶装置14上の
近い場所に常にあるため、外部記憶装置14のアクセス
時間を短縮できるので、検索時間を短縮する効果がある
。
第15の実施例を以下説明する。マスタインデックスフ
ァイル100の検索によりサブインデックスファイル2
00の特定のブロックを導いた時点で1次に導かれる辞
書本体300の特定ブロックが辞書本体300のおよそ
どのあたりに位置するかを予想することができる。すな
わち、サブインデックスファイル200の第1のブロッ
クに含まれる見出し語が示す辞書本体300のブロック
が第1〜第nブロツク、サブインデックスファイル20
0の第2のブロックに含まれる見出し語が示す辞書本体
のブロックが第n++〜第m (m > n ++)と
すると、マスタインデックスファイル100の検索の結
果、サブインデックスファイル200の第2のブロック
が導かれた場合、次に導く辞書本体300のブロックは
第n++〜第mのブロックのうちの何れかである。従っ
て、サブインデックスファイル200の特定ブロックを
外部記憶装置14からロードした後すぐに外部記憶装置
14に辞書本体300の第一2−ブロックをアクセスす
る制御を行う。外部記憶装置14が第一]7−ブロック
をアクセスしている間にCPUIIはさきにロードした
サブインデックスファイル200の特定ブロックの検索
を行う。
ァイル100の検索によりサブインデックスファイル2
00の特定のブロックを導いた時点で1次に導かれる辞
書本体300の特定ブロックが辞書本体300のおよそ
どのあたりに位置するかを予想することができる。すな
わち、サブインデックスファイル200の第1のブロッ
クに含まれる見出し語が示す辞書本体300のブロック
が第1〜第nブロツク、サブインデックスファイル20
0の第2のブロックに含まれる見出し語が示す辞書本体
のブロックが第n++〜第m (m > n ++)と
すると、マスタインデックスファイル100の検索の結
果、サブインデックスファイル200の第2のブロック
が導かれた場合、次に導く辞書本体300のブロックは
第n++〜第mのブロックのうちの何れかである。従っ
て、サブインデックスファイル200の特定ブロックを
外部記憶装置14からロードした後すぐに外部記憶装置
14に辞書本体300の第一2−ブロックをアクセスす
る制御を行う。外部記憶装置14が第一]7−ブロック
をアクセスしている間にCPUIIはさきにロードした
サブインデックスファイル200の特定ブロックの検索
を行う。
本実施例によれば、サブインデックスファイル200の
検索と外部記憶装置14のアクセス動作を並行して行う
ため、検索処理時間を短縮する効果がある。
検索と外部記憶装置14のアクセス動作を並行して行う
ため、検索処理時間を短縮する効果がある。
本発明によれば、ブロックサイズとして限られたメモリ
容量で大容量の辞書を検索できるので。
容量で大容量の辞書を検索できるので。
メモリ効率向上の効果がある。
また本発明によれば、小メモリの小型電子計算機を用い
て大容量辞書の検索ができるので、辞書検索装置の価格
低減の効果がある。
て大容量辞書の検索ができるので、辞書検索装置の価格
低減の効果がある。
更に本発明によれば、多数の見出し語を集めブロック分
割し、各々のブロックの先頭の見出し語を集めて上位の
サブインデックスファイルもしくはマスタインデックス
ファイルを形成するため、上位のサブインデックスファ
イルもしくはマスタインデックスファイルに並ぶ見出し
語は隣合った見出し語同志であっても文字の重なりが少
なくなり、検索の際に比較する文字数が少なくてよいの
で、検索時間を短縮する効果がある。例えば第1図に見
られる辞書において、語11アガナ”の検索の場合、マ
スタインデックスファイルの見出し語との比較は、′ア
”とキ”のみでよい。続くサブインデックスファイルで
は“ア”、′アカ”。
割し、各々のブロックの先頭の見出し語を集めて上位の
サブインデックスファイルもしくはマスタインデックス
ファイルを形成するため、上位のサブインデックスファ
イルもしくはマスタインデックスファイルに並ぶ見出し
語は隣合った見出し語同志であっても文字の重なりが少
なくなり、検索の際に比較する文字数が少なくてよいの
で、検索時間を短縮する効果がある。例えば第1図に見
られる辞書において、語11アガナ”の検索の場合、マ
スタインデックスファイルの見出し語との比較は、′ア
”とキ”のみでよい。続くサブインデックスファイルで
は“ア”、′アカ”。
゛″アビで順関係は判別可能であり、辞書本体において
、″アカ”、′アガナ″の比較で所与の見出しを得る。
、″アカ”、′アガナ″の比較で所与の見出しを得る。
もし、辞書本体の見出し語を最初から検索したとすれば
第1ブロツクの全ての見出し、語の頭2文字を検査する
ことになる。
第1ブロツクの全ての見出し、語の頭2文字を検査する
ことになる。
加えて本発明によれば、順序関係もしくは大小関係の規
定されたデータであれば見出し語に用いることができ、
カタカナ見出し語(アイウェオ順)。
定されたデータであれば見出し語に用いることができ、
カタカナ見出し語(アイウェオ順)。
英語見出し語(A B C順)、数字見出し語(123
順)などに利用することができる。どのような検索すべ
き文字列でも、常にマスタインデックスファイル、サブ
インデックスファイル、辞書データファイルを各1回計
3回アクセスするだけで目的とする見出し語を検索する
ことができ、高速に大容量辞書データファイルを検索す
ることができる。
順)などに利用することができる。どのような検索すべ
き文字列でも、常にマスタインデックスファイル、サブ
インデックスファイル、辞書データファイルを各1回計
3回アクセスするだけで目的とする見出し語を検索する
ことができ、高速に大容量辞書データファイルを検索す
ることができる。
また、その際に必要とするバッファメモリの大きさは、
マスタインデックスファイル(1ブロツり)、サブイン
デックスファイル(該当すべき1ブロツク)、辞書デー
タファイル(該当すべき1ブロツク)を読み出すのみ各
1ブロツク分必要とし、その都度バッファメモリの内容
を書き換えて共通に使用することにより、1ブロツク分
の少ないバッファメモリの大きさで充分本発明を実現で
きる。
マスタインデックスファイル(1ブロツり)、サブイン
デックスファイル(該当すべき1ブロツク)、辞書デー
タファイル(該当すべき1ブロツク)を読み出すのみ各
1ブロツク分必要とし、その都度バッファメモリの内容
を書き換えて共通に使用することにより、1ブロツク分
の少ないバッファメモリの大きさで充分本発明を実現で
きる。
1ブロツクの大きさを2048バイトとし、平均見出し
語長を5バイトとすると、1ブロツクのマスタインデッ
クスファイルで、410ブロツクのサブインデックスフ
ァイルを管理することができ、さらに、サブインデック
スファイルの各ブロックがそれぞれ辞書データファイル
の410ブロツク分を管理することができる。すなわち
、1ブロツクのマスタインデックスファイルで、168
100ブロツク(344メガバイト)の大容量辞書デー
タファイルを管理することができる。仮に2ブロツク分
のバッファメモリを用意したとすると、同様な計算によ
り671000ブロツク(2゜7ギガバイト)もの大容
量辞書データファイルを管理することができるなどの効
果がある。
語長を5バイトとすると、1ブロツクのマスタインデッ
クスファイルで、410ブロツクのサブインデックスフ
ァイルを管理することができ、さらに、サブインデック
スファイルの各ブロックがそれぞれ辞書データファイル
の410ブロツク分を管理することができる。すなわち
、1ブロツクのマスタインデックスファイルで、168
100ブロツク(344メガバイト)の大容量辞書デー
タファイルを管理することができる。仮に2ブロツク分
のバッファメモリを用意したとすると、同様な計算によ
り671000ブロツク(2゜7ギガバイト)もの大容
量辞書データファイルを管理することができるなどの効
果がある。
第1図は本発明の一実施例を示すブロック図、第2図、
第3図は本発明の一実施例の辞書構造を説明するための
説明図、第4図は本発明の他の実施例を示すブロック図
、第5図、第6図、第7図第8図、第9図、第10図は
それぞれ本発明の別の実施例を説明する説明図である。 1・・・辞書、10・・・辞書データ検索装置、11・
・・CPU (中央処理袋[)、13・・・内部メモリ
(第2の記憶装置af)、14・・・外部記憶装置(第
1の記憶袋[)、100・・・マスタインデックスファ
イル。 200・・・サブインデックスファイル、300・・・
辞書本体(辞書データファイル)。 /・−゛”〜
第3図は本発明の一実施例の辞書構造を説明するための
説明図、第4図は本発明の他の実施例を示すブロック図
、第5図、第6図、第7図第8図、第9図、第10図は
それぞれ本発明の別の実施例を説明する説明図である。 1・・・辞書、10・・・辞書データ検索装置、11・
・・CPU (中央処理袋[)、13・・・内部メモリ
(第2の記憶装置af)、14・・・外部記憶装置(第
1の記憶袋[)、100・・・マスタインデックスファ
イル。 200・・・サブインデックスファイル、300・・・
辞書本体(辞書データファイル)。 /・−゛”〜
Claims (1)
- 【特許請求の範囲】 1、複数の見出し語および前記見出し語に対応するデー
タからなる辞書データファイルを記録した第1の記憶装
置と、前記見出し語を入力し前記見出し語に対する検索
結果を表示するための入出力装置と、前記第1の記憶装
置と前記入出力装置を制御する中央処理装置と、前記中
央処理装置の動作を決定するプログラムや前記第1の記
憶装置からのデータを一時格納するための第2の記憶装
置とからなる辞書データ検索装置において、前記辞書デ
ータファイルの各ブロックの先頭見出し語を集めたサブ
インデックスファイルを作成し、さらに前記サブインデ
ックスファイルの各ブロックの先頭見出し語を集めたマ
スタインデックスファイルを作成して、前記第1の記憶
装置の前記辞書データファイルを検索することを特徴と
する辞書データ検索方式。 2、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記マスタインデックスファイルを前記第2の
記憶装置に常駐した辞書データ検索方式。 3、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記ブロック長を前記第1の記憶装置における
物理的最小アクセス単位(セクター)もしくは前記最小
アクセス単位の整数倍とした辞書データ検索方式。 4、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記サブインデックスファイルの各ブロックの
先頭見出し語のみを集めた第2のサブインデックスファ
イル、さらに同様な手法で生成した複数個のサブインデ
ックスファイルから構成されている辞書データ検索方式
。 5、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記サブインデックスファイルの各ブロックの
先頭に、前記各ブロックの先頭見出し語が、前記サブイ
ンデックスファイル中の何番目の見出し語であるかを示
すオフセット値を記録した辞書データ検索方式。 6、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記マスタインデックスファイルおよび前記サ
ブインデックスファイルの各ブロックの先頭に、その各
ブロックの先頭見出し語が格納されている前記辞書デー
タファイルの該当する物理アドレスもしくは論理アドレ
スを示すアドレス値を記録した辞書検索装置。 7、特許請求の範囲第1項もしくは第4項記載の辞書デ
ータ検索方式において、前記辞書データファイルの各ブ
ロックの先頭に、インデックスファイルと区別するため
の識別コードを記録した辞書データ検索方式。 8、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記辞書データファイルの各見出し語の次に、
次の見出し語との相対アドレス値を記録した辞書データ
検索方式。 9、特許請求の範囲第1項記載の辞書データ検索方式に
おいて、前記サブインデックスファイルおよび前記マス
タインデックスファイルの各見出し語の最後に次の見出
し語と区別するための識別コードを記録した辞書データ
検索方式。 10、特許請求の範囲第1項記載の辞書データ検索方式
において、前記サブインデックスファイルおよび前記マ
スタインデックスファイルの各見出し語の最後の文字コ
ードを、次の見出し語との区別をするため、前記各見出
し語の中で常に変化しない固定ビットを反転して記録し
た辞書データ検索方式。 11、特許請求の範囲第1項記載の辞書データ検索方式
において、前記辞書データファイルの前記見出し語に対
応するデータとして、前記第1の記憶装置の物理アドレ
スもしくは論理アドレスを示すアドレス値列を記録した
辞書データ検索方式。 12、特許請求の範囲第1項記載の辞書データ検索方式
において、前記マスタインデックスファイルおよび前記
サブインデックスファイルの各見出し語を他の見出し語
と識別可能な語頭部のみで構成した辞書データ検索方式
。 13、特許請求の範囲第1項記載の辞書データ検索方式
において、前記辞書データファイルおよび前記サブイン
デックスファイルの各ブロックの先頭見出し語を省略し
た辞書データ検索方式。 14、特許請求の範囲第1項記載の辞書データ検索方式
において、前記マスタインデックスファイルおよび前記
サブインデックスファイルを前記第1の記憶装置に記憶
した辞書データ検索方式。 15、特許請求の範囲第14項記載の辞書データ検索方
式において、前記マスタインデックスファイルを前記辞
書データファイルをほぼ2分するブロック位置に、また
前記サブインデックスファイルの各ブロックを前記辞書
データファイルの該当するブロックの近傍にそれぞれ配
置した辞書データ検索方式。 16、特許請求の範囲第14項または第1項記載の辞書
データ検索方式において、前記マスタインデックスファ
イルをアクセス直後に前記サブインデックスファイルを
ほぼ2分するブロック位置に、また前記サブインデック
スファイルをアクセス直後に前記辞書データファイルの
該当するブロックの近傍に、あらかじめアクセス(シー
ク)しておく辞書データ検索方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61039215A JPH0721805B2 (ja) | 1986-02-26 | 1986-02-26 | 辞書デ−タ検索方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61039215A JPH0721805B2 (ja) | 1986-02-26 | 1986-02-26 | 辞書デ−タ検索方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62197822A true JPS62197822A (ja) | 1987-09-01 |
| JPH0721805B2 JPH0721805B2 (ja) | 1995-03-08 |
Family
ID=12546912
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61039215A Expired - Lifetime JPH0721805B2 (ja) | 1986-02-26 | 1986-02-26 | 辞書デ−タ検索方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0721805B2 (ja) |
-
1986
- 1986-02-26 JP JP61039215A patent/JPH0721805B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0721805B2 (ja) | 1995-03-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5274805A (en) | Method of sorting and compressing data | |
| US4959785A (en) | Character processing system with spelling check function that utilizes condensed word storage and indexed retrieval | |
| EP0127753A2 (en) | Method for executing a distribution sort | |
| US7231383B2 (en) | Search engine for large-width data | |
| JPH11316764A (ja) | 構造化文書の検索方法および装置および構造化文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| JPH08129551A (ja) | ハッシュ方式 | |
| JPH05101102A (ja) | 検索装置 | |
| JPH0823865B2 (ja) | デ−タ検索方法および装置 | |
| JPS62197822A (ja) | 辞書デ−タ検索方式 | |
| JP3552318B2 (ja) | 文書検索方法およびシステム | |
| JP2880199B2 (ja) | 記号列検索方法および検索装置 | |
| JPS6337425A (ja) | 辞書デ−タ検索装置 | |
| JP3288063B2 (ja) | 可変長データの格納および参照システム | |
| JPH08314950A (ja) | テキストの検索方法及び装置 | |
| JPH0831096B2 (ja) | 単語辞書装置 | |
| JP2604787B2 (ja) | 二次元データ格納方式 | |
| JP3578501B2 (ja) | 文書検索方法及び装置 | |
| JPS6143338A (ja) | 連想技術を使用して稀薄なデータベースをサーチする方法 | |
| JPH0315772B2 (ja) | ||
| JP2961888B2 (ja) | 用語辞書による文書検索システム | |
| JPS6118071A (ja) | 辞書検索方式 | |
| JPH06295313A (ja) | インデックス付き検索ファイルのデータ検索装置 | |
| JPH03127254A (ja) | 単語検索装置 | |
| JPH0991304A (ja) | 情報検索方法、情報検索システム及び情報検索用記憶媒体 | |
| JPH0969113A (ja) | 文書管理方式 |