JPH0756637B2 - Processor - Google Patents

Processor

Info

Publication number
JPH0756637B2
JPH0756637B2 JP60061933A JP6193385A JPH0756637B2 JP H0756637 B2 JPH0756637 B2 JP H0756637B2 JP 60061933 A JP60061933 A JP 60061933A JP 6193385 A JP6193385 A JP 6193385A JP H0756637 B2 JPH0756637 B2 JP H0756637B2
Authority
JP
Japan
Prior art keywords
register
instruction
contents
stack
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP60061933A
Other languages
Japanese (ja)
Other versions
JPS61221942A (en
Inventor
昇 田村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP60061933A priority Critical patent/JPH0756637B2/en
Publication of JPS61221942A publication Critical patent/JPS61221942A/en
Publication of JPH0756637B2 publication Critical patent/JPH0756637B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はメモリスタツク機能を備えたノイマン型演算処
理装置に関するものである。
The present invention relates to a Neumann type arithmetic processing device having a memory stack function.

[開示の概要] 本明細書及び図面はノイマン型演算処理装置において、
実行中のレジスタの内容をスタツクポインタで指示する
スタツク領域に格納しスタツクポインタ値は格納前の状
態とすることにより、プログラムと実行中の任意の位置
での実行中のレジスタの直前の内容を知ることができ、
かつスタツクポインタの値を変更することによるプログ
ラム実行誤りの発生することのない技術を開示するもの
である。
[Summary of Disclosure] The present specification and the drawings refer to a Neumann type arithmetic processing device.
By storing the contents of the register being executed in the stack area designated by the stack pointer and setting the stack pointer value to the state before the storage, the contents immediately before the register being executed at the program and at any arbitrary position being executed. You can know
Moreover, it is intended to disclose a technique in which a program execution error does not occur by changing the value of the stack pointer.

[従来の技術] 従来の演算処理装置においては、メモリに格納されたプ
ログラム命令に従い情報の演算処理を行なつている。
[Prior Art] In a conventional arithmetic processing device, arithmetic processing of information is performed in accordance with a program instruction stored in a memory.

この演算処理は一般にプログラム命令により任意に内容
を変更可能で、かつ各種演算処理に使用出来る様修飾機
能等を有し、アキユームレータ(算術論理演算器)との
間で演算データの自動的なやり取りの可能な汎用レジス
タを介して行なわれる。また、演算処理装置には上述の
汎用レジスタ以外にもプログラムカウンタ、スタツクポ
インタ(スタツクレジスタ)、コンデイシヨンコードレ
ジスタ、ステータスレジスタ、その他のテンポラリレジ
スタ等が備えられている。
Generally, the contents of this arithmetic processing can be arbitrarily changed by program instructions, and it has a modification function so that it can be used for various arithmetic processing. Automatic calculation of arithmetic data with an accumulator (arithmetic logic arithmetic unit) It is performed through a general-purpose register that can be exchanged. In addition to the general-purpose registers described above, the arithmetic processing unit is provided with a program counter, a stack pointer (stack register), a condition code register, a status register, and other temporary registers.

これらのレジスタ群を用いて各種演算処理を実行するわ
けであるが、プログラム命令の完成前、またはプログラ
ムミスがある場合等においてはプログラム命令の実行状
態をデバグ処理により確認する必要がある。
Various arithmetic processes are executed using these register groups, but before the completion of the program instruction or when there is a program error, it is necessary to confirm the execution state of the program instruction by debug processing.

今、このデバグ処理により下記に示すレジスタ操作及び
演算命令の実行時をデバグする場合について説明する。
Now, a case will be described in which the debug processing is performed to debug the register operation and the execution time of the arithmetic instruction described below.

L :LD RG1,100 L+2:LD RG2,101 L+4:MUL RG1,RG2 L+6:NOP ここでL〜L+6はメモリにおけるプログラム格納番地
を示し、RG1,RG2は容量8ビツトの汎用レジスタであ
る。
L: LD RG1,100 L + 2: LD RG2,101 L + 4: MUL RG1, RG2 L + 6: NOP Here, L to L + 6 are program storage addresses in the memory, and RG1 and RG2 are general-purpose registers having a capacity of 8 bits.

このプログラムはRG1の内容とRG2の内容の積をとり、倍
長の演算結果をRG1,RG2に格納する乗算命令であり、RG1
に100番地の内容、RG2に101番地の内容をLOADして、乗
算(MUL)を行なう。100番地に“128"、101番地に“25
6"が格納されているとすると、“128"ד256"=“3276
8"(16進数で8000)となり、演算結果としてRG1に「8
0」、RG2に「00」がセツトされる。
This program is a multiplication instruction that multiplies the contents of RG1 and RG2 and stores the double-precision operation result in RG1 and RG2.
The contents of address 100 are loaded into and the contents of address 101 are loaded into RG2, and multiplication (MUL) is performed. "128" at 100, "25" at 101
If 6 "is stored," 128 "x" 256 "=" 3276
It becomes 8 "(hexadecimal 8000), and the result of the operation is" 8 "in RG1.
"00" and "00" are set in RG2.

乗算処理(MUL)の前後で、RG1,RG2の内容が変化するこ
とに注目したい。このためプログラムの途中で、デバグ
を行ない乗算処理の結果を知りたい時は L+2番地の『LD RG2,101』実行時点でプログラム
処理を中断。
Note that the contents of RG1 and RG2 change before and after the multiplication process (MUL). Therefore, if you want to debug the result of multiplication in the middle of the program and want to know the result of the multiplication process, interrupt the program process at the time of executing "LD RG2,101" at L + 2.

中断時点でのRG1,RG2の内容を確認。Check the contents of RG1 and RG2 at the time of interruption.

“L+4"番地の『MUL RG1,RG2』を実行させる。Execute "MUL RG1, RG2" at address "L + 4".

RG1,RG2の内容を確認。Check the contents of RG1 and RG2.

の上記の手順が必要となる。The above procedure is required.

[発明が解決しようとする問題点] 上述従来技術のデバツク処理で述べた様に、レジスタの
操作命令を実行すると、実行以前の値は破壊されてしま
うため、操作命令実行前と実行後にそれぞれプログラム
を停止し、この時のレジスタの値を確認しなければなら
ず処理が繁雑になつてしまつていた。
[Problems to be Solved by the Invention] As described in the debugging process of the prior art, when a register operation instruction is executed, the value before execution is destroyed. Had to stop and check the register value at this time, and the process was complicated.

[問題点を解決するための手段] 本発明は上述の問題点を以下の構成により解決してい
る。
[Means for Solving Problems] The present invention solves the above problems by the following configurations.

すなわち、スタツクポインタによるスタツク機能を備え
た演算処理装置において、実行手順を含む処理情報を記
憶する記憶手段と、前記記憶手段に記憶された実行手順
に従い情報の演算処理を行う演算手段と、前記演算手段
の演算情報を保持する少なくとも一つのレジスタと、前
記レジスタの操作命令を検出する検出手段と、前記検出
手段により前記レジスタの操作命令が検出された場合、
該操作命令の実行に先立つて、前記記憶手段内の前記ス
タツクポインタによつて指示する領域に当該レジスタの
内容を格納する格納手段とを備え、前記格納手段は、前
記レジスタの内容の格納後、前記スタツクポインタの値
を当該レジスタの操作命令検出前へ復帰する構成にす
る。
That is, in an arithmetic processing device having a stack function using a stack pointer, a storage unit that stores processing information including an execution procedure, an arithmetic unit that performs arithmetic processing of information according to the execution procedure stored in the storage unit, and When at least one register that holds the operation information of the operation unit, a detection unit that detects an operation instruction of the register, and an operation instruction of the register is detected by the detection unit,
Storage means for storing the contents of the register in an area designated by the stack pointer in the storage means prior to the execution of the operation command, and the storage means stores the contents of the register , The value of the stack pointer is restored before the operation instruction of the register is detected.

[作用] 以上の構成によれば、スタツク機能を用いた簡単な構成
で、レジスタの内容を確認することができる演算処理装
置を提供でき、その際、スタツク領域に格納したレジス
タの内容を読出すことなく命令の処理を続けても、スタ
ツク領域のデータを増大させることはない。また、この
レジスタの内容は、通常のスタツク機能では使用しない
領域へ格納するので、他の目的でスタツク機能を利用す
る場合に影響を及ぼすことがない。
[Operation] According to the above configuration, it is possible to provide an arithmetic processing unit capable of confirming the contents of registers with a simple configuration using the stack function, and at that time, read the contents of the registers stored in the stack area. Even if the instruction processing is continued without increasing, the data in the stack area is not increased. Further, since the contents of this register are stored in the area which is not used by the normal stack function, there is no influence when the stack function is used for other purposes.

[実施例] 以下、図面を参照して本発明の一実施例を説明する。[Embodiment] An embodiment of the present invention will be described below with reference to the drawings.

第1図は本発明に係る一実施例であり、図中1はスタツ
クレジスタ、2は算術論理演算器、4は制御回路であ
る。制御回路4は各種タイミング制御を行つているが、
このタイミング制御はハードウエア(論理回路)で構成
しても、又マイクロプログラミング構成としてもよい。
マイクロプログラミング構成とすることにより、各種の
処理目的に容易に対応することが出来る。また、5は命
令の記憶位置を記憶するプログラムカウンタ、6は命令
レジスタ、7は命令レジスタ6の命令の解析を行なう命
令デコーダ、8はメモリアドレスレジスタ、9はメモリ
データレジスタ、10は内部バスである。また13はメモリ
制御回路、14はメモリであり、メモリ14中にはスタツク
領域14aが設けられている。また20は汎用レジスタ群で
あり、Aレジスタ21及びBレジスタ22により構成されて
いる。ここで汎用(演算)レジスタ群20はプログラム命
令により任意な値を設定できる。
FIG. 1 shows an embodiment according to the present invention, in which 1 is a stack register, 2 is an arithmetic logic unit, and 4 is a control circuit. The control circuit 4 performs various timing controls,
This timing control may be configured by hardware (logic circuit) or microprogramming configuration.
With the micro programming configuration, it is possible to easily deal with various processing purposes. Further, 5 is a program counter for storing a memory location of an instruction, 6 is an instruction register, 7 is an instruction decoder for analyzing an instruction of the instruction register 6, 8 is a memory address register, 9 is a memory data register, and 10 is an internal bus. is there. Further, 13 is a memory control circuit, and 14 is a memory. In the memory 14, a stack area 14a is provided. A general-purpose register group 20 is composed of an A register 21 and a B register 22. Here, the general-purpose (calculation) register group 20 can set an arbitrary value by a program instruction.

以下、図に示す本実施例装置の動作を前述したプログラ
ム命令列を実行する場合を例として第2図のフローチヤ
ートを参照して説明する。
The operation of the apparatus of this embodiment shown in the drawing will be described below with reference to the flow chart of FIG. 2 as an example of executing the above-mentioned program instruction sequence.

まずステツプS1でプログラムカウンタ(以下PCと称す)
5の値をメモリアドレスレジスタ(以下MARと称す)8
にセツトし、続くステツプS2でPC5の値を1つインクリ
メントする。
First, in step S1, the program counter (hereinafter referred to as PC)
The value of 5 is the memory address register (hereinafter referred to as MAR) 8
Then, in the subsequent step S2, the value of PC5 is incremented by one.

そしてステツプS3で制御回路4はメモリ制御回路13にプ
ログラムの読出しを指示する。
Then, in step S3, the control circuit 4 instructs the memory control circuit 13 to read the program.

PC5の内容が“L+4"であつたとすると、メモリ14中の
“L+4"番地の内容を読み出す処理を実行する。“L+
4"番地の内容が読み出されメモリデータレジスタ(以下
MDRと称す)9にセツトされると、ステップS4でこの命
令を命令レジスタ6にセツトし、セツトした命令を命令
デコーダ7で解読する。ステツプS5でその解読の結果、
命令の実行のためには次のメモリ番地の命令を読出す必
要があるか(1つの命令を全て読み出したか)否かを判
別する。この場合には“L+4"番地と“L+5"番地には
レジスタAとレジスタBの内容を乗算し、その結果をレ
ジスタA及びレジスタBに格納する命令である『MUL R
G1,RG2』が格納されており、続いて“L+5"番地の命令
コードを読出す必要があるため再びステツプS1に戻り、
“L+5"番地の命令コードを読出す。
Assuming that the content of the PC5 is "L + 4", the process of reading the content of the "L + 4" address in the memory 14 is executed. "L +
The contents of the 4 "address are read out and stored in the memory data register (hereinafter
When this instruction is set in the MDR 9), this instruction is set in the instruction register 6 in step S4, and the set instruction is decoded by the instruction decoder 7. As a result of the decoding in Step S5,
In order to execute the instruction, it is determined whether or not the instruction at the next memory address needs to be read (all one instruction has been read). In this case, "MUL R" which is an instruction to multiply the contents of the registers A and B at the addresses "L + 4" and "L + 5" and store the result in the registers A and B
G1, RG2 ”is stored and the instruction code at the address“ L + 5 ”must be read subsequently, so the procedure returns to step S1 again.
Read the instruction code at address "L + 5".

ステツプS5で命令の実行に必要な全ての命令コードの読
出しが終了すると、続くステツプS6でこの実行すべき命
令が汎用レジスタ群20の内容の変更を伴うレジスタ操作
命令か否かを調べ、レジスタ操作命令の場合にはステツ
プS7でスタツクレジスタ(以下SPと称す)1の内容をMA
R8に格納し、続くステツプS8でSP1の内容を1つデクリ
メントする。そしてステツプS9で実行すべきレジスタ操
作命令において操作レジスタの数が1つか否かを調べ、
1つの場合にはステツプS10に、1つでない場合にはス
テツプS20に進む。
When all the instruction codes necessary to execute the instruction have been read at step S5, it is checked at step S6 whether or not the instruction to be executed is a register operation instruction that involves changing the contents of the general-purpose register group 20, and register operation is performed. In the case of an instruction, the contents of the stack register (hereinafter referred to as SP) 1 is MA in step S7.
Store in R8, and then decrement the contents of SP1 by 1 in step S8. Then, in step S9, it is checked whether or not the number of operation registers is one in the register operation instruction to be executed,
If there is one, proceed to step S10, and if not, proceed to step S20.

ステツプS10では操作するレジスタの値をMDR9にセツト
し、メモリ14のSP1で指示されたスタツク領域14aに書込
む。そして続くステツプS12でSP1を1つインクリメント
し、レジスタ値を格納する以前の状態に戻し、ステツプ
S13で実行すべきレジスタ操作命令がメモリ14のアクセ
スを必要とする命令か否かを調べ、メモリアクセスを必
要とする場合にはステツプS14でメモリ14がアクセス状
態でなくなるのを待ちレジスタ操作命令を実行し(ステ
ツプS15)、その後ステツプS1に戻る。
In step S10, the value of the register to be operated is set in MDR9 and written in the stack area 14a designated by SP1 of the memory 14. Then, in the subsequent step S12, SP1 is incremented by 1 to return to the state before storing the register value, and step 1
It is checked whether or not the register operation instruction to be executed in S13 is an instruction that requires access to the memory 14, and if memory access is required, in step S14 wait for the memory 14 to be out of the access state. Execute (step S15) and then return to step S1.

一方ステツプS9で操作レジスタ数が複数の場合にはステ
ツプS20で最初に格納すべきレジスタ値をMDR9にセット
する。
On the other hand, when the number of operation registers is plural in step S9, the register value to be stored first is set in MDR9 in step S20.

本実施例ではAレジスタ21、Bレジスタ22の順で格納さ
れる。
In this embodiment, the A register 21 and the B register 22 are stored in this order.

そしてステツプS21でメモリ14がアクセス中であればア
クセスの終了を待ち、ステツプS22でメモリ14への書き
込みをスタートさせる。
Then, if the memory 14 is being accessed in step S21, the end of access is waited for, and in step S22, writing to the memory 14 is started.

ここではMAR8には先にSP1の値がセツトされており、SP1
の指示するスタツク領域14aに書込まれる。そしてステ
ツプS23で全ての操作レジスタの値の格納が終了したか
否かを調べ、終了していなければステツプS24でSP1の値
をMAR8にセツトし、ステツプS25でSP1の値を1つデクリ
メントする。そしてステツプS20に戻り、次のレジスタ
の値をスタツク領域14aに書込む。
Here, the value of SP1 is set in MAR8 first, and SP1
Is written in the stack area 14a designated by the above. Then, in step S23, it is checked whether or not the values of all the operation registers have been stored. If not, the value of SP1 is set to MAR8 in step S24, and the value of SP1 is decremented by 1 in step S25. Then, returning to step S20, the value of the next register is written in the stack area 14a.

ステツプS23で必要なレジスタの値の書込みが終了して
いればステツプS26でSP1の値をレジスタ値の格納前の値
に戻し、ステツプS13に進む。そしてレジスタ操作命令
を実行する。
If the writing of the required register value has been completed in step S23, the value of SP1 is returned to the value before storing the register value in step S26, and the process proceeds to step S13. Then, the register operation instruction is executed.

またステツプS6でレジスタ操作命令でなかつた場合には
ステツプS27に進み、所定の命令処理を実行する。
If the register operation instruction is not found in step S6, the process proceeds to step S27 to execute a predetermined instruction process.

具体例により以上の処理を説明すると、今、プログラム
の実行が進行してきて、“L"番地より格納されている
『LD RG1,100』を実行する場合であつてSP1の内容が
“200"であつたとする。
Explaining the above processing with a concrete example, when the program execution is proceeding now and the "LD RG1,100" stored from the "L" address is executed, the content of SP1 is "200". Let's take it.

制御回路4は、まず、このレジスタ操作命令を実行する
前にSP1の示すメモリアドレス値“200"をMAR8にセツト
し、次にSP1の内容をデクリメントする。そして“RG1"
即ちAレジスタ21の内容をMDR9にセツトし、このMDR9の
内容をMAR8の指示するスタツク領域14aに書込む。そし
て次にSP1をインクリメントする。これによりSP1の内容
は元の“200"に戻る。
The control circuit 4 first sets the memory address value "200" indicated by SP1 in MAR8 before executing this register manipulation instruction, and then decrements the contents of SP1. And "RG1"
That is, the contents of the A register 21 are set in the MDR9, and the contents of this MDR9 are written in the stack area 14a designated by the MAR8. Then, SP1 is incremented. This restores the contents of SP1 to the original "200".

