JPH0371228A - 開立計算装置 - Google Patents
開立計算装置Info
- Publication number
- JPH0371228A JPH0371228A JP1207713A JP20771389A JPH0371228A JP H0371228 A JPH0371228 A JP H0371228A JP 1207713 A JP1207713 A JP 1207713A JP 20771389 A JP20771389 A JP 20771389A JP H0371228 A JPH0371228 A JP H0371228A
- Authority
- JP
- Japan
- Prior art keywords
- storage means
- number stored
- calculation
- storage device
- storage
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/552—Powers or roots, e.g. Pythagorean sums
- G06F7/5525—Roots or inverse roots of single operands
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野〉
本発明は任意の数の立方根を求める装置、即ち開立計算
装置に関する。
装置に関する。
(従来の技術)
従来では、任意の数の立方根を求める開立計算方式とし
ては、対数関数及び指数関数を用いる方式又はニュート
ンの逐次近似法を利用する方式が用いられていた。
ては、対数関数及び指数関数を用いる方式又はニュート
ンの逐次近似法を利用する方式が用いられていた。
前者は、先ず立方根を求める対象である数(本明細書で
は「被開立数」と称する)の対数値を求め、次にその対
数値を3で除した数め指数をとるものである。
は「被開立数」と称する)の対数値を求め、次にその対
数値を3で除した数め指数をとるものである。
後者は、被開立数Aに対してニュートンの逐次近似式
%式%
)
を適用し、xl、 x2、X3、・・・を順次求めて
行き、X B = X @ + 1が成立、又は近似的
に成立したときにX、を被開立数Aの立方根とするもの
である。
行き、X B = X @ + 1が成立、又は近似的
に成立したときにX、を被開立数Aの立方根とするもの
である。
(発明が解決しようとする課題)
上述した従来の開立計算方式は、対数関数及び指数関数
といった特殊関数の計算、又は多数回の乗除算を必要と
するため、計算時間が非常に長くなるという問題が生じ
ていた。また、これらの方式では、求められた立方根の
仮数部の桁数は特殊関数の計算を実行するサブルーチン
の計算精度や乗除算の計算精度に依存するため、仮数部
の計算すべき桁数を自由に設定できないという欠点があ
った。
といった特殊関数の計算、又は多数回の乗除算を必要と
するため、計算時間が非常に長くなるという問題が生じ
ていた。また、これらの方式では、求められた立方根の
仮数部の桁数は特殊関数の計算を実行するサブルーチン
の計算精度や乗除算の計算精度に依存するため、仮数部
の計算すべき桁数を自由に設定できないという欠点があ
った。
本発明はこのような現状に鑑みてなされたものであり、
その目的とするところは、従来よりも大幅に短い計算時
間で立方根を求めることができ、求める立方根の仮数部
の桁数を必要に応じて自由に設定することができる開立
計算装置を提供することにある。
その目的とするところは、従来よりも大幅に短い計算時
間で立方根を求めることができ、求める立方根の仮数部
の桁数を必要に応じて自由に設定することができる開立
計算装置を提供することにある。
(課題を解決するための手段〉
本発明の開立計算装置は、被開立数が初期設定される第
1の記憶手段、被開立数の桁数に基づいて定まる数が初
期設定される第2の記憶手段、所定の数が初期設定され
る第3及び第4の記憶手段、第5の記憶手段、該第1の
記憶手段に記憶されている数と該第2の記憶手段に記憶
されている数との大小関係を判定する手段、該判定手段
によって該第1の記憶手段に記憶されている数が該第2
の記憶手段に記憶されている数より小さくないと判定さ
れた場合に、該第1の記憶手段に記憶されている数から
該第2の記憶手段に記憶されている数を減じ、該第2の
記憶手段に記憶されている数に該第3の記憶手段に記憶
されている数から生成される数を加え、該第5の記憶手
段に記憶されている数に所定の数を加える第1の演算手
段、該判定手段によって該第1の記憶手段に記憶されて
いる数が該第2の記憶手段に記憶されている数より小さ
いと判定された場合に、該第2の記憶手段に記憶されて
いる数から該第4の記憶手段に記憶されている数から生
成される数を減じ、該第5の記憶手段に記憶されている
数を左方ヘシフトさせる第2の演算手段、並びに所定の
条件が成立するまで、該判定手段、該第1の演算手段及
び該第2の演算手段を制御し、該第1の演算手段が動作
した後及び該第2の演算手段が動作した後に該判定手段
を動作させる制御手段を備えており、そのことにより上
記目的が遠戚される。
1の記憶手段、被開立数の桁数に基づいて定まる数が初
期設定される第2の記憶手段、所定の数が初期設定され
る第3及び第4の記憶手段、第5の記憶手段、該第1の
記憶手段に記憶されている数と該第2の記憶手段に記憶
されている数との大小関係を判定する手段、該判定手段
によって該第1の記憶手段に記憶されている数が該第2
の記憶手段に記憶されている数より小さくないと判定さ
れた場合に、該第1の記憶手段に記憶されている数から
該第2の記憶手段に記憶されている数を減じ、該第2の
記憶手段に記憶されている数に該第3の記憶手段に記憶
されている数から生成される数を加え、該第5の記憶手
段に記憶されている数に所定の数を加える第1の演算手
段、該判定手段によって該第1の記憶手段に記憶されて
いる数が該第2の記憶手段に記憶されている数より小さ
いと判定された場合に、該第2の記憶手段に記憶されて
いる数から該第4の記憶手段に記憶されている数から生
成される数を減じ、該第5の記憶手段に記憶されている
数を左方ヘシフトさせる第2の演算手段、並びに所定の
条件が成立するまで、該判定手段、該第1の演算手段及
び該第2の演算手段を制御し、該第1の演算手段が動作
した後及び該第2の演算手段が動作した後に該判定手段
を動作させる制御手段を備えており、そのことにより上
記目的が遠戚される。
(実施例)
本発明を実施例について以下に説明する。実施例に於い
ては内部演算が10進法で行われるものとして説明を行
う。しかし、本発明の開立計算装置は、内部演算が他の
進法で行われる場合でも、以下で説明する実施例中の一
部の定数が変更されるだけで、本質的に10進法の場合
と同様に立方根の計算を行う。又、立方根を求めるに際
しては、符号(+又は−)及び小数点の位置を決定する
必要があるが、前者については、被開立数の符号を立方
根の符号とすればよい。後者については、被開立数が小
数部を含む場合には、被開立数に10の3乗(被開立数
がlO進数の場合)を必要な回数だけ乗することにより
被開立数を整数化し、求められた立方根の指数部につい
て調整を行えばよい。従って、ここでは説明を簡単にす
るために被開立数は10進数の自然数とする。
ては内部演算が10進法で行われるものとして説明を行
う。しかし、本発明の開立計算装置は、内部演算が他の
進法で行われる場合でも、以下で説明する実施例中の一
部の定数が変更されるだけで、本質的に10進法の場合
と同様に立方根の計算を行う。又、立方根を求めるに際
しては、符号(+又は−)及び小数点の位置を決定する
必要があるが、前者については、被開立数の符号を立方
根の符号とすればよい。後者については、被開立数が小
数部を含む場合には、被開立数に10の3乗(被開立数
がlO進数の場合)を必要な回数だけ乗することにより
被開立数を整数化し、求められた立方根の指数部につい
て調整を行えばよい。従って、ここでは説明を簡単にす
るために被開立数は10進数の自然数とする。
第1図に本発明の一実施例の構成を示す。本実施例の開
立計算装置は、10進数を記憶する8個の記憶装置1〜
8を備えている。第1図に於いて、各記憶装置の左側及
び右側に、入力線及び出力線がそれぞれ図示されている
。複数の入力線に接続されている記憶装置は、図外の制
御装置の指令に従って、該複数の入力線上のデータを選
択的に取り込み、記憶する。記憶装置1には被開立数が
初期設定される。記憶装置4に最終的に立方根が得られ
る。以下では、記憶装置1. 2.3.4.5.6.7
及び8の記憶内容をそれぞれxSy、 z。
立計算装置は、10進数を記憶する8個の記憶装置1〜
8を備えている。第1図に於いて、各記憶装置の左側及
び右側に、入力線及び出力線がそれぞれ図示されている
。複数の入力線に接続されている記憶装置は、図外の制
御装置の指令に従って、該複数の入力線上のデータを選
択的に取り込み、記憶する。記憶装置1には被開立数が
初期設定される。記憶装置4に最終的に立方根が得られ
る。以下では、記憶装置1. 2.3.4.5.6.7
及び8の記憶内容をそれぞれxSy、 z。
A、r+、rl、rcl及びrc2と表すO比較器9は
記憶装置1の内容と記憶装置2の内容とを比較し、それ
らの大小関係に応じた信号aを前述の制御装置に与える
。
記憶装置1の内容と記憶装置2の内容とを比較し、それ
らの大小関係に応じた信号aを前述の制御装置に与える
。
減算器11及び13は、それぞれ、記憶装置1の内容(
X)から記憶装置2の内容(y)を減する計算及び記憶
装置2の内容(y)から記憶装置6の内容(rl)を減
する計算を行う。
X)から記憶装置2の内容(y)を減する計算及び記憶
装置2の内容(y)から記憶装置6の内容(rl)を減
する計算を行う。
加算器12.15及び16は、それぞれ、記憶装置2の
内容(y)に記憶装置5の内容(rl)を加える計算、
記憶装置5の内容(rl)に記憶装置7の内容(rc+
)を加える計算及び記憶装置6の内容(rl)に記憶装
置[8の内容(ra2)を加える計算を行う。
内容(y)に記憶装置5の内容(rl)を加える計算、
記憶装置5の内容(rl)に記憶装置7の内容(rc+
)を加える計算及び記憶装置6の内容(rl)に記憶装
置[8の内容(ra2)を加える計算を行う。
加算器17は、記憶装置4の内容(A)に1を加える。
加減算器14は、前述の制御装置から信号すが与えられ
る場合には記憶装置2の内容(y)に記憶装置3の内容
(Z)を加え、制御装置から信号すが与えられない場合
には記憶装置2の内容(y)から記憶装置3の内容(Z
)を減する。
る場合には記憶装置2の内容(y)に記憶装置3の内容
(Z)を加え、制御装置から信号すが与えられない場合
には記憶装置2の内容(y)から記憶装置3の内容(Z
)を減する。
上述した加算器12.15及び16、減算器11及び1
3並びに加減算器14に於ける加減算のタイミングは、
前述の制御装置によって定められる。加算器12.15
及び16、減算器11及び13並びに加減算器14によ
る計算結果が何れの記憶装置に格納されるかについては
、第1図を参照されたい。
3並びに加減算器14に於ける加減算のタイミングは、
前述の制御装置によって定められる。加算器12.15
及び16、減算器11及び13並びに加減算器14によ
る計算結果が何れの記憶装置に格納されるかについては
、第1図を参照されたい。
右シフト指示器21〜26は、図中で矢印によってそれ
ぞれ関連付けられている記憶装置に対し、その内容を右
方へ、即ち下位の桁の方向へシフトするように指示する
ものである。図中の各右シフト指示器内の表示「右n
(n=1.2.3)」は、各右シフト指示器が指示する
1回のシフトの桁数である。左シフト指示器27は、記
憶装置4に対してその内容を左方へ、即ち上位の桁の方
向へ1桁シフトするように指示するものである。
ぞれ関連付けられている記憶装置に対し、その内容を右
方へ、即ち下位の桁の方向へシフトするように指示する
ものである。図中の各右シフト指示器内の表示「右n
(n=1.2.3)」は、各右シフト指示器が指示する
1回のシフトの桁数である。左シフト指示器27は、記
憶装置4に対してその内容を左方へ、即ち上位の桁の方
向へ1桁シフトするように指示するものである。
第1図では、理解を容易にするために、被加減算の対象
となる数を記憶している記憶装置の組毎に加算器又は減
算器を図示しているが、これらの加算器及び減算器をよ
り少数のものにまとめることもできる。また、本実施例
の開立計算装置は、ハードウェアのみで構成することも
できるが、汎用のマイクロプロセッサ(MPU)を用い
て構成することもできる。後者の場合には、記憶装置は
MPUのレジスタ又は主記憶で実現され、その他の構成
要素はそれらのレジスタ又は主記憶を演算の対象とする
MPUの命令で実現される。ここで必要とされる命令は
、主として加算命令、減算命令及びシフト命令といった
通常のMPUの基本的な命令ばかりである。従って、M
PUを用いる場合でも、本実施例の開立計算装置による
開立計算は非常に高速に行われる。
となる数を記憶している記憶装置の組毎に加算器又は減
算器を図示しているが、これらの加算器及び減算器をよ
り少数のものにまとめることもできる。また、本実施例
の開立計算装置は、ハードウェアのみで構成することも
できるが、汎用のマイクロプロセッサ(MPU)を用い
て構成することもできる。後者の場合には、記憶装置は
MPUのレジスタ又は主記憶で実現され、その他の構成
要素はそれらのレジスタ又は主記憶を演算の対象とする
MPUの命令で実現される。ここで必要とされる命令は
、主として加算命令、減算命令及びシフト命令といった
通常のMPUの基本的な命令ばかりである。従って、M
PUを用いる場合でも、本実施例の開立計算装置による
開立計算は非常に高速に行われる。
本実施例の動作を説明する。
先ず、各記憶装置に与えられる初期値について述べる。
前述したように、被開立数として与えられた自然数は記
憶装置1に格納される。記憶装置2には、被開立数Xが
次式、 103(N◆1)〉X≧103N を満たすとすると、103Nが初期設定される。換言す
るならば、記憶装置2に設定される数は、被開立数を下
位より3桁ずつ区切ってブロック化した場合の最上位の
ブロックに対応するブロックに1が立てられており、他
°の全ての桁が0にされている。記憶装置3には当初、
記憶装置2の初期値と同じ数が設定される。記憶装置4
.5及び6に格納される初期値はOである。又、記憶装
置7及び8には、記憶装置2の初期値を6倍した数及び
27倍した数がそれぞれ初期設定される。尚、第1図に
は、上述の初期設定を行う手段は図示していない。
憶装置1に格納される。記憶装置2には、被開立数Xが
次式、 103(N◆1)〉X≧103N を満たすとすると、103Nが初期設定される。換言す
るならば、記憶装置2に設定される数は、被開立数を下
位より3桁ずつ区切ってブロック化した場合の最上位の
ブロックに対応するブロックに1が立てられており、他
°の全ての桁が0にされている。記憶装置3には当初、
記憶装置2の初期値と同じ数が設定される。記憶装置4
.5及び6に格納される初期値はOである。又、記憶装
置7及び8には、記憶装置2の初期値を6倍した数及び
27倍した数がそれぞれ初期設定される。尚、第1図に
は、上述の初期設定を行う手段は図示していない。
このように初期値が設定された後、第1図の開立計算装
置は、第2図のフローチャートに従って動作するように
制御される。尚、第2図では、計算終了の判定処理は省
略されている。終了判定処理については後述する。
置は、第2図のフローチャートに従って動作するように
制御される。尚、第2図では、計算終了の判定処理は省
略されている。終了判定処理については後述する。
ステップSOで上述した初期設定がなされた後、Xがy
以上であるか否かが判定される(ステップSl)。X≧
yであれば、ステップS2及びS3の処理が行われる。
以上であるか否かが判定される(ステップSl)。X≧
yであれば、ステップS2及びS3の処理が行われる。
他方、x<yであれば、ステップ84〜S7の処理が行
われる。第1図の装置のステップS1の比較処理に関わ
る部分を第3図に示す。比較器9からは比較結果に応じ
た信号aが出力される。
われる。第1図の装置のステップS1の比較処理に関わ
る部分を第3図に示す。比較器9からは比較結果に応じ
た信号aが出力される。
ステップS2では、以下の■〜■の処理が行われる。■
Xからyが引かれる。■rlにrclが加えられる。■
r2にrc2が加えられる。■Aに1が加えられる。ス
テップS3ではyにrlが加えられる。ステップS3の
処理が終了すると、ステップS1に移行する。第1図の
装置の、ステップS2の演算に関わる部分を第4A図に
、ステップS3の演算に関わる部分を第4B図に示す。
Xからyが引かれる。■rlにrclが加えられる。■
r2にrc2が加えられる。■Aに1が加えられる。ス
テップS3ではyにrlが加えられる。ステップS3の
処理が終了すると、ステップS1に移行する。第1図の
装置の、ステップS2の演算に関わる部分を第4A図に
、ステップS3の演算に関わる部分を第4B図に示す。
ステップS4ではyから2が引かれる。第1図の装置の
ステップS4の演算に関わる部分を第5A図に示す。ス
テップS4の演算を行う場合には、加減算器14には信
号すは与えられず、加減算器14は減算器として機能す
る。
ステップS4の演算に関わる部分を第5A図に示す。ス
テップS4の演算を行う場合には、加減算器14には信
号すは与えられず、加減算器14は減算器として機能す
る。
ステップS5では、yが右方へ1桁シフトされ、rlが
右方へ2桁シフトされ、又、2が右方へ3桁シフトされ
る。ステップS6ではyからrlが引かれる。第1図の
装置の、ステップS5の演算に関わる部分及びステップ
S6の演算に関わる部分を第5B図及び第5C図にそれ
ぞれ示す。
右方へ2桁シフトされ、又、2が右方へ3桁シフトされ
る。ステップS6ではyからrlが引かれる。第1図の
装置の、ステップS5の演算に関わる部分及びステップ
S6の演算に関わる部分を第5B図及び第5C図にそれ
ぞれ示す。
ステップS7では、以下の■〜■の処理が行われる。■
yに2が加えられる。■Aが左方へ1桁シフトされる。
yに2が加えられる。■Aが左方へ1桁シフトされる。
■r1が右方へ2桁シフトされる。
■rC1が右方へ3桁シフトされる。■rc2が右方へ
3桁シフトされる。第1図の装置のステップS7の演算
に関わる部分を第5D図に示す。ステップS7の演算を
行う場合には加減算器14に信号すが与えられ、加減算
器14は加算器として機能する。ステップS7の処理が
終了すると、ステップSlに移行する。
3桁シフトされる。第1図の装置のステップS7の演算
に関わる部分を第5D図に示す。ステップS7の演算を
行う場合には加減算器14に信号すが与えられ、加減算
器14は加算器として機能する。ステップS7の処理が
終了すると、ステップSlに移行する。
第1図の装置の構成及び第2図のフローチャートには、
内部演算が回道法で行われる場合にも変更の必要がない
。
内部演算が回道法で行われる場合にも変更の必要がない
。
本実施例による開立計算の一例を示す。被開立数を12
812904 (=234’)とする。以下では開立計
算の過程で、各ステップの処理により内容が変化した記
憶装置の内容を示す。
812904 (=234’)とする。以下では開立計
算の過程で、各ステップの処理により内容が変化した記
憶装置の内容を示す。
(a)ステップSOでの初期設定による各記憶装置の内
容は次の通りである。
容は次の通りである。
x :12812904
y : 1000000
rl:O
rl: 0
rcl : 6000000
rc2 : 27000000
z : 1000000
A:0
(b)ステップS1でX≧yが成立するので、ステ、ブ
S2及びS3の処理が行われる。ステップS2の処理結
果は、 x :11812904 rs : 6000000 r2 : 27000000 A:l であり、ステップS3の処理結果は、 7 : 7000000 である。
S2及びS3の処理が行われる。ステップS2の処理結
果は、 x :11812904 rs : 6000000 r2 : 27000000 A:l であり、ステップS3の処理結果は、 7 : 7000000 である。
(C)ステップS1でX≧yが再び成立するので、ステ
ップS1及びS3の処理が行われる。ステップS2の処
理結果は、 x : 4812904 r1.: 12000000 rl: 54000000 A:2 であり、ステップS3の処理結果は、 V :19000000 である。以上の(b)及び(C)の処理で、立方根の1
00の位である「2」が求められる。
ップS1及びS3の処理が行われる。ステップS2の処
理結果は、 x : 4812904 r1.: 12000000 rl: 54000000 A:2 であり、ステップS3の処理結果は、 V :19000000 である。以上の(b)及び(C)の処理で、立方根の1
00の位である「2」が求められる。
(d)次に、ステップS1でx<yが成立するので、ス
テップS4、S5、S6及びS7の処理が順次に行われ
る。ステップS4の処理結果は、Y :180000
00 であり、ステップS5の処理結果は、 Y : 1800000 r2: 540000 Z : 1000 である。ステップS6ではyからr2が減算され、y
: 1260000 となる。ステップS7の処理結果は以下の通りである。
テップS4、S5、S6及びS7の処理が順次に行われ
る。ステップS4の処理結果は、Y :180000
00 であり、ステップS5の処理結果は、 Y : 1800000 r2: 540000 Z : 1000 である。ステップS6ではyからr2が減算され、y
: 1260000 となる。ステップS7の処理結果は以下の通りである。
Y : 1261000
A : 20
rl : 120000
rcl : 6000
rc2 : 27000
処理(d)により、立方根の10の位を求めるための準
備がなされる。
備がなされる。
(e)次に、ステップS1でX≧yが成立するため、ス
テノブS2及びS3の処理が行われる。
テノブS2及びS3の処理が行われる。
ステップS2の処理結果は、
x : 3551904
rx : 126000
r2: 567000
A : 21
であり、ステップS3の処理結果は、
Y : 1387000
である。
(f)ステップS1で再びX≧yが成立するため、ステ
ップS2、S3の処理が行われる。ステップS2の処理
結果は、 x : 2164904 rI : 132000 r2: 594000 A : 22 であり、ステップS3の処理結果は、 Y : 1519000 である。
ップS2、S3の処理が行われる。ステップS2の処理
結果は、 x : 2164904 rI : 132000 r2: 594000 A : 22 であり、ステップS3の処理結果は、 Y : 1519000 である。
(g)ステップS1で更にX≧yが成立し、ステップS
2及びS3の処理が行われる。ステップS2の処理結果
は、 X : 645904 rs : 138000 r2: 621000 A : 23 であり、ステップS3の処理結果は、 Y : 1657000 である。以上の処理<e>〜(g)で、立方根の10の
位である「3」が求められる。
2及びS3の処理が行われる。ステップS2の処理結果
は、 X : 645904 rs : 138000 r2: 621000 A : 23 であり、ステップS3の処理結果は、 Y : 1657000 である。以上の処理<e>〜(g)で、立方根の10の
位である「3」が求められる。
(h)次に、ステップS1でx<yが成立するので、ス
テップS4、S5、S6及びS7の処理が順次に行われ
、立方根の1の位を求めるための準備がなされる。ステ
ップS4の処理結果は、Y : 1656000 であり、ステップS5の処理結果は、 Y : 165600 r2: 6210 z:1 である。ステップS6ではyからr2が減算され、Y
: 159390 となる。 ステップS7の処理結果は以下の通りである
。
テップS4、S5、S6及びS7の処理が順次に行われ
、立方根の1の位を求めるための準備がなされる。ステ
ップS4の処理結果は、Y : 1656000 であり、ステップS5の処理結果は、 Y : 165600 r2: 6210 z:1 である。ステップS6ではyからr2が減算され、Y
: 159390 となる。 ステップS7の処理結果は以下の通りである
。
Y : 159391
A : 230
r1: 1380
rcH: 5
rc2: 27
(i)ステップS1でX≧yが成立し、ステップS2及
びS3の処理が行われる。ステップS2の処理結果は、 x : 486513 rH: 1386 r2: 6237 A : 231 であり、ステップS3の処理結果は、 y : 160777 である。
びS3の処理が行われる。ステップS2の処理結果は、 x : 486513 rH: 1386 r2: 6237 A : 231 であり、ステップS3の処理結果は、 y : 160777 である。
(j)ステップS1で再びX≧yが成立するため、ステ
ップS2及びS3の処理が行われる。ステップS2の処
理結果は、 x : 325736 r+ : 1392r2:
6264 A : 232であり、ステ
ップS3の処理結果は、 Y : 162169 である。
ップS2及びS3の処理が行われる。ステップS2の処
理結果は、 x : 325736 r+ : 1392r2:
6264 A : 232であり、ステ
ップS3の処理結果は、 Y : 162169 である。
(k)ステップS1で三度X≧yが成立し、ステップS
2及びS3の処理が行われる。ステ、2ブS2の処理結
果は、 x : 163567 rl: 139g rl: 6291 A : 233 であり、ステップS3の処理結果は、 y : 163567 である。
2及びS3の処理が行われる。ステ、2ブS2の処理結
果は、 x : 163567 rl: 139g rl: 6291 A : 233 であり、ステップS3の処理結果は、 y : 163567 である。
(1)次に、ステップS1で更にX≧yが成立するため
、ステップS2の処理が行われる。その結果、ステップ
S2の処理に関連する記憶装置の内容は以下のようにな
る。
、ステップS2の処理が行われる。その結果、ステップ
S2の処理に関連する記憶装置の内容は以下のようにな
る。
X:O
rl : 1494
r2 : 6318
A : 234Aは立方根に
等しく、このときx=Oとなっている。このように、ス
テップS2の処理の終了時にXの値を調べ、XがOにな
ったと判定された場合に立方根が求められたと判断して
ループから抜は出すことにより、開立計算の終了判断を
効率よく行うことができる。しかしながら、x=Oの条
件は、与えられた被開立数が成る数の丁度3乗である場
合にのみ成立するので、この終了条件を任意の被開立数
に対して適用することはできない。
等しく、このときx=Oとなっている。このように、ス
テップS2の処理の終了時にXの値を調べ、XがOにな
ったと判定された場合に立方根が求められたと判断して
ループから抜は出すことにより、開立計算の終了判断を
効率よく行うことができる。しかしながら、x=Oの条
件は、与えられた被開立数が成る数の丁度3乗である場
合にのみ成立するので、この終了条件を任意の被開立数
に対して適用することはできない。
従って、−膜内には、
(1)Aの値が所定の桁数に達した場合(2)z=oが
成立した場合 等の場合にループから抜は出し、開立計算を終了すれば
よい。−例として、ステップS2の後のX=Oの判定を
省略し、ステップS5の後に2=0の判定を行うとすれ
ば、上述した計算例では、以下に示す処理が余分に必要
となる。
成立した場合 等の場合にループから抜は出し、開立計算を終了すれば
よい。−例として、ステップS2の後のX=Oの判定を
省略し、ステップS5の後に2=0の判定を行うとすれ
ば、上述した計算例では、以下に示す処理が余分に必要
となる。
(ステップ53)
Y : 164971
(ステップS1でx<yが成立)
(ステップ54)
y : 164971
(ステップ35)
Y : 19497
rl : 63
z:0
尚、以上の説明から分かるように、本実施例では、立方
根を任意の桁数まで計算することができる。
根を任意の桁数まで計算することができる。
本実施例の動作について補足的な説明を行う。
被開立数X(xの初期値)が、
1()3(N◆”>X≧103N
を満足するならば、前述した通り、yの初期値は1()
3Nである。他方、rclの初期値は、r c1=10
”(i(n+2)3−(n+1)31− l(n +
1 >’ −n 3)−[((n+1 )3− n3l
−(n’−(n −1)31]]=6・103N
・・・(L)である。
3Nである。他方、rclの初期値は、r c1=10
”(i(n+2)3−(n+1)31− l(n +
1 >’ −n 3)−[((n+1 )3− n3l
−(n’−(n −1)31]]=6・103N
・・・(L)である。
X≧yが成立する間、第2図のステップS2及びS3の
処理がn回繰り返して実行されると、r 1= 10
”(((n + 1 )3− n 3l−(n3−(n
−1)”l] = 6 n −10” −(2)
y=10”[(n+1)3−n31 ・・(
3)となる。このときX及びAは、 x=X−10”−10”(2”−13)、、、 + l
Q 3N 1n3− (n 1 )”1=X−10
’Nn3 ・ (4)A=n
・・・(5)となり、
Aに立方根の最上位桁が得られる。
処理がn回繰り返して実行されると、r 1= 10
”(((n + 1 )3− n 3l−(n3−(n
−1)”l] = 6 n −10” −(2)
y=10”[(n+1)3−n31 ・・(
3)となる。このときX及びAは、 x=X−10”−10”(2”−13)、、、 + l
Q 3N 1n3− (n 1 )”1=X−10
’Nn3 ・ (4)A=n
・・・(5)となり、
Aに立方根の最上位桁が得られる。
次にステップ84〜S7の処理について述べる。
式(3)を変形すると、
y= 103CN−”((10n + 10)3−(1
0n)31・・・(6) となる。また、 r c2=27・10” ・−
(7)であるから、ステップS4の処理が行われる直前
のr2は次式で表される。
0n)31・・・(6) となる。また、 r c2=27・10” ・−
(7)であるから、ステップS4の処理が行われる直前
のr2は次式で表される。
r2= 27 n 40” =41
1)先ず、ステップS4では、yの値は、 y−Z=10”N−1)((10n+10)3−(10
n)3−10’1 =3−10’(n2+n)・10””’−(9)で置き
換えられる。ステップS5で、 r2=27on・10”’−” ・・−(
to)y=a・t 02(n2+n)・10”N−”
・・(11)z =103 (N−1)
−・(12)となるので、ステップS6
及びS7では、yの値は、 y=10””’(300(n2+n)−270n+11 = 10 ”N−”(103n 3+ 300 n2+
3On+1−103n3) −10”N−1’i(10n + 1 )3−(10n
)’)・・・(13) となる。また、式(2)で表されるrlの値を、10”
”’[(10n+1)’−(Ion)3− i(10n
)3−(10n −1)’l]= 6 On −103
(”’ −(14)に変化させるた
めに、ステップS7でrlが右方へ2桁シフトされる。
1)先ず、ステップS4では、yの値は、 y−Z=10”N−1)((10n+10)3−(10
n)3−10’1 =3−10’(n2+n)・10””’−(9)で置き
換えられる。ステップS5で、 r2=27on・10”’−” ・・−(
to)y=a・t 02(n2+n)・10”N−”
・・(11)z =103 (N−1)
−・(12)となるので、ステップS6
及びS7では、yの値は、 y=10””’(300(n2+n)−270n+11 = 10 ”N−”(103n 3+ 300 n2+
3On+1−103n3) −10”N−1’i(10n + 1 )3−(10n
)’)・・・(13) となる。また、式(2)で表されるrlの値を、10”
”’[(10n+1)’−(Ion)3− i(10n
)3−(10n −1)’l]= 6 On −103
(”’ −(14)に変化させるた
めに、ステップS7でrlが右方へ2桁シフトされる。
このようにして、立方根の次の桁を求めるための準備が
行われる。
行われる。
次に、X≧yが成立する間、ステップS2及びS3の処
理がm回繰り返して実行されると、yl、X及びAの値
は次に示すようになる。
理がm回繰り返して実行されると、yl、X及びAの値
は次に示すようになる。
y = 103LN−”[(10n +m+1 )3−
(10n +m)3] ・・・(15)x
=X−10”N−”(10n+m)’ =416)
A= 1 On+m ・・(1
7)また、 rlは、 rl=10”N−”((10n+m+1)’−(10n
+m)3 − ((10n +m)” −(10n +m −1)
’l]= 103(””(60n + 6 m)
=(18)となる。
(10n +m)3] ・・・(15)x
=X−10”N−”(10n+m)’ =416)
A= 1 On+m ・・(1
7)また、 rlは、 rl=10”N−”((10n+m+1)’−(10n
+m)3 − ((10n +m)” −(10n +m −1)
’l]= 103(””(60n + 6 m)
=(18)となる。
以上のような手順で計算が進められ、X=0が満足され
たときに、Aに立方根が得られる。
たときに、Aに立方根が得られる。
(発明の効果)
本発明によれば、任意の被開立数について、任意の精度
(桁数)の立方根を非常に高速に求めることができる開
立計算装置が提供される。
(桁数)の立方根を非常に高速に求めることができる開
立計算装置が提供される。
4、 の。 な!B
第1図は本発明の一実施例のブロック図、第2図はその
実施例の動作を説明するためのフローチャート、第3図
、第4A図〜第4B図、第5A図〜第5D図はその実施
例に於ける各段階の演算に関与する構成要素をそれぞれ
示す図である。
実施例の動作を説明するためのフローチャート、第3図
、第4A図〜第4B図、第5A図〜第5D図はその実施
例に於ける各段階の演算に関与する構成要素をそれぞれ
示す図である。
1〜8・・・記憶装置、9・・・比較器、11.13・
・・減算器、12.15.16・・・加算器、14・・
・加減算器、21〜26・・・右シフト指示器、27・
・・左シフト指示器。
・・減算器、12.15.16・・・加算器、14・・
・加減算器、21〜26・・・右シフト指示器、27・
・・左シフト指示器。
以上
第2図
Claims (1)
- 【特許請求の範囲】 1、被開立数が初期設定される第1の記憶手段、被開立
数の桁数に基づいて定まる数が初期設定される第2の記
憶手段、 所定の数が初期設定される第3及び第4の記憶手段、 第5の記憶手段、 該第1の記憶手段に記憶されている数と該第2の記憶手
段に記憶されている数との大小関係を判定する手段、 該判定手段によって該第1の記憶手段に記憶されている
数が該第2の記憶手段に記憶されている数より小さくな
いと判定された場合に、該第1の記憶手段に記憶されて
いる数から該第2の記憶手段に記憶されている数を減じ
、該第2の記憶手段に記憶されている数に該第3の記憶
手段に記憶されている数から生成される数を加え、該第
5の記憶手段に記憶されている数に所定の数を加える第
1の演算手段、 該判定手段によって該第1の記憶手段に記憶されている
数が該第2の記憶手段に記憶されている数より小さいと
判定された場合に、該第2の記憶手段に記憶されている
数から該第4の記憶手段に記憶されている数から生成さ
れる数を減じ、該第5の記憶手段に記憶されている数を
左方へシフトさせる第2の演算手段、並びに 所定の条件が成立するまで、該判定手段、該第1の演算
手段及び該第2の演算手段を制御し、該第1の演算手段
が動作した後及び該第2の演算手段が動作した後に該判
定手段を動作させる制御手段 を備えた開立計算装置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1207713A JP2584516B2 (ja) | 1989-08-10 | 1989-08-10 | 開立計算装置 |
| US07/564,288 US5081606A (en) | 1989-08-10 | 1990-08-08 | Cube root calculation apparatus |
| EP90115412A EP0412565B1 (en) | 1989-08-10 | 1990-08-10 | A cube root calculation apparatus |
| DE69032967T DE69032967T2 (de) | 1989-08-10 | 1990-08-10 | Kubikwurzelrechner |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1207713A JP2584516B2 (ja) | 1989-08-10 | 1989-08-10 | 開立計算装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0371228A true JPH0371228A (ja) | 1991-03-27 |
| JP2584516B2 JP2584516B2 (ja) | 1997-02-26 |
Family
ID=16544330
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1207713A Expired - Lifetime JP2584516B2 (ja) | 1989-08-10 | 1989-08-10 | 開立計算装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5081606A (ja) |
| EP (1) | EP0412565B1 (ja) |
| JP (1) | JP2584516B2 (ja) |
| DE (1) | DE69032967T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20040001054A (ko) * | 2002-06-26 | 2004-01-07 | 칩스브레인(주) | 세 제곱근기 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5824821B2 (ja) * | 1974-12-16 | 1983-05-24 | キヤノン株式会社 | コガタデンシケイサンキ |
| US4298951A (en) * | 1979-11-30 | 1981-11-03 | Bunker Ramo Corporation | Nth Root processing apparatus |
| SU1023323A1 (ru) * | 1981-11-10 | 1983-06-15 | Харьковский Ордена Ленина Политехнический Институт Им.В.И.Ленина | Устройство дл извлечени кубического корн |
| JPS62131335A (ja) * | 1985-12-04 | 1987-06-13 | Nec Corp | 多乗根求根回路 |
| JPH02219127A (ja) * | 1989-02-20 | 1990-08-31 | Sharp Corp | 開平計算方式 |
-
1989
- 1989-08-10 JP JP1207713A patent/JP2584516B2/ja not_active Expired - Lifetime
-
1990
- 1990-08-08 US US07/564,288 patent/US5081606A/en not_active Expired - Fee Related
- 1990-08-10 EP EP90115412A patent/EP0412565B1/en not_active Expired - Lifetime
- 1990-08-10 DE DE69032967T patent/DE69032967T2/de not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20040001054A (ko) * | 2002-06-26 | 2004-01-07 | 칩스브레인(주) | 세 제곱근기 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5081606A (en) | 1992-01-14 |
| JP2584516B2 (ja) | 1997-02-26 |
| DE69032967D1 (de) | 1999-04-08 |
| DE69032967T2 (de) | 1999-09-16 |
| EP0412565A2 (en) | 1991-02-13 |
| EP0412565B1 (en) | 1999-03-03 |
| EP0412565A3 (en) | 1992-08-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP4010796B1 (en) | Multiple mode arithmetic circuit | |
| US4754421A (en) | Multiple precision multiplication device | |
| JPH01125626A (ja) | 逆数計算方法 | |
| JPH04205026A (ja) | 除算回路 | |
| JPS63123125A (ja) | 浮動小数点数の加算装置 | |
| KR100326746B1 (ko) | 비선형함수를근사시키기위한시스템및방법 | |
| JPH0690668B2 (ja) | ファジイ演算装置 | |
| JP2732673B2 (ja) | 離散的コサイン変換装置 | |
| US3973243A (en) | Digital image processor | |
| JPH0371228A (ja) | 開立計算装置 | |
| US5757688A (en) | Method and apparatus for high speed division | |
| US5524091A (en) | Accurate digital divider | |
| JPH0585924B2 (ja) | ||
| JP2951685B2 (ja) | 固定小数点演算器 | |
| JP2508286B2 (ja) | 平方根演算装置 | |
| JP2518532B2 (ja) | 減算シフト型除算器 | |
| JPH04281524A (ja) | 浮動小数点演算処理装置 | |
| JPS63254525A (ja) | 除算装置 | |
| JPS59136849A (ja) | 除算装置 | |
| JPS61201327A (ja) | 除算装置 | |
| SU781808A1 (ru) | Арифметическое устройство | |
| JPS5839336B2 (ja) | 自動制御系のデイジタル処理方式 | |
| US20080109507A1 (en) | System and method for performing an optimized discrete walsh transform | |
| JPS63240626A (ja) | 関数演算器 | |
| JPH0272480A (ja) | 平均値の演算方式 |