JP6693549B2 - 情報処理装置、情報処理方法および情報処理プログラム - Google Patents
情報処理装置、情報処理方法および情報処理プログラム Download PDFInfo
- Publication number
- JP6693549B2 JP6693549B2 JP2018200431A JP2018200431A JP6693549B2 JP 6693549 B2 JP6693549 B2 JP 6693549B2 JP 2018200431 A JP2018200431 A JP 2018200431A JP 2018200431 A JP2018200431 A JP 2018200431A JP 6693549 B2 JP6693549 B2 JP 6693549B2
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- compression
- code
- unit
- interpreter
- 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.)
- Active
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
図2は、実施例に係るインタープリタ実行のシーケンスの一例を示す図である。図2に示すように、インタープリタ圧縮処理は、インタープリタ形式のソースプログラムを字句解析し、字句解析結果を内部コードと関連付け、圧縮符号を割当て、圧縮ファイルに保存する。そして、インタープリタ実行処理は、ソースプログラムを圧縮された状態のままで、内部コード変換を経て、構文解析およびインタープリタの実行を行う。
図3は、実施例に係る圧縮処理の流れを示す図である。図3では、インタープリタ形式のソースプログラムには、例えば、「・・・IF A=100 THEN C=B ELSE C=D・・・」というデータが含まれる。
図4は、実施例に係る葉の構造体のデータ構造の一例を示す図である。図4に示すように、葉の構造体には、葉の標識と、圧縮符号長と、属性と、圧縮符号と、単語へのポインタとが格納される。葉の標識は、葉を一意に識別する情報である。圧縮符号長は、圧縮符号の符号長である。属性は、単語の属性を示す情報である。属性は、8ビット記号(コメント)、改行、予約語1(制御文)、予約語2(演算子)、変数1(数値変数)、変数2(定数)、変数3(アドレス変数)を含む。各属性には、各ビットが対応付けられ、単語の属性に応じて、対応するビットが1(ON)に設定される。
図5は、実施例に係る内部コード対応表のデータ構造の一例を示す図である。図5に示すように、内部コード対応表は、内容と、バイト長と、内部コードとを対応付けて記憶する。内容は、単語の文字列である。バイト長は、内容のバイト長である。内部コードは、内容に対応付けられる内部コードである。内部コードは、属性毎の分類に応じて、割り当てられる。例えば、属性が予約語1(制御文)である場合には、「01」から割り当てられ、属性が変数1(数値変数)である場合には、「10」から割り当てられ、属性が予約語2(演算子)である場合には、「20」から割り当てられる。一例として、内容が「IF」である場合には、内部コードとして「01」が割り当てられている。なお、内部コード対応表は、予め作成され、記憶される。
図6は、圧縮ファイルのブロック構成例を示す図である。図6に示すように、圧縮ファイルは、ヘッダ部と、圧縮符号データとを有する。圧縮符号データは、情報処理装置が生成した各圧縮符号に対応する。ヘッダ部は、例えば、圧縮ファイルの生成に用いられた圧縮アルゴリズムを識別する情報や、圧縮に用いられたパラメータなどの情報を有する。例えば、ヘッダ部には、単語の文字列と、単語の属性と、出現頻度とが対応付けて格納される。これは、情報処理装置がインタープリタを実行する際に、ケヤキ木の生成が必要であるからである。
図7は、実施例に係る内部コード変換処理の流れを示す図である。図7に示すように、情報処理装置は、圧縮ファイルのヘッダ部に記憶された情報を用いて、ケヤキ木を生成する。例えば、情報処理装置は、単語の文字列を、ケヤキ木を構成する葉に割り当てる。情報処理装置は、葉の属性の領域に、単語の属性を「1」(ON)に設定する。情報処理装置は、葉の単語へのポインタに、内部コード対応表に記憶された、単語の文字列と一致する内容の領域へのポインタを設定する。情報処理装置は、葉の圧縮符号に、単語の出現頻度を基に割り当てた圧縮符号を設定し、葉の圧縮符号長に圧縮符号の符号長を設定する。すなわち、情報処理装置は、単語の出現頻度でエントロピー符号化を行い、符号化された圧縮符号を葉の圧縮符号に設定する。
図8は、実施例に係る情報処理装置の機能構成を示すブロック図である。図8に示すように、この情報処理装置100は、圧縮部200と、実行部300とを有する。
図9は、実施例に係る圧縮部の機能構成を示すブロック図である。図9に示すように、圧縮部200は、ファイルリード部210、字句解析部220、出現頻度集計部230、ケヤキ木生成部240、圧縮符号化部250およびファイルライト部260を有する。
図10は、実施例に係る実行部の機能構成を示すブロック図である。図10に示すように、実行部300は、ファイルリード部310、ケヤキ木生成部320、内部コード変換部330、構文解析部340およびインタープリタ実行部350を有する。
図11は、実施例に係る圧縮処理のフローチャートの一例を示す図である。
図12は、実施例に係る圧縮処理のフローチャートの一例を示す図である。
上記実施例によれば、情報処理装置100は、インタープリタ形式のソースコードに対して、字句解析を行う。情報処理装置100は、字句解析が行われたソースコードを、内部コードと圧縮符号とを関連付ける圧縮辞書を用いて圧縮する。情報処理装置100は、圧縮されたソースコードに対するインタープリタの実行指示を受けた場合に、前記圧縮されたソースコードを前記圧縮辞書に基づいて内部コードに変換する。そして、情報処理装置100は、変換された内部コードに基づいて、順次処理を実行する。かかる構成によれば、情報処理装置100は、圧縮されたソースコードを伸長しなくても、内部コードと圧縮符号とを関連付ける圧縮辞書を用いることで圧縮状態からインタープリタの内部コードに変換できる。この結果、情報処理装置100は、圧縮されたソースコードのインタープリタの実行速度を向上させることができる。
以下、上述の実施形態における変形例の一部を説明する。下記の変形例のみでなく、本発明の本旨を逸脱しない範囲の設計変更は適宜行われうる。
図13は、実施例の情報処理装置のハードウェア構成を示す図である。図13の例が示すように、コンピュータ500は、各種演算処理を実行するCPU501と、ユーザからのデータ入力を受け付ける入力装置502と、モニタ503とを有する。また、コンピュータ500は、記憶媒体からプログラム等を読み取る媒体読取装置504と、他の装置と接続するためのインターフェース装置505と、他の装置と無線により接続するための無線通信装置506とを有する。また、コンピュータ500は、各種情報を一時記憶するRAM507と、ハードディスク装置508とを有する。また、各装置501〜508は、バス509に接続される。
200 圧縮部
210 ファイルリード部
220 字句解析部
230 出現頻度集計部
240 ケヤキ木生成部
250 圧縮符号化部
260 ファイルライト部
300 実行部
310 ファイルリード部
320 ケヤキ木生成部
330 内部コード変換部
340 構文解析部
350 インタープリタ実行部
400 記憶部
410 内部コード対応表
Claims (5)
- インタープリタ形式のプログラムデータに対して、字句解析を行う字句解析部と、
前記字句解析部によって字句解析が行われた前記プログラムデータを、インタープリタ処理を実行する際に用いられる内部コードと圧縮符号とを関連付ける圧縮辞書を用いて圧縮する圧縮部と、
前記圧縮部によって圧縮された前記プログラムデータに対するインタープリタの実行指示を受けた場合に、前記圧縮された前記プログラムデータを前記圧縮辞書に基づいて内部コードに変換する変換部と、
前記変換部によって変換された内部コードに基づいて、順次処理を実行する実行部と、
を有することを特徴とする情報処理装置。 - 前記字句解析が行われた単語毎に、各単語に対応する圧縮符号、属性および内部コードへのポインタを葉に含むツリー構造を生成するツリー構造生成部を有し、
前記実行部は、前記ツリー構造生成部によって生成されたツリー構造に登録されている単語に対応する属性をもとに、構文解析を実行し、当該単語に対応する内部コードをもとに、インタープリタ処理を実行する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記プログラムデータに対して前記字句解析が行われた単語毎に属性および前記プログラムデータにおける出現頻度を対応付けて、圧縮ファイルのヘッダ部に格納する格納部
を有することを特徴とする請求項1または請求項2に記載の情報処理装置。 - コンピュータが、
インタープリタ形式のプログラムデータに対して、字句解析を行い、
前記字句解析が行われた前記プログラムデータを、インタープリタ処理を実行する際に用いられる内部コードと圧縮符号とを関連付ける圧縮辞書を用いて圧縮し、
圧縮された前記プログラムデータに対するインタープリタの実行指示を受けた場合に、前記圧縮された前記プログラムデータを前記圧縮辞書に基づいて内部コードに変換し、
変換された内部コードに基づいて、順次処理を実行する
各処理を実行することを特徴とする情報処理方法。 - コンピュータに、
インタープリタ形式のプログラムデータに対して、字句解析を行い、
前記字句解析が行われた前記プログラムデータを、インタープリタ処理を実行する際に用いられる内部コードと圧縮符号とを関連付ける圧縮辞書を用いて圧縮し、
圧縮された前記プログラムデータに対するインタープリタの実行指示を受けた場合に、前記圧縮された前記プログラムデータを前記圧縮辞書に基づいて内部コードに変換し、
変換された内部コードに基づいて、順次処理を実行する
処理を実行させることを特徴とする情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018200431A JP6693549B2 (ja) | 2018-10-24 | 2018-10-24 | 情報処理装置、情報処理方法および情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018200431A JP6693549B2 (ja) | 2018-10-24 | 2018-10-24 | 情報処理装置、情報処理方法および情報処理プログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017523034A Division JP6428936B2 (ja) | 2015-06-10 | 2015-06-10 | 情報処理装置、情報処理方法および情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019053741A JP2019053741A (ja) | 2019-04-04 |
JP6693549B2 true JP6693549B2 (ja) | 2020-05-13 |
Family
ID=66013479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018200431A Active JP6693549B2 (ja) | 2018-10-24 | 2018-10-24 | 情報処理装置、情報処理方法および情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6693549B2 (ja) |
-
2018
- 2018-10-24 JP JP2018200431A patent/JP6693549B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019053741A (ja) | 2019-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002529849A (ja) | データ処理リソースを供給された内蔵システムにおいて実行可能な中間オブジェクトコードプログラムのためのデータ圧縮方法、および、この方法に対応しかつマルチアプリケーションを備えた内蔵システム | |
KR20080043304A (ko) | 마크업 언어 데이터의 인코딩 | |
JP6550765B2 (ja) | 文字データ変換プログラム、文字データ変換装置および文字データ変換方法 | |
US11394956B2 (en) | Encoding apparatus and encoding method | |
JP6686639B2 (ja) | 符号化プログラム、符号化装置、符号化方法、復号化プログラム、復号化装置および復号化方法 | |
JP6641857B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
US20200294629A1 (en) | Gene sequencing data compression method and decompression method, system and computer-readable medium | |
AU2019250125B2 (en) | Information processing apparatus, information processing method, and information processing program | |
KR101842420B1 (ko) | 정보 처리 장치 및 데이터 관리 방법 | |
US9479195B2 (en) | Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device | |
US20150248432A1 (en) | Method and system | |
JP6613669B2 (ja) | 圧縮プログラム、圧縮方法、情報処理装置、置換プログラムおよび置換方法 | |
JP6693549B2 (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
US20070226724A1 (en) | Method and apparatus for firmware execution and provision | |
WO2024066753A1 (zh) | 压缩数据的方法和相关装置 | |
Berz et al. | Comparison of lossless data compression methods | |
JPH0865172A (ja) | データ圧縮装置 | |
CN105893086A (zh) | 一种基于音频处理器的***固件压缩方法及其解压缩方法 | |
JP2005175926A (ja) | 復号装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181024 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190709 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190829 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200305 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200317 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200330 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6693549 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |