JPH05224918A - Self-change code realizing system - Google Patents
Self-change code realizing systemInfo
- Publication number
- JPH05224918A JPH05224918A JP5942992A JP5942992A JPH05224918A JP H05224918 A JPH05224918 A JP H05224918A JP 5942992 A JP5942992 A JP 5942992A JP 5942992 A JP5942992 A JP 5942992A JP H05224918 A JPH05224918 A JP H05224918A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- self
- register
- unit
- executing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は計算機システム上の命令
実行方式に関し、特に命令解析処理方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an instruction execution system on a computer system, and more particularly to an instruction analysis processing system.
【0002】[0002]
【従来の技術】従来の計算機システムでの自己変更コー
ドは、命令列を書き換える形で行っていた。この方式は
高速化技術としては高い効率を示すものの、処理が理解
し難い、リエントラントではなくなる、命令キャッシュ
を持つ計算機システムでは実行不可能などの理由で、実
際には使用されなくなっていた。2. Description of the Related Art Self-modifying code in a conventional computer system is performed by rewriting an instruction sequence. Although this method is highly efficient as a speed-up technology, it has not been used in practice because it is difficult to understand, it is no longer reentrant, and it cannot be executed by a computer system with an instruction cache.
【0003】[0003]
【発明が解決しようとする課題】解決しようとする課題
は、自己変更コードが使用され難い点である。The problem to be solved is that the self-modifying code is difficult to use.
【0004】[0004]
【課題を解決するための手段】本発明は、レジスタ上に
命令解析部を備えて命令列を置き換える点を特徴とす
る。The present invention is characterized in that an instruction analysis unit is provided on a register to replace an instruction sequence.
【0005】[0005]
【実施例】次に、本発明について図面を参照して詳細に
説明する。図1は、本発明による自己変更コード実現方
式の一実施例を実現する中央処理装置の内容を示す。図
1を参照すると、本発明は命令読み込み部11と、命令
解析部12と、命令実行部13とから成る中央処理装置
1によって構成される。図1に示す命令解析部12の処
理のフローチャートを図2に示す。The present invention will be described in detail with reference to the drawings. FIG. 1 shows the contents of a central processing unit for realizing an embodiment of a self-modifying code realizing system according to the present invention. Referring to FIG. 1, the present invention includes a central processing unit 1 including an instruction reading unit 11, an instruction analyzing unit 12, and an instruction executing unit 13. FIG. 2 shows a flowchart of processing of the instruction analysis unit 12 shown in FIG.
【0006】現在では、命令列の処理の難解さは、プロ
グラミングの高級言語化によって、一般ユーザの問題で
はなくなり、コンパイラ設計者のみの問題となり、従来
のマイクロプログラムに相当するようになった。また、
高級言語化が達成されたため、自己変更コードによる高
速化をコンパイラ設計者が考えることによって、広くユ
ーザが高速化の恩恵を得るようになった。そこで残る問
題は、リエントラント化と命令キャッシュとの問題であ
る。本発明の自己変更コード実現方式では、レジスタの
内容を命令として実行するため、命令解析部12を有す
る中央処理装置1を使うことによって直接命令列の書き
換えを避け、2つの問題を解決している。At present, the difficulty of processing an instruction sequence is no longer a problem for general users due to the high-level programming, and it is a problem only for compiler designers and has come to correspond to a conventional microprogram. Also,
Since the high-level language has been achieved, the compiler designers have come to benefit from the speedup widely by considering the speedup by the self-modifying code. The remaining problems are reentrancy and instruction cache. In the self-modifying code implementation method of the present invention, since the contents of the register are executed as an instruction, direct rewriting of the instruction sequence is avoided by using the central processing unit 1 having the instruction analysis unit 12 and two problems are solved. .
【0007】図2の命令解析部フローチャートに従って
命令解析部12について説明する。命令解析部12は、
命令がレジスタ上の命令実行命令である場合には、命令
をレジスタの内容で書き換えて通常の命令解析部へ制御
を渡すが、命令がレジスタ上の命令実行命令ではない場
合には、制御は直接、命令解析部12へ行く。命令解析
部12によって上述の問題を解決すれば、自己変更コー
ドによる柔軟な高速化が図れる。The instruction analyzing unit 12 will be described with reference to the instruction analyzing unit flowchart of FIG. The instruction analysis unit 12
When the instruction is the instruction execution instruction on the register, the instruction is rewritten with the contents of the register and the control is passed to the normal instruction analysis unit. However, when the instruction is not the instruction execution instruction on the register, the control is directly performed. , Go to the instruction analysis unit 12. If the instruction analysis unit 12 solves the above-mentioned problem, the speed can be flexibly increased by the self-modifying code.
【0008】[0008]
【発明の効果】以上説明したように、本発明の計算機シ
ステムでの自己変更コード実現方式では、レジスタ上の
値を実行する命令によって、処理が高速化される効果が
ある。As described above, in the self-modifying code implementation method for the computer system of the present invention, the processing speed is increased by the instruction for executing the value in the register.
【図1】本発明による自己変更コード実現方式の一実施
例を実現する中央処理装置の内容を示す。FIG. 1 shows the contents of a central processing unit for realizing an embodiment of a self-modifying code realizing system according to the present invention.
【図2】図1に示す命令解析部の処理を示すフローチャ
ートである。FIG. 2 is a flowchart showing a process of an instruction analysis unit shown in FIG.
1 中央処理装置 11 命令読み込み部 12 命令解析部 13 命令実行部 1 Central Processing Unit 11 Instruction Reading Unit 12 Instruction Analysis Unit 13 Instruction Execution Unit
Claims (3)
と、 前記命令を解析するための命令解析部と、 前記命令解析部による前記命令の解析結果に従って前記
命令を実行するための命令実行部とを備えた中央処理装
置により実現される自己変更コード実現方式。1. An instruction reading unit for reading an instruction, an instruction analysis unit for analyzing the instruction, and an instruction execution unit for executing the instruction according to a result of analysis of the instruction by the instruction analysis unit. A self-modifying code implementation method implemented by the central processing unit.
の自己変更コードをレジスタ上の値を命令として実行す
るように構成した請求項1の自己変更コード実現方式。2. The self-modifying code realizing method according to claim 1, wherein the instruction analyzing unit is configured to execute the self-modifying code in the form of rewriting an instruction sequence in a computer system, using a value in a register as an instruction. .
よび前記命令実行部は前記中央処理装置の内部でソフト
ウェアの助けにより実現されることを特徴とする請求項
1の自己変更コード実現方式。3. The self-modifying code realizing method according to claim 1, wherein the instruction reading unit, the instruction analyzing unit, and the instruction executing unit are realized inside the central processing unit with the help of software.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5942992A JPH05224918A (en) | 1992-02-13 | 1992-02-13 | Self-change code realizing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5942992A JPH05224918A (en) | 1992-02-13 | 1992-02-13 | Self-change code realizing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05224918A true JPH05224918A (en) | 1993-09-03 |
Family
ID=13113020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5942992A Pending JPH05224918A (en) | 1992-02-13 | 1992-02-13 | Self-change code realizing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05224918A (en) |
-
1992
- 1992-02-13 JP JP5942992A patent/JPH05224918A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6212529B2 (en) | ||
JPH05224918A (en) | Self-change code realizing system | |
Li-Thiao-Té | Literate program execution for reproducible research and executable papers | |
JPS61245239A (en) | Logical circuit system | |
JPS5922140A (en) | Interactive compiling system | |
JP2001255912A (en) | Method for executing motion program | |
Lloyd et al. | Design considerations for microprogramming languages | |
JPS5922143A (en) | Fast interpreter system | |
JPS63262726A (en) | Translation processing system for designated program | |
JPH03144832A (en) | Symbolic debugging device for precompiler language program | |
JPS5829051A (en) | Operation processing device | |
JPS6353643A (en) | Instruction control device | |
JPS63186333A (en) | Scheduling processing system for instruction to local branching instruction | |
JPS63178343A (en) | System for setting interrupting point | |
Rutter | Using a high level language as a cross assembler | |
JPS5971542A (en) | Arithmetic processor | |
JPH01158534A (en) | Generating system for source program | |
JPH01196639A (en) | Information processor | |
JPS61208142A (en) | Communication system between processes | |
JPS60134335A (en) | Printing method of source program | |
JPH0683630A (en) | Automatic program converting device | |
JPS634338A (en) | Function call system | |
JPH0658632B2 (en) | Data processing device | |
JPH06119203A (en) | Debugging line deleting device | |
Chu | Design Concepts of Japanese-Language Data Processing Systems |