そしてレジスタ命令『LD RG1,100』を実行する。Then, the register instruction "LD RG1,100" is executed.

同様にして“L+4"番地の『MUL RG1,RG2』の実行の場
合には、直前のSP1の値が“200"とすると、“200"番地
にRG1即ちAレジスタ21の値、“199"番地にRG2即ちBレ
ジスタ22の値が格納され、SP1の値は“200"に戻された
後にこの命令が実行され、[RG1]×[RG2]の答が両レ
ジスタにセツトされる。このためデバツク処理等でこの
“L+4"番地よりの命令実行時、即ち“L+6"番地の命
令実行前の状態でこの処理を中断した場合にあつてはRG
1,RG2には演算の結果がスタツク領域14aのSP1の示すア
ドレス及びその1つ前のアドレスには、RG1,RG2の内容
が格納されている。
Similarly, in the case of executing "MUL RG1, RG2" at address "L + 4", if the value of SP1 immediately before is "200", RG1 at address "200", that is, the value of A register 21, address "199" RG2, that is, the value of the B register 22 is stored, the value of SP1 is returned to "200", this instruction is executed, and the answer of [RG1] × [RG2] is set in both registers. Therefore, when the instruction is executed from this "L + 4" address in the debugging process, that is, when this process is interrupted before the instruction execution at the "L + 6" address, RG
The contents of RG1 and RG2 are stored in the address indicated by SP1 in the stack area 14a and the address immediately before that in RG1 and RG2, respectively.

