JPS61169937A - Expansion system of microprocessor instruction - Google Patents

Expansion system of microprocessor instruction

Info

Publication number
JPS61169937A
JPS61169937A JP1012285A JP1012285A JPS61169937A JP S61169937 A JPS61169937 A JP S61169937A JP 1012285 A JP1012285 A JP 1012285A JP 1012285 A JP1012285 A JP 1012285A JP S61169937 A JPS61169937 A JP S61169937A
Authority
JP
Japan
Prior art keywords
instruction
address
register
hexadecimal
contents
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
Application number
JP1012285A
Other languages
Japanese (ja)
Inventor
Hiroo Mikojima
博雄 神子嶋
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP1012285A priority Critical patent/JPS61169937A/en
Publication of JPS61169937A publication Critical patent/JPS61169937A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To reduce the capacity of memory to be used sharply by using a specific instruction as an expanded instruction. CONSTITUTION:When the instruction is read from an objective program storing means 101 to a microprocessor 100, the instruction is decoded by a logic circuit in a physical instruction analyzing means 106. The decoded signal is decomposed to a signal corresponding to the instruction and the signal is executed by an instruction executing means 107 except restart. A signal 122 is obtained by decoding a restart instruction which is the 1st byte of expanded instructions and executed by a restart executing means 108 and then the address of an expanded instruction analyzing means 103 is set up in an address register 109. The means 103 analyzes the 2nd byte of the expanded instructions. A return address setting means 104 decides the instruction length of the expanded instructions and sets up the leading address of the instruction next to the expanded instructions on the objective program as a return address and an expanded instruction executing means 105 executes the expanded instructions analyzed by the means 103.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、マイクロプロセッサの命令の拡張方式に関す
る。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to an instruction extension method for a microprocessor.

(従来の技術) 従来マイクロプロセッサのプログラム記述は、命令がマ
イクロプロセッサの機械語に1対1で対応するアセンブ
ラ言語と、よプ高級な命令で記述されるコンパイラ−言
語(C0DOL、FO几TRAN等)とインタープリタ
方式により高級な命令を実行時に翻訳しながら処理する
もの(Ba5ic等)などによるものが代表的である。
(Prior Art) Conventionally, programs for microprocessors are written using an assembly language in which instructions have a one-to-one correspondence with the machine language of the microprocessor, and a compiler language (such as C0DOL, FOTRAN, etc.) in which instructions are written using higher-level instructions. ) and those that use an interpreter method to process high-level instructions while translating them during execution (such as Ba5ic) are typical examples.

しかし、コンパイラ方式、インタプリタ方式は、マイク
ロプロセッサの機械語に1対1に対応しないため比較的
自由に命令を作シ出せるが、アセンブラ言語は命令作成
の自由度がマイクロプロセッサの物理的命令語(機械1
11’)IICよシ制限されている。
However, compiler and interpreter methods do not have a one-to-one correspondence with the microprocessor's machine language, so they can create instructions relatively freely, whereas assembler language has a higher degree of freedom in creating instructions than the microprocessor's physical instruction words ( Machine 1
11') Limited to IIC.

(発明が解決しようとする問題点) 上記のようにアセンブラ言語の命令拡張法がマイクロプ
ロセッサの機械語により制限されているという問題点を
本発明は解決し特定の命令を利用した拡張命令を実行可
能な構成として新たな拡張命令を作成しプログラムの要
するメモリ容量を削減できるマイクロプロセッサ命令の
拡張方式を提供するものである。
(Problems to be Solved by the Invention) As mentioned above, the present invention solves the problem that the instruction extension method of the assembly language is limited by the machine language of the microprocessor, and executes the extension instruction using a specific instruction. The present invention provides a microprocessor instruction extension method that can reduce the memory capacity required by a program by creating new extension instructions as a possible configuration.

(問題点を解決するための手段) 本発明の方式は命令を解析する命令解析手段と、前記命
令解析手段により予め定めた特定命令であることが検知
されたときには前記特定命令とその従属部とからなる特
殊命令の実行につづいて次に実行すべき命令を格納する
メモリのアドレスを設定する戻りアドレス設定手段と、
前記特殊命令の供給をうけてこれを解析する特殊命令解
析手段と、前記特殊命令解析手段の解析結果にもとづき
前記特殊命令を実行し実行後に前記戻りアドレスに格納
されている命令に実行を移行する特殊命令実行手段とを
含み前記特定命令を前記特殊命令に拡張実行して構成さ
れる。
(Means for Solving Problems) The system of the present invention includes an instruction analysis means for analyzing an instruction, and when the instruction analysis means detects that the instruction is a predetermined specific instruction, the specific instruction and its subordinate parts are analyzed. return address setting means for setting a memory address for storing an instruction to be executed next following execution of the special instruction consisting of;
a special instruction analysis means for receiving and analyzing the special instruction; and executing the special instruction based on the analysis result of the special instruction analysis means and transferring execution to the instruction stored at the return address after execution. and a special instruction execution means, and is configured to extend and execute the specific instruction into the special instruction.

(実施例) 次に、本発明の実施例について図面を参照して詳細に説
明する。
(Example) Next, an example of the present invention will be described in detail with reference to the drawings.

第1図は、本発明の一実施例の構成を示している。FIG. 1 shows the configuration of an embodiment of the present invention.

通常、マイクロプロセッサシステムを各種装置等に組込
み、装置の機能をマイクロプロセッサの実行するプログ
ラムとして記述することにより、比較的自由に機能の変
更が可能となる。ここでは、この様な装置の機能記述プ
ログラムを目的プログラムとよぶ。
Usually, by incorporating a microprocessor system into various devices and writing the functions of the device as a program to be executed by the microprocessor, the functions can be changed relatively freely. Here, such a device function description program is referred to as a target program.

第1図において参照数字101は、目的プログラムを記
憶する目的プログラム記憶手段であシ、マイクロプロセ
ッサ100は、アドレスレジスタ109に目的プログラ
ム記憶手段101の読出番地全設定し、アドレスライン
121により目的プログラム記憶手段101に番地な与
える。参照数字102は目的プログラムに含まれる、拡
張命令を管理するための拡張命令管理用記憶手段で、そ
こには拡張命令解析手段103.戻りアドレス設定手段
104.および拡張命令実行手段105が含まれ、アド
レスレジスタ109で続出番地が設定される。なお目的
プログラム記憶手段101と拡張命令管理用記憶手段1
02とは別の番地が設定されており、目的プログラム記
憶手段101または拡張命令管理用記憶手段102のい
づれt−読出すかは、アドレスレジスタ109の内容に
より決定する。
In FIG. 1, reference numeral 101 indicates a target program storage means for storing a target program. An address is given to the means 101. Reference numeral 102 is an extended instruction management storage means included in the target program for managing extended instructions, and includes extended instruction analysis means 103. Return address setting means 104. and extended instruction execution means 105, and successive addresses are set in an address register 109. Note that the target program storage means 101 and the extended instruction management storage means 1
An address different from 02 is set, and whether the target program storage means 101 or the extended instruction management storage means 102 is to be read is determined by the contents of the address register 109.

次に目的プログラム記憶手段101よシ命令がマイクロ
プロセッサ100に読込まれると、物理的命令解析手段
106の論理回路によりブコードされ、命令に対応した
信号に分解され、リスタート以外の命令実行手段107
で実行される。信号122は本実施例の拡張命令(本実
施例では拡張される命令としてリスタート命令を例にと
る)の第1バイト目にあたるリスタート命令をデコード
した信号であり、リスタート実行手段108により実行
処理され、その結果として、アドレスレジスタ109に
対して拡張命令解析手段103の番地を設定する。
Next, when the instruction from the target program storage means 101 is read into the microprocessor 100, it is coded by the logic circuit of the physical instruction analysis means 106, decomposed into signals corresponding to the instruction, and the instruction execution means 107 other than restarting.
is executed. The signal 122 is a signal obtained by decoding the restart instruction corresponding to the first byte of the extended instruction of this embodiment (in this embodiment, a restart instruction is taken as an example of an extended instruction), and is executed by the restart execution means 108. As a result, the address of the extended instruction analysis means 103 is set in the address register 109.

拡張命令解析手段103は、拡張命令の第2バイト目を
解析する。次に1戻りアドレス設定手段104は拡張命
令の命令長を判断し、目的プログラム上での拡張命令の
次の命令の先頭番地を、戻υ番地として設定する。拡張
命令実行手段105は上記拡張命令解析手段103で解
析された拡張命令を実行する手段である。
The extended instruction analysis means 103 analyzes the second byte of the extended instruction. Next, the 1 return address setting means 104 determines the instruction length of the extended instruction and sets the starting address of the next instruction of the extended instruction on the target program as the return υ address. The extended instruction execution means 105 is a means for executing the extended instruction analyzed by the extended instruction analysis means 103.

第2図は第1図の詳細ブロック図である。第2図の参照
数字IFiマイクロプロセッサユニットであり、参照数
字2はメモリ部で配憶手段となっている。さらに第5図
にはこのメモリ部2の詳細が示してあり、第6図にはメ
モリ部の記憶内容が示しである。第6図において第6図
(a)は読出し専用メモリ部であり、仁れは回路結線に
より、一意的にアドレスに対しデータが対応し、アドレ
スおよびデータは16進法の数値を使用して表現されて
いる。第6@争)はリード/ライトメモリ部でありマイ
クロプロセッサにより自由に書込、続出が出来、図示の
内容は処理中のある時点におけるもので、処理の進行く
よυ変化しうるものである。第7図および第9図は、上
記メモリの内容をマイクロプロセッサの命令と対応づけ
て表現したものである。
FIG. 2 is a detailed block diagram of FIG. 1. The reference numeral 2 in FIG. 2 is an IFi microprocessor unit, and the reference numeral 2 is a memory section serving as storage means. Further, FIG. 5 shows details of this memory section 2, and FIG. 6 shows the stored contents of the memory section. In Fig. 6, Fig. 6(a) is a read-only memory section, where data uniquely corresponds to addresses due to circuit connections, and addresses and data are expressed using hexadecimal numbers. has been done. No. 6 (Contest) is a read/write memory section that can be freely written and written by the microprocessor, and the contents shown are at a certain point in time during processing, and may change as the processing progresses. . 7 and 9 represent the contents of the memory in association with instructions of the microprocessor.

