WO2006082878A1 - プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム - Google Patents
プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム Download PDFInfo
- Publication number
- WO2006082878A1 WO2006082878A1 PCT/JP2006/301745 JP2006301745W WO2006082878A1 WO 2006082878 A1 WO2006082878 A1 WO 2006082878A1 JP 2006301745 W JP2006301745 W JP 2006301745W WO 2006082878 A1 WO2006082878 A1 WO 2006082878A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- execution
- program code
- code
- command
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000007906 compression Methods 0.000 title claims description 28
- 230000006835 compression Effects 0.000 title claims description 24
- 238000006243 chemical reaction Methods 0.000 claims abstract description 62
- 238000005457 optimization Methods 0.000 claims abstract description 62
- 238000004458 analytical method Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims description 189
- 230000008569 process Effects 0.000 claims description 42
- 230000006837 decompression Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 14
- 238000011156 evaluation Methods 0.000 claims description 9
- 238000003672 processing method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 16
- 238000013515 script Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- OOYGSFOGFJDDHP-KMCOLRRFSA-N kanamycin A sulfate Chemical group OS(O)(=O)=O.O[C@@H]1[C@@H](O)[C@H](O)[C@@H](CN)O[C@@H]1O[C@H]1[C@H](O)[C@@H](O[C@@H]2[C@@H]([C@@H](N)[C@H](O)[C@@H](CO)O2)O)[C@H](N)C[C@@H]1N OOYGSFOGFJDDHP-KMCOLRRFSA-N 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4434—Reducing the memory space required by the program code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
- G06F9/30178—Runtime instruction translation, e.g. macros of compressed or encrypted instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
Definitions
- Program code generation support apparatus and method program execution apparatus and method, program code compression processing apparatus and method, and program thereof
- the present invention relates to a program code generation support apparatus that performs support for generating a program code. This is especially for optimizing the program code according to the device that executes the program code.
- the present invention also relates to a program execution device, method, and the like that perform execution processing based on program code.
- the present invention also relates to a program code compression method and apparatus for realizing the apparatus and method.
- a program execution device is incorporated in order to control the operation (hereinafter referred to as such home appliances, home appliances).
- Device adapters are called embedded devices).
- program code that is preliminarily determined is required.
- This program code is preliminarily stored in a storage means such as a ROM (Read Only Memory) provided in the embedded device, and the program execution device reads the program code stored in the ROM ( Input) and execute the process.
- ROM Read Only Memory
- a program execution device that reduces the cost of storage means by compressing program code, reducing the amount of data to be stored, and reducing the storage capacity of storage means such as ROM as much as possible (See, for example, Patent Document 2). Reducing the data amount of the program code in this way is convenient in the case where embedded devices are connected to each other via a network in the future and, for example, transmit / receive a signal including program code data.
- Patent Document 1 Japanese Patent Laid-Open No. 9-16382
- Patent Document 2 Japanese Patent Laid-Open No. 2002-318696
- the environment in which the program code is used is not necessarily uniform. For example, it varies greatly depending on the embedded device (especially the program execution device), so it is desirable to generate a program code that matches the characteristics of the embedded device. .
- the storage capacity of the buffer for temporarily storing the ROM or execution processing when the program execution device is executed can be reduced accordingly.
- the support device as described above merely generates a program code.
- an object of the present invention is to realize a program code generation support apparatus, method, and the like that can generate a new program code by further optimizing the program code, and in particular can generate a program code according to an embedded device. . Furthermore, the program execution device, method, etc. can reduce the storage capacity of the buffer to be prepared while reducing the storage capacity of the ROM by the compressed program code and further preventing the execution speed of the program execution device from being reduced. The purpose is to obtain. It is another object of the present invention to realize a program code compression method and apparatus for realizing the apparatus and method.
- the program code generation support device analyzes the program code, storage means for storing, as data, an optimization rule composed of conversion conditions and conversion contents for converting the data of the program code Based on the code analysis section, the condition search section that matches with the optimization rules stored in the storage means based on the analyzed program code, and searches for the portion that matches the conversion condition in the program code and the conversion contents Conversion terms
- a code optimizing unit having an optimizing unit for converting a part matching the condition and generating data of a new program code.
- the program execution device stores data obtained by compressing a program code composed of an execution code in which processing data used for execution processing and commands representing execution processing contents are arranged in order.
- First storage means for temporarily storing processing data, and data that includes compressed commands and reads data for each predetermined amount of data. If it is determined that the data does not include the command, the type determination unit that stores the processing data in the data in the second storage unit, and the type determination unit determines that the data includes the command.
- a code expansion means for generating an execution code based on the processing data and the command stored in the second storage means; Based on the code, in which a sequential performs execution means the execution process of the program code.
- the code optimization means further analyzes the program code by the code analysis unit, and the condition search unit has the partial force S that matches the condition based on the optimization rule.
- the optimization unit performs conversion for optimization and generates new execution code (program code), so the program execution device of the embedded device executes the execution process. It can be optimized so that it can be easily performed.
- it is possible to reduce the data amount of the entire program code by generating a new execution code by collecting the portions where the execution code based on the same command is continuous, and performing the execution processing all at once. The processing speed can be increased.
- data obtained by compressing (encoding) the program code from the first storage means is read with a predetermined amount of data, and the code type determination means is data that does not include a command. If it is determined, the processing data is temporarily stored in the second storage means, and if it is determined to be a command, the code decompression means generates an execution code based on the processing data and the command. Since the execution means performs the execution process based on the execution code, the second storage means simply stores the processing data until the execution code is generated. The storage capacity to be provided can be reduced. In addition, since the entire process of the program execution device up to the execution process of the execution code is simple, the generated execution code (program code) can be held without any effort. However, a reduction in speed can be prevented.
- FIG. 1 is a diagram showing a system centered on a program code generation support apparatus.
- FIG. 2 is a diagram illustrating an example of a screen displayed on the display unit 20 by the specification input unit 1.
- FIG. 3 is a diagram illustrating an example of an execution code.
- FIG. 5 is a diagram illustrating another example of the optimization rule.
- FIG. 6 shows a program code generation support apparatus according to the second embodiment.
- FIG. 7 is a diagram showing an example of a screen displayed by embedded device condition input means 6.
- FIG. 8 is a diagram showing compressed execution data.
- FIG. 9 is a diagram showing a program code compression process according to the first embodiment.
- FIG. 10 shows a program execution device according to Embodiment 2 of the present invention.
- FIG. 11 is a flowchart showing an operation in the program execution device.
- FIG. 12 shows compressed execution code according to the third embodiment.
- 1 specification input means 2 code generation means, 3 code evaluation means, 4, 4 1 code optimization means, 4A code analysis section, 4B condition search section, 4C, 4D optimization section, 4E processing data 'command Identification unit, 4F conversion unit, 5 output unit, 6 embedded device condition input unit, 1 0 storage unit, 10A dictionary unit, 10B optimization rule storage unit, 20 display unit, 30 input unit, 40 printing device, 50 memory reading device 101 Control processing means, 101A processing data, command identification section, 101B conversion section, 102 storage means, 103 communication means, 121 code type determination means, 122 code decompression means, 123 execution means, 124 program code storage means, 125 buffer Storage means.
- FIG. 1 is a schematic diagram of a program code generation support apparatus according to Embodiment 1 of the present invention. It is a figure showing a stem.
- the program generation support apparatus includes a specification input unit 1, a code generation unit 2, a code evaluation unit 3, a code optimization unit 4, an output unit 5, a storage unit 10, a display unit 20, and an input unit 30.
- FIG. 2 is a diagram illustrating an example of a screen displayed on the display unit 20 by the specification input unit 1.
- the specification input means 1 causes the display means 20 to display a screen for allowing the operator to input specifications, and processes data input from the input means 30 as specifications.
- the processed data becomes the processing data that constitutes the execution code.
- ECHONET Electronicgy Conservation and Homecare Network: ECHONET is a trademark of ECHONET Consortium
- ECHONET is a network (communication line) standard for controlling home appliances in cooperation with each other as shown in Fig. 1. is there.
- a program code for performing execution processing in a device, adapter, etc. connected according to the standard is generated. The relationship between the elements (items) of each specification and the processing data will be described later.
- FIG. 3 is a diagram illustrating an example of an execution code.
- the code generation means 2 generates a program code based on the data processed by the specification input means 1. In Fig. 3, it is described as text data.
- Program code consists of one or more execution codes.
- the execution code is a unit when the execution processing is sequentially performed by the interpreter in the program execution device of the embedded device.
- Forth is used as the language used for the program code.
- Forth is a language based on reverse Polish notation that is easy or unnecessary to parse.
- the execution code includes command (instruction) data representing a process to be executed by the program execution device (hereinafter referred to as “command”, “word” in Forth) and data for processing based on the command ( (Hereinafter referred to as process data), and is described in the order of process data and command.
- each command and the data of its processing contents are preliminarily defined (associated) and registered (this is called a dictionary).
- data such as character strings described in the execution code is a command if it is registered in the dictionary, and is processed if it is not registered.
- commands can be registered as a dictionary by further defining the processing contents of commands, not just those that have been determined in advance.
- This dictionary is stored in the storage unit 10 as the dictionary unit 10A in this embodiment. here,
- the ability to generate program code using Forth Program code to which the present invention can be applied is not limited to this.
- the code generation means 2 is a program code for evaluation that makes it easy for the operator to perform an evaluation when displaying the program code on the display means 20 in the processing by the code evaluation support means 3 in the subsequent stage. Is generated. For example, it is generated so that the character string of the execution code does not become too long, or it is generated using basic commands that are not uniquely defined so that it can be easily traced.
- the command RGST_EPC is written to execute registration processing of property information of embedded devices.
- the object id (objjd) is the id assigned to the embedded device object.
- the ECH0NET property (epc) is a code of a property that can be set according to the embedded device (for example, the air volume setting state in an air conditioner).
- the code value is defined by the EC H0NET standard.
- seven types of property data types are prepared (automatically determined when the embedded device and property are determined).
- An access rule (rule) indicates whether writing, reading, and notification are possible.
- Announcement at the time of status change (anno) is an indicator (flag) that indicates whether or not it is notified via the network when the property status changes.
- the data size (size) is for specifying the data size of the property, and the maximum value is 8640 bytes in the ECHONET standard.
- the code evaluation means 3 provides support for the operator to evaluate the program code (execution code) generated by the code generation means 2 or other means.
- the operator displays the program code on the screen of the display means 20 in order to evaluate the program code such as confirmation and debugging of the generated program code.
- the program execution device has an interpreter used when executing the execution process, and can execute the generated execution code. Thereby, the operator can confirm the execution process performed based on the program code (execution code).
- the code optimizing means 4 optimizes the program code based on the optimization rules stored in the optimization rule storage unit 10B of the storage means 10.
- the code optimization means 4 includes a code analysis unit 4A, a condition search unit 4B, and an optimization unit 4C.
- An optimization rule is an example
- the conversion rules for enabling the program execution device to efficiently execute the execution processing based on the program code, such as combining a plurality of execution codes and generating a new execution code, are converted into data. The optimization rules will be further described later.
- the code analysis unit 4A analyzes the input program code.
- the code analysis unit 4A has a counter, and counts the number of consecutive executions of the portion having the same command and the execution code executing the same contents being continuous.
- the condition search unit 4B performs a search based on the conversion condition. In other words, the analyzed program code and the conversion conditions that constitute the optimization rule are collated, and it is determined whether there is a part that matches the conversion conditions. At that time, the count of the code analysis unit 4A is referred to.
- the optimization unit 4C generates a new execution code (and hence a program code) by performing conversion for optimization on the part that the condition search unit 4B determines to meet the conversion condition. .
- the code analysis unit 4A, the condition search unit 4B, and the optimization unit 4C may be configured as physically independent means, but here, for example, the CPU is the center.
- the processing of each unit is realized by the control processing device executing the processing of each means.
- the processing of the program code generation support device is realized by the control processing device executing the processing of each means.
- the output means 5 performs a process of converting the program code into data in a format suitable for the corresponding output device and outputting the data to the output device.
- the output device is the printing device 40
- a barcode code, QR code two-dimensional barcode: QR code is a registered trademark of Denso One Wave Co., Ltd.
- QR code two-dimensional barcode: QR code is a registered trademark of Denso One Wave Co., Ltd.
- an expensive communication device dedicated to an embedded device is provided, and even if the signal is not transmitted directly by connecting to a communication line, the camera, infrared communication technology, etc. of the mobile phone etc. are used. It is possible to transmit a signal including data to an embedded device and store a program code.
- the program code stored in the embedded device can be kept up-to-date even when using low-priced media such as paper media.
- the memory reading device 50 is connected to the output device.
- the data may be exchanged using an electronic storage medium.
- the communication device may be an output device.
- the storage unit 10 includes data for each unit to display on the display unit 20 on the screen, etc. Stores programs for supporting program code generation.
- FIG. 4 is a diagram illustrating an example of the optimization rule.
- Fig. 4 (a) if the program code is described so that "command RGST.EPC (registration of ECHONET property registration) is executed multiple times in succession" Is stored in the optimization rule storage unit 10B as an optimization rule that replaces the registration of the ECHONET property with the command RGST_EPCS with the processing contents to be executed at once.
- Figure 4 (b) shows the contents as stablished (description) data.
- the arrow in front represents the conversion condition when the condition search unit 4B searches, and the tip of the arrow represents the conversion content when the optimization unit 4C converts (here, since it is continuous multiple times, n is 2 or more, where n is counted by the code analyzer 4A).
- the processing data includes the object ID (obj_id), ECH ONET property (epc), data type (type), presence / absence announcement (anno), and data size (size) for the ECHONET property to be registered. ) Are arranged as many times as registration is repeated, and the number of repetitions is added.
- This command RGST_EPCS is also registered in the dictionary unit 10A. In this way, the execution code is combined into another execution code to reduce the amount of program code data and optimize it. Since multiple execution codes are executed together, the processing speed can be increased.
- FIG. 5 is a diagram illustrating another example of the optimization rule.
- the rule that “sequential assignments to different elements of the same array are replaced with the command SET_C_ARRAY that can assign values together” is stored in the optimization rule storage unit 10B as an optimization rule.
- Figure 5 (b) shows the contents as script (description) data.
- c har is the value to be assigned
- c-addr is the assignment destination address
- offset is the offset from the start address.
- n 2 or more, and the code analysis unit 4A counts it. For example, “1 BUF 0 + C!” Executes execution processing that assigns 1 to the 0th address of the address BUF force.
- the processing data is the value to be assigned (char) arranged in n (number of repetitions), “BUF” indicating the address, n in the offset, and the number of repetitions.
- the command SET_C_ARRAY is also registered in the dictionary unit 10A.
- the code analysis unit 4A analyzes the program code generated by the code generation unit 2 in the code optimization unit 4, and the condition search unit 4B Based on the optimization rule stored in the optimization rule storage unit 10B, a search is made as to whether or not there is a part that matches the conversion condition, and the optimization unit 4C determines that the condition search unit 4B matches the conversion condition. Therefore, the program execution device of the embedded device executes the execution process, etc., because the part that is determined to be converted is further converted to perform optimization and a new execution code (program code) is generated. Can be optimized to do, easy, and so on.
- the program code related to the generation of the code generation means 2 should be generated in such a way that the operator can easily evaluate the code when the code evaluation support means 3 displays the program code on the display means 20. This makes it easy for the operator to perform confirmation, correction, and the like.
- the output means 5 converts the program code into data in a format suitable for the output device, the program code can be recorded corresponding to various output device formats. In particular, if barcodes, QR codes, etc. are converted into data for printing and can be printed, program codes can be recorded on low-cost media.
- a general-purpose communication means such as a mobile phone can be used for signal transmission including the program code to the embedded device.
- FIG. 6 shows a program code generation support apparatus according to Embodiment 2 of the present invention.
- the storage capacity of the ROM that stores (stores) the program code and the storage capacity that can be used by the RAM (Random Access Memory) during execution processing are important. Therefore, in this embodiment, the conditions (execution processing environment based on the program code) of the embedded device are set and reflected when the program code is generated.
- the same reference numerals as those in the program code generation support apparatus of FIG. 1 perform the same processing operations as the means described in the first embodiment, and thus description thereof is omitted.
- FIG. 7 is a diagram illustrating an example of a screen displayed on the display unit 20 by the embedded device condition input unit 6.
- the embedded device condition input means 6 displays, for example, a screen for allowing the operator to input the characteristics, conditions, etc. of the embedded device on the display means 20 and performs setting processing of the instruction signal input from the input means 30. Send to optimization means 4 and output means 5.
- ROM storage capacity code storage capacity for storing program code
- RAM usable storage capacity usable RAM capacity
- whether or not to compress program code binary compression
- the code optimizing unit 41 of the present embodiment makes a judgment based on the ROM and RAM storage capacities of the embedded device input by the embedded device condition input unit 6 in addition to the processing of the optimization unit 4C.
- the optimization unit 4D is different from the optimization unit 4 in that the optimization unit 4D is provided instead of the optimization unit 4C. Another difference is that it has a processing data 'command identification unit 4E and a conversion unit 4F for compressing the program code.
- the processing data 'command identification unit 4E and the conversion unit 4F are configured as a part of the function of the code optimization unit 41. However, they may be independent program code compression processing units.
- the optimization unit 4D determines the part that the condition search unit 4B determines to meet the conversion condition! In this case, conversion for optimization is performed to generate a new executable code. At that time, if the number of executable codes increases, the amount of processing data increases, and the data of the new executable code becomes larger. The amount can be large. Therefore, some embedded devices When the ram execution unit performs execution processing, it may exceed the storage capacity of the RAM that temporarily stores the execution code. Therefore, when the optimization unit 4D determines that the capacity exceeds the capacity based on the usable RAM capacity data input via the embedded device condition input means 6, the data amount of each execution code is the capacity. It is generated by dividing into the following multiple executable codes.
- the processed data 'command identification unit 4E and conversion unit 4F will be Perform compression processing. Based on the above determinations, a new program code is generated.
- FIG. 8 shows compressed execution data.
- the data 'command identification unit 4E uses the dictionary unit 10A for each execution code of the program code.
- the processing data and the command are discriminated by comparing them with the dictionary stored in, using the character strings and numbers that do not match the dictionary as processing data, and using the matched character strings (scripts) as commands.
- the conversion unit 4F represents the processing data and the command as binary data, respectively.
- 2 bits are used to represent the object id
- 8 bits are used for the ECHONET property (epc)
- 3 bits are used for the property data type
- 3 bits are used for the access rule
- 1 bit is used for status announcements
- the data size is 14 bits. Assign.
- 7 bits is a predetermined data amount. For example, if the processing data is a data amount that cannot be divided by 7, for example, the remaining bits are supplemented with “0”.
- processing data For data representing processing data (hereinafter, this data is also referred to as processing data), “0” is added to each of the divided head bits, and data for determining a command (hereinafter, this data is also referred to as “processing data”). “1” is attached to “command”. That is, this is a determination bit (flag) for determining whether the command is a force command that is processing data.
- each execution code program code
- each byte code in units of 1 byte (8 bits).
- the processing data separated into the character strings of each item (element) is processed as binary data to reduce the amount of data.
- a command is represented by binary data that has a one-to-one correspondence with the command.
- the relationship between the command and the nounary data is associated and stored as data in the storage means 10, and the conversion unit 4F refers to the data when generating it.
- the number of commands is 128 or less, 1 byte is enough to distinguish the command.
- the number of commands is more than 2 bytes, it will be 2 bytes or more, but even in this case, commands that are frequently used (appear) in execution processing (eg property-related) may be 1-byte code data.
- the byte-unit code data generated by the method according to the present embodiment may be further compressed by a known bit string compression method such as a run length method.
- the output means 5 determines the format for conversion and performs the conversion. At this time, if an electronic storage medium is selected as the output medium, “no” is automatically selected for conversion to the QR code. If a print medium is selected as the output medium, “Yes” is selected for conversion to QR code.
- ROM program code is stored via a storage medium or the like.
- the program code is read in 1-byte units to determine whether the data includes commands or data that includes processed data based on the determination bit. If the data includes processed data, it is temporarily stored in RAM. Keep memorized. If it is determined that the data includes a command, it is expanded into an executable code and executed.
- an embedded device for inputting and setting the program code execution processing environment (ROM, RAM storage capacity, etc.) of the embedded device (the program execution device included in the embedded device). Since the condition input means 6 is provided and the optimization unit 4D generates a new program code based on the setting, detailed program code generation according to the characteristics and conditions of the embedded device is performed. be able to. And since it has the processing data 'command identification unit 4E and the conversion unit 4F and can perform the compression processing of the program code, it is possible to reduce the storage capacity of the ROM and reduce the cost. Can be achieved.
- the processing data and command of each execution code are identified, the processing data is combined into each element (item) to be binary data, the command is the corresponding numerical value as binary data, and each data is The data is divided into bits, and a bit for determining the data force including the data force command including the processing data is attached to each data so that the data is divided into 1-byte data.
- Each can be compressed.
- FIG. 9 is a diagram showing a program code compression process according to the third embodiment of the present invention.
- An example of the execution code is shown on the upper side of FIG. Here, it is described as text data.
- Program code consists of one or more execution codes.
- the execution code will be described. Also in the present embodiment, it is assumed that Forth is used as the language used for the program code, and the code is for performing execution processing in the ECHONET standard. In the present embodiment, it is assumed that a dictionary is stored in storage means 102 described later.
- the command RGST_EPC is described in order to execute registration processing of the property information of the embedded device.
- the object id is the id assigned to the object of the embedded device. Two bits are assigned to represent the object id.
- the ECHONET property is a property code that can be set according to the type of embedded device (for example, the air volume setting status in an air conditioner). The code value is defined by the ECHON ET standard, and 8 bits are assigned. Here, seven types of property data are prepared, and 3 bits are assigned.
- the access rule indicates whether to write (Set), read (Get), or notify, and is assigned 3 bits.
- the presence / absence of status change is an indicator (flag) that indicates whether or not the property is notified via the network when the property status changes, and is assigned 1 bit.
- the data size is to specify the data size of the property.
- the ECHONET standard sets the maximum value to 8640 bytes, and 14 bits are assigned to represent the numerical value.
- the control processing means 101 is a processing data command.
- each execution code of the program code is checked against the dictionary stored in the storage means 102, and character strings, numbers, etc. that do not match the dictionary are processed data.
- the process data and the command are identified and processed.
- the execution code for example, based on the instruction, data, etc., input by the operator using the input means force!
- the program code generator provided in the preceding stage of the data 'command identification part 101 A of the control processing means 101 may be generated, or an execution code included in a signal generated by another device and transmitted via a communication line (not necessarily related to ECHONET) is processed. Even if you do it ⁇ .
- the conversion unit 101B represents the processing data and the command in binary format data (hereinafter referred to as "noinary data"), and generates data divided for each predetermined amount of data.
- 7 bits are assumed to be a predetermined unit. For example, if the processing data is not divisible by 7, for example, add “0” to the remaining bits.
- processing data For data representing processing data (hereinafter, this data is also referred to as processing data), “0” is added to each of the divided head bits, and data for determining a command (hereinafter, this data is also referred to as data).
- “1” is attached to "Mand”). In other words, this is a determination bit (flag) for determining whether or not the force command is processing data.
- each execution code (program code) is divided into data (byte data) in units of 1 byte (8 bits).
- the processing data that has been divided into character strings of each element (item) is collected as binary data and encoded (encoded) to reduce the amount of data.
- a numerical value (code value) corresponding to the command on a one-to-one basis is represented by binary data.
- the command represented by the binary data can be determined.
- the relationship between this command and binary data is associated and stored in the storage means 102, and the conversion unit 101B refers to the data when generating data.
- the number of commands is 128 or less, 1 byte is enough to identify the command. For example, when the number of commands is more than that, the power to be more than 2 bytes.
- the amount of data related to the entire program code can be further reduced.
- the byte data generated by the method according to the present embodiment may be further compressed by a known bit string compression method such as a run length method.
- the compressed program code data generated as described above is, for example, in response to a download request in which the embedded device side force is also transmitted via the network, or on the program code compression processing device (control processing means 101) side.
- the power is also stored in the program code storage means 124 of the embedded device according to the fourth embodiment, which will be described later, through the communication means 103 and a wired or wireless communication line by active distribution.
- the processing data of each execution code and the command are identified, and the processing data is a binary data obtained by collecting each element (item), and the command is a corresponding numerical value.
- each data is divided into predetermined units (7 bits in this embodiment), and a determination bit for determining whether the data includes processing data or data including a command is attached to each data. Because it is divided into 1 byte data, processing data and command can be compressed respectively. When executing the execution process, reading can be performed for each byte, and it can be easily determined whether the data includes a force command including the processing data.
- the execution code is structured in the order of processing data and commands, so that the processing data and commands can be easily identified. it can.
- a processing device such as a one-chip microcomputer can cope with execution processing.
- the compression effect can be further enhanced by adjusting the frequency according to, for example, reducing the number of bytes including commands that are frequently used (appear) in execution processing.
- FIG. 10 shows a program execution device according to Embodiment 4 of the present invention.
- the program execution apparatus includes a code type determination unit 121, a code expansion unit 122, an execution unit 123, a program code storage unit 124, and a buffer storage unit 125. Then, an execution process based on the compressed program code generated in the third embodiment is performed. To do.
- the code type determination unit 121 reads (inputs) the compressed (encoded) program code stored in the program code storage unit 124 with a predetermined data amount.
- the predetermined data amount is 1 byte (8 bits) in accordance with the third embodiment. Then, it is determined whether or not the read data is data (command byte) including a processing command data (data byte, including a command). It is assumed that the code type determination unit 121 performs determination based on the determination bit (flag) described in the third embodiment. If it is determined that it is processing data, the processing data is stored in the buffer storage means 125, and if it is determined that it is a command, control of the processing is passed to the code expansion means 122.
- the code expansion unit 122 When the code type determination unit 121 determines that the command is a command, the code expansion unit 122 generates (decompresses and decodes) an execution code based on the processing data and the command stored in the buffer storage unit 125. When the execution code is generated, processing control is passed to the execution means 123.
- the execution unit 123 performs an execution process based on the execution code generated by the code expansion unit 122.
- the execution means 123 is an interpreter that executes a command execution process on process data while interpreting (translating) an execution code. Therefore, the program code is sequentially executed for each execution code.
- the execution means 123 has the dictionary described in the third embodiment in the storage means (not shown) in order to interpret the execution code.
- Both the program code storage means 124 and the buffer storage means 125 are storage means.
- the program code storage means 124 is a non-volatile memory.
- the storage means program code can be rewritten, such as addition, part or whole change, deletion, etc., which is not simple ROM. For example, EPROM, EEPROM, etc.
- the communication means (not shown) of the embedded device receives the signal including the program code, for example, by downloading via the network, and stores the program code.
- the buffer storage means 125 is, for example, a volatile memory.
- the buffer storage means 125 is a temporary storage means for storing at least processing data until the code decompression means 122 generates an execution code, and is not left if the next processing data is input. Therefore, the memory capacity of the noffer storage means 125 is arbitrary. Preferably, the processing data portion (or execution code) of the execution code that the embedded device (program execution device) executes at a time is stored. The maximum storage capacity possible.
- compressed program code data for execution processing is read for each byte, and it is determined whether a force command that is included in the data is processing data. . If it is processing data, it is stored in the buffer storage means 125, and if it is determined that it is a command, the decompression means 122 uses the processing data and command stored in the buffer storage means 125 as execution codes. The execution means 123 executes the execution code. Thus, execution processing for each execution code is performed based on the compressed program code stored in the program code storage means 124 by the program execution device.
- the execution code (program code) for which execution processing has been completed should not be left inadvertently in the buffer storage means 125 such as RAM, and processing data (or execution data for execution code required for one execution processing).
- the storage capacity of the notch storage means 125 is suppressed so as not to exceed the amount necessary for temporarily storing the code).
- the code type determining means 121, the code decompressing means 122, and the executing means 123 may be configured by physically independent means.
- the program execution device is configured by a computer such as a so-called microcomputer. These means are composed of, for example, a control processing device centered on a CPU. Then, the control processing device executes the processing of each means, thereby realizing the execution processing of the program execution device.
- FIG. 11 is a flowchart showing the operation when executing the execution process in the program execution device.
- the code type determination unit 121 reads the compressed program code data from the program code storage unit 124 in units of 1 byte (Sl). Then, the code type determination unit 121 determines whether the read data is a command depending on whether the determination bit described in the first embodiment is “0” or “Kano'1”. Whether it is a command or processing data (whether it is a command) is determined (S2). If it is determined that it is processing data (not a command), it is stored in the buffer storage unit 125 after removing the determination bit (S3), and further compressed program code data is read in 1-byte units. (Sl).
- control is passed to the code decompression means 122.
- the code decompression means 122 determines a command represented by the data and converts it into a script format command. For this determination, the relationship between the binary data and commands described in the first embodiment is used. If the command can be determined, the element (item) of the processing data that the command performs processing and the amount of data (number of bits) allocated are determined. Therefore, each element (item) is determined based on the binary data of the processing data. ) Processing data.
- the decompression process as described above is performed to generate an execution code (S4).
- the compressed program code data is read from program code storage means 124 with a predetermined data amount (1 byte in this embodiment), and the code type If the determination means 121 determines that the data includes processing data, the processing data is temporarily stored in the notifier storage means 125, and if it is determined that the data includes a command, then the code Since the decompression unit 122 generates an execution code and the execution unit 123 performs an execution process based on the execution code, the buffer storage unit 125 simply stores the processing data until the execution code is generated. Thus, the storage capacity to be provided as the buffer storage means 125 can be reduced.
- the program execution device Since the entire processing of the program execution device from the reading of the generated program code to the execution processing of the execution code is simple, the generated execution code (program code) can be saved even if it does not have power Can be prevented. As described above, the program execution device according to the present embodiment can achieve both the reduction of the storage capacity related to the processing and the maintenance of the execution processing speed, so that the demand for cost control for operation control is high. This is especially effective when incorporated. In addition, since a signal including compressed program code data is transmitted to an embedded device via a communication line so that the data in the program code storage means 124 can be rewritten, the program code storage means 1 24 program code Can be kept up to date and more efficient and more advanced.
- FIG. 12 is a diagram showing the data structure of the compressed executable code according to the fifth embodiment of the present invention.
- the processing data converted into binary data is divided every 7 bits from the beginning (so-called left justification in the indicated data string), and if the processing data cannot be divided by 7, the remainder is left. The remaining bits were supplemented with "0".
- Fig. 12 (b) data representing the number of bytes of data not including the command is included in 1-byte data (data not including the command) that is read first.
- the code type determination unit 121 can determine whether the data includes a command.
- 5 bits (numerical values from 0 to 31) are allocated to the data to represent the number of bytes of processing data. This eliminates the need for a determination bit for each byte data. Therefore, the number of data bytes (including The more efficient the compression, the higher the number of dots). Since the number of bytes of processing data is known and the command follows the processing data, there is no need to provide a judgment bit for the command. As a result, the number of commands that can be discriminated by 1 byte, for example, is doubled compared to the case where determination bits are provided. Therefore, it is effective even when the number of commands is large.
- the program code is described in a language based on the reverse Polish notation
- the execution means 123 is an interpreter that interprets the description and executes execution processing.
- interpreter is JavaVM (or JVM (Java, Java Virtual Machine JVM is a trademark or registered trademark of Sun Microsyst ems, Inc. in the United States and other countries).
- JVM Java Virtual Machine JVM is a trademark or registered trademark of Sun Microsyst ems, Inc. in the United States and other countries.
- As a processing system it may be possible to generate more advanced code by making it applicable to more general-purpose languages.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
Claims
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006800040337A CN101116054B (zh) | 2005-02-03 | 2006-02-02 | 程序码生成支持装置及方法、程序执行装置及方法、程序码压缩装置及方法及其程序 |
ES06712888.4T ES2687433T3 (es) | 2005-02-03 | 2006-02-02 | Dispositivo y método de soporte de la generación de código de programa, dispositivo y método de ejecución del programa, dispositivo y método de compresión del código de programa, programa para el mismo |
EP09014774.5A EP2161659B1 (en) | 2005-02-03 | 2006-02-02 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
EP06712888.4A EP1881401B1 (en) | 2005-02-03 | 2006-02-02 | Program code generation support device and method, program execution device and method, program code compression device and method, program for the same |
US11/883,627 US8448158B2 (en) | 2005-02-03 | 2006-02-02 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
EP10014002.9A EP2330502B1 (en) | 2005-02-03 | 2006-02-02 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
TW095103700A TWI312482B (en) | 2005-02-03 | 2006-02-03 | Program codes generation supporting device and method, program execution device and method, program codes compressing processing device and method, and computer readable recording medium with its recorded program thereof |
US13/195,107 US8527967B2 (en) | 2005-02-03 | 2011-08-01 | Program code compression processing device and method and program thereof |
US13/195,073 US8572557B2 (en) | 2005-02-03 | 2011-08-01 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005028122A JP4638250B2 (ja) | 2005-02-03 | 2005-02-03 | プログラムコード生成支援装置及び方法並びにプログラムコード生成支援方法のプログラム |
JP2005-028123 | 2005-02-03 | ||
JP2005028123A JP4656960B2 (ja) | 2005-02-03 | 2005-02-03 | プログラム実行装置、方法及びプログラム実行方法のプログラム並びにプログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム |
JP2005-028122 | 2005-02-03 |
Related Child Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/883,627 A-371-Of-International US8448158B2 (en) | 2005-02-03 | 2006-02-02 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
US13/195,073 Division US8572557B2 (en) | 2005-02-03 | 2011-08-01 | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
US13/195,107 Division US8527967B2 (en) | 2005-02-03 | 2011-08-01 | Program code compression processing device and method and program thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2006082878A1 true WO2006082878A1 (ja) | 2006-08-10 |
Family
ID=36777261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2006/301745 WO2006082878A1 (ja) | 2005-02-03 | 2006-02-02 | プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム |
Country Status (7)
Country | Link |
---|---|
US (2) | US8527967B2 (ja) |
EP (3) | EP1881401B1 (ja) |
KR (1) | KR100902461B1 (ja) |
ES (3) | ES2728318T3 (ja) |
HK (1) | HK1130916A1 (ja) |
TW (1) | TWI312482B (ja) |
WO (1) | WO2006082878A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006082878A1 (ja) | 2005-02-03 | 2006-08-10 | Mitsubishi Denki Kabushiki Kaisha | プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム |
US9087151B2 (en) * | 2009-02-18 | 2015-07-21 | Mitsubishi Electric Corporation | Program analysis support device |
WO2012046460A1 (ja) * | 2010-10-04 | 2012-04-12 | 三菱電機株式会社 | ソフトウエア生成装置、ソフトウエア生成方法及びプログラム |
KR101940265B1 (ko) * | 2012-05-23 | 2019-01-18 | 충남대학교산학협력단 | 명령어 집합 아키텍처 자동 맵핑 기법 |
JP6185148B2 (ja) * | 2014-03-25 | 2017-08-23 | 株式会社日立製作所 | ソフトウェア仕様間依存関係検証装置、及びソフトウェア仕様間依存関係検証方法 |
KR102243532B1 (ko) * | 2019-02-08 | 2021-04-22 | 주식회사 센스톤 | 칩 고유값 기반의 가상코드를 이용하여 장치를 식별하는 방법, 프로그램 및 장치 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63139646U (ja) * | 1987-02-28 | 1988-09-14 | ||
JPH04130541A (ja) * | 1990-09-20 | 1992-05-01 | Fujikura Ltd | Basicインタプリタ |
JPH0721032A (ja) * | 1993-07-01 | 1995-01-24 | Mitsubishi Electric Corp | プログラム最適化処理方式 |
JP2000020318A (ja) * | 1998-07-03 | 2000-01-21 | Fujitsu Ltd | メモリアクセス命令削減装置および記録媒体 |
JP2002318696A (ja) | 2001-04-23 | 2002-10-31 | Mitsubishi Electric Corp | プログラム実行装置および方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61204741A (ja) | 1985-03-06 | 1986-09-10 | Nec Corp | ソ−スプログラムの圧縮方法 |
JPS63139646A (ja) | 1986-11-27 | 1988-06-11 | Nec Corp | 手順表管理方式 |
US5452457A (en) | 1993-01-29 | 1995-09-19 | International Business Machines Corporation | Program construct and methods/systems for optimizing assembled code for execution |
JPH06314203A (ja) | 1993-04-28 | 1994-11-08 | Fujitsu Ltd | コンパイラの最適化方法および装置 |
US6064819A (en) * | 1993-12-08 | 2000-05-16 | Imec | Control flow and memory management optimization |
JP2755154B2 (ja) | 1994-02-23 | 1998-05-20 | 日本電気株式会社 | プログラム変換処理装置およびプログラム変換処理方法 |
JPH0916382A (ja) | 1995-06-30 | 1997-01-17 | Oki Electric Ind Co Ltd | プログラム開発支援システム |
US6216213B1 (en) | 1996-06-07 | 2001-04-10 | Motorola, Inc. | Method and apparatus for compression, decompression, and execution of program code |
JP3728858B2 (ja) | 1996-12-20 | 2005-12-21 | ソニー株式会社 | 演算装置の演算方法、記憶媒体及び演算装置 |
EP0867808B1 (en) * | 1997-03-29 | 2002-04-10 | IMEC vzw | Method and apparatus for size optimisation of storage units |
JPH10320172A (ja) | 1997-05-15 | 1998-12-04 | Seiko Epson Corp | プログラム圧縮方法およびプログラム復号方法ならびにプログラム格納装置 |
WO1999030229A1 (en) | 1997-12-11 | 1999-06-17 | Digits Corp. | Object code analysis and remediation system and method |
JP2000278672A (ja) | 1999-01-21 | 2000-10-06 | Matsushita Electric Ind Co Ltd | ネットワーク型監視装置 |
JP2000305781A (ja) | 1999-04-21 | 2000-11-02 | Mitsubishi Electric Corp | Vliw方式プロセッサ、コード圧縮装置、コード圧縮方法およびコード圧縮プログラムを記録した媒体 |
JP4462676B2 (ja) | 1999-10-27 | 2010-05-12 | 富士通株式会社 | プログラム変換装置、コンパイラ装置およびプログラム変換プログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6691305B1 (en) | 1999-11-10 | 2004-02-10 | Nec Corporation | Object code compression using different schemes for different instruction types |
US6516305B1 (en) * | 2000-01-14 | 2003-02-04 | Microsoft Corporation | Automatic inference of models for statistical code compression |
JP2002099312A (ja) | 2000-09-22 | 2002-04-05 | Mitsubishi Electric Corp | プログラマブルコントローラおよび制御プログラム開発支援装置 |
US6823504B1 (en) * | 2000-11-15 | 2004-11-23 | Sun Microsystems, Inc. | Method and apparatus for interfacing a javascript interpreter with library of host objects implemented in java |
FR2827974B1 (fr) | 2001-07-26 | 2005-02-11 | Trusted Logic | Procede pour la compression d'un code interprete par analyse semantique |
US6920550B2 (en) | 2001-11-15 | 2005-07-19 | Hewlett-Packard Development Company, L.P. | System and method for decoding and executing program binaries |
JP3956131B2 (ja) | 2002-12-26 | 2007-08-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プログラム変換装置、プログラム変換方法及びプログラム |
WO2006082878A1 (ja) | 2005-02-03 | 2006-08-10 | Mitsubishi Denki Kabushiki Kaisha | プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム |
US8448158B2 (en) | 2005-02-03 | 2013-05-21 | Mitsubishi Electric Corporation | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
-
2006
- 2006-02-02 WO PCT/JP2006/301745 patent/WO2006082878A1/ja active Application Filing
- 2006-02-02 EP EP06712888.4A patent/EP1881401B1/en not_active Not-in-force
- 2006-02-02 ES ES09014774T patent/ES2728318T3/es active Active
- 2006-02-02 EP EP09014774.5A patent/EP2161659B1/en not_active Not-in-force
- 2006-02-02 ES ES10014002T patent/ES2708499T3/es active Active
- 2006-02-02 KR KR1020077016934A patent/KR100902461B1/ko active IP Right Grant
- 2006-02-02 EP EP10014002.9A patent/EP2330502B1/en not_active Not-in-force
- 2006-02-02 ES ES06712888.4T patent/ES2687433T3/es active Active
- 2006-02-03 TW TW095103700A patent/TWI312482B/zh not_active IP Right Cessation
-
2009
- 2009-09-25 HK HK09108809.5A patent/HK1130916A1/xx not_active IP Right Cessation
-
2011
- 2011-08-01 US US13/195,107 patent/US8527967B2/en active Active
- 2011-08-01 US US13/195,073 patent/US8572557B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63139646U (ja) * | 1987-02-28 | 1988-09-14 | ||
JPH04130541A (ja) * | 1990-09-20 | 1992-05-01 | Fujikura Ltd | Basicインタプリタ |
JPH0721032A (ja) * | 1993-07-01 | 1995-01-24 | Mitsubishi Electric Corp | プログラム最適化処理方式 |
JP2000020318A (ja) * | 1998-07-03 | 2000-01-21 | Fujitsu Ltd | メモリアクセス命令削減装置および記録媒体 |
JP2002318696A (ja) | 2001-04-23 | 2002-10-31 | Mitsubishi Electric Corp | プログラム実行装置および方法 |
Non-Patent Citations (2)
Title |
---|
HIKICHI N. ET AL.: "Compilers for Embedded System", IEICE, 23 April 1998 (1998-04-23), pages 63 - 70, XP002998020 * |
See also references of EP1881401A4 |
Also Published As
Publication number | Publication date |
---|---|
HK1130916A1 (en) | 2010-01-08 |
EP1881401B1 (en) | 2018-08-08 |
EP2330502B1 (en) | 2018-12-05 |
EP2161659B1 (en) | 2019-05-01 |
ES2687433T3 (es) | 2018-10-25 |
US8527967B2 (en) | 2013-09-03 |
EP2161659A1 (en) | 2010-03-10 |
KR20070088810A (ko) | 2007-08-29 |
EP1881401A4 (en) | 2009-03-11 |
TWI312482B (en) | 2009-07-21 |
ES2728318T3 (es) | 2019-10-23 |
US20110289492A1 (en) | 2011-11-24 |
ES2708499T3 (es) | 2019-04-09 |
EP1881401A1 (en) | 2008-01-23 |
US20110283255A1 (en) | 2011-11-17 |
KR100902461B1 (ko) | 2009-06-11 |
EP2330502A1 (en) | 2011-06-08 |
US8572557B2 (en) | 2013-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4638250B2 (ja) | プログラムコード生成支援装置及び方法並びにプログラムコード生成支援方法のプログラム | |
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 | |
WO2006082878A1 (ja) | プログラムコード生成支援装置及び方法、プログラム実行装置及び方法並びにプログラムコード圧縮処理装置及び方法並びにそれらのプログラム | |
US8438558B1 (en) | System and method of updating programs and data | |
JP2002529849A (ja) | データ処理リソースを供給された内蔵システムにおいて実行可能な中間オブジェクトコードプログラムのためのデータ圧縮方法、および、この方法に対応しかつマルチアプリケーションを備えた内蔵システム | |
CN105808513B (zh) | 转换装置和转换方法 | |
US9496891B2 (en) | Compression device, compression method, decompression device, decompression method, and computer-readable recording medium | |
US4694420A (en) | Inverse assembly method and apparatus | |
EP1990737B1 (en) | Document transformation system | |
CN113672504B (zh) | 一种智能设备测试方法、装置、设备以及存储介质 | |
EP3236368A1 (en) | Encoding processing program, encoding processing device, encoding processing method, decoding processing program, decoding processing device, and decoding processing method | |
CN111241130A (zh) | 一种基于sql语言的语法语句的扩展方法及系统 | |
US11323132B2 (en) | Encoding method and encoding apparatus | |
CN116360788A (zh) | 结构化文本编程语言的编译方法、编译器及电子设备 | |
CN112835925B (zh) | 一种嵌入式芯片sql语句解析方法 | |
JP2006215827A (ja) | プログラム実行装置、方法及びプログラム実行方法のプログラム並びにプログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム | |
JP2010282248A (ja) | プログラム言語解析実行プログラム | |
JP2011076619A (ja) | プログラムコード圧縮装置、方法及びプログラムコード圧縮方法のプログラム | |
CN113759884B (zh) | 一种分散控制系统输入输出点产物文件生成方法和系统 | |
CN111722852B (en) | Firmware burning method, equipment and computer readable storage medium | |
CN114817688A (zh) | 用户信息加载方法、装置、电子设备及存储介质 | |
CN117349475A (zh) | 数据的处理方法、装置、电子设备和可读存储介质 | |
JPH0451333A (ja) | ダンププログラム実行装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2006712888 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020077016934 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 200680004033.7 Country of ref document: CN Ref document number: 11883627 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWP | Wipo information: published in national office |
Ref document number: 2006712888 Country of ref document: EP |