JPS6232540A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS6232540A
JPS6232540A JP17341985A JP17341985A JPS6232540A JP S6232540 A JPS6232540 A JP S6232540A JP 17341985 A JP17341985 A JP 17341985A JP 17341985 A JP17341985 A JP 17341985A JP S6232540 A JPS6232540 A JP S6232540A
Authority
JP
Japan
Prior art keywords
instruction
operand
machine language
execution
simulation
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
JP17341985A
Other languages
English (en)
Inventor
Takashi Horikawa
隆 堀川
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 JP17341985A priority Critical patent/JPS6232540A/ja
Publication of JPS6232540A publication Critical patent/JPS6232540A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、情報処理装置に関し、特にシミュレートすべ
き機械語命令において格納する必要のあるオペランドを
、ソフトウェアによる方法と比較し高速に格納できる例
外処理終了命令を持つ情報処理装置Hに関する。
(従来技術とその問題点) 計算機システム等の情報処理装置の中央処理装置におい
て、浮動小数点演算等のある特定の処理を高速に行なう
ため、中央処理装置に専用のハードウェア(例えば数値
演算用プロセ、す)を装着し、この処理を専用のハード
ウェアに受は持たせる方式はハフドブ、り(Intel
 Microprocessor andPeriph
eral Handbook :インテル社)等に記述
され広く行なわれている。この場合中央処理装置には、
この専用ハードウェアのための命令が準備されている。
更に、中央処理装置に専用ハードウェアが装着されてい
ない状態においても、専用ハードウェアのための命令が
含まれたプログラムを実行回着されていない状態で、中
央処理装置が専用ハードウェアのための命令を実行しよ
うとした場合には、例外事象を発生させ、命令実行のシ
ミーレーションに必要な情報を情報処理装置内の特定の
場所に格納した後、強制的にシミュレーション用のプロ
グラムに制御を移し、ここで専用ハードウェアが行なう
べき動作をシミュレートするのである。
この方式により、専用ハードウェアが装着された状態に
比べ速度の点では劣るものの、プログラムを全く変更す
ることなく実行させることを可能としている。また同様
の方式により、本来の中央処理装置が命令として持って
いない機能を、あたかも中央処理装置の命令セットの一
部として実現されているかのように見せ掛けることも行
なわれている。
この命令実行のシミュレーションは以下に示す通シに行
なわれる。
1)中央処理装置内の特定の場所に格納されている命令
実行のシミュレーションに必要な情報を用い、当該機械
語命苓により決定される演算をソフトウェアによりミー
レージして、演算結果を得る。
2)命令語中のオペランド記述子を解析し、命令実行の
シミュレーションにより得られた結果を格納すべき場所
に関−する情報を得る。
3)2)で判明した演算結果を格納すべき場所に、1)
で得られている演算結果を格納する。
ここで、シミーレージ、ンの処理速度を左右すると考え
られるのは1)及び2)の処理である。これらの内、1
)の処理は、シミュレーションすべ1命令に依存するこ
とに加え、中央処理装置内にこの処理を行なう機能がな
いことから、ソフトウェアによる命令実行のシミーレー
ションには必須の処理でおる。これに対し、2)の処理
は、総ての命令に共通した処理であり、通常の命令実行
に際しては中央処理装置内のハードウェアによりこの処
理を高速に行なっている。しかしながら、ソフトウェア
による命令実行のシミーレーションにおいてはこの処理
もプログラムで行なうため、命令実行をハードウェア及
び〉アームウェアで行なう場合に比べ、処理速度を低下
させる一因となっていた。
更に1このオペランドの解析処理は逐一記述しなければ
ならないため、プログラミング効率が悪く、また、オペ
ランドの指定方法が異なる中央処理装置に対してはそれ
ぞれ個別にオペランド解析処理を記述する必要があるこ
とから、このプログラムがソフトウェア賛意として蓄積
しがたいという欠点もらりた。
(発明の目的) 本発明の目的は、従来の情報処理装置における欠点を除
去すると共に機械語命令の実行をソフトウェアによりミ
ーレージする場合に不可欠な操作であるオペランドの格
納を中央処理装置の機械語命令実行手段によって行なう
ことにより、ソフトウェアでこの処理を行なう場合に比
べ高速に行なう機能をもつ情報処理装置を提供すること
である。
また、本発明の他の目的は、命令実行をシミュレートす
るソフトウェアの中に記述されていたオペランドを格納
するためのプログラムを不必要トすることにより、機械
語命令の実行をシミュレートするプログラムを作成する
手数を削減する情報処理装置を提供することである。
(発明の構成) 本発明によれば、機械語命令を解読しこの命令を実行す
る機械語命令実行手段と、この機械語命令によって扱わ
れるオペランドの位置を認識するオペランド位tt g
 m手段と、オペランドを操作するオペランド操作手段
