JPS62166422A - Sorting method for variable length record - Google Patents
Sorting method for variable length recordInfo
- Publication number
- JPS62166422A JPS62166422A JP854886A JP854886A JPS62166422A JP S62166422 A JPS62166422 A JP S62166422A JP 854886 A JP854886 A JP 854886A JP 854886 A JP854886 A JP 854886A JP S62166422 A JPS62166422 A JP S62166422A
- Authority
- JP
- Japan
- Prior art keywords
- data
- area
- value
- smaller
- buffer
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【発明の詳細な説明】
〈産業上の利用分野〉
本発明はワードプロセッサの辞書変換などに利用されて
、可変長のレコードを決められた配列の順序に従ってソ
ートさせる方法に関する。DETAILED DESCRIPTION OF THE INVENTION <Field of Industrial Application> The present invention relates to a method for sorting variable-length records according to a predetermined arrangement order, which is used for dictionary conversion in a word processor.
〈従来の技術〉
従来のソート方法としては、例えば第4図に示すような
データの比較のために用いるワークエリア、ワークファ
イルの大きさを、データの取り得る最大値、、esを単
位長として用いるものがある。<Prior art> As a conventional sorting method, for example, as shown in Fig. 4, the size of the work area and work file used for data comparison is set to the maximum value that the data can take, and es is the unit length. There is something to use.
〈発明が解決しようとする問題点〉
しかしながら、このよう力従来のソート方法にあっては
、ワークエリア、ワークファイルの大きさをデータの取
り得る最大値を単位長として用いているので、全レコー
ドサイズに膨大な大きさのワークエリア、ワークファイ
ルを必要とし、それ故、エリアの無駄使い、外部記憶装
置への書き出し時間の増大という欠点があった。<Problem to be solved by the invention> However, in this conventional sorting method, the maximum possible value of the data for the size of the work area and work file is used as the unit length. This method requires a huge work area and work file, which has the disadvantage of wasting space and increasing the time required to write data to an external storage device.
本発明の目的は、使用するワークエリアを必要最小限に
する事にある。An object of the present invention is to minimize the work area used.
〈問題点を解決するための手段〉
この目的を達成するため、本発明はデータのソートにお
いて、
順次入力されてくるデータを、ある決められた配列の大
小によって比較し、小さい方のデータを規定の大きさの
ワークエリアヘセットしていき、ワークエリアが規定の
大きさに達した時に、その内容を外部記憶装置へ書き出
I2、
最終的に全ての可変長のデータが外部記憶装置へ書き出
された時、ある決められた配列に従ってソートされてい
る、という事を特徴としたものである。<Means for solving the problem> In order to achieve this object, the present invention compares sequentially input data according to the size of a certain predetermined arrangement when sorting data, and specifies the smaller data. When the work area reaches the specified size, the contents are written to the external storage device I2, and finally all variable length data is written to the external storage device. It is characterized by being sorted according to a certain predetermined arrangement when it is released.
く作用〉
本発明は可変長レコードをソートする事により、使用す
るワークエリアを必要′最小限にしたものである。Effects> The present invention minimizes the work area required by sorting variable length records.
〈実施例〉 以下、本発明を図面に基づいて説明する。<Example> Hereinafter, the present invention will be explained based on the drawings.
第1図及び第2図は、本発明の実施例を示すフローチャ
ートである。ステップaでデータを入力し、ステップb
の比較エリアAへその値をセットする。ただし、一番最
初のデータに限り、ステ。1 and 2 are flowcharts showing an embodiment of the present invention. Enter data in step a and step b
Set that value in comparison area A of . However, only the first data can be used.
プCの比較エリアBヘデータをセットする。ステップd
では比較エリアBのデータと比較エリアAのデータを比
較し、比較エリアBのデータの方が小さいか、または等
しい事を確認する。確認できたならば、ステップeで比
較エリアBの値をbuffer(ロ)ヘセットする。そ
の後、ステ、プgで比較エリアAの値を比較エリアBへ
移動させる。Set the data in comparison area B of step C. step d
Then, compare the data in comparison area B with the data in comparison area A, and confirm that the data in comparison area B is smaller or equal. If confirmed, the value of comparison area B is set to buffer (b) in step e. Thereafter, the value in comparison area A is moved to comparison area B in steps and g.
ところで、ステップdで比較エリアへの値の方が比較エ
リアBの値より小さがった場合には、例外処理としてス
テ、プfを行なう。ステップfでは、比較エリアAに入
っている単語データのnバイト目が、比較エリアBの単
語データより小さいという事を確認し、その単語をbu
ffer(n)ヘセットする。By the way, if the value in the comparison area B is smaller than the value in the comparison area B in step d, steps and f are performed as exception handling. In step f, it is confirmed that the n-th byte of the word data in comparison area A is smaller than the word data in comparison area B, and the word is
Set to ffer(n).
最後にステップhでデータが残っているかどうかを確認
し、残っていればステップaへ戻り、残っていなければ
終了する。Finally, in step h, it is checked whether there is any data left, and if there is, the process returns to step a, and if there is no data left, the process ends.
この結果、buffer([、buffer(1) 、
buffer(2) 。As a result, buffer([, buffer(1),
buffer(2).
・・−、buffer (n)の中では、データはすべ
である決められた配列の順(この場合はアスキーコード
順)にソートされている。..., buffer (n), all data is sorted in a predetermined order (in this case, in ASCII code order).
次に、第2回のステップiでbuffer@−buff
er(n)の中から順番に1つずつデータを比較エリア
Cに入る。ただし、一番最初のデータに限りステップに
の比較エリアDヘセットする。ステップ1では比較エリ
アCの値と比較エリアDの値とを比較し、比較エリアD
の値の方が小さければステップmへ、まだ、比較エリア
Cの方の値が小さければステップ1′で比較エリアCの
値を比較エリアDへ移動させ、その後ステップmへ行く
。Next, in the second step i, buffer@-buff
Data are entered into comparison area C one by one from er(n). However, only the first data is set to the comparison area D of the step. In step 1, the value of comparison area C and the value of comparison area D are compared, and
If the value in the comparison area C is smaller, the process proceeds to step m. If the value in the comparison area C is still smaller, the value in the comparison area C is moved to the comparison area D in step 1', and then the process proceeds to step m.
ステップmではbuffer (n)の竿が入った事を
確認、つまり、buffer @ 〜buffer (
n)のおのおのの先頭のデータを1通り比較し、そ、の
中の最小のデータが比較エリアDに入っていれば、ステ
ップnへ行く。In step m, confirm that the rod of buffer (n) has entered, that is, buffer @ ~ buffer (
The first data of each of n) is compared once, and if the smallest data among them is in the comparison area D, the process goes to step n.
ステップnでは、比較エリアDに入っているデータをワ
ークエリアへセットする時、ワークエリアに空き領域が
あるかどうかを調べる。空き領域がなければ、ステップ
0でワークエリアの内容を外部記憶装置へ書き出1/
、ステップpでワークエリアをクリアする。その後、ス
テップqで比較エリアDのデータをワークエリアへセン
トする。また、ステップnで空き領域があるという事で
あれば、ステップ0、ステップpを飛ばして、ステップ
qを行なう。In step n, when setting the data in the comparison area D to the work area, it is checked whether there is any free space in the work area. If there is no free space, the contents of the work area are written to the external storage device in step 0.
, clear the work area in step p. Thereafter, in step q, the data in comparison area D is sent to the work area. Further, if it is determined that there is a free area in step n, step 0 and step p are skipped, and step q is performed.
最後にステップrでデータが残っていればステ7プiへ
戻り、残っていなければ、ワークエリアの内容を外部記
憶装置へ1き出し終了する。Finally, in step r, if data remains, the process returns to step 7i, and if no data remains, the contents of the work area are written out to the external storage device and the process is completed.
以上の結果、buffer (n 〜buffer (
n)のn+1個のファイルの中のすべての値がある決め
られた配列の順序(この場合はアスキーコード順)にソ
ートされることになる。As a result of the above, buffer (n ~ buffer (
All values in the n+1 files of n) are sorted in a predetermined array order (in this case, ASCII code order).
第3図は、固定長レコードの構造の具体例である。この
場合は、ワードプロ方ツサの辞書の1単語の例である。FIG. 3 is a specific example of the structure of a fixed-length record. In this case, it is an example of one word from WordPro's dictionary.
これを可変長レコードにする方法を以下に示す。(この
処理は、第1回のステップe1ステップfのバッファへ
のデータセットの所で行なわれる。)
8は28バイトで構成された「読み」の情報領域である
。「読み」の情報以外は# 9!591まで’pp’で
埋められている。そこで何バイト目が@g15p”であ
るかをサーチし、そのバイトから28バイトまでの”p
y5”を削除する。次に、tは32バイトで構成された
「漢字」の情報領域である。上述と同様にして、”y5
m”を削除する。最後にUは11バイトで構成された「
文法情報」の領域である。これも上述の2つと同様に、
X″を削除する。このように1釣ρを削除する事によっ
て、75バイトの固定長のレコードが可変長のレコード
となる。The following shows how to make this a variable length record. (This process is performed at the time of setting data to the buffer in the first step e1 and step f.) 8 is a "read" information area consisting of 28 bytes. Information other than the "reading" information is filled with 'pp' up to #9!591. Then, search what byte is "@g15p" and search for "p" from that byte to 28 bytes.
y5" is deleted. Next, t is a "Kanji" information area consisting of 32 bytes. In the same way as above, “y5
m". Finally, U consists of 11 bytes "
This is the area of ``grammatical information''. This is similar to the above two,
X'' is deleted. By deleting one change ρ in this way, a fixed length record of 75 bytes becomes a variable length record.
第2図、ステップnで空き領域のチェックを行なってい
るが、これはワークエリアの後方から” 1D93k
’をサーチする事によって、あとどの位のエリアが残っ
ているかを知る事ができる。これは、第5図に示されて
いる。In Figure 2, the free space is checked in step n, but this is done from the rear of the work area.'' 1D93k
By searching ', you can find out how much area remains. This is shown in FIG.
〈発明の効果〉
以上説明してきたように、本発明によれば、順次入力さ
れてくるデータを、ある決められた配列の大小によって
比較し、
小さい方のデータを規定の大きさのワークエリアヘセッ
トしていき、
ワークエリアが規定の大きさに達した時に、その内容を
外部記憶装置へ書き出すようにしたため、可変長レコー
ドをソートする時に使用するワークエリアを必要最小限
にできるという効果が得られる。<Effects of the Invention> As explained above, according to the present invention, sequentially input data is compared based on the size of a certain predetermined array, and the smaller data is transferred to a work area of a predetermined size. When the work area reaches a specified size, the contents are written to the external storage device, which has the effect of minimizing the work area used when sorting variable-length records. It will be done.
第1図、第2同社本発明の詳細な説明するフローチャー
ト、第3図はワードプロセッサの辞書の構造例、第4図
は従来技術を用いてソートされた結果のデータの並び方
、第5図は本発明方法を用いてソートされた結果のデー
タの並び方の詳細を示す。
特開日RG2−166422 (4)第3 図
弗 4 図
第5 図Figures 1 and 2 are flowcharts explaining the company's invention in detail, Figure 3 is an example of the structure of a dictionary for a word processor, Figure 4 is how the data is arranged as a result of sorting using the prior art, and Figure 5 is the book The details of how data is arranged as a result of sorting using the invention method will be shown. Japanese Patent Publication No. RG2-166422 (4) Figure 3 Figure 4 Figure 5
Claims (1)
ある決められた配列の大小によって比較し、小さい方の
データを規定の大きさのワークエリアへセットしていき
、ワークエリアが規定の大きさに達した時、その内容を
外部記憶装置へ書き出し、最終的に全ての可変長のデー
タが外部記憶装置へ書き出された時、ある決められた配
列に従ってソートされる事を特徴とした、可変長レコー
ドのソート方法。When sorting data, sequentially input data is compared based on the size of a certain array, and the smaller data is set in a work area of a specified size until the work area reaches the specified size. A variable-length record characterized in that when the data is written to an external storage device, the contents are written to an external storage device, and when all variable-length data is finally written to the external storage device, it is sorted according to a predetermined arrangement. How to sort.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP854886A JPS62166422A (en) | 1986-01-18 | 1986-01-18 | Sorting method for variable length record |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP854886A JPS62166422A (en) | 1986-01-18 | 1986-01-18 | Sorting method for variable length record |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62166422A true JPS62166422A (en) | 1987-07-22 |
Family
ID=11696185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP854886A Pending JPS62166422A (en) | 1986-01-18 | 1986-01-18 | Sorting method for variable length record |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62166422A (en) |
-
1986
- 1986-01-18 JP JP854886A patent/JPS62166422A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5117495A (en) | Method of sorting data records | |
JPH06508456A (en) | Data compression using multiple levels | |
JPH02178730A (en) | Internal sorting system using dividing method | |
US6424970B1 (en) | Sorting system and method executed by plural computers for sorting and distributing data to selected output nodes | |
JPS60218142A (en) | Dynamic format conversion system of data | |
US5873001A (en) | Method for rapid expansion of multi-byte sorting weights table to include user supplied sorting weights | |
JPS62166422A (en) | Sorting method for variable length record | |
JPS6266326A (en) | Array processing system for japanese data | |
JP3365833B2 (en) | Adaptive surrogate information retrieval method and apparatus | |
JPS63138442A (en) | Restoring and processing system for deleted file | |
JPS58166440A (en) | Menue screen processing system | |
JPS62121532A (en) | Data retrieving method | |
JPH01136252A (en) | File structure | |
JPH07101382B2 (en) | Margin processing device | |
JP2507399B2 (en) | Database equipment | |
McGoldrick | Program manual for the Data Director editor | |
JPS63253431A (en) | Retrieving system for data base of inverted structure | |
JPH02216554A (en) | System for reforming index order forming file | |
JPS62226346A (en) | File control system | |
JPH0275018A (en) | Merge processing method | |
JPS621029A (en) | Chain searching system | |
JPH04178726A (en) | Mass storage data classification processing system | |
JPH03259329A (en) | Key relative address classifying system for bulk data | |
JPS6339029A (en) | Production of data base | |
JPH02136969A (en) | Retrieving system for character string |