従つて、プログラムが停止したときに例えば汎用レジス
タの内容とスタツクレジスタ1の示すメモリアドレスか
ら、低いアドレス方向の、メモリの内容を汎用レジスタ
の個数分表示するようなデバグプログラムを作り、ブレ
ークポイントを1ケ所設定するだけで、現在の汎用レジ
スタと、いまの命令を実行する直前の汎用レジスタの内
容が同時に表示できる。
Therefore, when the program stops, for example, from the contents of the general-purpose register and the memory address indicated by the stack register 1, a debug program for displaying the memory contents in the lower address direction by the number of general-purpose registers is created, and breakpoints are set. The contents of the current general-purpose register and the general-purpose register immediately before the execution of the current instruction can be displayed at the same time by setting only one position.

またスタツクレジスタ1はこの動作によつて変化しない
ので前記動作が従来のスタツクメモリの使用方法に対し
て何等の変更ももたらさない。
Also, since the stack register 1 does not change due to this operation, the above operation does not cause any change to the conventional usage of the stack memory.

以上の説明では汎用レジスタが2個の例を説明したが、
それ以上であつても全く同様である。
In the above description, an example in which there are two general-purpose registers has been explained.
Even if it is more than that, it is exactly the same.

[発明の効果] 以上説明したように本発明によれば、従来繁雑であつた
レジスタ値の状態の確認が、スタツク機能を利用するだ
けで極めて容易に行え、処理の前後のレジスタの状態が
直ちに確認でき、プログラムのデバグ処理の負荷を極め
て少なくできる演算処理装置が提供できる。
[Effects of the Invention] As described above, according to the present invention, it is possible to easily check the register value state, which has been conventionally complicated, only by using the stack function, and immediately confirm the register state before and after the processing. It is possible to provide an arithmetic processing unit that can be confirmed and that can significantly reduce the load of program debug processing.

また、レジスタの内容をスタツク領域に格納した後、該
レジスタの操作命令検出前にスタツクポインタの値を復
帰するので、スタツク領域に格納したレジスタの内容を
読出すことなく命令の処理を続けても、スタツク領域の
データを増大させることはなく、さらに、レジスタの内
容は、通常のスタツク機能では使用しない領域へ格納さ
れているので、他の目的でスタツク機能を利用する場合
に影響を及ぼすことがない。
Also, after the contents of the register are stored in the stack area, the stack pointer value is restored before the operation instruction of the register is detected, so the instruction processing can be continued without reading the contents of the registers stored in the stack area. However, since the data in the stack area is not increased, and because the register contents are stored in an area that is not used by the normal stack function, it may affect the use of the stack function for other purposes. There is no.

【図面の簡単な説明】[Brief description of drawings]