を持ち、更に、機械語命令実行手段で実行さねない機械
語命令を、ソフトウェアでシミュレートする例外処理起
動手段と、前記命令実行をシミュレートするだめに必要
な情報分保持するtW報保持手段とを持ち、前記列外処
理起動手段を作動させた場合に前記オペランド操作手段
により当該機械語命令のオペランドを取り出し、このオ
ペランドを情報保持手段に格納してソフトウェア(命令
実行シミュレーションプログラム)に制御を移す情報処
理装置であって、命令実行シミュレー7.J/の終T時
に、得られた結果を特定の場所に格納しておいてか仮実
行される館令として、特定の場所に格納された命令実行
の結果をオペランド操作手段により、当該機械語命令の
オペランドに格納し、当該機械6d命令の次に実行すべ
き命令に制御を移す動作を行なう例外処理路r命令を備
えることを特徴とする情報処理装置が得られる。
更に本発明によれば、命令実行シミュレーションにより
得られた結果を格納する特定の場所として情報保持手段
を用いた情報処理装置が得られる。
更に又、本発明によれば、例外処理路r命令において、
命令実行シミュレーションにより得られた結果をオペラ
ンドとして指定することKより、命令実行シミュレーシ
ョンにより得られた結果を格納する特定の場所を任意に
取ることのできる情報処理装置が得られる。
(構成の詳細な説明) 本発明は命令実行シミュレーションの終了時に、命令実
行シミュレーションにより得られた結果を情報処理装置
の中の特定の場所に格納してから実行される命令として
、この命令実行の結果を、シミュレーション対象となっ
ている機械語命令のオペランドに格納し、この機械語命
令の次に実行すべき命令に制御を移す動作を行なう例外
処理終了命令を備えることにより、ノブドウエアによっ
てオペランドを格納する場合に比べ高速にオペランドを
格納することができ、更に、オペランドを格納する処理
をプログラムする必要がなくなるため、プログラムを作
成する手数を削減することができる情報処理装置である
。
(実施例) 以下に、本発明の実施例について図面を参照して詳細に
説明する。
第1図は本発明の一実施例である情報処理装置に係る計
算機システムの基本構成を示すブロック図、第2図ta
) 、 (b)は本発明の一実施例における計算機シス
テムの命令形式を示す図である。
第1図において、本発明の一実施例は中央処理装置2と
記憶装置9を有する計算機システムで、中央処理装置に
はオペランドを操作するオペランド操作手段5を持つ記
憶制御部8と、これに接続される機械語命令制御部12
とを有している。この機械語命令制御部12には機械語
命令を実行するために、機械語命令を解読しこの命令を
実行する機械語命令実行手段3と、この機械語命令によ
って扱われるオペランドの位置を認識するオペランド位
置認識手段4と、本来機械語命令実行手段で実行される
べき機械語命令を、ハードウェアの構成上の理由のため
、あるいは、本来の中央処理装置が命令として持ってい
ない機能を実現するためにソフトウェアで命令実行をシ
ミユレートすることを目的とする手段、即ち例外処理起
動手段6とを有しており、記憶装置9にはソフトウェア
で命令実行をシミユレートするために必要な情報を保持
する情報保持手段7を有している。
本実施例の情報保持手段7としてはスタックを用い、更
にシミュレーションにより得られた命令実行の結果を格
納する場所としてもこのスタックを用いる。
第2図において、本実施例における計算機システムの命
令は、命令コード21のほかに第2図(a)に示す形式
の命令としてオペランドを2つ持つ2オペランド記述部
22.23を有する命令であり、第2図(b)に示す形
式の命令としてオペランドを持たない命令である。各命
令が、第2図(a)に示す形式の命令か第2図(b)に
示す形式の命令かは、命令コード2゛1の値によって一
意に決定される。命令コード21は、この命令が行なう
べき動作を指定し、第1および第2オペランド記述部2
1.22は、この命令により操作されるオペランドの位
置を指定する。
再び第1図を参照すると、本実施例における計算機シス
テムでは、機械語命令実行手段3の中に1機械語命令の
行なうべき動作を認識する機械語命令認識手段IOと、
次に実行すべき命令のアドレスを計算し、これを保持す
る命令位置保持手段11を持ち、更に、記憶装置9の中
に1ソフトウエアによるシミュレーションの必要な機械
語命令について、命令の実行をシミュレーションするプ
ログラムのアドレスを保持する例外ベクトル保持手段1
3を持つ。
本実施例における計算機システムでは、命令の実行は以
下に通す通りに行なわれる。第3図はこの手順を示す7
0−チャートを示す。まず、機械語命令実行手段3が次
に実行すべき命令のアドレスを保持している命令位置保
持手段11により保持されているアドレスにより示され
る機械語命令を、記憶制御部8により記憶装置9から取
り出す(処理30)。次に、機械語命令認識手段10に
よりこの機械語命令の行なうべき動作を認識する(処理
31)。この機械語命令が機械語命令実行手段3におい
て実行可能であると認識された場合(判断32)には、
機械語命令実行手段3により次に示す通りに命令が実行
される。まず、この命令がオペランドを持つ命令(第2
図(a))か持たない命令(第2図(b))かを機械語
命令認識手段10によ#)認識する(判断33)。この
結果、実行すべき命令がオペランドを持たない命令(第
2図(b))の場合には、機械語命令実行手段3により
命令が実行される(処理34)。lた、実行すべき命令
がオペランドを2つ持つ命令(第2図(a))の場合に
は、操作するデータ即ちオペランドの位atオペランド
位置認識手段4により認識しく処理35)、これをオペ
ランド操作手段5によって取り出しく処理36)、命令
を機械語命令実行手段3によって実行(処理37)した
後、得られた結果をオペランド位置認識手段4により認
識されているオペランドの格納位置に、オペランド操作
手段5により格納する(処理38)。最後に、この命令
の次に実行すべき命令のアドレスを命令位置保持手段1
1によって計算し、ここで保持する(処理39)。
また、記憶制御部8により記憶装置9から取り出された
機械語命令が機械語命令実行手段3により実行できない
と認識された場合には例外処理起動手段6を動作させる
(処理40)aこの例外処理起動手段6の動作を以下に
示す。第4図はこの手順を示すフローチャートを示す。
まず、当該機械語命令がオペランドを持つ命令であると
機械語命令認識手段10により認識された場合(判断4
1)には、当該機械語命令が操作する第1および第2オ
ペランドの位置をオペランド位置認識手段4により認識
し、オペランド操作手段5によりこれらのオペランドを
取り出しく処理42)、このオペランドを第2オペラン
ド、第1オペランドの順に情報保持手段7であるスタ、
りに格納する(処理43)。次に、当該機械語命令の位
置に関する情報、即ち命令位置保持手段11に保持され
ているアドレスを記憶制御部8に渡し、これをスタ、り
に格納する(処理44)。最後に、記憶装置9内に存在
する、機械語命令の実行をシミュレーシ。
ンするプログラムの位置を保持する例外ベクトル保持手
段13から、当該機械語命令の実行全シミーレーショ/
するプログラムのアドレスを記憶制御部8により取り出
しく処理45)、これを命令位置保持手段11に格納す
る(処理46)。これにより、当該機械語命令の実行を
シミュレーションするプログラムに制御が移る。第5図
は、第2図(a)に示された形式のオペランドを持つ命
令において例外処理起動手段6が起動され、当該機械語
命令の実行をシミュレーションするプログラムに制御が
移ったときにおけるスタックの状態を示す図である。
次に、本発明において備えられる例外処理終了命令(R
ETIWA命令と呼ぶ)について説明する。
RETIWA命令は、第2図(b)に示す形式のオペラ
ンドを持たない命令であシ、機械語命令の実行をシミュ
レーションするプログラムによって得られた結果を情報
保持手段7(本実施例ではスタ、り)に格納してから実
行される命令である。第6図は、RETIWA命令を実
行する直前、即ち機械語命令の実行をシミュレーション
するプログラムによって得られた命令の実行結果を格納
したスタ、りの状態を示す図である。機械語命令の実行
をシミーレーシヨンするプログラムの最後に置かれるR
ETIWA命令は以下に示す通シに実行される。第7図
は、この手順を示すフローチャートを示す。前に示した
命令実行の手順により、RETIWA命令が記憶装置9
より取9出され(処理70)、機械語命令認識手段10
により認識されると、この命令はRETIWA命令であ
ることが判明する(判断71)。この命令は機械語命令
実行手段3によって実行可能な命令であるため、ここで
実行される。
まず、スタ、り50に格納されている、シミーレージ、
ンすべき命令の存在するアドレス51により示される機
械語命令を記憶制御部8により取り出しく処理72)、
この命令がオペランドを持つ命令かどうかt機械語命令
認識手段10により調べる(判断73)。この判断によ
り、機械語命令がオペランドを持つと判断された場合に
は、以下の判断73から処理8(1行なう。即ち、この
命令の第1オペランドについて、それが書き込む必要の
おるオペランドかどうかを機械語命令認識手段」0によ
#)認識する(判断73)。この第1オペランドが書き
込む必要のあるオペランドである場合には、このオペラ
ンドを:0き込むべき位置をオペランド位置認識手段4
によって認識しく処理74)、スタ、り50に格納され
ている、シミュレーションプログラムにより得られた第
1オペラ/ドロ1を取り出しく処理75)、これをオペ
ランド位置認識手段4によって認識されている位置にオ
ペランド操作手段5により格納する(処理76)。
次に、第2オペランドについても同様の処理を行なう。
即ち、第2オペランドについて、それが書き込む必要の
あるオペランドかどうかを機械語命令認識手段10によ
り認識する(判断77)。
この第2オペランドが書き込む必要のあるオペランドで
ある場合には、このオペランドを書き込むべき位置をオ
ペランド位置認識手段4によって認識しく処理78)、
スタ、り50に格納されていル、シミュレーションプロ
グラムにより得られた第2オペランド62を取り出しく
処理79)、これをオペランド位置認識手段4によって
認識されている位置にオペランド操作手段5により格納
する(処理80)。最後に、スタ、り50に格納されて
いる、シミュレーションする命令のアドレス51に置か
れている命令の次に実行すべき命令のアドレスを命令位
置保持手段11によって計算しこれを保持して(処理8
1)、命令の実行を終わる。
以上本発明の一実施例について説明したが、これより明
らかなように本発明の主旨は、情報処理装置の機械語命
令実行手段によっては実行できない命令を、あたかも機
械語命令実行手段によって実行されたように見せ掛ける
ための方策として、例外事象の発生によりッフトウエア
に制御を移す方式の情報処理装置において、シミーレー
ジ、ンプログラムにより特定の場所に格納された命令の
実行結果を、シミュレーション対象となっている命令の
オペランドに書き込む操作を含む例外処理終了命令を用
意することによって、シミュレーシ璽ンプログラムにお
いてオペランドを書き込む操作を簡略化することであり
、この主旨に背かない限9例外処理手段にはいくつかの
実現方法がbることは明らかでおろう。本実施例ではオ
ペランド数がOまたは2個に固定され、例外処理終了命
令はオペランドを持たない形式の計算機システムを例に
取って説明したが、オペランド数は任意の個数(命令コ
ードによって決まる)である計算機システムにも適用で
きることは明らかであり、また、オペランドを持つ形式
の例外処理終了命令も本実施例から容易に類推でさるこ
とは明らかである。
更に、本実施例では例外発生時に情報保持手段に格納す
る情報として、例外発生の原因となった命令のアドレス
、第1および第2オペランドの値のみを格納する計算機
システムを例に取ったが、ここで示した情報以外の情報
(例えば、例外発生の原因となった命令の次に実行すべ
き命令のアドレス)をも格納する情報処理装置にも適用
できることも明らかであろう。
また本実施例では、情報保持手段としてスタ。
りを使用しているが、この代わシに中央処理装置内のレ
ジスタを用いることも考えられる。この場合には、オペ
ランドを格納するために用いるレジスタを退避する必要
がある。
(発明の効果) 本発明は以上説明したように例外処理終了命令を行なう
操作の中に、特定の場所に格納された演算結果を、例外
発生の原因となった命令のオペランドに書き込む操作を
含めるため、命令の実行をシミュレートするプログラム
において、オペランドを書き込む操作を行なう場合に比
較し、オペランドを書き込む操作を記述する必要が無く
なシ、この操作を記述する手数を不必要とすることを可
能とする効果がある。
【図面の簡単な説明】
第1図は本発明に係る情報処理装置の一実施例である計
算機システムに基本構成を示すブロック図、第2図(a
) 、 (b)は本発明の一実施例における計算機シス
テムの命令形式金示す図、第3図は本発明の一実施例に
おける計算機システムが命令を実行する手順を示すフロ
ー図、第4図は本発明の一実施例における例外処理起動
手段の動作を示すフロー図、第5図は本発明の一実施例
において例外処理手段が起動され、機械語命令の実行?
シミーレージ、ンするプログラムに制御が移ったときに
おけるスタックの状態を示す図、第6図は本発明の一実
施例において機械語命令の実行をシミュレーシヨンする
プログラムによって得らtした命令の実行結果を格納し
たスタ、りの状態を示す図、第7図は本発明の一実施例
における例外処理終了命令の動作を示すフロー図である
。 1・・・・・・情報処理装置である計算機システム、2
・・・・・・中央処理装置、3・・・用機械語命令実行
手段、4・・・・・・オヘランド位置認識手段、5・川
・・オペランド操作手段、6・・・・・・例外処理起動
手段、7・旧・・情報保持手段、8・・・・・・記憶制
御部、9・・・・・・記憶装置、10・・・・・・機械
語命令認識手段、11・旧・・命令位置保持手段、12
・・・・・・機械語命令制御部、13・・・・・・例外
ベクトル保持手段、21・・・・・・命令コード、22
・・・・・・第1オペランド記述部、23・・・用第2
オペランド記述部、50・・・・・・スタ、り、51・
・・・・・シミ。 レージ、ンすべき命令の存在するアドレス、52・・・
・・・第1オペランドの値、53・旧・・第2オペラン
ドの値、61・・・・・・シミュレートプログラムにょ
シ得られた第1オペランド、62・・・・・・シミュレ
ートプログラムにより得られた第2オペランド。 第 2 図 茅5 回

Claims (1)

  1. 【特許請求の範囲】 1、機械語命令を解読しこの命令を実行する機械語命令
    実行手段と、この機械語命令によつて扱われるオペラン
    ドの位置を認識するオペランド位置認識手段と、オペラ
    ンドを操作するオペランド操作手段を持ち、更に、機械
    語命令実行手段で実行されない機械語命令を、ソフトウ
    ェアでシミュレートする例外処理起動手段と、前記命令
    実行をシミュレートするために必要な情報を保持する情
    報保持手段とを持ち、前記例外処理起動手段を作動させ
    た場合に、前記オペランド操作手段により当該機械語命
    令のオペランドを取り出し、このオペランドを情報保持
    手段に格納してソフトウェア(命令実行シミュレーショ
    ンプログラム)に制御を移す情報処理装置であつて、命
    令実行シミュレーションの終了時に、得られた結果を特
    定の場所に格納しておいてから実行される命令として、
    特定の場所に格納された命令実行の結果をオペランド操
    作手段により、当該機械語命令のオペランドに格納し、
    当該機械語命令の次に実行すべき命令に制御を移す動作
    を行なう例外処理終了命令を備えることを特徴とする情
    報処理装置。 2 命令実行シミュレーションにより得られた結果を格
    納する特定の場所として情報保持手段を用いたことを特
    徴とする、特許請求の範囲第1項記載の情報処理装置。 3、例外処理終了命令において、命令実行シミュレーシ
    ョンにより得られた結果をオペランドとして指定するこ
    とにより、命令実行シミュレーションにより得られた結
    果を格納する特定の場所を任意に取ることのできること
    を特徴とする特許請求の範囲第1項記載の情報処理装置
    。
JP17341985A 1985-08-06 1985-08-06 情報処理装置 Pending JPS6232540A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17341985A JPS6232540A (ja) 1985-08-06 1985-08-06 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17341985A JPS6232540A (ja) 1985-08-06 1985-08-06 情報処理装置

Publications (1)

Publication Number Publication Date
JPS6232540A true JPS6232540A (ja) 1987-02-12

Family

ID=15960096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17341985A Pending JPS6232540A (ja) 1985-08-06 1985-08-06 情報処理装置

Country Status (1)

Country Link
JP (1) JPS6232540A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63247834A (ja) * 1987-04-02 1988-10-14 Hitachi Ltd 浮動小数点関数擬似命令処理方法
JPH01222327A (ja) * 1988-03-01 1989-09-05 Nec Corp プログラム実行制御方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63247834A (ja) * 1987-04-02 1988-10-14 Hitachi Ltd 浮動小数点関数擬似命令処理方法
JPH01222327A (ja) * 1988-03-01 1989-09-05 Nec Corp プログラム実行制御方式

Similar Documents

Publication Publication Date Title
JPS6212529B2 (ja)
CA1155231A (en) Pipelined digital processor arranged for conditional operation
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPH0527142B2 (ja)
JP2727023B2 (ja) 情報処理装置
JPH0954694A (ja) パイプラインプロセッサおよびその処理方法
JPS61221827A (ja) 情報処理装置
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
JP3140028B2 (ja) サブルーチンの引数の受け渡し方式
JPS595354A (ja) デ−タ処理装置
JPS6022787B2 (ja) 命令制御方式
JP3416698B2 (ja) プログラマブルコントローラ
JPS5829051A (ja) 演算処理装置
JPH0259829A (ja) マイクロコンピュータ
JPS6042983B2 (ja) 命令制御方式
JPH0423102A (ja) プログラマブルコントローラ用プログラミング装置
JPH04167146A (ja) 情報処理装置のアドレストレース方式
JPS61262931A (ja) オペランド解析のための命令を有する情報処理装置
JPS58109932A (ja) 電子計算機の比較演算器
JPH02113335A (ja) タグ付計算機
JPH03196204A (ja) プログラマブルコントローラ
JPS60220468A (ja) ベクトル演算制御方式
JPS63301331A (ja) プログラム割込み処理方式
JPH0535499A (ja) データ処理装置及びデータ処理方法
JPH08297583A (ja) 割り込み処理装置およびその方法