次に拡張命令に関して説明する。拡張命令とは目的プロ
グラム中に存在し、リスタート命令と拡張命令解析部5
0.戻プアドレス設定部51および拡張命令実行部52
の機能とが組合されることで、初めて命令としての機能
を得ることが出来る命令である。上記組合せ無しに拡張
命令を目的プログラム上に記載して実行した場合にはマ
イクロプロセッサは拡張命令を読出した時点で目的プロ
グラムの正常実行が出来なくなる。
Next, extended instructions will be explained. Extended instructions exist in the target program, and include restart instructions and extended instruction analysis unit 5.
0. Return address setting unit 51 and extended instruction execution unit 52
It is an instruction that can only obtain the function of an instruction by combining it with the function of . If extended instructions are written and executed on the target program without the above combination, the microprocessor will be unable to normally execute the target program at the time the extended instructions are read.

次に、拡張命令の動作を説明する。Next, the operation of the extended instruction will be explained.

第7図はフラグセットのプログラムを機械語とそれに対
応するアセ/プル言語とを対照的に記述したものであり
、第7図の上から順に拡張命令解析部、戻りアドレス設
定部、拡張命令実行部、目的プログラムの一部、変数部
の例である。第7図において、左側のアドレスの部分は
16進表現のアドレス部でオブジェクトの部分は、マイ
クロプロセッサの機械語で記述されたプログラムであり
、第6図の内容と対応している。
Figure 7 shows a flag set program written in machine language and the corresponding assembly/pull language.From the top of Figure 7, the extended instruction analysis section, return address setting section, and extended instruction execution section are written. These are examples of a part, a part of an object program, and a variable part. In FIG. 7, the address part on the left side is an address part expressed in hexadecimal, and the object part is a program written in the machine language of the microprocessor, which corresponds to the contents of FIG.

本例の目的プログラムは、1537  (16進)番地
より実行が開始される。この時点で、以下のごとく第2
図のアドレスレジスタ9の内容によプメモリ続出手順が
実行される。アドレスレジスタ9は、1537(16進
)を示しており、インクリメント/デクリメント回路1
2をそのまま通過してアドレスバッファ8よシアドレス
バス41を通してメモリ部2にアドレス1537(16
進)を送る。
The target program of this example starts execution at address 1537 (hexadecimal). At this point, the second
The memory successive procedure is executed according to the contents of the address register 9 shown in the figure. Address register 9 indicates 1537 (hexadecimal), and increment/decrement circuit 1
Address 1537 (16
send).