第1図は本発明の一実施例演算処理装置の機能ブロツク
図、 第2図は本実施例の命令実行フローチヤートである。 図中、1……スタツクレジスタ、2……算術論理演算
器、4……制御回路、5……プログラムカウンタ、6…
…命令レジスタ、7……命令デコーダ、8……メモリア
ドレスレジスタ、9……メモリデータレジスタ、13……
メモリ制御回路、14……メモリ、14a……スタツク領
域、20……汎用レジスタ群、21……Aレジスタ、22……
Bレジスタである。
FIG. 1 is a functional block diagram of an arithmetic processing unit according to an embodiment of the present invention, and FIG. 2 is an instruction execution flow chart of the present embodiment. In the figure, 1 ... Stack register, 2 ... Arithmetic logic operation unit, 4 ... Control circuit, 5 ... Program counter, 6 ...
... instruction register, 7 ... instruction decoder, 8 ... memory address register, 9 ... memory data register, 13 ...
Memory control circuit, 14 ... Memory, 14a ... Stack area, 20 ... General purpose register group, 21 ... A register, 22 ...
It is the B register.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】スタックポインタによるスタック機能を備
えた演算処理装置において、 実行手順を含む処理情報を記憶する記憶手段と、 前記記憶手段に記憶された実行手順に従い情報の演算処
理を行う演算手段と、 前記演算手段の演算情報を保持する少なくとも一つのレ
ジスタと、 前記レジスタの操作命令を検出する検出手段と、 前記検出手段により前記レジスタの操作命令が検出され
た場合、該操作命令の実行に先立って、前記記憶手段内
の前記スタックポインタによって指示する領域に当該レ
ジスタの内容を格納する格納手段とを備え、 前記格納手段は、前記レジスタの内容の格納後、前記ス
タックポインタの値を当該レジスタの操作命令検出前へ
復帰することを特徴とする演算処理装置。
1. An arithmetic processing device having a stack function using a stack pointer, a storage means for storing processing information including an execution procedure, and an arithmetic means for performing arithmetic processing of information according to the execution procedure stored in the storage means. At least one register that holds the operation information of the operation means, a detection means that detects an operation instruction of the register, and if the operation instruction of the register is detected by the detection means, prior to the execution of the operation instruction And storing means for storing the contents of the register in an area designated by the stack pointer in the storage means, wherein the storing means stores the value of the stack pointer in the register after storing the contents of the register. An arithmetic processing unit that returns before detecting an operation command.
JP60061933A 1985-03-28 1985-03-28 Processor Expired - Fee Related JPH0756637B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60061933A JPH0756637B2 (en) 1985-03-28 1985-03-28 Processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60061933A JPH0756637B2 (en) 1985-03-28 1985-03-28 Processor

Publications (2)

Publication Number Publication Date
JPS61221942A JPS61221942A (en) 1986-10-02
JPH0756637B2 true JPH0756637B2 (en) 1995-06-14

Family

ID=13185469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60061933A Expired - Fee Related JPH0756637B2 (en) 1985-03-28 1985-03-28 Processor

Country Status (1)

Country Link
JP (1) JPH0756637B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57212551A (en) * 1981-06-25 1982-12-27 Toshiba Corp Operation controller

Also Published As

Publication number Publication date
JPS61221942A (en) 1986-10-02

Similar Documents

Publication Publication Date Title
JPS623461B2 (en)
US4124892A (en) Data processing systems
JPH0756637B2 (en) Processor
JPH0222413B2 (en)
JP2562838B2 (en) Processor and store buffer control method
JP2883488B2 (en) Instruction processing unit
JPH04280334A (en) One chip microcomputer
JP2000029508A (en) Programmable controller
JPS5834856B2 (en) Kiokuseigiyosouchi
JPH04342037A (en) Operand checking system for program
JPH04181331A (en) Instruction retry system
JP2883489B2 (en) Instruction processing unit
JPS61221943A (en) Arithmetic processor
JPS60193046A (en) Detecting system for instruction exception
JPS63120336A (en) Switching system for memory access mode
JPS62237533A (en) Data processor
JPS63639A (en) Program debugging system
JPH06175883A (en) Program debugger
JPS626341A (en) Information processor
JPH0578052B2 (en)
JPH07107669B2 (en) Processor
JPH0683614A (en) Microcomputer
JPH02183330A (en) Data processor
JPS6239779B2 (en)
JPH09325935A (en) Bus switching circuit

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees