JPH03226830A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH03226830A
JPH03226830A JP2155390A JP2155390A JPH03226830A JP H03226830 A JPH03226830 A JP H03226830A JP 2155390 A JP2155390 A JP 2155390A JP 2155390 A JP2155390 A JP 2155390A JP H03226830 A JPH03226830 A JP H03226830A
Authority
JP
Japan
Prior art keywords
data
processing
multiplier
multiplication
power
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
JP2155390A
Other languages
English (en)
Inventor
Kanee Kimura
木村 兼江
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2155390A priority Critical patent/JPH03226830A/ja
Publication of JPH03226830A publication Critical patent/JPH03226830A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、処理実行時にデータ型が決定される言語処理
系による演算命令を実行する情報処理装置に関する。
(従来の技術) 一般に、ソフトウェア命令に従って演算を行なう情報処
理装置においては、2のべき乗値をもつ定数による乗算
が頻繁に行なわれている。乗算は、情報処理装置におい
て比較的時間を要する演算となっている。このため、コ
ンパイラによる言語処理系ではコンパイル時、に、乗算
の演算速度を向上させるため、高速に実行できるシフト
演算に乗算を置き換える処理を行っている。
しかし、LISP等の関数型言語処理系では、演算のデ
ータ型が実行時に決定されるため、2のべき乗値による
乗算を単純にシフト演算に置き換えることができない。
(発明が解決しようとする課題) このように、実行時にデータ型が決定する関数型言語処
理系では、乗数が2のべき乗の定数値の場合の乗算をシ
フト演算に置き換えることができず、コンパイラ等のよ
うに処理速度を向上させることかできなかった。
本発明は前記のような点に鑑みてなされたもので、デー
タ型か実行時に動的に決定される関数型言語処理系にお
ける2のべき乗値を持つ定数の乗算を高速に実行するこ
とか可能な情報処理装置を提供することをI1的とする
[発明の構成] (課題を解決するための手段) 本発明は、処理実行時にデータ型か決定される言語処理
系による乗算命令を実行する情報処理装置であって、処
理実行時に、乗算命令のオペランドで指示された乗数、
被乗数データのデータ型か、整数型であるか否かを判別
し、さらに整数型と判別された乗数データか2のべき乗
値であるか否かを判別し、2のべき乗値である場合にそ
の指数値を求め、この得られた指数値をもとに前記被乗
数データに対してシフト演算を行なうように構成するも
のである。
(作用) このような構成によれば、乗算処理実行時に、乗数、被
乗数データのデータ型が固定長整数であり、乗数データ
か2のべき乗値であるかを判別して、乗算をシフト演算
に置き換えることかできるか判別される。また、データ
型の判別によって固定長整数以外と判別された場合には
、レジスタ群に対する書込みか禁止され、他の処理に制
御が移される。
(実施例) 以下、図面を参照して本発明の一実施例を説明する。第
1図は同実施例に係わる情報処理装置の構成を示すブロ
ック図である。同図において、Iは各種データを保持す
るためのレジスタ群であり、乗算命令のオペランドに指
定された乗数、被乗数データ等が保持される。レジスタ
群11には、数値データに付随するデータ型を示すタグ
値をもとにデータ型を判定するデータ型判別回路]2、
及びレジスタ群11に保持されたデータを用いて通常の
演算やシフト演算処理を行なう演算処理回路13の一方
の入力端が接続されている。データ型判別回路12には
、ソフトウェア命令について直接処理を行なうマイクロ
プログラム制御回路14、及びレジスタ群11に対する
書き込みを制御するレジスタ書込制御回路15か接続さ
れている。演算処理回路13の他方の入力端には、乗数
データが2のべき乗値であるかを判定し、その指数(つ
まり被乗数データに対するシフト数)を求める2のべき
乗判定回路16が接続されている。演算処理回路13に
は、演算結果について例外処理が必要な乗算オーバフロ
ー等を判別する例外判定回路17が接続されている。例
外判定回路17には、同回路17において例外処理か必
要と判別された演算結果について適切な処理を行なう例
外処理回路18が接続されている。
例外判定回路I7は、レジスタ書込制御回路15に接続
されており、例外処理の必要がない演算結果を転送する
次に、同実施例の動作を説明する。
ます、レジスタ群11中の所定のレジスタに、乗算命令
のオペランドに指定された内容に応して、乗算、被乗算
データか保持されているものとする。
同実施例では、第2図に示すように、1語のブタ表現は
、データ型(固定長整数、浮動小数等)を示すタグ値か
データ部(数値データ、ポインタ)に付随されている。
データ型判別回路12は、レジスタ群IIに保持された
被乗数データのタグ値をもとに、被乗数データが整数型
であるか否かを判別する。ここで、被乗数データが整数
型てないと判別された場合には、レジスタ書込制御回路
15に対してレジスター洋11への書込禁止の制御を行
ない、演算結果の目的レジスタへの書込みが阻止される
ようにする。また、乗算をシフト演算に置き換えること
かできないため、マイクロプログラム制御回路14に通
知して、被乗数データが固定長整数以外の場合に応じた
処理を実行させる。一方、被乗数データか整数型である
場合、データ型判別回路12は、乗数データのタグ値を
もとに、乗数データが整数型であるか否かを判別する。
ここで、乗数データが整数型でないと判別された場合に
は、レジスタ書込制御回路15に対してレジスタ群11
への書込禁止の制御を行ない、演算結果の目的レジスタ
への書込みが阻止されるようにする。また、乗算をシフ
ト演算に置き換えることができないため、マイクロプロ
グラム制御回路14に通知して、乗数データが固定長整
数以外の場合に応じた処理を実行させる。なお、データ
型の判定を行なうと共に、データを流すことによって処
理を並行して行ない、処理を効率化させることもできる
。すなわち、データを流してもデータが整数型でない場
合には、レジスタ書込制御回路15に対して書込禁止の
制御がされるため問題がない。データ型判別回路12に
おいて、被乗数1乗数データが共に固定長整数型である
と判別された場合には、乗数データが2のべき乗である
かを判定する。ここで、乗数データが2のべき乗値であ
れば、乗算をシフト演算に置き換えることができる。2
のべき乗値判定回路16は、乗数データの2を底とする
対数値(2のべき乗値の指数値であり、以下、シフト値
と称する)を求める。すなわち、数値データが2のべき
乗値である場合、そのデータビット列に“1″が1箇所
に設定されている。従って、シフト値は、データビット
列中の“1“のビット位置によって判別できる。演算処
理回路13には、レジスタ群11の所定のレジスタから
の被乗数データと、2のべき乗判定回路16によって得
られたシフト値を示すデータか人力される。演算処理回
路13は、シフト値に応じて、被乗算データに対してシ
フト演算処理を行なう。演算処理回路18は、演算結果
を例外判定回路17に転送する。例外判定回路17は、
演算処理回路13における演算結果が、固定長整数であ
るか否かを判別する。すなわち、例外処理部18におい
て、演算結果について例外処理が必要であるか否かを判
別する。例えば、演算処理回路13における演算結果が
、オーバーフローによって多倍長整数となった場合、例
外判定回路17は、例外処理部18に制御を渡す。また
、例外判定回路17は、レジスタ書込制御回路15に対
してレジスタ群11への書込禁止の制御を指示する。例
外処理部18は、演算結果について、そのデータ形式等
に応じた処理を行なう。
一方、演算結果が固定長イΔ数であり、例外処理が必要
ない場合、レジスタ書込制御回路15は、書込許Mlの
状態に設定されている。このため、例外判定回路17に
おいて例外処理が必要ないものと判別された演算結果は
、レジスタ書込制御回路15によって、所定の目的のレ
ジスタに書き込まれる。
このようにして、LISP等の関数型言語処理系におい
て乗算処理の実行時に、乗数、被乗数データのデータ型
を判定し、データ型が固定長整数であり、かつ乗数デー
タが2のべき乗であれば指数をシフト値として、被乗算
データについてシフト演算処理を行なう。従って、情報
処理装置においては2のべき乗値をもつ定数による乗算
が頻繁に行なわれているため、乗算処理を効率的に実行
され処理時間を短縮することが可能となる。
[発明の効果] 以上のように本発明によれば、LISP等の関数型言語
処理系において乗算処理を行なう際に、乗数、被乗数デ
ータのデータ型か固定長整数型であり、乗数が2のべき
乗である場合には乗算をシフト演算に置き換えて処理を
行なうので、乗算処理を高速に行なうことが可能となる
ものである。
【図面の簡単な説明】
第1図は本発明の一実施例に係わる情報処理装置の構成
を示すブロック図、第2図は同実施例におけるデータ表
現を説明するための図である。 11・・・レジスタ群、12・・・データ型判別回路(
データ型判別手段)、13・・・演算処理回路、14・
・・マイクロプログラム制御回路、15・・・レジスタ
書込制御回路、1B・・・2のべき乗判定回路、17・
・・例外判定回路、18・・・例外処理機構。

Claims (1)

  1. 【特許請求の範囲】 処理実行時にデータ型が決定される言語処理系による乗
    算命令を実行する情報処理装置において、 処理実行時に、乗算命令のオペランドで指示された乗数
    、被乗数データのデータ型が、整数型であるか否かを判
    別するデータ型判別手段と、前記データ型判別手段によ
    って整数型と判別された乗数データが2のべき乗値であ
    るか否かを判別し、2のべき乗値である場合にその指数
    値を求める2のべき乗値判定手段と、 前記2のべき乗値判定手段によって得られた指数値をも
    とに前記被乗数データに対してシフト演算を行なう演算
    処理手段と、 を具備したことを特徴とする情報処理装置。
JP2155390A 1990-01-31 1990-01-31 情報処理装置 Pending JPH03226830A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2155390A JPH03226830A (ja) 1990-01-31 1990-01-31 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2155390A JPH03226830A (ja) 1990-01-31 1990-01-31 情報処理装置

Publications (1)

Publication Number Publication Date
JPH03226830A true JPH03226830A (ja) 1991-10-07

Family

ID=12058196

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2155390A Pending JPH03226830A (ja) 1990-01-31 1990-01-31 情報処理装置

Country Status (1)

Country Link
JP (1) JPH03226830A (ja)

Similar Documents

Publication Publication Date Title
US4740893A (en) Method for reducing the time for switching between programs
US5051896A (en) Apparatus and method for nullifying delayed slot instructions in a pipelined computer system
US4172287A (en) General purpose data processing apparatus for processing vector instructions
JP6807383B2 (ja) 転送プレフィックス命令
KR930018378A (ko) 캐쉬 메모리 시스템의 성능최적화 방법 및 장치
KR910010301A (ko) 명령 지정방법 및 실행장치
ES8402954A1 (es) Unidad para tratamiento de informacion.
JPS6014341A (ja) 基本命令セツト計算機システムにおけるトラツプ割込み方式
JPH0792739B2 (ja) 浮動小数点データ正規化方式
JPH11327903A (ja) Ieee準拠浮動小数点ユニット
JPH0769783B2 (ja) 例外処理方式
US4460970A (en) Digital data processing system using unique techniques for handling the leading digits and the signs of operands in arithmetic operations
US4373182A (en) Indirect address computation circuit
JPH08221272A (ja) 命令キャッシュに命令をロードする方法
EP0140299A2 (en) Vector mask control system
US6904515B1 (en) Multi-instruction set flag preservation apparatus and method
JPH03226830A (ja) 情報処理装置
US6233675B1 (en) Facility to allow fast execution of and, or, and test instructions
JP2557629B2 (ja) 割込方式
KR100246465B1 (ko) 마이크로프로세서 스택 명령어의 수행사이클을 줄이기 위한 장치 및 그 방법
JPH03142528A (ja) 情報処理装置
JPH0258648B2 (ja)
JPS6235694B2 (ja)
JPS5971542A (ja) 演算処理装置
JPS61143850A (ja) 処理装置