第5図はメモリ部の詳細図であシ、アドレスバス41の
上位4Bit(A12〜A15)は2進10進変換部2
01に入る。2進10進変換部201の出力は入力する
アドレスの16進の1000単位で出力される。今アド
レスバッファ8が、1537(16進)を出力している
のでA12=1゜AI3〜Al 5=00状態にアドレ
スバス41がなっている。2進10進変換部201は、
この信号AI2〜A15の状態をデコードし、図示のA
1000 を出力する。A100Oは、目的グログ2ム
部(1)53−1を選択する信号となシこれをアクチブ
状態とする。さらに、アドレスバス41の信号A8〜A
llは、直接目的プログラム部(1)53−1に送られ
る。またデータバス40に乗ったアドレス情報は、アド
レスラッチ部2074Cよプ、データバス40よシ取プ
出され、前記アドレ  。
FIG. 5 is a detailed diagram of the memory section.
Enter 01. The output of the binary/decimal converter 201 is output in hexadecimal 1000 units of the input address. Since the address buffer 8 is now outputting 1537 (hexadecimal), the address bus 41 is in the state where A12=1°AI3~Al5=00. The binary/decimal converter 201 is
The states of these signals AI2 to A15 are decoded and
Outputs 1000. A100O is a signal for selecting the target log unit (1) 53-1 and is activated. Furthermore, the signals A8 to A of the address bus 41
ll is directly sent to the target program section (1) 53-1. Further, the address information on the data bus 40 is taken out by the address latch section 2074C and then output from the data bus 40, and the address information is read out from the data bus 40.

スバス41の信号へ8〜Allと合せて直接目的プログ
ラム部(1) 53−I K送られる。この時、信号A
O,A7.A8〜Allは、AO−A2=1゜A3=0
.A4〜A5=1.A6〜A7=O,A8=1.A9=
O,A10=1.A11=00状態であり、AQを最下
位、Allを最上位として16進表示をすると、537
  (16進)となる。
It is directly sent to the target program section (1) 53-IK together with signals 8 to All on the bus 41. At this time, signal A
O, A7. A8 to All are AO-A2=1°A3=0
.. A4-A5=1. A6-A7=O, A8=1. A9=
O, A10=1. A11=00 state, and when expressed in hexadecimal with AQ at the bottom and All at the top, it is 537
(hexadecimal).

ここで第6図を見ると、1537(16進)番地の内容
は2E(16進)となっている。なお、アドレス153
7(16進)の始めの1は目的プログラム部(1) 5
3−1を示し、以下の537(16進)は、目的プログ
ラム部(1)53−1の内部アドレスを示している。ま
た拡張命令管理記憶部2o5゜目的プログラム部53−
1〜3はそれぞれ16進afr/の最大値FFF(16
進)までを内部番地として持ちながら全体として連続し
たメモリとなっている。第6図では連続した番地として
記述しである。
Looking at FIG. 6, the contents of address 1537 (hexadecimal) are 2E (hexadecimal). In addition, address 153
The first 1 in 7 (hexadecimal) is the target program section (1) 5
3-1, and the following 537 (hexadecimal) indicates the internal address of the target program section (1) 53-1. Also, the extended instruction management storage unit 2o5゜purpose program unit 53-
1 to 3 are the maximum value of hexadecimal afr/FFF (16
It is a continuous memory as a whole, although it has internal addresses up to (digital). In FIG. 6, the addresses are described as consecutive addresses.

さて1537番地から目的プログラム部(1) 53−
1は2E(16進)をデータバス40に乗せ、第2図の
マイクロプロセッサユニット1に送る。
Now, from address 1537, the target program section (1) 53-
1 puts 2E (hexadecimal) on the data bus 40 and sends it to the microprocessor unit 1 in FIG.

マイクロプロセッサユニット1は、そのデータをデータ
バス40から取シ出し、データバッファ3に取り込みメ
モリ読出を終了する。
The microprocessor unit 1 takes out the data from the data bus 40, takes it into the data buffer 3, and completes the memory reading.

次に、マイクロプロセッサ1では、データバッファ3よ
りデータ2E(16進)を読出し、命令デコーダ6に送
る。命令デコーダ6は2E(16進)を解析(デコード
)し制御回路7に送る。制御回路7はデータ2Eよシ命
令が2バイト長であることをしりi命令の第2バイト目
をレジスタ13に格納するための実行に入いる。まず、
インクリメント/デクリメント回路12によりアドレス
レジスタ9の内容である1537(16進)を+1増加
して1538(16進)とする0次に前述のメモリ続出
手順により1538(16進)番地の内容をデータバッ
ファ3に読出す。ここで、第6図を参照すると、153
8(16進)番地の内容は01(16進)であるのでデ
ータバッファ3の内容が01 (16進)になることが
わかる。次に制御回路7はデータバッファ3の内容をL
レジスタ13に送る。さらにアドレスレジスタ9の内容
をインクリメント/デクリメント回路12により+1増
加させ、1539(16進)としてこの命令の実行金終
了する。
Next, the microprocessor 1 reads data 2E (hexadecimal) from the data buffer 3 and sends it to the instruction decoder 6. The instruction decoder 6 analyzes (decodes) 2E (hexadecimal) and sends it to the control circuit 7. The control circuit 7 learns that the data 2E instruction has a length of 2 bytes, and begins execution to store the second byte of the i instruction in the register 13. first,
The increment/decrement circuit 12 increments the contents of the address register 9, 1537 (hexadecimal), by +1 to 1538 (hexadecimal).0 Next, the contents of address 1538 (hexadecimal) are transferred to the data buffer using the above-mentioned memory succession procedure. Read out in 3. Here, referring to FIG. 6, 153
Since the content of address 8 (hexadecimal) is 01 (hexadecimal), it can be seen that the content of data buffer 3 is 01 (hexadecimal). Next, the control circuit 7 sets the contents of the data buffer 3 to L
Send to register 13. Further, the contents of the address register 9 are incremented by +1 by the increment/decrement circuit 12 to 1539 (hexadecimal), and the execution of this instruction is completed.

ここで第8図を説明する−まずADD几は、アドレスレ
ジスタ9の内容、トレースは命令の動きをトレースした
もので命令部分はアセンブル言語で表現しである。次の
ACCは演算用レジスタ4の内容で4.9.H−REG
はHレジスタ14の内容、さらにL−REGはLレジス
タ13の内容、SPはスタックレジスタ10の内容を示
している。
Now, FIG. 8 will be explained. First, the ADD method is a trace of the contents of the address register 9, and the trace is a trace of the movement of an instruction, and the instruction part is expressed in an assembly language. The next ACC is the contents of the calculation register 4 in 4.9. H-REG
indicates the contents of the H register 14, L-REG indicates the contents of the L register 13, and SP indicates the contents of the stack register 10.

さて第8図において、ADD几==1537 (アドレ
スレジスタ9の内容153716進)の時、トレーステ
示されるMVIL命令(2E(16進)K対応)が続出
され、前述の様にアドレスレジスタが1538(16進
)に増加され、メモリより01(16進)が書込まれた
状態となっている。
Now, in FIG. 8, when ADD==1537 (the content of address register 9 is 1537 hexadecimal), the MVIL instruction (corresponding to 2E (hexadecimal) K) shown in the trace is issued one after another, and as mentioned above, the address register is 1538 (1537 hexadecimal). (hexadecimal), and 01 (hexadecimal) is written from the memory.

次に第7図に戻って、アドレスレジスタ9の内1539
(16進)番地よシD7(16進)を読みだす。
Next, returning to FIG. 7, 1539 of address register 9
(Hexadecimal) Read address D7 (Hexadecimal).

ここで、前述の1537(16進)番地の2E(16進
)(MVIL)命令では命令デコーダ6で解析し、制御
回路7が2バイト長として命令を処理し九が、B7(1
6進)は本来1バイト長の命令として制御回路7に定義
されておシ、第7図のADDB項1539に見る様に2
バイト長の命令としてB7(16進)の後IC04(1
6進)(153A番地)があっても、命令の一部と見な
されないため、このttではB7(16進)の命令実行
後に、153A番地の04を新しい命令として実行され
る可能性がある。すなわち1539番地。
Here, the 2E (hexadecimal) (MVIL) instruction at address 1537 (hexadecimal) is analyzed by the instruction decoder 6, and the control circuit 7 processes the instruction as a 2-byte length.
Hexadecimal) is originally defined in the control circuit 7 as a 1-byte long instruction, and as shown in ADDB item 1539 in Figure 7, 2
After B7 (hexadecimal) as a byte length instruction, IC04 (1
Even if B7 (hexadecimal) (address 153A) exists, it is not considered part of the instruction, so in this tt, after the instruction B7 (hexadecimal) is executed, 04 at address 153A may be executed as a new instruction. . That is, address 1539.

j; 153A番這蛎納されているD704(16進2バイト
)t−2バイト長の命令とするためKは命令デコーダ6
、制御回路7のもつ物理的に定められた命令以外の命令
とせねばならない。この様な命令を拡張命令と表現する
j; D704 (2 bytes in hexadecimal) stored in number 153A To make the instruction t-2 bytes long, K is the instruction decoder 6
, must be a command other than the physically defined command of the control circuit 7. Such instructions are expressed as extended instructions.

もとに戻って、データバッファ3にB7(16進)f:
読み出した後の説明をする。まず、B7(16進)は命
令デコーダ6に入る。第3図は命令デコーダ6の一部で
、命令ラッチ回路202にB7 (16進)がセットさ
れる。ここでB7(16進)は、命令ラッチ回路202
のBQ、Bl。
Return to the beginning and write B7 (hexadecimal) f to data buffer 3:
I will explain after reading it out. First, B7 (hexadecimal) enters the instruction decoder 6. FIG. 3 shows a part of the instruction decoder 6, in which B7 (hexadecimal) is set in the instruction latch circuit 202. Here, B7 (hexadecimal) is the instruction latch circuit 202
BQ, Bl.

B2.B4.B6及びB7が1.B3.BSがO状態に
対応する。アンドゲート203は、BQ。
B2. B4. B6 and B7 are 1. B3. BS corresponds to the O state. ANDGATE 203 is BQ.

Bl、B2.B6及びB7の正論理アンドゲートで、上
記D7(16進)Kよpyyドゲート203の出力が1
となゐ。アンドゲート203の出力はりスタート命令デ
コード出力である。さらに1この出力は入力命令のB3
.B4およびB5に対する条件が危いため、B3.B4
およびB5の組合せにより8種類のりスタート命令が作
れ、この8稽類のりスタート命令は16進表示で07.
CF。
Bl, B2. With the positive logic AND gate of B6 and B7, the output of the above D7 (hexadecimal) K and pyy gate 203 is 1.
Tonai. The output of the AND gate 203 is the start instruction decode output. Furthermore, 1 This output is B3 of the input command
.. Since the conditions for B4 and B5 are dangerous, B3. B4
By combining B5 and B5, 8 types of glue start commands can be created, and these 8 types of glue start commands are expressed in hexadecimal 07.
C.F.

B7.DF、B7.EF、F7およびFFとなる。B7. DF, B7. They become EF, F7 and FF.

これらのりスタート命令をアセンブル言語で几STo、
R8T1.R8T2.Rf9T3. 几ST4゜R8T
5.几8T5およびR8T7と表現することとする。
Write these start commands in assembly language.
R8T1. R8T2. Rf9T3.几ST4゜R8T
5. They will be expressed as 几8T5 and R8T7.

さて、命令デコーダ6でリスタート命令がデコードされ
ると、制御回路7はアドレスレジスタ9の内容をインク
リメント/デクリメント回路12によプ+1増加させ1
53A(16進)とする。
Now, when the restart instruction is decoded by the instruction decoder 6, the control circuit 7 causes the increment/decrement circuit 12 to increment the contents of the address register 9 by +1.
53A (hexadecimal).

次に、アドレスレジスタ9の内容をセーブする。Next, the contents of address register 9 are saved.

セーブはスタック部55にされ、セーブすべきスタック
1ls55上のアドレス金スタックレジスタlOを使用
して作り出す。まず現在のスタックレジスタlOの内容
を4400(16進)であるとすると、制御回路7はス
タックレジスタ10の内容をインクリメント/デクリメ
ント回路により、−1させてその内容を43FF(16
進)として、アドレスバッファ8を介してアドレス43
FFをメモリ部2に供給する0次に、アドレスレジスタ
9(16Bit構成)の下位8B口(現在3A(ムロ進
))t−データバッファ3を通してメモリ部2に送る。
The save is made to the stack section 55, and the address on the stack 1ls55 to be saved is created using the stack register IO. First, assuming that the current content of the stack register IO is 4400 (hexadecimal), the control circuit 7 increments the content of the stack register 10 by 1 using the increment/decrement circuit, and changes the content to 43FF (16
address 43 via address buffer 8 as
The FF is supplied to the memory unit 2. Next, the lower 8B port (currently 3A (multiple base)) of the address register 9 (16-bit configuration) is sent to the memory unit 2 through the t-data buffer 3.

メモリ部2は、前述の読出の方法と同様にして第5図の
変数・スタック部206のスタック部55にアドレスを
与える。そして読出時とは逆にデータバス40のデータ
を与えられたアドレスに書込む。なお変数・スタック部
206はリード/ライトメモリと呼ばれ、メモリで一時
的にデータを記憶するために使用する。
The memory section 2 provides an address to the stack section 55 of the variable/stack section 206 in FIG. 5 in the same manner as the above-mentioned reading method. Then, data on the data bus 40 is written to the given address, contrary to the reading operation. Note that the variable/stack unit 206 is called a read/write memory and is used to temporarily store data.

次に、再度スタックレジスタ10の内容を前述の方法で
−1して43FEとするとともに、アドレスレジスタ9
の上位gBit(現在は15(16進))を43Fg番
地に書き込む。
Next, the contents of the stack register 10 are again decremented by 1 using the method described above to become 43FE, and the contents of the address register 9 are
The upper gBit (currently 15 (hexadecimal)) of is written to address 43Fg.

次のステップとして制御回路7は、第4図で示す様な論
理により、新しいアドレスを作シ出す。
As the next step, the control circuit 7 generates a new address using logic as shown in FIG.

第4図において命令ラッチ回路202の内容の8口3、
Bit 4およびBit 5の内容A3. A4゜A5
がそのままアドレスレジスタ9の8口3゜Bit4,8
口5 (Bit □から数える)に入りアドレスレジス
タ9の他の部分をすべてOKする。実際の命令ラッチ回
路202の内容とアドレスレジスタ9の内容の関係を第
4図に記述する。第4図の様に、命令D7(R8T2)
は、アドレスレジスタ9の内容を0010にさせる様に
制御回路7が制御をして、D7の命令を終了する。
In FIG. 4, the contents of the instruction latch circuit 202 are 8 ports 3,
Contents of Bit 4 and Bit 5 A3. A4゜A5
is as it is, 8 bits 3゜Bit 4, 8 of address register 9
Enter bit 5 (counting from Bit □) and OK all other parts of address register 9. The actual relationship between the contents of the instruction latch circuit 202 and the contents of the address register 9 is described in FIG. As shown in Figure 4, instruction D7 (R8T2)
Then, the control circuit 7 controls the contents of the address register 9 to 0010, and ends the instruction D7.

以上により、拡張命令の解析および戻り番地設定手段に
プログラムがわたシ、第7図のADDB0010番地よ
シ戻り番地の設定に入る。
As described above, the program enters the extended instruction analysis and return address setting means and starts setting the return address at address ADDB0010 in FIG.

0010番地から前述の方法でデータを続出す。Data is successively output from address 0010 using the method described above.

内容はE3(16進)であり、命令デコーダ6により解
析され、制御回路7が命令実行制御に入いる。すなわち
制御回路7は第8図のADD几 0O10の次を見る様
に、スタックレジスタ10の内容をアドレスバッファ8
に送シメモリ部2のスタック部55の43FB番地の内
容である15を続出しテンポラリ−レジスタ19の上位
8”Bitに入れる。次にスタックレジスタ10の内容
をインクリメント/デクリメント回路12により+1増
加させた値すなわち43FFをアドレスバッファ8に送
る。この時スタックレジスタ10の内容は43FEのi
t変化しない。さらにアドレスバッフ78を介して43
FB番地の内容である3Aを読出しテンポラリ−レジス
タ19の下位gBitに入れる。次にHレジスタ14の
内容である00をデータバッファ3に移しアドレスバッ
ファ8(現在43FF)で示すスタック部55の対応位
置に書込む。次KLレジスタの内容である01をデータ
バッファ3に移す。そして、スタックレジスタ10の内
容である43FBをアドレスバッファ8に移し、01t
−スタック部55の対応位置く書込む0次に1テンポラ
リ−レジスタ19の内容ヲHレジスタ、Lvレジスタ移
す。最後にアドレスレジスタ9の内容をインクリメント
/デクリメント回路12により+1増加させ0011 
とする。
The content is E3 (hexadecimal), which is analyzed by the instruction decoder 6, and the control circuit 7 enters into instruction execution control. That is, the control circuit 7 transfers the contents of the stack register 10 to the address buffer 8, as shown after ADD 0O10 in FIG.
15, which is the content of the 43rd FB address of the stack section 55 of the memory section 2, is successively sent to the memory section 2 and placed in the upper 8" bits of the temporary register 19. Next, the contents of the stack register 10 are incremented by +1 by the increment/decrement circuit 12. The value 43FF is sent to the address buffer 8. At this time, the contents of the stack register 10 are i of 43FE.
tNo change. Furthermore, 43 via the address buffer 78
3A, which is the content of the FB address, is read out and placed in the lower gBits of the temporary register 19. Next, the content 00 of the H register 14 is transferred to the data buffer 3 and written to the corresponding position in the stack section 55 indicated by the address buffer 8 (currently 43FF). Next, move the contents of the KL register, 01, to the data buffer 3. Then, 43FB, which is the content of stack register 10, is transferred to address buffer 8, and 01t
- Move the contents of the 0th and 1st temporary registers 19 to the H and Lv registers to be written to the corresponding positions in the stack section 55. Finally, the increment/decrement circuit 12 increments the contents of the address register 9 by +1 to 0011.
shall be.

以上、E3なる命令は現在のスタックレジスタ10が示
す番地の内容とその番地+1番地の内容(スタック部に
セーブされたデータ)とをH1Lレジスタに移し、H,
Lレジスタの内容をスタック部にセーブする命令であシ
、現在H,Lレジスタ(上位gBitt−Hレジスタ、
下位BBitをLレジスタとする。15Bitのレジス
タベアで制御回路7は16 Bitのレジスタとして処
理可能になっている。)の内容は153A(16進)と
なる。
As described above, the instruction E3 moves the contents of the address indicated by the current stack register 10 and the contents of the address +1 (data saved in the stack) to the H1L register, and
This is an instruction to save the contents of the L register to the stack.
Let the lower BBit be the L register. With a 15-bit register bare, the control circuit 7 can be processed as a 16-bit register. ) is 153A (hexadecimal).

この153Aは拡張命令の第2バイト目の番地である。This 153A is the address of the second byte of the extended instruction.

次に、アドレス0011の内容を実行する。アドレス0
011 の内容は7E(16進)で、H1Lレジスタベ
アの内容をアドレスバッファ8に送シ、そのアドレスに
よりメモリ部20目的プログラム部53よシ拡張命令の
第2バイト目のデータt−続出し、演算用レジスタ4に
そのデータを移送し、アドレスレジスタ9をインクリメ
ント/デクリメント回路12によ6+を増加させる命令
である。第8図のADDR項0011および153Aの
欄は、その読出し時の各レジスタの内容を示している。
Next, the contents of address 0011 are executed. address 0
The content of 011 is 7E (hexadecimal), and the contents of the H1L register bare are sent to the address buffer 8, and the address is used to send the second byte of the extended instruction to the memory section 20 and the target program section 53. This is an instruction to transfer the data to the arithmetic register 4 and cause the address register 9 to be incremented by 6+ by the increment/decrement circuit 12. The columns of ADDR items 0011 and 153A in FIG. 8 show the contents of each register at the time of reading.

なお、ここで、演算用レジスタ4の内容(現在04(1
6進))は拡張命令実行部52において拡張命令実行用
パラメータとして使用される。
Note that the contents of the calculation register 4 (currently 04 (1)
Hexadecimal)) is used as an extended instruction execution parameter in the extended instruction execution unit 52.

