JPH0117174B2 - - Google Patents
Info
- Publication number
- JPH0117174B2 JPH0117174B2 JP17723181A JP17723181A JPH0117174B2 JP H0117174 B2 JPH0117174 B2 JP H0117174B2 JP 17723181 A JP17723181 A JP 17723181A JP 17723181 A JP17723181 A JP 17723181A JP H0117174 B2 JPH0117174 B2 JP H0117174B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- digits
- exponent
- digit
- display
- 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
Links
- 238000004364 calculation method Methods 0.000 claims description 24
- 238000000034 method Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Landscapes
- Calculators And Similar Devices (AREA)
- Digital Computer Display Output (AREA)
Description
【発明の詳細な説明】
本発明は小型電子式計算機における指数データ
表示方式に関する。
表示方式に関する。
従来における関数演算機能を備えた小型電子式
計算機つまり関数計算機では、その入力範囲は指
数をxとすると、|x|<1×10100であり、数値
の保持する範囲も同じである。従つて|x|1
×10100になればオーバーフローとしてエラー表
示にし、|x|1×10-100になればアンダーフ
ローとして0表示にしている。この場合、オーバ
ーフロー、アンダーフローのチエツクは個々の演
算後に実施している。
計算機つまり関数計算機では、その入力範囲は指
数をxとすると、|x|<1×10100であり、数値
の保持する範囲も同じである。従つて|x|1
×10100になればオーバーフローとしてエラー表
示にし、|x|1×10-100になればアンダーフ
ローとして0表示にしている。この場合、オーバ
ーフロー、アンダーフローのチエツクは個々の演
算後に実施している。
しかしながら、上記演算方式を用いた従来の関
数計算機では、最終結果の答は表示可能でありな
がら、演算途中でオーバーフロー、アンダーフロ
ーとなり、答が求められない場合がある。例えば
r=√2+2の式において、|x|×1050又は
|y|1×1050の場合、x2又はy2の演算でオー
バーフローとなるためエラーとして処理される。
数計算機では、最終結果の答は表示可能でありな
がら、演算途中でオーバーフロー、アンダーフロ
ーとなり、答が求められない場合がある。例えば
r=√2+2の式において、|x|×1050又は
|y|1×1050の場合、x2又はy2の演算でオー
バーフローとなるためエラーとして処理される。
また、tan hx=ex−e-x/ex+e-xの式において、
|x|230の時、exがオーバーフローとなり、
答が求まらない。この場合、実際の答はtan hx
=±1となる。
答が求まらない。この場合、実際の答はtan hx
=±1となる。
さらに、関数計算機以外の計算機例えばプログ
ラム電卓において、計算式をプログラムに組んで
実行する場合、演算途中でオーバーフロー、アン
ダーフローとなり、正しい値が求められない場合
が多い。また、プログラムを組む時に、上記のこ
とを考慮して計算式を変形して求めなければなら
ないという問題があつた。
ラム電卓において、計算式をプログラムに組んで
実行する場合、演算途中でオーバーフロー、アン
ダーフローとなり、正しい値が求められない場合
が多い。また、プログラムを組む時に、上記のこ
とを考慮して計算式を変形して求めなければなら
ないという問題があつた。
本発明は上記の点に鑑みてなされたもので、指
数部及び仮数部を流動的に構成することによつて
表示できる数値範囲を拡大し、従来では求められ
なかつた計算を可能とすることができる指数デー
タ表示方式を提供することを目的とする。
数部及び仮数部を流動的に構成することによつて
表示できる数値範囲を拡大し、従来では求められ
なかつた計算を可能とすることができる指数デー
タ表示方式を提供することを目的とする。
以下図面を参照して本発明の一実施例を説明す
る。第1図において1はキー入力部で、このキー
入力部1から入力されたデータは制御部2へ送ら
れる。この制御部2は例えばROM(リード・オ
ンリ・メモリ)により構成されて各種マイクロプ
ログラムを記憶しており、出力ラインaよりキー
操作に応じたデータ、出力ラインb,cよりアド
レス、出力ラインdより各種インストラクシヨン
を出力する。上記制御部2の出力ラインa,bか
ら出力されるデータ及びアドレスはセレクタ3へ
送られる。このセレクタ3は、上記制御部2から
のアドレスに従つて入出力ラインを選択し、その
選択データを演算用メモリ4へ転送する。この演
算用メモリ4は、例えばXレジスタ4a,Yレジ
スタ4b,Zレジスタ4c等の各種演算用レジス
タによつて構成されている。上記レジスタ4a,
4b…等は、例えば第2図に示すように15桁構成
で、0桁目から3桁目までが指数部、4桁目から
14桁目までが仮数部となつている。さらに、上記
指数部は0〜3桁目に指数データを記憶し、3桁
目の第3ビツトに指数桁の正負を示す符号、第4
ビツトに仮数部の正負を示す符号を記憶するよう
になつている。しかして、上記メモリ4内の各レ
ジスタ4a,4b…に書込まれたデータはセレク
タ5へ送られる。このセレクタ5は、制御部2か
ら出力ラインcを介して与えられるアドレスに従
つて入出力ラインを選択し、その選択データを演
算回路6、指数桁検出部7、指数桁数判別部8に
出力する。上記指桁数検出部7は、制御部2の出
力ラインdから与えられるインストラクシヨンに
従つて指数桁の位置を検出し、その検出信号を制
御部2、演算回路6及び指数桁数判別部8へ与え
る。この指数桁数判別部8は、指数桁数を判別し
てその判別結果を表示制御部9へ与える。一方、
上記演算回路6はセレクタ5から入力されるデー
タに対する演算を行ない、その演算結果をセレク
タ3を介してメモリ4へ出力すると共に表示制御
部9へ出力する。また、演算回路6は、演算結果
に対してデータの有無、キヤリー信号の有無等を
判別する判別部を内部に備え、その判別結果Jを
制御部2へ送出する。また、上記表示制御部9
は、指数桁数判別部8の判別結果に従つて指数部
及び仮数部の桁数制御を行なつて表示部10にデ
ータを表示する。この表示部10は表示桁数が例
えば10桁構成となつており、指数表示の場合は下
位3桁で指数を表示し、上位6桁あるいは7桁で
仮数を表示する。
る。第1図において1はキー入力部で、このキー
入力部1から入力されたデータは制御部2へ送ら
れる。この制御部2は例えばROM(リード・オ
ンリ・メモリ)により構成されて各種マイクロプ
ログラムを記憶しており、出力ラインaよりキー
操作に応じたデータ、出力ラインb,cよりアド
レス、出力ラインdより各種インストラクシヨン
を出力する。上記制御部2の出力ラインa,bか
ら出力されるデータ及びアドレスはセレクタ3へ
送られる。このセレクタ3は、上記制御部2から
のアドレスに従つて入出力ラインを選択し、その
選択データを演算用メモリ4へ転送する。この演
算用メモリ4は、例えばXレジスタ4a,Yレジ
スタ4b,Zレジスタ4c等の各種演算用レジス
タによつて構成されている。上記レジスタ4a,
4b…等は、例えば第2図に示すように15桁構成
で、0桁目から3桁目までが指数部、4桁目から
14桁目までが仮数部となつている。さらに、上記
指数部は0〜3桁目に指数データを記憶し、3桁
目の第3ビツトに指数桁の正負を示す符号、第4
ビツトに仮数部の正負を示す符号を記憶するよう
になつている。しかして、上記メモリ4内の各レ
ジスタ4a,4b…に書込まれたデータはセレク
タ5へ送られる。このセレクタ5は、制御部2か
ら出力ラインcを介して与えられるアドレスに従
つて入出力ラインを選択し、その選択データを演
算回路6、指数桁検出部7、指数桁数判別部8に
出力する。上記指桁数検出部7は、制御部2の出
力ラインdから与えられるインストラクシヨンに
従つて指数桁の位置を検出し、その検出信号を制
御部2、演算回路6及び指数桁数判別部8へ与え
る。この指数桁数判別部8は、指数桁数を判別し
てその判別結果を表示制御部9へ与える。一方、
上記演算回路6はセレクタ5から入力されるデー
タに対する演算を行ない、その演算結果をセレク
タ3を介してメモリ4へ出力すると共に表示制御
部9へ出力する。また、演算回路6は、演算結果
に対してデータの有無、キヤリー信号の有無等を
判別する判別部を内部に備え、その判別結果Jを
制御部2へ送出する。また、上記表示制御部9
は、指数桁数判別部8の判別結果に従つて指数部
及び仮数部の桁数制御を行なつて表示部10にデ
ータを表示する。この表示部10は表示桁数が例
えば10桁構成となつており、指数表示の場合は下
位3桁で指数を表示し、上位6桁あるいは7桁で
仮数を表示する。
次に上記実施例の動作を説明する。本発明はデ
ータの保持形式を|x|<1×101000とし、指数
部が−99〜99の範囲では仮数部n桁、指数部2桁
を表示する。そして、指数部が3桁となる場合、
すなわち、−999〜−100,100〜999の範囲では仮
数部をn−1桁として指数部3桁を表示するよう
にしたものである。以下その詳細を第3図のフロ
ーチヤートを参照して√(123×1049)2+(456×
1049)2の演算を行なう場合について説明する。第
4図は上記の演算を行なう場合のキー操作、レジ
スタの記憶状態、表示部10の表示状態を示した
ものである。まず、キー入力部1から第4図1に
示すように「123」「EXP」「49」のキー入力を行
なうと、Xレジスタ4aの仮数部に「123」が置
数され、指数部に「49」が置数される。そして、
このXレジスタ4aに保持されたデータが演算回
路6を介して表示制御部9へ送られ、表示部9に
おいて「123. 49」の表示が行なわれる。次に2
乗演算を行なわせるために第4図2に示すように
「x2」のキー操作を行なうと第3図の演算フロー
が開始される。まず、ステツプS1において仮数、
指数処理が行なわれ、Xレジスタ4aに保持され
ている仮数データ「123」の1桁目の位置が小数
点指定されて「1.23」となると共に指数「49」が
「+2」されて「51」となる。またこの場合、小
数点の位置がXレジスタ4aの13桁目となるよう
にデータがシフトされる。次にステツプS2に進
み、Xレジスタ4aの保持データが演算回路6に
読出されてx2の演算処理つまり「(1.23×1051)2」
の演算が行なわれ、その演算結果「1.5129×
10102」が第4図2に示すように再びXレジスタ
4aに書込まれる。次いでステツプS3において、
Xレジスタ4aの指数データが3桁以下かあるい
は3桁より大きいかを判断し、3桁より大きい場
合にはエラーとして処理する。また、指数データ
が3桁以下であればステツプS4へ進み、指数桁数
判別部8で指数データの桁数が何桁であるかを判
別する。このステツプS4において指数データが3
桁であると判別された場合はステツプS52桁であ
ると判別された場合はステツプS6、1桁であると
判別された場合はステツプS7へ進む。上記ステツ
プS5ではXレジスタ4aの4桁目から13桁目つま
りX4〜13の仮数データ及び指数部の0桁目から2
桁目つまりX0〜2の3桁の指数データを表示制御
部9へ送り、X4〜13のデータを有無最下位桁のデ
ータが表示部10の5桁目に一致するまで桁下げ
し、表示部10の10桁目から5桁目、つまり上位
6桁において表示する。この場合、データの桁数
が表示桁数つまり6桁より多い場合には、データ
の最上位桁が表示部10の最上位桁に一致するま
で桁下げし、下位のオーバーフローした分は切捨
てる。また、指数データはそのまま表示部10の
下位3桁において表示する。また、ステツプS6で
は、Xレジスタ4aのX4〜13の仮数データ及び
X0〜1の2桁の指数データを表示制御部9へ送り、
X4〜13の有無最下位桁のデータが表示部10の4
桁目に一致するまで桁下げし、表示部10の10桁
目から4桁目、つまり上位7桁において表示す
る。この場合、データの桁数が表示桁数より多い
場合には、上記ステツプS5と同様のデータシフト
処理及びオーバーフローデータの切捨て処理を行
なう。また、ステツプS4で指数データが1桁であ
ると判断されてステツプS7へ進む場合は、指数表
示を行なわなくてもデータ表示ができるので、そ
の指数に応じて仮数データの小数点処理を行なつ
た後、ステツプS7に示すようにXレジスタ4aの
X4〜13のデータを表示制御部9へ送る。そして、
この表示制御部9でデータの桁下げ処理を行なつ
た後、表示部10の全桁を利用して表示する。し
かして、上記x2の演算処理を行なつた場合には、
その指数データは「102」で3桁となつているの
で、ステツプS4からステツプS5へ進み、表示部1
0において第4図2に示すように「1.5129 102」」
の表示が行なわる。続いて第4図3に示すように
「+」キーの操作を行なうと、Xレジスタ4aの
内容がセレクタ5、演算回路6、セレクタ3を介
してYレジスタ4bに転送される。そして、第4
図4に示すように次の演算データ「456」「EXP」
「49」の入力を行なうと、この演算データはXレ
ジスタ4aに書込まれ、表示部10において
「456.49」と表示される。次に第4図5に示すよ
うに「x2」のキーを操作すると、第3図に示す演
算フローにより上記したと同様の処理が行なわれ
る。すなわち、ステツプS1で仮数、指数処理によ
り小数点の位置が最上桁に移動して「4.56×
1051」となり、ステツプS3でその2乗演算が行な
われ、「2.07936×10103」の演算結果が求められ
る。この場合の指数データは3桁であるので、ス
テツプS4からステツプS5に進み、第4図2の場合
と同様の表示処理が行なわれ、表示部10におい
て「2.07936 103」の表示が行なわれる。そして、
最後に「√ 」キーを操作すると、第3図のフロ
ーにおけるステツプS2において、Yレジスタ4b
の内容「1.5129×10102」とXレジスタ4aの内容
「2.079360×10103」との加算が行なわれると共に、
その加算結果に対する平方根「4.722975757×
1051」が求められ、Xレジスタ4aに書込まれ
る。この場合の指数データは2桁であるのでステ
ツプS4からステツプS6へ進み、その表示処理によ
り「4.722975 51」の最終結果データが表示部1
0で表示される。
ータの保持形式を|x|<1×101000とし、指数
部が−99〜99の範囲では仮数部n桁、指数部2桁
を表示する。そして、指数部が3桁となる場合、
すなわち、−999〜−100,100〜999の範囲では仮
数部をn−1桁として指数部3桁を表示するよう
にしたものである。以下その詳細を第3図のフロ
ーチヤートを参照して√(123×1049)2+(456×
1049)2の演算を行なう場合について説明する。第
4図は上記の演算を行なう場合のキー操作、レジ
スタの記憶状態、表示部10の表示状態を示した
ものである。まず、キー入力部1から第4図1に
示すように「123」「EXP」「49」のキー入力を行
なうと、Xレジスタ4aの仮数部に「123」が置
数され、指数部に「49」が置数される。そして、
このXレジスタ4aに保持されたデータが演算回
路6を介して表示制御部9へ送られ、表示部9に
おいて「123. 49」の表示が行なわれる。次に2
乗演算を行なわせるために第4図2に示すように
「x2」のキー操作を行なうと第3図の演算フロー
が開始される。まず、ステツプS1において仮数、
指数処理が行なわれ、Xレジスタ4aに保持され
ている仮数データ「123」の1桁目の位置が小数
点指定されて「1.23」となると共に指数「49」が
「+2」されて「51」となる。またこの場合、小
数点の位置がXレジスタ4aの13桁目となるよう
にデータがシフトされる。次にステツプS2に進
み、Xレジスタ4aの保持データが演算回路6に
読出されてx2の演算処理つまり「(1.23×1051)2」
の演算が行なわれ、その演算結果「1.5129×
10102」が第4図2に示すように再びXレジスタ
4aに書込まれる。次いでステツプS3において、
Xレジスタ4aの指数データが3桁以下かあるい
は3桁より大きいかを判断し、3桁より大きい場
合にはエラーとして処理する。また、指数データ
が3桁以下であればステツプS4へ進み、指数桁数
判別部8で指数データの桁数が何桁であるかを判
別する。このステツプS4において指数データが3
桁であると判別された場合はステツプS52桁であ
ると判別された場合はステツプS6、1桁であると
判別された場合はステツプS7へ進む。上記ステツ
プS5ではXレジスタ4aの4桁目から13桁目つま
りX4〜13の仮数データ及び指数部の0桁目から2
桁目つまりX0〜2の3桁の指数データを表示制御
部9へ送り、X4〜13のデータを有無最下位桁のデ
ータが表示部10の5桁目に一致するまで桁下げ
し、表示部10の10桁目から5桁目、つまり上位
6桁において表示する。この場合、データの桁数
が表示桁数つまり6桁より多い場合には、データ
の最上位桁が表示部10の最上位桁に一致するま
で桁下げし、下位のオーバーフローした分は切捨
てる。また、指数データはそのまま表示部10の
下位3桁において表示する。また、ステツプS6で
は、Xレジスタ4aのX4〜13の仮数データ及び
X0〜1の2桁の指数データを表示制御部9へ送り、
X4〜13の有無最下位桁のデータが表示部10の4
桁目に一致するまで桁下げし、表示部10の10桁
目から4桁目、つまり上位7桁において表示す
る。この場合、データの桁数が表示桁数より多い
場合には、上記ステツプS5と同様のデータシフト
処理及びオーバーフローデータの切捨て処理を行
なう。また、ステツプS4で指数データが1桁であ
ると判断されてステツプS7へ進む場合は、指数表
示を行なわなくてもデータ表示ができるので、そ
の指数に応じて仮数データの小数点処理を行なつ
た後、ステツプS7に示すようにXレジスタ4aの
X4〜13のデータを表示制御部9へ送る。そして、
この表示制御部9でデータの桁下げ処理を行なつ
た後、表示部10の全桁を利用して表示する。し
かして、上記x2の演算処理を行なつた場合には、
その指数データは「102」で3桁となつているの
で、ステツプS4からステツプS5へ進み、表示部1
0において第4図2に示すように「1.5129 102」」
の表示が行なわる。続いて第4図3に示すように
「+」キーの操作を行なうと、Xレジスタ4aの
内容がセレクタ5、演算回路6、セレクタ3を介
してYレジスタ4bに転送される。そして、第4
図4に示すように次の演算データ「456」「EXP」
「49」の入力を行なうと、この演算データはXレ
ジスタ4aに書込まれ、表示部10において
「456.49」と表示される。次に第4図5に示すよ
うに「x2」のキーを操作すると、第3図に示す演
算フローにより上記したと同様の処理が行なわれ
る。すなわち、ステツプS1で仮数、指数処理によ
り小数点の位置が最上桁に移動して「4.56×
1051」となり、ステツプS3でその2乗演算が行な
われ、「2.07936×10103」の演算結果が求められ
る。この場合の指数データは3桁であるので、ス
テツプS4からステツプS5に進み、第4図2の場合
と同様の表示処理が行なわれ、表示部10におい
て「2.07936 103」の表示が行なわれる。そして、
最後に「√ 」キーを操作すると、第3図のフロ
ーにおけるステツプS2において、Yレジスタ4b
の内容「1.5129×10102」とXレジスタ4aの内容
「2.079360×10103」との加算が行なわれると共に、
その加算結果に対する平方根「4.722975757×
1051」が求められ、Xレジスタ4aに書込まれ
る。この場合の指数データは2桁であるのでステ
ツプS4からステツプS6へ進み、その表示処理によ
り「4.722975 51」の最終結果データが表示部1
0で表示される。
なお、上記実施例では指数桁を「2」、「3」桁
としたが、「4」、「5」桁というようにしてもよ
い。
としたが、「4」、「5」桁というようにしてもよ
い。
以上述べたように本発明によれば、指数部及び
仮数部を流動的に構成し、指数データの桁数に応
じて仮数部の表示桁数を可変するようにしたの
で、表示できる数値範囲を拡大でき、従来の演算
方法では求められなかつた計算が可能となり、実
用上極めて大きな効果を発揮し得るものである。
仮数部を流動的に構成し、指数データの桁数に応
じて仮数部の表示桁数を可変するようにしたの
で、表示できる数値範囲を拡大でき、従来の演算
方法では求められなかつた計算が可能となり、実
用上極めて大きな効果を発揮し得るものである。
図面は本発明の一実施例を示すもので、第1図
は回路構成を示すブロツク図、第2図は第1図に
おけるレジスタの詳細な構成を示す図、第3図は
動作内容を示すフローチヤート、第4図1〜6は
キー操作に伴うレジスタ内容の変化及び表示内容
の変化を示す図である。 1……キー入力部、2……制御部、4……演算
用メモリ、7……指数桁検出部、8……指数桁数
判別部。
は回路構成を示すブロツク図、第2図は第1図に
おけるレジスタの詳細な構成を示す図、第3図は
動作内容を示すフローチヤート、第4図1〜6は
キー操作に伴うレジスタ内容の変化及び表示内容
の変化を示す図である。 1……キー入力部、2……制御部、4……演算
用メモリ、7……指数桁検出部、8……指数桁数
判別部。
Claims (1)
- 1 指数演算機能を備えた小型電子式計算機にお
いて、演算データにおける指数の桁数を検出する
手段と、この手段により検出した指数の桁数に応
じて仮数データの桁数を可変して表示部に表示す
る手段とを具備したことを特徴とする指数データ
表示方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17723181A JPS5880735A (ja) | 1981-11-06 | 1981-11-06 | 指数デ−タ表示方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17723181A JPS5880735A (ja) | 1981-11-06 | 1981-11-06 | 指数デ−タ表示方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5880735A JPS5880735A (ja) | 1983-05-14 |
| JPH0117174B2 true JPH0117174B2 (ja) | 1989-03-29 |
Family
ID=16027440
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17723181A Granted JPS5880735A (ja) | 1981-11-06 | 1981-11-06 | 指数デ−タ表示方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5880735A (ja) |
-
1981
- 1981-11-06 JP JP17723181A patent/JPS5880735A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5880735A (ja) | 1983-05-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0145649B2 (ja) | ||
| JPH0117174B2 (ja) | ||
| JP3252493B2 (ja) | 電子式計算機及びその計算処理方法 | |
| JPS6225208B2 (ja) | ||
| JPH0140001Y2 (ja) | ||
| JPS581462B2 (ja) | 指数表示方式 | |
| JPS6210828Y2 (ja) | ||
| JPS6321939B2 (ja) | ||
| JPH0429961B2 (ja) | ||
| JPS642179Y2 (ja) | ||
| JPS61188624A (ja) | 固定小数点演算装置 | |
| JPH021627Y2 (ja) | ||
| JPS6235138B2 (ja) | ||
| JPH0769785B2 (ja) | 除算装置 | |
| JPS63310019A (ja) | デ−タ処理装置 | |
| JPS6131891B2 (ja) | ||
| JPS6224816B2 (ja) | ||
| JPS59220859A (ja) | 電子式計算機 | |
| JPS59846B2 (ja) | 指数表示方式 | |
| JPH07120273B2 (ja) | 除算装置 | |
| JPH09231176A (ja) | 電子計算機 | |
| JPH07230428A (ja) | 電子式計算機 | |
| JPS6342302B2 (ja) | ||
| JPS598795B2 (ja) | 電子機器 | |
| JPS6118788B2 (ja) |