JPH0241049B2 - - Google Patents
Info
- Publication number
- JPH0241049B2 JPH0241049B2 JP61294816A JP29481686A JPH0241049B2 JP H0241049 B2 JPH0241049 B2 JP H0241049B2 JP 61294816 A JP61294816 A JP 61294816A JP 29481686 A JP29481686 A JP 29481686A JP H0241049 B2 JPH0241049 B2 JP H0241049B2
- Authority
- JP
- Japan
- Prior art keywords
- exponent
- value
- mantissa
- bit
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 5
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Description
【発明の詳細な説明】
[発明の利用分野]
本発明は指数部可変長表現方式による浮動小数
点数データ処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a floating point number data processing device using a variable length exponent representation method.
[従来の技術]
浮動小数点表現方式は大きな数も小さな数も高
い精度で取扱うことができるため、特に科学技術
計算において利用される表現方式である。[Prior Art] Floating point representation is a representation method used particularly in scientific and technical calculations because it can handle both large and small numbers with high precision.
しかしながら、従来の浮動小数点データ演算装
置は指数表示部の長さが一定であつたため、表現
できる数の範囲が限られるという欠点があり、ま
た指数部の値が小さいため少ない情報で済む場合
にもそのスペースを仮数部の精度を上げることに
利用するというような柔軟性がないという欠点が
あつた。 However, conventional floating-point data arithmetic devices have the disadvantage that the exponent display part has a constant length, which limits the range of numbers that can be expressed. The drawback was that there was no flexibility in using that space to improve the precision of the mantissa.
従来の浮動小数点表現の代表的な例を第3図に
示す。 A typical example of conventional floating point representation is shown in FIG.
図において、1はデータの符号情報の1ビツ
ト、2は指数の符号情報の1ビツト、4は指数の
絶対値情報で2と4とを合わせて指数部とも言
う。5は仮数部で6は指数部と仮数部との境界で
ある。 In the figure, 1 is 1 bit of data code information, 2 is 1 bit of exponent code information, and 4 is absolute value information of the exponent, and 2 and 4 together are also called an exponent part. 5 is the mantissa part, and 6 is the boundary between the exponent part and the mantissa part.
[発明が解決しようとする問題点]
従来の浮動小数点表現においては、上記指数部
と仮数部との境界6が固定されたものであつた。
すなわち、指数部表示用のビツト数が一定であつ
た。このために前述の如き実用上の不都合があつ
たわけである。[Problems to be Solved by the Invention] In the conventional floating point representation, the boundary 6 between the exponent part and the mantissa part is fixed.
That is, the number of bits for displaying the exponent part was constant. This caused the practical inconveniences mentioned above.
本発明の目的は、従来の浮動小数点表現方式の
前述の如き欠点を除去した指数部可変長浮動小数
点表現方式による浮動小数点データ処理装置を提
供することにある。 SUMMARY OF THE INVENTION An object of the present invention is to provide a floating-point data processing apparatus using a floating-point variable-length exponent representation method that eliminates the above-mentioned drawbacks of the conventional floating-point representation method.
[問題点を解決するための手段]
上記目的を達成するため、本発明の浮動小数点
データ処理装置は指数の値に依存して定まる長さ
の“0”の列あるいは“1”の列からなる指数部
前半部と該指数部前半部の長さに依存して定まる
長さを有し、指数の値を指定する指数部後半部と
からなる指数部を有する浮動小数点データから、
その指数部前半部の“0”の列あるいは“1”の
列の長さにより指数部後半部、仮数部を区分する
手段と該区分された指数部後半部と仮数部に所定
の処理を施す手段とを備える。[Means for Solving the Problems] In order to achieve the above object, the floating point data processing device of the present invention consists of a string of “0” or a string of “1” with a length determined depending on the value of an exponent. From floating point data having an exponent part consisting of the first half of the exponent part and the second half of the exponent part which has a length determined depending on the length of the first half of the exponent part and specifies the value of the exponent,
Means for dividing the second half of the exponent part and the mantissa part according to the length of the "0" row or "1" row in the first half of the exponent part, and predetermined processing for the divided second half of the exponent part and the mantissa part. and means.
[作用]
本発明の対象とするデータは、指数が大きいと
きも小さいときも同一表現方法で表現される。本
発明の装置ではこのような特徴あるデータの指数
部と仮数部を分離して処理可能となる。[Operation] Data targeted by the present invention is expressed using the same expression method whether the index is large or small. The apparatus of the present invention can process the exponent part and mantissa part of such characteristic data separately.
[発明の実施例]
本発明による浮動小数点演算装置の具体的説明
に入る前に、本発明の演算装置に用いる指数部可
変長浮動小数点表現方式(以下、「本表現」、「本
表現方式」の如く称する。)について詳細に説明
する。[Embodiments of the Invention] Before going into a specific explanation of the floating point arithmetic device according to the present invention, let us explain the exponent variable-length floating point representation system (hereinafter referred to as “this expression” or “this expression system”) used in the arithmetic device of the present invention. ) will be explained in detail.
本表現方式の要点は、指数部の先行する“0”
の列あるいは“1”の列により指数部の長さを決
定する点にある。これにより、日常頻度高く出現
する1に近い数値は、指数部を短かく仮数部を長
くとれるので、従来より精度よく表現することが
でき、また、従来表現不可能であつた極端に大き
な数、極端に小さな数についても、指数部を長く
とれるので表現が可能になる。 The key point of this representation method is the leading “0” in the exponent part.
The length of the exponent part is determined by the sequence of or the sequence of "1". As a result, numbers close to 1, which frequently appear in daily life, can be expressed with a shorter exponent and longer mantissa, making it possible to express them more accurately than before. Even extremely small numbers can be expressed because the exponent part can be long.
指数部の長さの決定法について以下、具体的に
説明する。数の、浮動小数点による本表現は以下
の如く規定される。 The method for determining the length of the exponent part will be specifically explained below. The floating point representation of a number is defined as follows.
(i) 本表現は数0と無限大とを次の通り表現可能
である。(i) This expression can express the number 0 and infinity as follows.
0 “000………0” 無限大 “100………0” 以下、これ以外の数につて述べる。0 “000……0” Infinity “100……0” Below, we will discuss other numbers.
(ii) 数xが指数eと仮数mとで次のように表現さ
れるものとする。(ii) Assume that a number x is expressed by an exponent e and a mantissa m as follows.
x=m・2e
ここで、eは整数であり、またmはxの符号
に従つて次のように規定されるものである。 x=m·2 e Here, e is an integer, and m is defined as follows according to the sign of x.
についても次のように規定される。 is also stipulated as follows.
(a) x>0のとき 1m<2,=m−1 (b) x<0のとき −2m−1,m=+2 また、は次のように規定される。 (a) When x>0 1m<2,=m-1 (b) When x<0 −2m−1, m=+2 Also, is defined as follows.
(a) e0のとき =e+1 (b) e<0のとき =−e 更にnは次のように規定される。 (a) When e0 =e+1 (b) When e<0 =-e Furthermore, n is defined as follows.
n=〔log2〕+1
但し、記号〔 〕はガウス記号であり、
〔x〕はxを越えない最大の整数を表わす。 n=[log 2 ]+1 However, the symbol [ ] is a Gauss symbol,
[x] represents the largest integer not exceeding x.
(iii) 本表現とビツト配置は原則的には第3図に示
した配置と同じである。但し、指数部の長さは
可変であり、2nビツトである。(iii) This representation and bit arrangement are basically the same as the arrangement shown in Figure 3. However, the length of the exponent part is variable and is 2n bits.
(iv) 符号情報のビツト1はx>0のとき0、x<
0のとき1である(従来の表現同じ)。(iv) Bit 1 of code information is 0 when x>0, and bit 1 is 0 when x<0.
When it is 0, it is 1 (same as the conventional expression).
(v) 指数部は次のように規定される。(v) The exponent part is defined as follows:
(a) 左nビツトは“1”の列である。 (a) The left n bits are a string of "1"s.
(b) 右nビツトは、を2進展開した長さnの
ビツト列の左端を“0”に変えたものであ
る。 (b) The right n bits are a bit string of length n obtained by binary expansion, with the left end changed to "0".
(c) 但し、x<−1あるいは0<x<1のとき
は上記(a),(b)で定まるものの1つの補数であ
る。 (c) However, when x<-1 or 0<x<1, it is one's complement of what is determined by (a) and (b) above.
(vi) 仮数部は次のようにして規定される。(vi) The mantissa is defined as follows:
の2進展開形を 0・b1b2b3……… とするとき、ビツト列 “b1b2b3………” の左から必要なだけの長さのものである。 When the binary expanded form of is 0・b 1 b 2 b 3 ......, it is as long as necessary from the left of the bit string "b 1 b 2 b 3 ......".
以上の規定により任意のビツト列の表現する数
が一意に定まる。 The above definition uniquely determines the number represented by any bit string.
例として、数100の場合について具体的に説明
する。数100は、次のように表現される。 As an example, a case of several 100 will be specifically explained. The number 100 is expressed as follows.
100=(25/15)×23
従つて前述の規定により、e=6,m=25/16
であり、また=7,=9/16,n=3であ
る。 100=(25/15)×2 3 Therefore, according to the above rules, e=6, m=25/16
and =7, =9/16, n=3.
第2図は、本表現による浮動小数点表現を示す
ものである。符号ビツト1は数値が正であるから
“0”であり、n=3であるから、指数部の左3
ビツト3aは“1”の列、右3ビツト3bはを2
進展開した値“111”の先頭の“1”を“0”に
変えた“011”である。仮数部5aはの2進展開
形が
0.100100000………
であるから“100100000………”である。 FIG. 2 shows floating point representation according to this representation. Sign bit 1 is “0” because the number is positive, and since n=3, the left 3 of the exponent part
Bit 3a is the “1” column, right 3 bits 3b is 2
This is "011", which is obtained by changing the first "1" of the expanded value "111" to "0". Since the binary expanded form of the mantissa part 5a is 0.100100000..., it is "100100000...".
上述した如く、本表現では指数部の先行する
“0”の列あるいは“1”の列が指数部の長さを
決定する。 As described above, in this representation, the string of "0"s or strings of "1s" preceding the exponent part determines the length of the exponent part.
以下、本発明の実施例を、図面に基づいて詳細
に説明する。 Hereinafter, embodiments of the present invention will be described in detail based on the drawings.
第1図は、本発明の一実施例を示す浮動小数点
データ演算装置の要部を示すブロツク図である。
図において、11は浮動小数点レジスタ、12は
仮数部レジスタ、13は指数部レジスタ、14は
カウンタ、15はフリツプフロツプ、そして16
は2入力の論理回路である。 FIG. 1 is a block diagram showing the main parts of a floating point data arithmetic device showing one embodiment of the present invention.
In the figure, 11 is a floating point register, 12 is a mantissa register, 13 is an exponent register, 14 is a counter, 15 is a flip-flop, and 16 is a
is a two-input logic circuit.
浮動小数点レジスタ11の長さをk+1ビツト
とする。符号ビツト17を除いた右kビツトはシ
フト・レジスタであり、以下の機能を有する。 Let the length of floating point register 11 be k+1 bits. The right k bits excluding sign bit 17 are a shift register and have the following functions.
(1‐1) 左シフトのトリガ31が与えられるたびに
1ビツトだけ左シフトする。(1-1) Each time the left shift trigger 31 is applied, the bit is shifted to the left by 1 bit.
(1‐2) 右シフトのトリガ32が与えられるたびに
1ビツトだけ右シフトする。(1-2) Each time the right shift trigger 32 is applied, the bit is shifted to the right by one bit.
(1‐3) 仮数部レジスタ12へ値の転送を行なう。
仮数部レジスタ12は長さkビツトを有するシ
フト・レジスタであり、以下の機能を有する。(1-3) Transfer the value to the mantissa register 12.
The mantissa register 12 is a shift register having a length k bits and has the following functions.
(1‐4) 左シフトのトリガ33が与えられるたびに
1ビツトだけ左シフトする。(1-4) Each time the left shift trigger 33 is applied, the bit is shifted to the left by one bit.
(1‐5) 右シフトのトリガ34が与えられるたびご
とに1ビツトだけ右シフトする。(1-5) Each time the right shift trigger 34 is applied, the bit is shifted to the right by one bit.
(1‐6) 浮動小数点レジスタ11への値の転送を行
なう。指数部レジスタ13は長さkビツトを有
するシフト・レジスタであり、以下の機能を有
する。(1-6) Transfer the value to floating point register 11. The exponent register 13 is a shift register having a length of k bits and has the following functions.
(1‐7) 左シフトのトリガ35が与えられるたびに
1ビツトだけ左シフトする。(1-7) Each time the left shift trigger 35 is applied, the bit is shifted to the left by one bit.
(1‐8) 右シフトのトリガ36が与えられるたびに
1ビツトだけ右シフトする
(1‐9) 値増加トリガ37により1だけ値を増す。(1-8) Every time the right shift trigger 36 is given, it is shifted to the right by 1 bit. (1-9) The value is increased by 1 by the value increase trigger 37.
(1‐10) 値域少トリガ38により1だけ値を減ず
る。(1-10) Decrease the value by 1 using the low value range trigger 38.
(1‐11) 補数トリガ39により、一斉に各ビツト
の値の“0”と“1”を反転する。(1-11) The complement trigger 39 inverts the values of each bit to "0" and "1" all at once.
(1‐12) すべてのビツトが“0”であることを検
出する。2入力論理回路16は入力40と入力
41の値に従つて第4図に示す如き出力を発生
する。なお、前記各シフト・レジスタでシフト
するにあたつて、特にことわらないかぎりあふ
れたビツトの情報は失われ、供給されるべきビ
ツトは“0”である。(1-12) Detect that all bits are “0”. Two-input logic circuit 16 generates an output as shown in FIG. 4 according to the values of inputs 40 and 41. When shifting in each of the shift registers, unless otherwise specified, the information of overflowing bits is lost and the bits to be supplied are "0".
上述の構成を有する本実施例装置の作用につい
て以下に説明する。 The operation of the apparatus of this embodiment having the above-mentioned configuration will be explained below.
本表現によるデータの演算は次の手順で行なわ
れる。 Data calculations using this expression are performed in the following steps.
(1) “0”あるいは“1”の列の計数
(2) 指数部と仮数部の分離
(3) 加減算の場合、指数部の値の調整
(4) 演算
(5) 正規化
(6) 指数部と仮数部の結合
(7) “0”あるいは“1”の列の挿入
このうち、手順(2)〜(6)は従来の指数部固定長浮
動小数点表現について行なわれる。手順(1)と(7)が
本表現によるデータの処理に関する手順であり、
これについて詳細に説明する。(1) Counting a column of “0” or “1” (2) Separating the exponent and mantissa parts (3) Adjusting the value of the exponent in addition and subtraction (4) Calculation (5) Normalization (6) Exponent Combining part and mantissa (7) Inserting a string of "0" or "1" Of these, steps (2) to (6) are performed for the conventional fixed-length floating-point representation of the exponent part. Steps (1) and (7) are the steps for processing data using this expression,
This will be explained in detail.
(1) “0”あるいは“1”の列の計数
(a) カウンタ14の値を0にセツトする。浮動
小数点数レジスタ11の符号ビツト17を除
いた第1ビツト18の値をフリツプ・フロツ
プ15にセツトする。(1) Counting a column of “0” or “1” (a) Set the value of the counter 14 to 0. The value of the first bit 18 of the floating point register 11 excluding the sign bit 17 is set in the flip-flop 15.
(b) 浮動小数点数レジスタ11の前記第1ビツ
ト18を論理回路16の入力40に入れる。フ
リツプ・フロツプ15の値を論理回路16の
入力41に入れる。このときの論理回路16
の出力(“1”)をカウンタ14で計数する。 (b) Put the first bit 18 of the floating point number register 11 into the input 40 of the logic circuit 16; The value of flip-flop 15 is applied to input 41 of logic circuit 16. Logic circuit 16 at this time
The counter 14 counts the output (“1”).
(c) 次のステツプ(d)を論理回路16の出力が
“0”になるまで繰返し、その回数をカウン
タ14で計数する。 (c) The next step (d) is repeated until the output of the logic circuit 16 becomes "0", and the counter 14 counts the number of times.
(d) 浮動小数点数レジスタ11を前記機能(1)に
より左シフトする。新しく前記第1ビツト1
8に来た値を論理回路16の入力40に入れ
る。フリツプ・フロツプ15の値を論理回路
16の入力41に入れる。 (d) Shift the floating point number register 11 to the left using the function (1) above. Newly said first bit 1
8 is input into the input 40 of the logic circuit 16. The value of flip-flop 15 is applied to input 41 of logic circuit 16.
(e) 論理回路16の出力が“0”となつた時点
における浮動小数点レジスタ11の前記第1
ビツト18の値を反転する。 (e) The first value of the floating point register 11 at the time when the output of the logic circuit 16 becomes “0”
Invert the value of bit 18.
(2) 指数部と仮数部の分離
(a) 浮動小数点数レジスタ11の前記第1ビツ
ト18の値を論理回路16の入力40に入れ
る。フリツプ・フロツプ15の値を論理回路
16の入力41に入れる。カウンタ14の値
を1減ずるとともに、このとき論理回路16
の出力を供給ビツトとして、前記機能(1―
7)により指数部レジスタ13を左シフトす
る。(2) Separation of exponent and mantissa parts (a) Enter the value of the first bit 18 of the floating point register 11 into the input 40 of the logic circuit 16. The value of flip-flop 15 is applied to input 41 of logic circuit 16. The value of the counter 14 is decremented by 1, and at this time the logic circuit 16
The above function (1-
7), the exponent part register 13 is shifted to the left.
(b) 次のステツプ(e),(d)をカウンタ14の値を
1ずつ減じながら、0になるまで繰返す。 (b) Repeat steps (e) and (d) while decreasing the value of the counter 14 by 1 until it becomes 0.
(c) 浮動小数点数レジスタ11を前記機能(1
―1)により左シフトする。新しく前記第1
ビツト18に来た値を論理回路16の入力4
0に入れる。フリツプ・フロツプ15の値を
論理回路16の入力41に入れる。 (c) Floating point register 11 is set to the above function (1
-1) to shift to the left. Newly said 1st
The value that comes to bit 18 is input to input 4 of logic circuit 16.
Put it in 0. The value of flip-flop 15 is applied to input 41 of logic circuit 16.
(d) 論理回路16の出力を供給ビツトとして、
前記機能(1―7)により指数部レジスタ1
3を左シフトする。 (d) Using the output of the logic circuit 16 as a supply bit,
Exponent register 1 is set by the function (1-7) above.
Shift 3 to the left.
(e) カウンタ14が0になつた時点における前
記指数部レジスタ13から、前記機能(1―
10)により値1を減ずる。 (e) The function (1-
10) to reduce the value 1.
(f) 符号ビツト17とフリツプ・フロツプ15
の値を論理回路16に入力し、出力の値
“1”が出る場合は前記機能(1―11)によ
り補数をとる。 (f) Sign bit 17 and flip-flop 15
The value of is input to the logic circuit 16, and if the output value is "1", the complement is taken by the function (1-11).
(g) 前記機能(1―3)により、浮動小数点数
レジスタ11の値を仮数部レジスタ12に転
送する。また、符号ビツト17の値も仮数部
レジスタ12の符号ビツト19へ転送され、
符号ビツト17の値をインバータ22により
反転させた値が仮数部レジスタ12の小数点
の位置20の左ビツトに転送される。 (g) Transfer the value of the floating point register 11 to the mantissa register 12 using the function (1-3). The value of sign bit 17 is also transferred to sign bit 19 of mantissa register 12,
The value obtained by inverting the value of the sign bit 17 by the inverter 22 is transferred to the left bit of the decimal point position 20 of the mantissa register 12.
この状態において、指数部レジスタ13に
は前記eの値が、(負数は2の補強である整
数として入つており、仮数部レジスタ12に
は前記mの値が(負数は2の補数である小数
として)入つている。前述の具体例、数100
の場合の第2図に対応する指数部レジスタ1
3、仮数部レジスタ12の内容を第5図に示
した。 In this state, the value of e is stored in the exponent register 13 as an integer (a negative number is reinforced with 2), and the value of m is stored in the mantissa register 12 as a decimal number (a negative number is a 2's complement). (as).In the above-mentioned concrete example, the number 100
Exponent register 1 corresponding to Figure 2 in the case of
3. The contents of the mantissa register 12 are shown in FIG.
手順(3),(4),(5)については省略して、手順(6)の
説明に移る。 Steps (3), (4), and (5) will be omitted and the explanation will move on to step (6).
(6) 指数部と仮数部の結合
(a) 前記機能(1―6)により仮数部レジスタ
12から浮動小数点レジスタ11へその内容
を転送する。(6) Combination of exponent and mantissa parts (a) Transfer the contents from the mantissa register 12 to the floating point register 11 using the function (1-6) above.
(b) 論理回路16の入力40に指数部レジスタ
13の符号ビツト21を、入力41に仮数部
レジスタ12の符号ビツト19に入れ、出力
をフリツプ・フロツプ15に入れる。 (b) The sign bit 21 of the exponent register 13 is input to the input 40 of the logic circuit 16, the sign bit 19 of the mantissa register 12 is input to the input 41, and the output is input to the flip-flop 15.
(c) 符号ビツト21の値が“1”のとき、前記
機能(1―11)により指数部レジスタ13の
補数をとる。 (c) When the value of the sign bit 21 is "1", the complement of the exponent part register 13 is taken by the function (1-11).
(d) 前記機能(1―9)により指数部レジスタ
13の値を1だけ増す。カウンタ14の値を
0にする。 (d) Increase the value of the exponent register 13 by 1 using the function (1-9). Set the value of the counter 14 to 0.
(e) 次の(f)をカウンタ14の値を増しながら、
前記機能(1―12)により、指数部レジスタ
13の値が0になるまで繰返す。 (e) Next (f) while increasing the value of counter 14,
The above function (1-12) is repeated until the value of the exponent register 13 becomes 0.
(f) 指数部レジスタ13を前記機能(1―8)
により右に1ビツトだけシフトする。あふれ
たビツトを論理回路16の入力40に、フリ
ツプ・フロツプ15の値を論理回路16の入
力41に入れ、その出力を浮動小数点数レジ
スタ11を前記機能(1―2)によつて右に
1ビツトだけシフトする場合に左端から供給
するビツトとして用いる。 (f) Set the exponent register 13 to the above functions (1-8).
Shifts one bit to the right. The overflowing bits are input to the input 40 of the logic circuit 16, the value of the flip-flop 15 is input to the input 41 of the logic circuit 16, and the output is input to the floating point register 11 by the function (1-2) to the right. Used as bits supplied from the left end when shifting by one bit.
(7) “0”あるいは“1”の列の挿入
(a) 浮動小数点数レジスタ11の第1ビツト1
8の値を反転する。(7) Inserting a string of “0” or “1” (a) First bit 1 of floating point register 11
Invert the value of 8.
(b) 前記カウンタ14の値(手順(6)のステツプ
(e))だけ次の(c)を実行する。 (b) The value of the counter 14 (step (6))
Execute the following (c) only by (e)).
(c) フリツプ・フロツプ15の値を供給ビツト
として、前記機能(1―8)により指数部レ
ジスタ13の内容を右に1ビツトだけシフト
する。 (c) Using the value of the flip-flop 15 as a supply bit, shift the contents of the exponent register 13 to the right by one bit by the function (1-8).
以上述べた如き作用により、本発明の浮動小数
点数演算装置は従来の指数部固定長浮動小数点表
現による値と、新しい表現方式である指数部可変
長浮動小数点表現による値とを相互に変換するこ
とが可能であり、これにより従来の演算装置を利
用して有効な表現方式である指数部可変長浮動小
数点表現を実用化することが可能になるものであ
る。 Due to the above-described operation, the floating point arithmetic device of the present invention is capable of mutually converting a value expressed using a conventional fixed-length floating-point exponent part and a value expressed using a new expression method, a variable-length floating-point exponent part. This makes it possible to put into practical use the exponent variable-length floating point representation, which is an effective representation method, using conventional arithmetic devices.
なお、上記実施例の各構成要素は実質的に同等
の機能を有する他の具体的手段に置換可能である
ことは言うまでもない。 It goes without saying that each component of the above embodiment can be replaced with other specific means having substantially the same function.
以上述べた如く、本発明の処理装置は、日常頻
度高く出現する1に近い数値は従来より精度よく
表現され、また極端に大きな数、極端に小さな数
についても表現可能な指数部可変長表現方式を有
効に利用することが可能となるという顕著な効果
を奏する。 As described above, the processing device of the present invention uses a variable-length exponent representation method that can express numerical values close to 1 that frequently appear in daily life with higher accuracy than before, and can also express extremely large numbers and extremely small numbers. This has the remarkable effect of making it possible to use the information effectively.
第1図は本発明の一実施例を示す演算装置のブ
ロツク図、図2は指数部可変長浮動小数点表現を
示す図、第3図は指数部固定長浮動小数点表現を
示す図、第4図は論理回路の入出力の関係を示す
図、第5図は第4図におけるレジスタの内容を示
す図である。
11:浮動小数点数レジスタ、12:仮数部レ
ジスタ、13:指数部レジスタ、14:カウン
タ、15:フリツプ・フロツプ、16:論理回
路、22:インバータ。
FIG. 1 is a block diagram of an arithmetic unit showing an embodiment of the present invention, FIG. 2 is a diagram showing variable length floating point representation of the exponent part, FIG. 3 is a diagram showing fixed length floating point representation of the exponent part, and FIG. 5 is a diagram showing the input/output relationship of the logic circuit, and FIG. 5 is a diagram showing the contents of the registers in FIG. 4. 11: floating point register, 12: mantissa register, 13: exponent register, 14: counter, 15: flip-flop, 16: logic circuit, 22: inverter.
Claims (1)
“1”の列又は“0”の列からなる指数部前半部
と、該指数部前半部のビツト数により定まるビツ
ト数からなり、指数の値を指定する指数部後半部
とを有する可変長の指数部ならびに仮数部とから
なる浮動小数点表示のデータが入力され、該デー
タの該指数部前半部の“1”の列又は“0”の列
の長さに依存して、該データの該指数部後半部と
該仮数部を区分する手段と、該区分された指数部
後半部と仮数部に対して、処理を実行する手段と
を有する浮動小数点データ処理装置。 2 該区分手段は、該指数部後半部と該仮数部
を、それぞれの値に対して所定の関係にある固定
長の指数部データおよび固定長の仮数部データに
変換して該処理の実行手段に出力する手段からな
る特許請求の範囲第1項記載の浮動小数点データ
処理装置。 3 該入力データは該入力データに対応する数値
の符号を表わす符号ビツトを有し、該所定の関係
は該数値の符号ビツトの値と該指数部前半部の各
ビツトの値との組合せに依存して定められてお
り、かつ該指数部データの先頭部分は、該指数部
後半部のビツト数に依存したビツト数の、該指数
部データの符号を表わす、ビツトの列からなり、
該仮数部データは、該数値の符号ビツトと等しい
値を有し、該区分された仮数部の先頭に付加され
た符号ビツトと、該区分された仮数部のビツト数
に依存して定められるビツト数の、区分された仮
数部の末尾につづけて付加された値“0”ビツト
列を有する特許請求の範囲第2項記載の浮動小数
点データ処理装置。[Claims] 1. The first half of an exponent part consisting of a string of "1"s or a string of "0"s with a number of bits determined depending on the value of the exponent, and a bit number determined by the number of bits in the first half of the exponent part. Floating point representation data consisting of a variable-length exponent part and a mantissa part with a second half of the exponent part specifying the value of the exponent is input, and the "1" in the first half of the exponent part of the data is input. means for dividing the second half of the exponent part and the mantissa part of the data depending on the length of the column or the string of "0"; and processing for the divided second half of the exponent part and the mantissa part. a floating point data processing apparatus having means for executing. 2. The dividing means converts the second half of the exponent part and the mantissa part into fixed-length exponent part data and fixed-length mantissa part data having a predetermined relationship with respect to the respective values, and executes the processing. 2. A floating point data processing device according to claim 1, comprising means for outputting data to a floating point data processor. 3. The input data has a sign bit representing the sign of the numerical value corresponding to the input data, and the predetermined relationship depends on the combination of the value of the sign bit of the numerical value and the value of each bit in the first half of the exponent part. and the first part of the exponent part data consists of a string of bits representing the sign of the exponent part data, the number of bits depending on the number of bits in the second half of the exponent part,
The mantissa data has a value equal to the sign bit of the numerical value, and is determined depending on the sign bit added to the beginning of the divided mantissa and the number of bits of the divided mantissa. 3. The floating point data processing device according to claim 2, wherein the floating point data processing device has a value "0" bit string added to the end of the divided mantissa part of the number.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61294816A JPS62143132A (en) | 1986-12-12 | 1986-12-12 | floating point data processing device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61294816A JPS62143132A (en) | 1986-12-12 | 1986-12-12 | floating point data processing device |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58114828A Division JPS5911444A (en) | 1983-06-24 | 1983-06-24 | floating point arithmetic unit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62143132A JPS62143132A (en) | 1987-06-26 |
| JPH0241049B2 true JPH0241049B2 (en) | 1990-09-14 |
Family
ID=17812624
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61294816A Granted JPS62143132A (en) | 1986-12-12 | 1986-12-12 | floating point data processing device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS62143132A (en) |
-
1986
- 1986-12-12 JP JP61294816A patent/JPS62143132A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62143132A (en) | 1987-06-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS59149539A (en) | Fixed-to-floating point converting device | |
| KR940008615B1 (en) | Homemade meat maker | |
| CN100583024C (en) | A Preprocessing Circuit Structure for Floating Point Division and Square Root Operation | |
| CN111538473A (en) | Posit floating point number processor | |
| US5007009A (en) | Non-recovery parallel divider circuit | |
| GB1579100A (en) | Digital arithmetic method and means | |
| CN102378960B (en) | Semiconductor integrated circuit and index calculation method | |
| JPH0542697B2 (en) | ||
| KR920003493B1 (en) | Arithmetic circuit based on floating point notation | |
| US7366749B2 (en) | Floating point adder with embedded status information | |
| US20030140074A1 (en) | Leading Zero Anticipatory (LZA) algorithm and logic for high speed arithmetic units | |
| JPH0241049B2 (en) | ||
| US7831652B2 (en) | Floating point multiplier with embedded status information | |
| JPS5911444A (en) | floating point arithmetic unit | |
| JPH0241050B2 (en) | ||
| JP2018097864A (en) | Leading zero anticipation | |
| GB1145661A (en) | Electronic calculators | |
| US7363337B2 (en) | Floating point divider with embedded status information | |
| JPH08147142A (en) | Counter device for priority detection | |
| Velivela et al. | Fpga Implementation of Leading Zero Counter for Floating Point Operations | |
| CN114691082B (en) | Multiplier circuit, chip, electronic device, and computer-readable storage medium | |
| JPH0291724A (en) | Arithmetic unit | |
| JPH0216632A (en) | Fixed point number/floating point number converting circuit | |
| CN120654651A (en) | IEEE 754 double-precision floating point number rapid printing method and system based on AVX-512 instruction set | |
| SU1179322A1 (en) | Device for multiplying two numbers |