JPS63317829A - Data division processing method - Google Patents
Data division processing methodInfo
- Publication number
- JPS63317829A JPS63317829A JP15402887A JP15402887A JPS63317829A JP S63317829 A JPS63317829 A JP S63317829A JP 15402887 A JP15402887 A JP 15402887A JP 15402887 A JP15402887 A JP 15402887A JP S63317829 A JPS63317829 A JP S63317829A
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- length
- processing
- area
- 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
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000000034 method Methods 0.000 claims description 23
- 230000015654 memory Effects 0.000 abstract description 4
- 230000003936 working memory Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【発明の詳細な説明】
〔概 要〕
可変長のブロックが連続したデータを、一定長ごとに取
り出して、ブロックごとの所定の処理を逐次行う計算機
のデータ処理方法に関し、1ブロツクが分割されて取り
出された場合の処理を、比較的小さな作業記憶領域を使
用して、効率良く行えるようにするデータ分割処理方法
を目的とし、
可変長のデータのブロックが連続してなるデータを、所
定長ごとに分割して順次処理する計算機において、各該
ブロックの先頭に設ける所定長の管理領域内の所定位置
に、当該ブロン°りのデータ長を表示し、該所定長ごと
に分割したデータの最柊の該ブロックが分割されている
場合に、該分割されたブロックの前半部に該データ長の
表示を含む場合には、該データ長の表示によって定まる
データ長の記憶領域を準備し、該前半部によって該デー
タ長の表示を含まない場合には、該前半部に該管理領域
の後半部分を結合して、該管理領域の該データの長の表
示によって定まるデータ長の記憶領域を準備し、該準備
した記憶領域上で、該前半部に該ブロックの分割された
後半部分を結合して、該ブロックの所要の処理を行うよ
うに構成する。[Detailed Description of the Invention] [Summary] Concerning a computer data processing method in which data consisting of successive blocks of variable length is extracted for each fixed length and predetermined processing is sequentially performed for each block, one block is divided. The purpose of this data division processing method is to efficiently process data when it is retrieved using a relatively small working memory area. In a computer that divides the data into blocks and processes them sequentially, the length of the data for each block is displayed at a predetermined position in a management area of a predetermined length provided at the beginning of each block, and the maximum length of the data divided for each predetermined length is displayed. If the block is divided and the first half of the divided block includes an indication of the data length, prepare a storage area with a data length determined by the indication of the data length, and store the first half of the divided block. If the display does not include the display of the data length, the second half of the management area is combined with the first half to prepare a storage area of the data length determined by the display of the data length of the management area. On the prepared storage area, the divided second half of the block is combined with the first half to perform the required processing of the block.
本発明は、計算機において、可変長のブロックが連続し
たデータを、一定長ごとに取り出して、逐次ブロックご
との所定の処理を行う場合の、データ分割処理方法に関
する。The present invention relates to a data division processing method for extracting consecutive variable-length blocks of data every fixed length in a computer and sequentially performing predetermined processing for each block.
〔従来の技術と発明が解決しようとする問題点〕第3図
は計算機の構成例を示すブロック図である。図の処理装
置1で実行される処理プログラム2は、外部記憶装置3
に保持されるデータ4を、処理装置1のメモリ上の作業
記憶領域5へ、順次一定データ長づつ読み込んで処理し
、例えば処理結果のデータを外部記憶装置3へ出力デー
タ6として順次出力する処理を行う。[Prior art and problems to be solved by the invention] FIG. 3 is a block diagram showing an example of the configuration of a computer. A processing program 2 executed by the processing device 1 shown in the figure is stored in an external storage device 3.
A process of sequentially reading and processing data 4 held in a memory into a working storage area 5 on the memory of the processing device 1 in constant data length increments, and sequentially outputting the processed data as output data 6 to the external storage device 3, for example. I do.
例えばデータ4が、ある仕様で図形を表すデータであっ
て、処理プログラム2がそれを別の仕様の図形データに
変換する処理を行う場合に、データ4は個々の図形を表
すデータのブロックからなり、処理プログラム2はその
各ブロックを、順次ブロックごとに解析し変換する。For example, when the data 4 is data representing a figure according to a certain specification, and the processing program 2 performs processing to convert it into figure data according to another specification, the data 4 consists of blocks of data representing individual figures. , the processing program 2 sequentially analyzes and converts each block.
第4図(a)に示すように、このようなデータ4を構成
する各ブロック10a〜10gは、一般にそれぞれのブ
ロックで規定する図形の種類等によって異なるデータ長
を有する、いわゆる可変長のブロックであり、ブロック
の境界は、連続する各ブロックの内容を順次たどらない
と決定できない。As shown in FIG. 4(a), the blocks 10a to 10g constituting such data 4 are generally so-called variable length blocks having different data lengths depending on the type of figure defined in each block. Yes, block boundaries cannot be determined without sequentially tracing the contents of each consecutive block.
従って、作業記憶領域5に入る長さの°一定データ長を
読み込んだ場合に、その末尾はブロックの境界と必ずし
も一致せず、多くの場合に例えば第4図山)に示すよう
に、第4図(a)のブロック10eの前半部11が分割
されて入るようになる。Therefore, when reading a constant data length that fits into the working memory area 5, the end of the data does not necessarily coincide with the block boundary, and in many cases, as shown in Figure 4, The first half 11 of the block 10e in Figure (a) is divided into sections.
その場合には、ブロックの前半部11の処理に際し、後
続のブロック10dの後半部がら始まり、例えばブロッ
ク10gの前半部12までの、前記と同じ長さのデータ
を、前半部11につなぐように作業記憶領域5に読み込
んで、ブロック1()d及びそれ以後の処理を行う。In that case, when processing the first half 11 of the block, data of the same length as described above starting from the second half of the subsequent block 10d and ending with the first half 12 of the block 10g, for example, is connected to the first half 11. The data is read into the working storage area 5, and processing for block 1()d and subsequent blocks is performed.
即ち、第5図の処理の流れに示すように、処理ステップ
20で次に処理する一定長のデータを読み込み、処理ス
テップ21で先頭から順に1ブロツクを例えば変換し出
力する処理を行い、完了した場合には処理ステップ22
を経て処理ステップ21に戻るループで順次ブロックを
処理し、作業記憶領域に次に処理するブロックが無くな
れば処理ステップ23で識別して、なお処理すべきデー
タがあれば処理ステップ20に戻る。That is, as shown in the processing flow in FIG. 5, in processing step 20, a certain length of data to be processed next is read, and in processing step 21, processing is performed to convert and output one block in order from the beginning, and the process is completed. If so, processing step 22
The blocks are sequentially processed in a loop that returns to processing step 21. If there is no block to be processed next in the working storage area, it is identified in processing step 23, and if there is still data to be processed, processing returns to processing step 20.
ブロックを処理した結果、ブロックが分割されていて、
処理を完了できない場合には処理ステツプ24に進み、
処理中のブロック前半部を作業記憶域の先頭に複写し、
それに続(位置から次データを読み込むように設定して
、処理ステップ20に戻るので、こ\で分割されたブロ
ックの後半部に始まる一定長データが読み込まれて、そ
の先頭で先に読んだ前半部と結合して完全なブロックが
でき、処理ステップ21でそのブロックの処理から再開
される。As a result of processing the block, the block is divided,
If the process cannot be completed, proceed to process step 24;
Copy the first half of the block being processed to the beginning of working storage,
Subsequently, the next data is set to be read from the position and returns to processing step 20, so the fixed length data starting from the second half of the divided block is read, and at the beginning, the first half that was read first is read. The blocks are combined to form a complete block, and processing of that block is resumed in processing step 21.
以上の処理により、作業記憶領域5はデータ読み込み単
位の一定長に、最大のブロックの大きさ分の余裕を持っ
た領域を確保する必要があり、所要記憶領域が大きくな
るという問題がある。As a result of the above processing, it is necessary to secure an area in the working storage area 5 that has a certain length for the data read unit and a margin corresponding to the size of the largest block, resulting in a problem that the required storage area becomes large.
本発明は、前記のよ、うに1ブロツクが分割されて取り
出された場合の処理を、比較的小さな作業記憶領域を使
用して、効率良く行えるようにするデータ分割処理方法
を目的とする。The object of the present invention is to provide a data division processing method that allows efficient processing when one block is divided and retrieved as described above, using a relatively small working storage area.
第1図は、本発明の構成を示す処理の流れ図である。 FIG. 1 is a process flowchart showing the configuration of the present invention.
図は連続するブロックからなるデータの処理の流れを示
し、30〜38は処理ステップである。The figure shows the flow of processing data consisting of consecutive blocks, and 30 to 38 are processing steps.
処理されるデータは、複数の可変長のブロックからなり
、各ブロックはその先頭に所定長の管理領域を持ち、該
管理領域に当該ブロックのデータ長を表示する部分を持
つものとする。It is assumed that the data to be processed consists of a plurality of variable-length blocks, each block having a management area of a predetermined length at the beginning thereof, and a part for displaying the data length of the block in the management area.
処理装置は、処理ステップ30で一定データ長のデータ
を作業記憶領域に読み込み、作業記憶領域上の各ブロッ
クを順次処理して、完全なブロックについては、処理ス
テップ31〜33のループにより従来と同様に処理を進
める。In processing step 30, the processing device reads data of a fixed data length into the working storage area, sequentially processes each block on the working storage area, and completes the block by performing a loop of processing steps 31 to 33 as before. Proceed with the process.
処理ステ□ツブ31で、分割して読み込まれたブロック
を処理した場合には、処理ステップ34〜38によって
、前記管理領域のデータ長表示を知り、その値で定まる
データ長のブロック後半部を読み込んで、作業記憶領域
上にブロックを完成し、処理ステップ31でその1ブロ
ツクの処理を行う。When the divided and read block is processed in the processing step 31, the data length display of the management area is known in the processing steps 34 to 38, and the second half of the block with the data length determined by that value is read. Then, a block is completed in the working memory area, and in processing step 31, that one block is processed.
以上の処理方法により、分割されたブロックの処理のた
めに作業記憶領域を太き(取る必要が無くなる。The above processing method eliminates the need to enlarge the working memory area for processing divided blocks.
複数の可変長のブロックからなる図形データ等の処理に
おいて、各ブロックは第2図に示すように、その先頭に
所定長の管理領域40を設けて、その後にブロックの本
体41が続く構成とし、管理領域40にはその先頭に例
えばそのブロックで規定するデータの形式等を示す制御
情報部分42を設け、それに続いて当該ブロックのデー
タ長を表示するデータ長表示43を持つものとする。In processing graphic data etc. consisting of a plurality of blocks of variable length, each block is configured such that a management area 40 of a predetermined length is provided at the beginning of the block, followed by a main body 41 of the block, as shown in FIG. The management area 40 is provided with a control information section 42 at the beginning of the control information section 42 indicating, for example, the format of data defined in the block, followed by a data length display 43 that displays the data length of the block.
管理領域40の上記所定長は、一定のデータ長(例えば
4バイト長)とするか、又は例えば所要データ長の短い
ものが多い場合等には、例えば2バイトと4バイトの2
種類とし、上記制御情報部分42に管理領域40の大き
さを識別できる情報を含むものとする。The above-mentioned predetermined length of the management area 40 may be a fixed data length (for example, 4 bytes), or if the required data length is often short, for example, 2 bytes and 4 bytes.
The control information portion 42 includes information that can identify the size of the management area 40.
何れにしても、そのようにして定まる°大きさの、を
管理領域40の中の例えば末尾部分にデータ表示43を
置き、所定のビット長でブロックのデータ長を表示する
ものとする。In any case, a data display 43 of the size thus determined is placed, for example, at the end of the management area 40, and the data length of the block is displayed using a predetermined bit length.
処理装置は従来の処理のように、処理ステップ30で作
業記憶領域に次に処理する一定長のデータを読み込むと
、処理ステップ31でその先頭から順に1ブロツクの処
理を行い、完了した場合には処理ステップ32を経て処
理ステップ31に戻るループで順次ブロックを処理し、
次に処理するブロックが無(なれば処理ステップ33で
識別して、なお処理データがあれば処理ステップ30に
戻る。As in conventional processing, when the processing device reads a certain length of data to be processed next into the working memory area in processing step 30, it processes one block sequentially from the beginning in processing step 31, and when the processing is completed, Processing blocks sequentially in a loop that returns to processing step 31 via processing step 32,
If there is no block to be processed next, it is identified in processing step 33, and if there is still processing data, the process returns to processing step 30.
処理ステップ31で、分割して読み込まれたブロックの
前半部であることを識別した場合には、処理ステップ3
4でその前半部を作業記憶域の先頭に複写する。If it is identified in processing step 31 that this is the first half of the block that has been read in parts, processing step 3
4, the first half is copied to the beginning of the working storage area.
処理ステップ35でその前半部に管理領域40が完全に
読み込まれているかを、先頭の制御情報部分42により
決定する管理領域のデータ長と前半部の長さとを比較し
て識別する。In processing step 35, it is determined whether the management area 40 has been completely read into the first half by comparing the data length of the management area determined by the control information section 42 at the beginning with the length of the first half.
管理領域40が読み込まれていた場合には、処理ステッ
プ36で管理領域末尾のデータ長表示43によってブロ
ックのデータ長を決定し、処理ステ・ノブ37において
、ブロックのデータ長から既に読み込まれている前半部
の大きさを引いた残りのデータ長だけのデータ、即ちブ
ロックの後半部のデータを、作業記憶領域先頭の前半部
に続く位置に読み込んで、作業記憶領域上にブロックを
完成し、処理ステップ31に戻ってその1ブロツクの所
定の処理を行う。If the management area 40 has been read, the data length of the block is determined by the data length display 43 at the end of the management area in processing step 36, and the processing step knob 37 determines whether the data length of the block has already been read. The data of the remaining data length after subtracting the size of the first half, that is, the data of the second half of the block, is read into the position following the first half at the beginning of the working memory area, completing the block in the working memory area, and processing. The process returns to step 31 and predetermined processing for that one block is performed.
又、処理ステップ35で、管理領域40が完全に読み込
まれていないと識別した場合には、処理ステップ38に
進んで所定長の管理領域の残りを読み込んで、管理領域
40を作業記憶領域上に完成した後、処理ステップ36
に進み以後前記のように処理を進める。If it is determined in processing step 35 that the management area 40 has not been completely read, the process proceeds to processing step 38 to read the remainder of the management area of a predetermined length and save the management area 40 on the working storage area. Once completed, processing step 36
The process proceeds as described above.
このようにして処理ステップ31で、分割されていたブ
ロックの処理を終わった場合には、処理ステップ32.
33を経て処理ステップ30に戻り、その後に続く一定
長のデータを読み込む処理から再開されるか、又は処理
ステップ33で全デー°夕の処理終了を識別して処理を
終わる。In this way, when processing of the divided blocks is finished in processing step 31, processing step 32.
33, the process returns to process step 30, and the process is restarted from reading the following data of a certain length, or it is determined in process step 33 that the process of all data has been completed, and the process ends.
以上により、分割されたブロックの処理の場合に必要な
作業領域の大きさは、前記従来の説明における第4図(
C)に対応する場合が、はぼfd)に示すようになり、
作業記憶領域を特に大きくする必要がない。From the above, the size of the work area required for processing divided blocks is as shown in FIG.
The case corresponding to C) is shown in fd),
There is no need to make the working memory area particularly large.
以上の説明から明らかなように本発明によれば、可変長
のブロックが連続した図形データ等をブロックごとに逐
次処理する計算機において、比較的小さな作業記憶領域
を使用して処理が行えるので、計算機の処理効率を改善
するという著しい工業的効果がある。As is clear from the above description, according to the present invention, in a computer that sequentially processes graphic data, etc. consisting of successive blocks of variable length, block by block, processing can be performed using a relatively small working memory area. It has a significant industrial effect of improving the processing efficiency.
第1図は本発明の構成を示す処理の流れ図、第2図はブ
ロックの構成を説明する図、第3図は計算機の構成例を
示すブロック図、第4図は作業記憶領域の説明図、
第5図は従来の処理の流れ図である。
図において、
1は処理装置、 2は処理プログラム、3は外
部記憶装置、 4はデータ、5は作業記憶領域、
10a〜10gはプロ・ツク、20〜24.30〜3
8は処理ステップ、40は管理領域、 42は制
御情報部分、43はデータ長表示
を示す。FIG. 1 is a process flowchart showing the configuration of the present invention, FIG. 2 is a diagram explaining the block configuration, FIG. 3 is a block diagram showing an example of the configuration of a computer, and FIG. 4 is an explanatory diagram of the working storage area. FIG. 5 is a flowchart of conventional processing. In the figure, 1 is a processing device, 2 is a processing program, 3 is an external storage device, 4 is data, 5 is a working storage area,
10a-10g is pro tsuku, 20-24.30-3
8 is a processing step, 40 is a management area, 42 is a control information portion, and 43 is a data length display.
Claims (1)
定長ごとに分割して順次処理する計算機において、 各該ブロックの先頭に設ける所定長の管理領域内の所定
位置に、当該ブロックのデータ長を表示し、 該所定長ごとに分割したデータの最終の該ブロックが分
割されている場合に、該分割されたブロックの前半部に
該データ長の表示を含む場合には、該データ長の表示に
よって定まるデータ長の記憶領域を準備し(35〜37
)、 該前半部によって該データ長の表示を含まない場合には
、該前半部に該管理領域の後半部分を結合して(35、
38)、該管理領域の該データの長の表示によって定ま
るデータ長の記憶領域を準備し(36、37)、 該準備した記憶領域上で、該前半部に該ブロックの分割
された後半部分を結合して、該ブロックの所要の処理(
31)を行うように構成されていることを特徴とするデ
ータ分割処理方法。[Claims] In a computer that sequentially processes data consisting of successive blocks of variable length data by dividing them into blocks of predetermined length, , displays the data length of the block, and when the last block of the data divided into the predetermined length is divided, and the first half of the divided block includes the display of the data length. , prepare a storage area of the data length determined by the display of the data length (35 to 37).
), If the first half does not include the display of the data length, combine the second half of the management area with the first half (35,
38) Prepare a storage area with a data length determined by displaying the length of the data in the management area (36, 37), and on the prepared storage area, insert the divided second half of the block into the first half. Combine and perform the required processing of the block (
31) A data division processing method characterized by being configured to perform the following.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15402887A JPS63317829A (en) | 1987-06-19 | 1987-06-19 | Data division processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15402887A JPS63317829A (en) | 1987-06-19 | 1987-06-19 | Data division processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63317829A true JPS63317829A (en) | 1988-12-26 |
JPH0556536B2 JPH0556536B2 (en) | 1993-08-19 |
Family
ID=15575327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15402887A Granted JPS63317829A (en) | 1987-06-19 | 1987-06-19 | Data division processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63317829A (en) |
-
1987
- 1987-06-19 JP JP15402887A patent/JPS63317829A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPH0556536B2 (en) | 1993-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS63317829A (en) | Data division processing method | |
JPH04360246A (en) | Device for compressing file | |
EP1389748A2 (en) | Numerical controller | |
JPS6022236A (en) | Message output system | |
JP2971765B2 (en) | Polygon drawing method and polygon drawing device | |
JPH0554108A (en) | Output data storing method and graphic processor for graphic processing | |
JPH10283231A (en) | Data processor | |
JP3396374B2 (en) | Image processing apparatus and image processing method | |
JPH06168307A (en) | Image data storing device | |
JPH0378887A (en) | Drawing order editing method | |
JPH0850602A (en) | Method and device for automatically generating three dimensional shape | |
JPH0836569A (en) | File edition processor | |
JPH02109166A (en) | Retrieving device for character string | |
JPH0750435B2 (en) | Data processing device | |
JPH05181738A (en) | Data storage system | |
JPH08263338A (en) | Direct positioning method for variable length record of sequential file | |
JPS62298846A (en) | Memory controller | |
JPH07320032A (en) | Image processor | |
JPS62241023A (en) | Method for extending user area | |
JPH04215148A (en) | Programmable controller | |
JPH04570A (en) | Cad/cam device | |
JPS6359671A (en) | Editing input device for character/graphic | |
JPH05324481A (en) | Data processing system | |
JPH02257284A (en) | Data processor | |
JPH05120222A (en) | Common information acquisition system for on-line system |