JPS6395535A - 演算処理方式 - Google Patents

演算処理方式

Info

Publication number
JPS6395535A
JPS6395535A JP61241011A JP24101186A JPS6395535A JP S6395535 A JPS6395535 A JP S6395535A JP 61241011 A JP61241011 A JP 61241011A JP 24101186 A JP24101186 A JP 24101186A JP S6395535 A JPS6395535 A JP S6395535A
Authority
JP
Japan
Prior art keywords
arithmetic processing
arithmetic
point
digits
data
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
JP61241011A
Other languages
English (en)
Inventor
Tatsuo Sasaki
達生 佐々木
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 JP61241011A priority Critical patent/JPS6395535A/ja
Publication of JPS6395535A publication Critical patent/JPS6395535A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は演算処理方式に関し、特に変数を用いた演算式
を使って操り返し演算処理を行なう演算処理方式に関す
る。
〔従来の技術〕  。
−Cに電子計算機で扱われているデータは固定小数点表
示のものが多く、また、我々にとっても固定小数点数の
方が浮動小数点数よりもわかりやすい。しかし、固定小
数点数はその表記方法のために浮動小数点数に比べて扱
える数値の範囲が狭く、乗算や除算を含む演算処理を行
なう場合には桁あぶれや桁落ちが起こる可能性がある。
そのため、一般に用いられている演算処理方式には、演
算精度の問題から、すべてのデータを浮動小数点数に変
換してから演算処理を行なっているものが多い。
〔発明が解決しようとする問題点〕
上述したように従来の方式では、すべてのデータを浮動
小数点数に変換するので、このデータを浮動小数点数に
変換する属性変換処理に時間がかかり、全体の演算処理
速度が遅くなってしまうという問題がある。
本発明の目的は、演算精度を落とすことなく、データの
属性変換処理の回数を減らし、属性変換処理にかかる時
間を削減することによって演算の処理速度を上げるため
の演算処理方式を提供することにある。
〔問題点を解決するための手段〕
本発明の演算処理方式は、 変数を用いた演算式を使って繰り返し演算処理を行なう
演算処理方式において、 固定小数点数の演算処理を行なう固定小数点演算処理手
段と、 浮動小数点数の演算処理を行なう浮動小数点演算処理手
段と、 データを固定小数点数から浮動小数点数に、または浮動
小数点数から固定小数点数に変換するデータ属性変換手
段と、 与えられた演算式中の変数の定義情報を使って、演算処
理を行なった結果が何桁になるかの計算を行ない、その
結果から、前記固定小数点演算処理手段で演算処理を行
なった場合に桁あふれ、桁落ちが起きる可能性があるか
どうかを判断して、その演算処理を前記固定小数点演算
処理手段で行なうか、浮動小数点演算処理手段で行なう
かを決定し、さらに、演算処理を行なう過程で、演算精
度を落とさないため、または結果を出力するためにデー
タの属性変換の必要があるかどうか、複合演算の場合に
演算処理の途中結果を記憶しておく必要があるかどうか
を判断し、以上の解析結果を解析結果格納域に格納する
演算式解析手段と、実際のデータと前記解析結果格納域
内の情報とから、データの属性変換を前記データ属性変
換手段で行なわせ、演算処理を前記固定小数点演算処理
手段または前記浮動小数点演算処理手段のどちらかの手
段で行なわせ、また、演算処理の途中結果をデータの属
性、全体の桁数および小数部の桁数の情報とともに演算
途中結果格納域に格納する制御を行なう/ri算処理制
御手段とを有する。
〔作用〕
変数を用いた演算式を使って操り返し演算処理を行なう
場合、先ず、演算式解析手段により、上記演算式中の変
数の定義情報に基づいて上記演算式が解析され、データ
の属性変換の必要性があるか等の情報を含む解析結果が
解析結果格納域に格納され、演算処理制御手段はその解
析結果に基づいて実際のデータを、データ属性変換手段
、固定小数点演算処理手段、浮動小数点演算処理手段等
を用いて処理する。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の実施例のブbツク図である。
本実施例の演算処理方式は、演算式解析手段lと、解析
結果格納域2と、演算処理制御手段3と、固定小数点演
算処理手段4と、浮動小数点演算処理手段5と、データ
属性変換手段6と、演算途中結果格納域7とから構成さ
れている。
第2図は本実施例で実行する具体的な演算式の一例を示
し、第3図はこの演算式2−1に用いられている変数A
 −Hの定義情報2−2の一例を示している。定義情報
は本実施例においては、変数名に対応してその属性、全
体の桁数、小数部桁数で与えられている。
第4図は演算式解析手段lが演算式2−1と変数の定義
情報2−2とを与えられたときに行なう桁数の計算の結
果例と、これをもとにして固定小数点演算処理手段4を
用いるか、浮動小数点演算処理手段5を用いるかを判定
した結果を示す、また、第5図は演算式解析手段1が解
析結果格納域2に格納する内容例を示す。
次に、本実施例の動作を説明す不。
第1図において、演算式解析手段1は演算式2−1と変
数の定義1n報2−2とを用いて演算式2−1に付けら
れている番号■〜■の順に桁数の計算を行なう。桁数の
計算方法は例えば以下のようにして行なわれる。
〔加算〕
加算の場合は必ず桁上がりがあると考えて、全体の桁数
は、整数部の桁数の多い方と小数部の桁数の多い方との
和に1を加えたものとなり、小数部の桁数は小数部の桁
数の多い方の値となる。
〔減算〕
減算の場合は、全体の桁数は、整数部の桁数の多い方と
小数部の桁数の多い方との和になり、小数部の桁数は、
小数部の桁数の多い方の値となる。
〔乗算〕
乗算の場合は、全体の桁数は、そのまま両方の全体の桁
数を加えたものとなり、小数部の桁数も、両方の小数部
の桁数を加えたものとなる。
〔除算〕
除算の場合は、割り切れない場合に桁落ちする可能性が
あるので、無条件に浮動小数点演算を行ない、桁数の計
算は行なわない。
また、本実施例の固定小数点数は全体の桁数が31桁ま
でのものが扱える。そのため、この桁数を越えるかどう
かが、固定小数点演算を行なうか浮動小数点演算を行な
うかの判断基準となる。
演算式解析手段1は、上述の桁数の計算方法に従って以
下のようにして演算式2−1の各演算■〜■の桁数を計
算し、その結果から固定小数点演算処理手段4でその/
f4算処理を行なった場合に桁あふれ1桁落ちが起きる
可能性があるかどうかを判断し、その演算処理を固定小
数点演算処理手段で行なうか、浮動小数点演算処理手段
で行なうかを決定する。
〔演算■〕
演算式2−1の演算■はPACKED DECIMAL
属性のデータ間の加算処理である。前記の桁数の計算方
法に従って計算を行なうと、全体の桁数は11桁、小数
部のIij数は3桁となる。この桁数は固定小数点演算
を行なっても桁あぶれや桁落ちするおそれがないため、
固定小数点演算処理手段4を用いて演算処理を行なうと
判定する。
〔演算■〕
次の演算■は、演算■の結果と変数Cの乗算である。演
算■の結果は、属性はPACKED DECIMALで
全体の桁数は11桁、小数部桁数は3桁であり、また、
変数Cは変数の定義情報2−2から、属性はPACKE
D DECIMALで全体の桁数は10桁、小数部の桁
数は3桁であるから、前記の桁数の計算方法に従って計
算すれば、演算■の結果は全体の桁数21桁、小数部桁
数6桁ということになる。これも固定小数点で扱える範
囲なので固定小数点lA算処理手段4で演算処理を行な
うと判定する。
〔演算■〕
演算■も演算■と同様の計算方法で桁数の計算を行なう
と、演算結果の指数は全体の桁数が16桁、小数部桁数
が3桁となる。これも固定小数点演算処理手段4で行な
うと判定する。
〔演算■〕
演算0は演算■の結果と変数Fとの乗算である。
演算■の結果は、属性がPA(JED DECIMAL
で全体の指数は16桁、小数部桁数は3桁であり、変数
Fは変数の定義情報2−2から全体の桁数20桁、小数
部桁数3桁、属性はPACKED DECIM^Lであ
るので、前記桁数の計算方法で計算すると、全体の桁数
36桁、小数部桁数6桁となり、固定小数点数では桁あ
ふれしてしまう。そのため、この演算■は浮動小数点演
算処理手段5で行なうと判定する。
〔演算■〕
演算■は演算■の結果と演算■の結果との減算である。
演算■の結果は属性がPACKED DECIMALで
あるが、演算■の結果がFLOAT l’1lNAI?
Yの属性であるので、演算処理は浮動小数点演算処理手
段5を用いて行なうと判定する。
〔演算■〕
演算■は除算であるので、浮動小数点演算処理手段5で
演算処理を行なうと判定する。
〔演算■〕
演算■は演算■の結果と演算■の結果との減算である。
どちらの結果も浮動小数点数なので、浮動小数点演算処
理手段5で行なうと判定する。
以上〔演算■〕〜〔演算■〕の結果を図にまとめたもの
が第4図である。
そして、演算式解析手段1は、演算処理を行なう過程で
演算精度を落とさないため又は結果を出力するためにデ
ータの属性変換の必要があるか否か、複合演算の場合に
演算処理の途中結果を記iQしておく必要があるか否か
を判断し、この判断に基づくデータ属性変換の情報と、
途中結果記憶の情報とを第4図の情報に加えて、第5図
に示したような最終的なg析結果を生成し、これを解析
結果格納域2に格納する。
さて、解析結果が解析結果格納域2に格納されると、演
算処理制御手段3は、解析結果格納域2の情報(第5図
)を見て、入力されたデータ(演算式2−1の各変数A
 −IIに対応する実際のデータ)に対し解析結果格納
域2の順序に従って以下のように処理を行なっていく。
2つの人力されたデータ(変数A、Bに対応するデータ
)の加算を固定小数点演算処理手段4で行なわせ(演算
■)、その結果と次のデータ(変数Cに対応するデータ
)との乗算を固定小数点演算処理手段4で行なわせ、結
果を演算途中結果格納域7に格納する(演算■)。
次の2つのデータ(変数り、Eに対応するデータ)の加
算を固定小数点演算処理手段4で行なわせ(演算■)、
結果をデータ属性変換手段6で浮動小数点数に変換し、
さらに次のデータ(変数Fに対応するデータ)もデータ
属性変換手段6で浮動小数点数に変換しζ、変換した結
果同士の乗算を浮動小数点演算処理手段5で行なわせる
(演算■)。
演算■で演算途中結果格納域7に記憶しておいたデータ
をデータ属性変換手段6で浮動小数点数に変換し、その
結果から、演算■で処理した乗算の結果を引く処理を浮
動小数点演算処理手段5で行なわせ、結果を演算途中結
果格納域7に記tαしてお((演算■)。
次の人力データ2つ(変数G、Hに対応するデータ)を
それぞれデータ属性変換手段6で浮動小数点数に変換し
、それぞれの結果の除算を浮動小数点演算処理手段5で
行なわせ(演算■)、最後に演算■で演算途中結果格納
域7に記憶しておいたデータからその結果を引いて(演
算■)、最終的な演算結果として返す。
以上で実際のデータを用いた演算式2−1の、1回の演
算が終了したことになり、さらに実際のデータが複数あ
って、演算式2−1の演算処理が操り返し行なわれる場
合は、演算式解析手段1が演算式を解析して解析結果格
納域2に解析結果を格納する処理を除いた処理が繰り返
される。
〔発明の効果〕
以上説明したように、本発明は、従来例のように演算実
行前にすべてのデータを浮動小数点数に属性変換するの
ではなく、実際のデータを用いた演算の実行前に行なっ
た演算式の解析結果に基づき必要なデータについてだけ
データの属性変換を行なうので、特に、変数を用いた演
算式を使って繰り返し同一の演算処理を行なう場合に効
果があり、演算精度を落とすことなく、データの属性変
換処理の回数を減らし、属性変換処理にかかる時間を削
減することによって演算の処理速度を上げることができ
る。
【図面の簡単な説明】
第1図は本発明の実施例のブロック図、第2図は本発明
の実施例で実行する演算式の一例を示す図、 第3図は演算式2−1中の変数の定義情報例を示す図、 第4図は変数の定義情報を用いた桁数の計算結果等を示
す図及び、 第5図は解析結果格納域2に格納される演算式2−1の
解析結果例を示す図である。 図において、1・・・演算式解析手段、2・・・解析結
果格納域、3・・・演算処理制御手段、4・・・固定小
数点演算処理手段、5・・・浮動小数点2iii算処理
手段、6・・・データ属性変換手段、7・・・演算途中
結果格納域。

Claims (1)

  1. 【特許請求の範囲】 変数を用いた演算式を使って繰り返し演算処理を行なう
    演算処理方式において、 固定小数点数の演算処理を行なう固定小数点演算処理手
    段と、 浮動小数点数の演算処理を行なう浮動小数点演算処理手
    段と、 データを固定小数点数から浮動小数点数に、または浮動
    小数点数から固定小数点数に変換するデータ属性変換手
    段と、 与えられた演算式中の変数の定義情報を使って、演算処
    理を行なった結果が何桁になるかの計算を行ない、その
    結果から、前記固定小数点演算処理手段で演算処理を行
    なった場合に桁あふれ、桁落ちが起きる可能性があるか
    どうかを判断して、その演算処理を前記固定小数点演算
    処理手段で行なうか、浮動小数点演算処理手段で行なう
    かを決定し、さらに、演算処理を行なう過程で、演算精
    度を落とさないため、または結果を出力するためにデー
    タの属性変換の必要があるかどうか、複合演算の場合に
    演算処理の途中結果を記憶しておく必要があるかどうか
    を判断し、以上の解析結果を解析結果格納域に格納する
    演算式解析手段と、実際のデータと前記解析結果格納域
    内の情報とから、データの属性変換を前記データ属性変
    換手段で行なわせ、演算処理を前記固定小数点演算処理
    手段または前記浮動小数点演算処理手段のどちらかの手
    段で行なわせ、また、演算処理の途中結果をデータの属
    性、全体の桁数および小数部の桁数の情報とともに演算
    途中結果格納域に格納する制御を行なう演算処理制御手
    段とを有することを特徴とする演算処理方式。
JP61241011A 1986-10-09 1986-10-09 演算処理方式 Pending JPS6395535A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61241011A JPS6395535A (ja) 1986-10-09 1986-10-09 演算処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61241011A JPS6395535A (ja) 1986-10-09 1986-10-09 演算処理方式

Publications (1)

Publication Number Publication Date
JPS6395535A true JPS6395535A (ja) 1988-04-26

Family

ID=17068002

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61241011A Pending JPS6395535A (ja) 1986-10-09 1986-10-09 演算処理方式

Country Status (1)

Country Link
JP (1) JPS6395535A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02105927A (ja) * 1988-10-14 1990-04-18 Fujitsu Ltd 数値データ管理処理方式
JP2009110353A (ja) * 2007-10-31 2009-05-21 Hitachi Ltd マイクロコントローラ及び制御システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02105927A (ja) * 1988-10-14 1990-04-18 Fujitsu Ltd 数値データ管理処理方式
JP2009110353A (ja) * 2007-10-31 2009-05-21 Hitachi Ltd マイクロコントローラ及び制御システム

Similar Documents

Publication Publication Date Title
JPH0690668B2 (ja) ファジイ演算装置
JPS6395535A (ja) 演算処理方式
JP2857505B2 (ja) 除算装置
CN112860218A (zh) 用于fp16浮点数据和int8整型数据运算的混合精度运算器
JPS6022371B2 (ja) ディジタル微分解析機
JPH03192429A (ja) 平方根演算装置
JP2951685B2 (ja) 固定小数点演算器
JP2819842B2 (ja) デジタル・シグナル・プロセッサ
JP2675087B2 (ja) マイクロコンピュータ
JPH11195012A (ja) 自由曲線演算方法および該方法に係るプログラムを格納した記憶媒体
JPS5944656B2 (ja) デイジタル微分解析機の積分方式
SU734705A1 (ru) Специализированный процессор
JP3074910B2 (ja) 除算装置
JPH05274116A (ja) 浮動小数点演算装置
JPS5936781B2 (ja) デイジタル微分解析機の内插積分および外插積分方式
SU1462302A1 (ru) Вычислительное устройство
JPS6033629A (ja) 演算装置
JPS6155738A (ja) 演算モ−ドの決定方式
JPH0419571B2 (ja)
JPH01191231A (ja) 不連続2進数値データの演算処理方式
JPS6116325A (ja) 浮動小数点演算方式
JPH045727A (ja) 変換装置
JPS61183739A (ja) 高速乗算装置
JPH03241421A (ja) 乗算器
JPS62126483A (ja) 微分回路装置