次にアドレス0012の実行に移る。第6図によりアド
レス0012の内容は23(16進)であシ、第2図の
マイクロプロセッサユニット1はアドレスレジスタ9の
指示する0012番地の内容である23を続出し、・デ
ータバッファ3に格納し、命令デコーダ6により23が
解析、23(16進)命令は、H,Lレジスタペアの内
容金インクリメント/デクリメント回路12により、+
1増加させる機能を実行する。この結果H,Lレジスタ
の内容は、15,3Aから15.3Bになる。
Next, the program moves to execution of address 0012. As shown in FIG. 6, the content of address 0012 is 23 (hexadecimal), and the microprocessor unit 1 in FIG. 23 is analyzed by the instruction decoder 6, and the 23 (hexadecimal) instruction is processed by the increment/decrement circuit 12 for the contents of the H and L register pair.
Execute the function to increase by 1. As a result, the contents of the H and L registers change from 15.3A to 15.3B.

この15.3Bは第7図を参照するとADDR項153
9  (拡張命令)の次の命令の番地153B(16進
)に対応しておプ、拡張命令の戻夛番地が計算されH,
Lレジスタベアに入いつたことになる。最後にアドレス
レジスタ9の内容を+1増加させ0013にさせて23
(16進)の命令の実行を終了する。
This 15.3B is ADDR term 153 when referring to FIG.
The return address of the extended instruction is calculated corresponding to address 153B (hexadecimal) of the next instruction after 9 (extended instruction).
This means that you have entered the L register bear. Finally, increase the contents of address register 9 by +1 to 0013 and make it 23.
Execution of the (hexadecimal) instruction ends.

第8図において、ADDROO13はADD几0010
  と同じ命令で、前述の様にスタックレジスタIOK
よシ指示されるメモリ部2のスタック部55の内容とH
1Lvジスタペアの内容と金相互に入れ替える命令でH
,Lレジスタペア忙ある次の命令の番地すなわち、戻9
番地をスタック部55にセーブすることで戻り番地設定
をする。また、ADDfLOoloで、セーブされたH
、  Lレジスタの内容を復旧し、最後にアドレスレジ
スタ9の内容を+1増加させ0014にする。
In FIG. 8, ADDROO13 is ADD 0010
With the same instruction as above, stack register IOK
The contents of the stack section 55 of the memory section 2 and H
H with the command to mutually exchange the contents of the 1Lv register pair and gold.
, L register pair busy next instruction address, ie return 9
The return address is set by saving the address in the stack section 55. Also, with ADDfLOolo, the saved H
, restores the contents of the L register, and finally increments the contents of address register 9 by +1 to 0014.

次に、0014番地の命令を読出すと、マイクロプロセ
ッサユニットIVi、内容を解析する。0014番地の
命令C3は、ジャンプ命令と呼ばれる命令で、0014
番地に続<0015,0016番地の内容t−続出し、
アドレスレジスタ9にセットする機能を実行し、命令を
終了する。その結果次の命令実行は0015,0016
番地の内容により決定される番地から実行される。第8
図では、0015番地の内容が52(16進)でアドレ
スレジスタ9の下位BBitとなり、続<0016番地
の内容が00(16進)で、アドレスレジスタ9の上位
BBitとなる。そのためアドレスレジスタの内容は、
0052(16進)となシ、第8図に見る様に0052
番地の命令読出しに入いる。
Next, when the instruction at address 0014 is read, the microprocessor unit IVi analyzes the contents. Instruction C3 at address 0014 is an instruction called a jump instruction.
Following the address <Contents of address 0015,0016 t-Continuing,
Execute the function to set the address register 9 and end the instruction. As a result, the next instruction execution is 0015,0016
It is executed from the address determined by the contents of the address. 8th
In the figure, the content of address 0015 is 52 (hexadecimal), which is the lower BBit of the address register 9, and the content of address 0016 is 00 (hexadecimal), which is the upper BBit of the address register 9. Therefore, the contents of the address register are
0052 (hexadecimal), as shown in Figure 8, 0052
Start reading the address instruction.

0052番地の命令26は、次に続く1バイトをHレジ
スタ14に設定する命令で、変数部54のアドレスの上
位BBitが0053番地に設定されており、これを読
みだし、Hレジスタ14に設定する。第7図に見る様に
変数部54のアドレスの上位8Bitは40(16進)
であり、この40(16進)がHレジスタ14に設定さ
れる。
The instruction 26 at address 0052 is an instruction to set the next 1 byte to the H register 14. The upper BBit of the address of the variable section 54 is set to address 0053, and this is read and set to the H register 14. . As shown in Figure 7, the upper 8 bits of the address of the variable section 54 are 40 (hexadecimal)
This 40 (hexadecimal) is set in the H register 14.

次の番地0054の命令F3は、現在実行中のプログラ
ムを外部からの割込によりプログラム実行を中断させな
いための命令である。
The next instruction F3 at address 0054 is an instruction for preventing the execution of the currently executing program from being interrupted by an external interrupt.

次の0055番地の命令B6は、HLレジスタベアで示
されるアドレスの内容を続出しこれと演DDR0055
では、HLレジスタベアが4001番地を示し、その時
の演算用レジスタ4の内容は、拡張命令の従属部がその
まま設定されておシ04(16進)である。第8図の例
では、現在4001番地の変数部54の内容が80(1
6進)であり、本命令B6の実行により84(16進)
となる。
The next instruction B6 at address 0055 successively reads the contents of the address indicated by the HL register bear and performs DDR0055.
In this case, the HL register bear indicates address 4001, and the contents of the operation register 4 at that time are 04 (hexadecimal), with the dependent part of the extended instruction set as is. In the example of FIG. 8, the contents of the variable section 54 at address 4001 are currently 80 (1
84 (hexadecimal) by executing this instruction B6.
becomes.

これは拡張命令の従属部で、目的とする変数部54の内
容を変更することになる。
This is a dependent part of the extended instruction and changes the contents of the target variable part 54.

次の0056番地の命令FBは外部からの割込みを許可
する命令である。
The next instruction FB at address 0056 is an instruction that allows interrupts from the outside.

次の0057番地の命令77は0055番地で得られた
演算用レジスタ4の内容84(16進)をHLレジスタ
ペアで示す番地に書込む。これによυ、変数部の400
1番地の内容が80(16進)から84(16進)K変
更されたことKなる。
The next instruction 77 at address 0057 writes the contents 84 (hexadecimal) of the calculation register 4 obtained at address 0055 to the address indicated by the HL register pair. According to this, υ is 400 in the variable part.
This means that the contents of address 1 have been changed from 80 (hexadecimal) to 84 (hexadecimal)K.

次の命令は0058番地で、この命令C9はスタック部
55にセーブされた戻り番地(153B(16M) )
をアドレスレジスタ9に入れる命令で、この命令の実行
により拡張命令の実行を終了する。第7図に示す様に、
1539番地の拡張命令の次の命令は153B番地であ
り、以下通常の命令順序で順次実行されて行く。
The next instruction is at address 0058, and this instruction C9 is the return address (153B (16M)) saved in the stack section 55.
This is an instruction to input the address register 9 into the address register 9. Execution of this instruction ends the execution of the extended instruction. As shown in Figure 7,
The next instruction after the extended instruction at address 1539 is address 153B, and the instructions are subsequently executed in the normal instruction order.

次に別の例を簡単に説明する。Next, another example will be briefly explained.

第9図に示す例は、 wa口拡張命令の例で第9図のA
DDR1661および1668(16進)の命令が拡張
命令となっている。第10図G)および(b)はこれら
の動作を実行順に示したものである。
The example shown in Figure 9 is an example of a wa mouth extension command.
DDR1661 and 1668 (hexadecimal) instructions are extended instructions. FIGS. 10G) and 10(b) show these operations in the order of execution.

以上の説明においてはりスタート命令を例に行ったが拡
張できる命令はこれに限定されるものではなく、命令の
実行により次に実行すべき命令を格納している番地を退
避させ特定の番地に分岐する機能を有する命令には本発
明が適用できる。
In the above explanation, the beam start instruction was used as an example, but the instructions that can be expanded are not limited to this. By executing the instruction, the address storing the next instruction to be executed is saved and branched to a specific address. The present invention can be applied to instructions that have the function of

第11図は従来方式との比較を説明するためのもので第
11図の左側は従来の方式でプログラムした場合の例で
、右側は本発明の拡張命令を使用し九場合を示す。
FIG. 11 is for explaining a comparison with the conventional method. The left side of FIG. 11 shows an example of programming using the conventional method, and the right side shows a case using the extended instructions of the present invention.

第11図において参照数字301はMCALM地に書込
む機能のプログラムを示す。
In FIG. 11, reference numeral 301 indicates a program for the function of writing to the MCALM area.

この場合に左側の従来方式でプログラムした場合は、演
算用レジスタKMCALMの番地の内容を読出す命令L
DA MCALMlさらに演算用レジスタの内容と16
進04の論理和を作る0RI04H命令、論理和の結果
を再度MCALM番地へもどすSTA MCALM命令
がら構成され、本例では8バイトのメモリを使用する。
In this case, if programming is done using the conventional method on the left, the instruction L that reads the contents of the address of the calculation register KMCALM
DA MCALMl and the contents of the calculation register and 16
It consists of an 0RI04H instruction that creates a logical sum of decimal 04, and a STA MCALM instruction that returns the result of the logical sum to the MCALM address, and uses 8 bytes of memory in this example.

一方、右側の実施例の方式ではLレジスタに目的となる
番地MCALMを設定する命令MVIL、MCALMと
設定された目的となる番地(MCALM)Ic論理和を
作る形で内容を更新する拡張命令F8ETI  04H
から構成され4バイトのメモリを使用する。
On the other hand, in the method of the embodiment on the right, an instruction MVIL sets the target address MCALM in the L register, an extended instruction F8ETI 04H that updates the contents by creating a logical sum of MCALM and the set target address (MCALM) Ic.
It consists of 4 bytes of memory.

この例では、従来方式でプログラムした場合と比較して
4バイトのメモリの使用バイト数が減少する。
In this example, the number of bytes used for the 4-byte memory is reduced compared to when programming using the conventional method.

次に参照数字302の例は、マイクロプロセッサのO8
(オペレーティングシステム)に待合せを指示するプロ
グラムである。
Next, an example of reference numeral 302 is a microprocessor O8
This is a program that instructs the (operating system) to make a meeting.

この場合、左側の従来方式でプログラムした場合は、何
んのための待合せかを指定するMVIA、READY−
HAM命令と、待合のためのサブルーチンをコールする
CALLWAITCL命令で構成され、メモリ5バイト
を使用する。
In this case, if programmed using the conventional method on the left, MVIA, READY-
It consists of a HAM instruction and a CALLWAITCL instruction that calls a subroutine for waiting, and uses 5 bytes of memory.

−万、実施例の方式でプログラムした場合、待合せのた
めの拡張命令WAIT几EADY−HAMのみであシ従
来の例に示した何んのための待合せかを指定する部分も
拡張命令中に含まれている。
- If programmed according to the method of the embodiment, only the extended command WAIT 几EADY-HAM is used for queuing, and the part specifying what the queuing is for as shown in the conventional example is also included in the extended command. It is.

この拡張命令はメモリ2バイトを使用し、従来の例に比
較して3バイトのメモリ使用バイト数が減員なる例であ
る。以上のように本実施例の拡張命令を使用すると使用
メモリのバイト数を減少せしめることができ、かかる命
令の多発する場合にはメモリの使用量を大幅に削減でき
る。
This extended instruction uses 2 bytes of memory, and compared to the conventional example, the number of memory usage bytes is reduced by 3 bytes. As described above, by using the extended instructions of this embodiment, the number of bytes of memory used can be reduced, and when such instructions occur frequently, the amount of memory used can be significantly reduced.

(発明の効果) 本発明には特定の命令を拡張した命令として使用できる
ように構成することにより使用メモリ量を大幅に削減で
きるという効果がある。
(Effects of the Invention) The present invention has the effect that the amount of memory used can be significantly reduced by configuring a specific instruction to be used as an extended instruction.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例を示すブロック図、第2図は
第1図の詳細ブロック図、第3図は第2図の命令デコー
ダの一部の回路図、第4図はりスタート命令の実行過程
を示す図、第5図は第2図のメモリ部の詳細ブロック図
、第6図は第2図のメモリ部のデータ格納図、第7図は
第2図の動作説明のための第1の例のプログラムを示す
図、第8図は第7図のプログラムのトレース図、第9図
は第2図の動作説明のための第2の例のプログラムを示
す図、第10図(a) (b)は第9図のプログラムの
トレース図、第11図は実施例についての従来例と本発
明との比較を示す図である。 1・・・・・・マイクロプロセッテユニット、2・・・
・・・メモリ部、3・・・・・・データバッファ、4・
・・・・・演算用レジスタ、5・・・・・・演算回路、
6・・・・・・命令デコーダ、7・・・・・・制御回路
、8・・・・・・アドレスバッファ、9・・・・・・ア
ドレスレジスタ、10・・・・・・スタックレジスタ、
11・・・・・・レジスタ制御部、12・・・・・・イ
ンクリメント/デクリメント回路、13・・・・・・L
レジスタ、14・・・・・・Hレジスタ、15・山・・
Eレジスタ、16・・・・・・Dレジスタ、17・・・
・・・Cレジスタ、18・・・・・・Bレジスタ、50
・・・・・・拡張命令解析部、51・・・・・・戻りア
ドレス設定部、52・・・・・・拡張命令実行部、53
、 53−1. 53−2. 53−3・・・・・・目
的プログラム部、54・・・・・・変数部、55・・・
・・・スタック部、100・・・・・・マイクロプロセ
ッサ、101・・・・・・目的プログラム記憶手段、1
02・・・・・・拡張命令管理用記憶手段、103・・
・・・・拡張命令解析手段、104・・・・・・戻りア
ドレス設定手段、105・・・・・・拡張命令実行手段
、106・・・・・・物理的命令解析手段、107・・
・・・・リスタート以外の命令実行手段、  108・
・・・・・リスタート実行手段、109・・・・・・ア
ドレスレジスタ、201・・・・・・2進10進変換部
、202・・・・・・命令ラッチ回路、203・・・・
・・アンドゲート、205・・・・・・拡張命令管理記
憶部、206・・・・・・変数・スタック部、207・
・・・・・アドレスラッチ部。 峯1m 黛4−回 整6切 (久) 矛丈旧
Fig. 1 is a block diagram showing an embodiment of the present invention, Fig. 2 is a detailed block diagram of Fig. 1, Fig. 3 is a partial circuit diagram of the instruction decoder shown in Fig. 2, and Fig. 4 is a beam start instruction. 5 is a detailed block diagram of the memory section of FIG. 2, FIG. 6 is a data storage diagram of the memory section of FIG. 2, and FIG. 7 is a diagram for explaining the operation of FIG. 2. FIG. 8 is a trace diagram of the program in FIG. 7, FIG. 9 is a diagram showing the second example program for explaining the operation in FIG. 2, and FIG. a) and (b) are trace diagrams of the program shown in FIG. 9, and FIG. 11 is a diagram showing a comparison between the conventional example and the present invention in the embodiment. 1...Micro processor unit, 2...
...Memory section, 3...Data buffer, 4.
... Arithmetic register, 5... Arithmetic circuit,
6...Instruction decoder, 7...Control circuit, 8...Address buffer, 9...Address register, 10...Stack register,
11...Register control unit, 12...Increment/decrement circuit, 13...L
Register, 14...H register, 15・Mountain...
E register, 16... D register, 17...
...C register, 18...B register, 50
...Extended instruction analysis section, 51...Return address setting section, 52...Extended instruction execution section, 53
, 53-1. 53-2. 53-3...Object program section, 54...Variable section, 55...
...Stack unit, 100...Microprocessor, 101...Object program storage means, 1
02... Storage means for managing extended commands, 103...
...Extended instruction analysis means, 104...Return address setting means, 105...Extended instruction execution means, 106...Physical instruction analysis means, 107...
... Instruction execution means other than restart, 108.
... Restart execution means, 109 ... Address register, 201 ... Binary-to-decimal converter, 202 ... Instruction latch circuit, 203 ...
...And gate, 205...Extended instruction management storage section, 206...Variable/stack section, 207.
...Address latch section. Mine 1m Mayuzumi 4-Kisei 6-kiri (long) Hachijo old

Claims (1)

【特許請求の範囲】 命令を解析する命令解析手段と、 前記命令解析手段により予め定めた特定命令であること
が検知されたときには前記特定命令とその従属部とから
なる特殊命令の実行につづいて次に実行すべき命令を格
納するメモリのアドレスを設定する戻りアドレス設定手
段と、 前記特殊命令の供給をうけてこれを解析する特殊命令解
析手段と、 前記特殊命令解析手段の解析結果にもとずき前記特殊命
令を実行し実行後に前記戻りアドレスに格納されている
命令に実行を移行する特殊命令実行手段とを含み前記特
定命令を前記特殊命令に拡張実行するマイクロプロセッ
サ命令拡張方式。
[Scope of Claims] Command analysis means for analyzing a command; and when the command analysis means detects that the command is a predetermined specific command, the command analysis means continues executing a special command consisting of the specific command and its subordinate parts. return address setting means for setting a memory address for storing an instruction to be executed next; special instruction analysis means for receiving and analyzing the special instruction; and based on the analysis result of the special instruction analysis means. A microprocessor instruction extension method for extending execution of the specific instruction to the special instruction, the method including special instruction execution means for executing the special instruction and transferring execution to the instruction stored at the return address after execution.
JP1012285A 1985-01-23 1985-01-23 Expansion system of microprocessor instruction Pending JPS61169937A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1012285A JPS61169937A (en) 1985-01-23 1985-01-23 Expansion system of microprocessor instruction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1012285A JPS61169937A (en) 1985-01-23 1985-01-23 Expansion system of microprocessor instruction

Publications (1)

Publication Number Publication Date
JPS61169937A true JPS61169937A (en) 1986-07-31

Family

ID=11741492

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1012285A Pending JPS61169937A (en) 1985-01-23 1985-01-23 Expansion system of microprocessor instruction

Country Status (1)

Country Link
JP (1) JPS61169937A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6349940A (en) * 1986-08-20 1988-03-02 Nippon Telegr & Teleph Corp <Ntt> Electronic computer
JPH01310442A (en) * 1988-06-08 1989-12-14 Nec Corp Microcomputer

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6349940A (en) * 1986-08-20 1988-03-02 Nippon Telegr & Teleph Corp <Ntt> Electronic computer
JPH01310442A (en) * 1988-06-08 1989-12-14 Nec Corp Microcomputer

Similar Documents

Publication Publication Date Title
EP0220684B1 (en) Data processing system
US5682531A (en) Central processing unit
JPS604491B2 (en) data processing system
US4005391A (en) Peripheral interrupt priority resolution in a micro program data processor having plural levels of subinstruction sets
JPH01201729A (en) Decoding
JP3203401B2 (en) Data processing device
JP2002540523A (en) Microcontroller instruction set
JPH0348537B2 (en)
JPH01119828A (en) Microprocessor
JPS645330B2 (en)
US5077659A (en) Data processor employing the same microprograms for data having different bit lengths
EP0110227B1 (en) Control memory organization
EP0240606A2 (en) Pipe-line processing system and microprocessor using the system
JPS61169937A (en) Expansion system of microprocessor instruction
EP0448317A2 (en) Information processing apparatus for variable length data
JPS623332A (en) Information processor having instruction containing direct value field
JPS6355634A (en) Data processing system
JP3199603B2 (en) Code size reduction microprocessor
JPS62107339A (en) Instruction constituting method for microcomputer
JPH0315770B2 (en)
JPS622332B2 (en)
JP3474347B2 (en) Instruction decoding unit of microcomputer
JPS6149692B2 (en)
JPS6051736B2 (en) information processing equipment
JPH05334074A (en) Microprocessor