JP5247791B2 - プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム - Google Patents

プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム Download PDF

Info

Publication number
JP5247791B2
JP5247791B2 JP2010258969A JP2010258969A JP5247791B2 JP 5247791 B2 JP5247791 B2 JP 5247791B2 JP 2010258969 A JP2010258969 A JP 2010258969A JP 2010258969 A JP2010258969 A JP 2010258969A JP 5247791 B2 JP5247791 B2 JP 5247791B2
Authority
JP
Japan
Prior art keywords
data
command
execution
code
processing
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.)
Expired - Fee Related
Application number
JP2010258969A
Other languages
English (en)
Other versions
JP2011076619A (ja
Inventor
山彦 伊藤
繁樹 鈴木
淑子 落合
紀之 久代
吉秋 小泉
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010258969A priority Critical patent/JP5247791B2/ja
Publication of JP2011076619A publication Critical patent/JP2011076619A/ja
Application granted granted Critical
Publication of JP5247791B2 publication Critical patent/JP5247791B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明はプログラムコードに基づいて実行処理を行うプログラム実行装置、方法等を実現するためのプログラムコード圧縮方法、装置等に関するものである。
家電機器(エアコン、冷蔵庫、洗濯機、放電灯点灯装置等)等においては、その動作を制御するため、プログラム実行装置を組み込んでいる(以下、このような家電機器、家電機器アダプタ等を組み込み機器という)。ここで、プログラム実行装置が実行処理を行うためには、あらかじめ定められたプログラムコードと呼ばれるデータを必要とする。このプログラムコードは、例えば組み込み機器内に設けられたROM(Read Only Memory)等の記憶手段にあらかじめ記憶されており、プログラム実行装置はROMに記憶されたプログラムコードを読み込んで(入力して)実行処理を行っている。
ここで、プログラムコードを圧縮処理して、記憶すべきデータ量を減らし、ROM等の記憶手段の記憶容量をできるだけ減らすことにより、記憶手段に係るコストを低減させているプログラム実行装置がある(例えば特許文献1参照)。このようにプログラムコードのデータ量を減らすことは、今後、組み込み機器がネットワークを介して相互に接続され、例えば、プログラムコードのデータを含む信号を送受信するような場合には都合がよい。
特開2002−318696号公報
通常、プログラムコードが圧縮されると、プログラム実行装置の実行処理速度が低減する。そこでRAM(Randam Access Memory)等で構成される、一時的な記憶手段(バッファ)に、伸張したプログラムコードを蓄えておく方法が採られている。そのため、RAMの容量を多く必要とする。
そこで、本発明は、圧縮したプログラムコードによりROMの記憶容量の低減を図りつつ、さらに、プログラム実行装置の実行処理速度の低減を防ぎながら、用意すべきバッファの記憶容量を低減することができるプログラム実行装置、方法等を実現するためのプログラムコード圧縮方法、装置等を実現することを目的とする。
本発明に係るプログラムコード圧縮装置は、実行処理内容を表すコマンドとコマンドが実行処理に用いる処理データとが、処理データ、コマンドの順に並んで構成されテキストデータの文字列形式によって記述される実行コードが1又は複数で構成されるプログラムコードを圧縮するプログラムコード圧縮装置であって、各実行コードをあらかじめすべてのコマンドが記憶されている辞書と照合することにより各実行コードを処理データとコマンドとに識別する識別手段と、処理データとコマンドとに対してそれぞれ変換処理を行って実行コードを圧縮する変換手段と、を備え、変換手段は、識別手段が識別した処理データに対しては、処理データにおいて要素毎に分かれているデータをまとめたデータを作成し、まとめた処理データをバイナリ形式に変換し、所定のデータ量毎に分け、処理データであることを判定するためのフラグデータを分けたデータ毎に付す処理を行うものである。
本発明によれば、処理データとコマンドとが順にテキストデータの文字列形式によって並べられた実行コードにより構成されるプログラムコードを圧縮する際、識別手段が各実行コードの処理データとコマンドとを識別し、変換手段が変換処理を行って圧縮した実行コードを生成するようにしたので、処理データとコマンドとに対して、それぞれ処理を行って圧縮することができる。
第1の実施の形態に係るプログラムコードの圧縮処理を表す図である。 本発明の実施の形態2に係るプログラム実行装置を表す図である。 プログラム実行装置における動作を表すフローチャートである。 実施の形態3に係る圧縮された実行コードを表す図である。
実施の形態1.
図1は本発明の第1の実施の形態に係るプログラムコードの圧縮処理を表す図である。図1の上側には実行コードの一例を示している。ここではテキストデータとして記述されている。プログラムコードは1又は複数の実行コードで構成される。まず、実行コードについて説明する。本実施の形態においては、プログラムコードに用いる言語としてForth を用い、ECHONET (ECHONET はECHONET コンソーシアムの商標)の規格における実行処理を行うためのコードであるとする。ECHONET とは、家電機器同士を連携させつつ制御を行なうためのネットワーク(通信回線)の規格である。また、Forth は構文解析が簡単又は不要な逆ポーランド記法(後置記法)に基づく言語である。本実施の形態において、実行コードは、プログラム実行装置が実行すべき処理を表すコマンド(命令)のデータ(以下、コマンドという。Forth ではwordという)とコマンドに基づく実行処理を行う際に処理されるデータ(以下、処理データという)で構成されている。そして、処理データ、コマンドの順に記述される。ここで各コマンドとその処理内容については、あらかじめ定義づけられて(関連づけられて)データとして登録されている(以下、これを辞書という)。そのため、実行コード内の数字、文字列のデータについて、辞書に登録されていればコマンドであり、登録されていなければ処理データとなる。本実施の形態では、後述する記憶手段2に辞書が記憶されているものとする。
コマンドRGST_EPCは組み込み機器のプロパティ情報を登録を実行処理するために記述される。オブジェクトidは組み込み機器のオブジェクトに対して付されるidである。オブジェクトidを表すために2ビットを割り当てている。ECHONET プロパティは、組み込み機器の種類に応じて設定可能なプロパティ(例えば、エアコンにおける風量設定状態等)のコードである。コードの値はECHONET の規格で定められており、8ビットを割り当てている。また、ここではプロパティのデータ型として7種類を用意しており、3ビットを割り当てている。アクセスルールは書き込み(Set )、読み出し(Get )、通知の可否を示すもので3ビットを割り当てている。状変時アナウンス有無はプロパティの状態が変化した際に、ネットワークを介して通知するか否かを表す指標(フラグ)であり、1ビットを割り当てている。データサイズは、プロパティのデータサイズを規定するためのものであり、ECHONET の規格ではその最大値を8640バイトとしており、その数値を表すために14ビットを割り当てている。
次にプログラムコード圧縮処理装置の構成と処理について説明する。本実施の形態におけるプログラムコード圧縮装置は、制御処理手段1、記憶手段2及び通信手段3で構成されているものとする。制御処理手段1は、処理データ・コマンド識別部1A及び変換部1Bを有している。制御処理手段1には データ・コマンド識別部1Aでは、プログラムコードの各実行コードについて、記憶手段2に記憶されている辞書と照合し、辞書と合致しない文字列、数字等を処理データとし、合致した文字列(スクリプト)をコマンドとすることで、処理データとコマンドとを識別処理する。ここで、実行コードについては、例えば、オペレータが入力手段から入力した指示、データ等に基づいて制御処理手段1のデータ・コマンド識別部1Aの前段に設けられたプログラムコード生成部(図示せず)で生成するようにしてもよいし、別の装置において生成され、通信回線(ECHONET に係るものでなくてもよい)を介して送信された信号に含まれる実行コードを処理するようにしてもよい。
変換部1Bは、処理データとコマンドとをそれぞれバイナリ形式のデータ(以下、バイナリデータという)で表し、所定のデータ量毎に分けたデータを生成する。本実施の形態においては7ビットを所定の単位とする。例えば処理データが7で割り切れない場合は、例えば残りのビットに“0”を補充する。そして、処理データを表すデータ(以下、このデータについても処理データという)については分けたそれぞれの先頭のビットに“0”を付し、コマンドを判別するためのデータ(以下、このデータについてもコマンドという)については“1”を付す。つまり、これが、処理データであるかコマンドであるかを判定するための判定用ビット(フラグ)となる。これにより、図1の下側に示すように、各実行コード(プログラムコード)は1バイト(8ビット)を単位としたデータ(バイトデータ)に分けられる。このように、各要素(項目)の文字列に分かれていた処理データをバイナリデータとしてまとめて符号化(エンコード)処理してデータ量の低減を図る。
一方、コマンドについては、そのコマンドと1対1で対応する数値等(コード値)をバイナリデータで表す。これにより、そのバイナリデータが表すコマンドを判別することができる。このコマンドとバイナリデータとの関係は関連づけられて記憶手段2に記憶されており、変換部1Bはデータ生成に際してそのデータを参照する。ここで、コマンド数が128以下であればコマンドを判別するためには1バイトあれば足りる。例えばコマンド数がそれ以上となる等の場合には2バイト以上になるが、その場合でも、実行処理に使用(出現)する頻度の高いコマンド(例えばプロパティ関連等)については、1バイト分のデータでも判別できるようにすれば、プログラムコード全体に係るデータ量をさらに減らすことができる。なお、本実施の形態による方法によって生成したバイトデータを、さらにランレングス法のような公知のビット列圧縮法によって圧縮するようにしてもよい。
以上のようにして生成した圧縮したプログラムコードのデータを、例えばネットワークを介して組み込み機器側から送信されたダウンロード要求に応じ、又はプログラムコード圧縮処理装置(制御処理手段1)側から積極的な配信により、通信手段3、有線又は無線の通信回線を介して、後述する実施の形態2の組み込み機器のプログラムコード格納手段24に記憶する。
以上のように、第1の実施の形態によれば、各実行コードの処理データとコマンドとを識別し、処理データは各要素(項目)をまとめてバイナリデータとし、コマンドは対応する数値をバイナリデータとして、それぞれのデータを所定の単位(本実施の形態では7ビット)に分け、処理データを含むデータかコマンドを含むデータか判定するための判定用ビットを各データに付すようにして、1バイトのデータに分けるようにしたので、処理データとコマンドをそれぞれ圧縮できる。そして、実行処理を行う際に、読み込みを1バイト毎に行い、そのデータが処理データを含むかコマンドを含むかを簡単に判別できる。また、プログラムコードをForth 等の逆ポーランド記法に基づく言語とすることにより、実行コードが処理データ、コマンドの順に構成されているので、処理データとコマンドとの識別を容易に行うことができる。さらに、プログラムコードを分ける単位を1バイトとすることにより、実行処理を行う際に、例えばワンチップマイコン等のような処理装置でも対応することができる。そして、例えば、実行処理に使用(出現)する頻度の高いコマンドを含むバイト数を低くする等、頻度に応じた調整をすることで、より圧縮効果を高めることができる。
実施の形態2.
図2は本発明の実施の形態2に係るプログラム実行装置を表す図である。本実施の形態では、プログラム実行装置はコード種別判定手段21、コード伸張手段22、実行手段23、プログラムコード格納手段24及びバッファ記憶手段25で構成されている。そして、実施の形態1で生成した圧縮したプログラムコードに基づく実行処理を行うものとする。
コード種別判定手段21は、プログラムコード格納手段24に記憶された圧縮(エンコード)されたプログラムコードを所定のデータ量で読み込む(入力する)。本実施の形態では、実施の形態1に合わせて、所定のデータ量を1バイト(8ビット)とする。そして、読み込んだデータは処理データが含まれているデータ(データバイト。コマンドを含んでいないデータ)かコマンドが含まれているデータ(コマンドバイト)かを判定する。コード種別判定手段21は実施の形態1で説明した判定用ビット(フラグ)に基づいて判定を行うものとする。そして、処理データであると判定するとその処理データをバッファ記憶手段25に記憶させ、コマンドであると判定するとコード伸張手段22に処理の制御を渡す。
コード伸張手段22は、コード種別判定手段21がコマンドと判定すると、バッファ記憶手段25に記憶された処理データ及びコマンドに基づいて実行コードを生成(伸張、デコード)する。実行コードを生成すると実行手段23に処理の制御を渡す。
実行手段23は、コード伸張手段22が生成した実行コードに基づいて実行処理を行う。ここで、本実施の形態では、実行手段23は実行コードを解釈(翻訳)しながら処理データに対してコマンドの実行処理を行うインタプリタであるとする。したがって、プログラムコードは、実行コード毎に逐次的に実行処理されることになる。ここで、実行手段23は、実行コードを解釈するために、第1の実施の形態で説明した辞書を記憶手段(図示せず)に有しているものとする。実行処理を終了するとコード種別判定手段21に処理の制御を渡す。
プログラムコード格納手段24及びバッファ記憶手段25はともに記憶手段である。ここで、本実施の形態ではプログラムコード格納手段24を不揮発性メモリとするが、単なるROMではなく、追加、一部又は全部を変更、削除等、プログラムコードの書き換えができるような記憶手段(例えば、EPROM、EEPROM等)であるとする。プログラムコードを書き換える場合、実施の形態1で説明したように、例えばネットワークを介したダウンロードにより、プログラムコードを含む信号を組み込み機器が有する通信手段(図示せず)が受信し、プログラムコード格納手段24に記憶され、保持される。
バッファ記憶手段25は、例えば揮発性メモリとする。バッファ記憶手段25は、コード伸張手段22が実行コードを生成するまでに少なくとも処理データを記憶させておくための一時的な記憶手段であり、次の処理データが入力されれば残さない。したがって、バッファ記憶手段25が有する記憶容量は任意であるが、好ましくは、組み込み機器(プログラム実行装置)が1回に実行処理する実行コードの処理データ部分(又は実行コード)が記憶できる最大の記憶容量とする。
本実施の形態は、実行処理を行う圧縮されたプログラムコードのデータを1バイト毎に読み込み、そのデータに含まれているのが処理データであるかコマンドであるかの判定を行う。処理データであればバッファ記憶手段25に記憶させ、コマンドであると判定すると、伸張手段22がバッファ記憶手段25に記憶した処理データとコマンドとを実行コードにする。その実行コードを実行手段23が実行処理する。これにより、プログラム実行装置によるプログラムコード格納手段24に格納された圧縮されたプログラムコードに基づいて、実行コード毎の実行処理が行われる。ここで、実行処理が終了した実行コード(プログラムコード)を、RAM等のバッファ記憶手段25に不用意に残しておかないようにし、1回の実行処理に必要な実行コードの処理データ(又は実行コード)を一時的に記憶するために必要な量を越えないようにして、バッファ記憶手段25の記憶容量を抑える。また、コード種別判定手段21、コード伸張手段22及び実行手段23について、それぞれ物理的に独立した手段で構成してもよいが、通常、プログラム実行装置はいわゆるマイコン等のコンピュータで構成されており、これらの手段は、例えばCPUを中心とする制御処理装置で構成されている。そして、制御処理装置がそれぞれの手段の処理を実行することで、プログラム実行装置の実行処理を実現する。
図3はプログラム実行装置における実行処理を行う際の動作を表すフローチャートである。ここでは、特にプログラム実行装置のコード種別判定手段21、コード伸張手段22及び実行手段23が行う処理を中心に説明する。コード種別判定手段21は、プログラムコード格納手段24から圧縮されたプログラムコードのデータを1バイト単位で読み込む(S1)。そして、コード種別判定手段21は、実施の形態1で説明した判定用ビットが“0”であるか“1”であるかどうかによって、読み込んだデータがコマンドであるか又は処理データであるか(コマンドでないか)の判定を行う(S2)。処理データである(コマンドでない)と判断すると、判定用ビットを除いた上でバッファ記憶手段25に記憶し(S3)、さらに圧縮されたプログラムコードのデータを1バイト単位で読み込む(S1)。
一方、読み込んだデータがコマンドであると判断すると、コード伸張手段22に制御が渡される。コード伸張手段22は、読み込んだデータ(バイナリデータ)に基づいて、そのデータが表すコマンドを判別し、スクリプト形式のコマンドに変換する。この判別には、実施の形態1で説明したバイナリデータとコマンドとの関係を用いる。コマンドが判別できると、コマンドが実行処理を行う処理データの要素(項目)と割り当てられたデータ量(ビット数)がわかるので、処理データのバイナリデータに基づいて、各要素(項目)の処理データに分ける。以上のような伸張処理を行って実行コードを生成する(S4)。
そして、コード伸張手段22から実行手段23に制御が渡されると、コード伸張手段22が生成した実行コードに基づいて実行処理を行う(S5)。逆ポーランド記法に基づく言語においては、各要素(項目)はスタックに積まれ、コマンドに基づいて処理される。実行コードに基づく実行処理が終了すると、コード種別判定手段21に制御が渡され、次の実行コードに基づく実行処理に対する処理が行われる。以上のように実行コード毎の実行処理を逐次行ってプログラムコードを実行処理し、組み込み機器が動作する。また、実行処理に基づくデータを含む信号を組み込み機器外の機器にネットワークを介して送信して動作させる。
以上のように実施の形態2によれば、プログラムコード格納手段24から、圧縮されたプログラムコードのデータを所定のデータ量(本実施の形態では1バイト)で読み込み、コード種別判定手段21が処理データを含むデータであると判定すれば、バッファ記憶手段25に処理データを一時的に記憶させていき、コマンドを含むデータであると判定すれば、次にコード伸張手段22が実行コードを生成し、実行手段23がその実行コードに基づく実行処理を行うようにしたので、バッファ記憶手段25は、実行コードを生成するまで処理データを記憶させておくだけでよく、これによりバッファ記憶手段25として設けておくべき記憶容量を少なくさせることができる。また、圧縮されたプログラムコードのデータ読み込みから実行コードの実行処理に至るまでのプログラム実行装置の全体の処理がシンプルであるため、生成した実行コード(プログラムコード)を保持しておかなくても速度の低減を防ぐことができる。以上のように、本実施の形態のプログラム実行装置は、処理に係る記憶容量の低減、実行処理速度の維持の両面を両立できたため、動作制御のためのコスト抑制の要求が高い、家電機器に組み込む場合に特に効果を発揮する。また、通信回線を介して、圧縮されたプログラムコードのデータを含む信号を組み込み機器等に送信してプログラムコード格納手段24のデータを書き換えられるようにしたので、プログラムコード格納手段24のプログラムコードを最新に、より効率よく、高度な状態に保つことができる。
実施の形態3.
図4は本発明の実施の形態3に係る圧縮された実行コードのデータ構成を表す図である。上述の実施の形態1においては、バイナリデータにした処理データを先頭から7ビット毎に分けていき(表記されたデータ列においていわゆる左詰めにし)、処理データが7で割り切れない場合には余った残りのビットに“0”等を補充した。
ここで、実行コードに基づく実行処理を行う際に、スタックのようなデータ構造を採る場合、最後に積んだデータが先頭になり、そのデータから処理を行う(つまり、表記されたデータ列の右側のデータからの処理になる)。例えば、要素(項目)の個数を変化させることができる場合、その個数のデータがスタックの先頭に示される。このようなことから、同じ処理系において統一されている方がなにかと都合がよいこともある。そこで、図4(a)に示すように、バイナリデータをいわゆる右詰めにし、コード伸張手段22の伸張処理においても、その先頭が(補充のデータではなく)処理データの一部となるようにした。
また、図4(b)のように、最初に読み込まれる1バイトのデータ(コマンドを含まないデータ)内に、コマンドを含まないデータのバイト数を表すデータを含ませておくことで、コード種別判定手段21における、コマンドを含んだデータか否かの判定を行わせることができる。図4(b)では、5ビット分(0〜31までの数値)を処理データのバイト数を表すためのデータに割り当てている。これにより、各バイトデータについて判定用ビットを設ける必要がない。そのため、特に処理データを含むデータのバイト数(ビット数)が多いほど効率のよい圧縮を行うことができる。しかも、処理データのバイト数がわかっており、処理データの次にコマンドが続くため、コマンドに対しても判定用ビットを設ける必要がない。これにより、判定用ビットを設けた場合に比べて、例えば1バイトで判別できるコマンド数が2倍に増える。そのため、コマンド数が多い場合にも有効である。
実施の形態4.
上述した実施の形態では、プログラムコードを逆ポーランド記法に基づく言語で記述し、実行手段23は、その記述を解釈して実行処理を行うインタプリタとした。本発明はこれに限定するものではない。例えば、インタプリタをJavaVM(又はJVM (Java, Java Virtual Machine JVMはアメリカ合衆国およびその他の国における Sun Microsystems, Inc. の商標又は登録商標)等、スタック型言語の実行コードに基づく実行処理を行うインタプリタを処理系として構成してもよい。より汎用的な言語に適用できるようにしておくことで、さらに高度なコード生成ができる可能性がある。
1 制御処理手段、1A 処理データ・コマンド識別部、1B 変換部、2 記憶手段、3 通信手段、21 コード種別判定手段、22 コード伸張手段、23 実行手段、24 プログラムコード格納手段、25 バッファ記憶手段。

Claims (4)

  1. 実行処理内容を表すコマンドと前記コマンドが実行処理に用いる処理データとが、該処理データ、前記コマンドの順に並んで構成されテキストデータの文字列形式によって記述される実行コードが1又は複数で構成されるプログラムコードを圧縮するプログラムコード圧縮装置であって、
    前記各実行コードをあらかじめすべてのコマンドが記憶されている辞書と照合することにより前記各実行コードを前記処理データと前記コマンドとに識別する識別手段と、
    前記処理データと前記コマンドとに対してそれぞれ変換処理を行って実行コードを圧縮する変換手段と、
    を備え
    前記変換手段は、前記識別手段が識別した前記処理データに対しては、前記処理データにおいて要素毎に分かれているデータをまとめたデータを作成し、まとめた前記データをバイナリ形式に変換し、所定のデータ量毎に分け、前記処理データであることを判定するためのフラグデータを前記分けたデータ毎に付す処理を行うことを特徴とするプログラムコード圧縮装置。
  2. 前記各コマンドに対応する数値とを関連付けてデータとして記憶する記憶手段を備え、
    前記変換手段は、前記識別手段が識別した前記コマンドに対しては、前記記憶手段に記憶したデータに基づいて前記対応する数値のデータに変換し、前記コマンドのデータであることを判定するためのフラグデータを付す処理を行うことを特徴とする請求項1記載のプログラムコード圧縮装置。
  3. 実行処理内容を表すコマンドと前記コマンドが実行処理に用いる処理データとが、該処理データ、前記コマンドの順に並んで構成されテキストデータの文字列形式によって記述される実行コードを読み込み、あらかじめ定めた前記コマンドの文字列と比較し、一致する文字列を前記コマンドとして、各実行コードを前記処理データと前記コマンドとに識別する工程と、
    識別した前記コマンドに対し、前記コマンドと各コマンドに対応する数値とを関連付けて記憶する記憶手段に記憶したデータに基づき、前記識別したコマンドを前記対応する数値のデータに変換し、前記コマンドのデータであることを判定するためのフラグデータを前記数値を示すバイナリ形式のデータに付し、また、識別した前記処理データに対し、前記処理データにおいて要素毎に分かれているデータをまとめたデータを作成し、まとめたデータをバイナリ形式に変換し、所定のデータ量毎に分け、前記処理データであることを判定するためのフラグデータを前記分けたデータ毎に付す変換処理を行って実行コードを圧縮する工程と
    を1又は複数の前記実行コードで構成されるプログラムコードの前記各実行コードに対して行うことを特徴とするプログラムコード圧縮方法。
  4. 実行処理内容を表すコマンドと前記コマンドが実行処理に用いる処理データとが、該処理データ、前記コマンドの順に並んで構成されテキストデータの文字列形式によって記述される実行コードを読み込み、あらかじめ定めた前記コマンドの文字列と比較し、一致する文字列を前記コマンドとして、各実行コードを前記処理データと前記コマンドとに識別する工程と、
    識別した前記コマンドに対し、前記コマンドと各コマンドに対応する数値とを関連付けて記憶する記憶手段に記憶したデータに基づき、前記識別したコマンドを前記対応する数値のデータに変換し、前記コマンドのデータであることを判定するためのフラグデータを前記数値を示すバイナリ形式のデータに付し、また、識別した前記処理データに対し、前記処理データにおいて要素毎に分かれているデータをまとめたデータを作成し、まとめたデータをバイナリ形式に変換し、所定のデータ量毎に分け、前記処理データであることを判定するためのフラグデータを前記分けたデータ毎に付す変換処理を行って実行コードを圧縮する工程と
    を1又は複数の前記実行コードで構成されるプログラムコードの前記各実行コードについて、コンピュータに実行させることを特徴とするプログラムコード圧縮方法のプログラム。
JP2010258969A 2010-11-19 2010-11-19 プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム Expired - Fee Related JP5247791B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010258969A JP5247791B2 (ja) 2010-11-19 2010-11-19 プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010258969A JP5247791B2 (ja) 2010-11-19 2010-11-19 プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005028123A Division JP4656960B2 (ja) 2005-02-03 2005-02-03 プログラム実行装置、方法及びプログラム実行方法のプログラム並びにプログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム

Publications (2)

Publication Number Publication Date
JP2011076619A JP2011076619A (ja) 2011-04-14
JP5247791B2 true JP5247791B2 (ja) 2013-07-24

Family

ID=44020476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010258969A Expired - Fee Related JP5247791B2 (ja) 2010-11-19 2010-11-19 プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム

Country Status (1)

Country Link
JP (1) JP5247791B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61204741A (ja) * 1985-03-06 1986-09-10 Nec Corp ソ−スプログラムの圧縮方法
JPH10320172A (ja) * 1997-05-15 1998-12-04 Seiko Epson Corp プログラム圧縮方法およびプログラム復号方法ならびにプログラム格納装置

Also Published As

Publication number Publication date
JP2011076619A (ja) 2011-04-14

Similar Documents

Publication Publication Date Title
US8448158B2 (en) Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof
JP2002529849A (ja) データ処理リソースを供給された内蔵システムにおいて実行可能な中間オブジェクトコードプログラムのためのデータ圧縮方法、および、この方法に対応しかつマルチアプリケーションを備えた内蔵システム
CN106598581B (zh) 基于xml的asterix报文解析代码生成方法
EP1652069B1 (en) Method and system for updating versions of content stored in a storage device
JP5226328B2 (ja) コード変換装置
CN108139896A (zh) 扩展虚拟机指令集体系架构
JP4638250B2 (ja) プログラムコード生成支援装置及び方法並びにプログラムコード生成支援方法のプログラム
CN101231597A (zh) 智能卡中java程序指令的执行方法
US8572557B2 (en) Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof
JP4978025B2 (ja) ポインタの圧縮・伸張方法、これを実行するプログラム、及び、これを用いた計算機システム
JP4656960B2 (ja) プログラム実行装置、方法及びプログラム実行方法のプログラム並びにプログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム
JP5247791B2 (ja) プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム
US20150248432A1 (en) Method and system
US7065751B2 (en) Program execution device operating based on compressed code
JP2012098893A (ja) 圧縮命令処理装置及び圧縮命令生成装置
CN100445951C (zh) 韧体执行装置与执行方法、韧体配置器与配置方法
US8327330B1 (en) System and method of generating build instructions
WO2016031959A1 (ja) マイグレーション支援装置
JP2017016503A (ja) コンパイラ、コンパイル装置及びコンパイル方法
JPH113105A (ja) プログラマブルコントローラのプログラミング装置
JP2001043082A (ja) 情報処理装置並びに命令コーディング方法及び命令デコーディング方法
JP2007004475A (ja) プロセッサ及びプログラム実行方法
JP2015197821A (ja) アセンブリコード変換装置およびその変換方法
JP2015191272A (ja) 実行制御方法、実行制御プログラムおよび実行制御装置
JP2010282248A (ja) プログラム言語解析実行プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130207

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: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130409

R150 Certificate of patent or registration of utility model

Ref document number: 5247791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160419

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees