JPS60254231A - Control system for floating point arithmetic - Google Patents

Control system for floating point arithmetic

Info

Publication number
JPS60254231A
JPS60254231A JP59111239A JP11123984A JPS60254231A JP S60254231 A JPS60254231 A JP S60254231A JP 59111239 A JP59111239 A JP 59111239A JP 11123984 A JP11123984 A JP 11123984A JP S60254231 A JPS60254231 A JP S60254231A
Authority
JP
Japan
Prior art keywords
exponent
value
circuit
floating point
mantissa
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
JP59111239A
Other languages
Japanese (ja)
Inventor
Shinichiro Yamashita
山下 眞一郎
Hirobumi Yamada
博文 山田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP59111239A priority Critical patent/JPS60254231A/en
Publication of JPS60254231A publication Critical patent/JPS60254231A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To attain the numerical processing over a wide range by giving one or plural exponent parts to the data showing the floating point number of one and multiplying the numerical value of a mantissa part by the product of the numerical values obtained by defining each exponent part as a power number to obtain the floating point number. CONSTITUTION:The data to be calculated are set to registers 10 and 20 and the product of both registers are outputted to a register 30 with a floating decimal point multiplier. A multiplier circuit 31 execute the multiplication for a mantissa part of the number to be calculated and outputs the result of multiplication to a normalizing circuit 32. A code calculating circuit 33 decides a code. The exponent parts are supplied to the exponent processing circuits 11 and 21 from registers 10 and 20 respectively, and an effective exponent part is decided and calculated for control of gates 12 and 22. While the obtained exponent value is transferred to an exponent adder circuit 34 and then to an exponent dividing circuit 35 in the form of a sum of both exponent values. Here a shift amount for normalization is subtracted from said exponent value for correction. Then the exponent is divided and a mantissa is transferred to the register 30 from the circuit 32 to obtain a product of the number of floating decimal points.

Description

【発明の詳細な説明】 +al産業産業別用分野 本発明は電子計算機システムにおける浮動小数点演算の
制御方式に係り、特に浮動小数点数を表示するデータの
表示可能な数値範囲を拡大することのできる制御方式に
関する。
[Detailed Description of the Invention] +al Industry/Industry Field The present invention relates to a control method for floating point arithmetic in an electronic computer system, and in particular, control that can expand the range of displayable numerical values of data displaying floating point numbers. Regarding the method.

電子計算機システムの性能及び経済性の改善と共に、科
学技術計算分野において、益々複雑で大量の計算を要す
る領域へ応用分野が拡大されている。それに伴い、計算
で扱う数値の大きさの範囲も拡大する傾向にある。
As the performance and economy of electronic computer systems improve, the fields of application in the field of scientific and technical computing are expanding to areas that are increasingly complex and require a large amount of calculation. Along with this, the range of numerical values handled in calculations also tends to expand.

更に、計算の論理が複雑大量化すると、演算結果又は演
算の過程で生ずる数値の範囲を予測することが極めて煩
雑になる傾向を有し、数値範囲の予測を不要化ないしは
補助する手段が望まれている。
Furthermore, as the logic of calculations increases in complexity, it tends to become extremely complicated to predict the range of numerical values that will occur in the calculation results or the process of calculation, and a means to eliminate or assist in predicting the numerical range is desired. ing.

(b)従来の技術 従来の計算機においては、浮動小数点数データは例えば
第2図に示す形式を有し、一般に各耐算機方式によって
定まる一定の浮動小数点数の数値範囲がある。
(b) Prior Art In conventional computers, floating point number data has a format shown in FIG. 2, for example, and there is generally a fixed numerical range of floating point numbers determined by each machine system.

即ち、第2図において、■はこの浮動小数点数の符号を
示す符号部、2は指数部、3は仮数部であって、それぞ
れ固定のビット長を有する。
That is, in FIG. 2, ■ is a sign part indicating the sign of this floating point number, 2 is an exponent part, and 3 is a mantissa part, each of which has a fixed bit length.

こ−で所定の規約に従って各部の表す数値を、符号部S
、指数部E、仮数部Fとすれば、この形式によって表さ
れる浮動小数点数はSX MExpである。こ\でHは
この方式に固有の基数であって、例えばト16とする。
Now, according to the predetermined rules, the numerical value represented by each part is expressed as the sign part S.
, exponent E, and mantissa F, then the floating point number represented by this format is SX MExp. Here, H is a radix specific to this method, and is, for example, 16.

従って、この形式で表示できる浮動小数点数の大きさ、
Eがとり得る数値の範囲によって限定され、Eの最小値
をL最大値をUとすれば、数値の範囲は、はぼML <
数値< MUとなる。
Therefore, the size of floating point numbers that can be displayed in this format,
If E is limited by the range of possible numerical values, and if the minimum value of E is L and the maximum value is U, then the numerical range is ML <
Numerical value < MU.

プログラムの実行中に、演算の結果が所定数値範囲を越
える場合には、該結果の数値を浮動小数点数として正し
く表示することが出来なくなるので、プログラムの実行
を中断して、所謂例外事象の発生として、その後の処理
をプログラムに任せるか、又は可能な場合には、結果を
強制的に既定の数値に設定してプログラムの実行を継続
するようにする。
If the result of an operation exceeds a predetermined numerical range during program execution, the resulting value cannot be displayed correctly as a floating point number, so program execution is interrupted and a so-called exception event occurs. , either leave the rest to the program or, if possible, force the result to a default value and continue running the program.

計算機で定まる使用可能な数値の範囲が、妥当な大きさ
にあることを前提として、プログラムの実行中に発生す
る数値の範囲がすべて予測されている場合には、適当な
プログラム論理を使うことによって、該プログラムで扱
う数値範囲を所定の範囲に収めるようにすることが、従
来の応用において可能であり、従って数値が所定範囲を
越えることを上記のように異常事象として処理するとい
う方式に妥当性があった。
Assuming that the usable range of numbers determined by the calculator is a reasonable size, if the range of numbers that will occur during program execution is all predicted, then by using appropriate program logic, , it is possible in conventional applications to keep the numerical range handled by the program within a predetermined range, and therefore there is validity in the method of treating numerical values exceeding the predetermined range as an abnormal event as described above. was there.

しかしその為に、プログラミングに際しては、扱う数値
が採り得る大きさの範囲を、プログラム実行中の中間的
な結果も含めて予測する必要があり、又その予測に基づ
いて、必要な場合にはプログラム中で扱う数値を所定の
範囲に収めるためのプログラミング上の工夫が当然必要
であった。
However, for this reason, when programming, it is necessary to predict the possible size range of the numerical values to be handled, including intermediate results during program execution, and based on that prediction, if necessary, program Of course, some programming ingenuity was needed to keep the numerical values handled within a predetermined range.

(C)発明が解決しようとする問題点 本発明は、データが表示する浮動小数点数の大きさの範
囲を拡張することのできる表示形式を処理する演算W4
m方式を提供し、前記のような従来必要であったプログ
ラミングの工夫を要することなく広い範囲の数値を処理
することを可能とすることを目的とする。
(C) Problems to be Solved by the Invention The present invention solves an operation W4 that processes a display format that can expand the range of floating point numbers displayed by data.
It is an object of the present invention to provide an m-method and to make it possible to process a wide range of numerical values without requiring the conventional programming techniques described above.

(d1問題点を解決するための手段 この目的は、lの浮動小数点数を表示するデータに1又
は複数の指数部を有し、該指数部の各々を基数として定
まる各数値の積を仮数部の数値に乗じて該浮動小数点数
の値とするように構成されてなる本発明の浮動小数点演
算制御方式によって達成される。
(Means for solving the d1 problem) This purpose is to have one or more exponent parts in data representing a floating point number of l, and to calculate the product of each numerical value determined using each of the exponent parts as a base, as a mantissa part. This is achieved by the floating point arithmetic control system of the present invention, which is configured to multiply the value of the floating point number to obtain the value of the floating point number.

+e)作用 即ち、浮動小数点数の表現形式を、1の仮数部と1又は
複数の指数部からなる構成とし、各指数部の値を[いB
z、E3、−−−−− したとき、該データで表される
浮動小数点数の値を、 S X Ml” X Mz” X M3E″×−−−−
−X Pとする。但しSは符号、Fは仮数部の値、Ml
、M2、H8等は各指数部に固有の基数である。
+e) In other words, the representation format of a floating point number is made up of a mantissa part of 1 and one or more exponent parts, and the value of each exponent part is
z, E3, ------ When the value of the floating point number represented by the data is S X Ml" X Mz" X M3E"
-X P. However, S is the sign, F is the value of the mantissa, and Ml
, M2, H8, etc. are base numbers specific to each exponent part.

従って、必要な大きさの範囲に応じて、数値を表現する
データの指数部の個数を選択することにより、範囲を拡
げることができる。
Therefore, the range can be expanded by selecting the number of exponent parts of data representing a numerical value according to the required size range.

更に、上式から明らかなように、指数相互は加算的な関
係にあるので、従来の演算機能に追加して本発明の方式
を導入することが極めて容易である。
Furthermore, as is clear from the above equation, since the exponents are in an additive relationship, it is extremely easy to add the method of the present invention to conventional arithmetic functions.

(f)実施例 第1図は本発明の一実施例における、浮動小数点数の表
現形式である。図において、S及びFは第2図と同様に
、それぞれ符号及び仮数部であり、El、 pg、It
、は指数部を示す。図の(a)、(b)、(C)の形式
例は同一のビット長(例えば64ピント)を有するもの
とし、指数部の個数及びそれに伴って仮数部のビット長
が異なる様子を示している。
(f) Embodiment FIG. 1 shows the representation format of floating point numbers in one embodiment of the present invention. In the figure, S and F are the sign and mantissa, respectively, as in Figure 2, and El, pg, It
, indicates the exponent part. The format examples in (a), (b), and (C) in the figure assume that they have the same bit length (for example, 64 pintos), and show how the number of exponent parts and the corresponding bit length of the mantissa part differ. There is.

本例では、指数部は最大3個までになり得るものとする
。各部の構成は、例えば符号部Sが1ビツト、指数部B
+は7ビツト、指数部Eア及びE、はそれぞれ8ビツト
とし、残りの56〜40ビツトが仮数部になる。
In this example, it is assumed that there can be up to three exponent parts. The configuration of each part is, for example, the sign part S is 1 bit, the exponent part B is
+ is 7 bits, exponent parts Ea and E are each 8 bits, and the remaining 56 to 40 bits are the mantissa part.

指数部の表現形式には各種の方式があるが、一般に第2
図で示した従来の浮動小数点数データと同−の思想によ
ることが、関連する処理機能の実現の便宜上から望まし
いであろう。本実施例では、広く採用されている表現の
一形式に従って、指数部E1は真の指数値のとり得る値
−64〜+63に64を加えた値をE、とするものとす
る。従って、EIは0〜127の値をとる。
There are various ways to express the exponent part, but generally the second
It would be desirable to use the same concept as the conventional floating-point number data shown in the figure for the convenience of realizing related processing functions. In this embodiment, in accordance with one widely adopted format of expression, the exponent part E1 is assumed to be a value E which is the sum of the possible values of the true exponent value -64 to +63 and 64. Therefore, EI takes a value from 0 to 127.

但し、本実施例において、E1=0及びE、=127は
それぞれ指数値−64及び+63を示すと共に、指数部
P、zが指数部として有効であることを示すものとし、
且つこの場合は8ビツトをできるだけ有効に利用する為
に、[2部を真数表示とみて、E、=Oのときは負数の
、EI=127のときは正数の、それぞれ絶対値を表示
するものとする。
However, in this example, E1=0 and E,=127 indicate exponent values of -64 and +63, respectively, and indicate that exponent parts P and z are valid as exponent parts,
In addition, in this case, in order to use the 8 bits as effectively as possible, the second part is considered to be an antilog number, and the absolute value is displayed when E = O is a negative number, and when EI = 127 is a positive number. It shall be.

次ぎに、指数部E2が有効な場合、即ちE、=0または
127の場合、において、E2部が最大値255である
と、上記により指数値−255または+255を示すと
共に、指数部[!3が指数部として有効であることを示
すものとする。この状態における指数部E3の数値の意
味はE2の場合と同様とする。
Next, when the exponent part E2 is valid, that is, when E = 0 or 127, if the E2 part has a maximum value of 255, it indicates the exponent value -255 or +255 as described above, and the exponent part [! 3 indicates that it is valid as an exponent. The meaning of the numerical value of the exponent part E3 in this state is the same as in the case of E2.

基数の値は各指数部ごとに異なってもよいが、本実施例
では同一の値を使用する方式とする。全指数部の基数を
同一値とすれば指数部の処理が簡易化される利点がある
。基数の値は、通常は2進数の扱いに便利なように、2
fiが使用される。
Although the value of the base number may be different for each exponent part, in this embodiment, the same value is used. Setting the bases of all exponent parts to the same value has the advantage of simplifying the processing of the exponent parts. The base value is usually 2 for convenience in handling binary numbers.
fi is used.

本実施例では例えば基数−・16とすると、指数値は仮
数部Fの2進数を4ビット単位で区切った、所謂16進
数の小数点位置を表示することになる。
In this embodiment, for example, if the base number is -.16, the exponent value will display the decimal point position of a so-called hexadecimal number in which the binary number of the mantissa part F is divided into 4-bit units.

本実施例で、仮数部の数値は例えば最左位置(最高位)
ビットの左に小数点のある数を表示するものとする。
In this example, the value of the mantissa is, for example, at the leftmost position (highest position)
Assume that a number is displayed with a decimal point to the left of the bits.

以上により、第1図(C1のデータ形式で表示される浮
動小数点数の絶対値は下記の通りとなり、その符号は符
号部Sで定まる。
As a result of the above, the absolute value of the floating point number displayed in the data format of FIG. 1 (C1) is as follows, and its sign is determined by the sign part S.

M(El−64) X MEN’ X MEM’ Xp
=M(El−6414!2’+!3’ ×p=15(E
l−641+EZ’+E3’ Xp但し、Ex’ 、E
3°はE2、E3の値を絶対値として、前記の規約によ
って定まる符号を持つ値を示す。
M (El-64) X MEN' X MEM' Xp
=M(El-6414!2'+!3' ×p=15(E
l-641+EZ'+E3' XpHowever, Ex', E
3° indicates a value having a sign determined by the above convention, with the values of E2 and E3 as absolute values.

第1図(b)又は(a)の形式における値は、上記の!
!3゜又はB 3+及びE2′を0としてめられる。
The values in the format of FIG. 1(b) or (a) are the above!
! 3° or B 3+ and E2' can be taken as 0.

第3図は本発明の一実施例である浮動小数点乗算装置の
ブロック図である。前記の形式を有する被演算データが
レジスター0及び20に設定され、その積がレジスタ3
0に出力されるものとする。
FIG. 3 is a block diagram of a floating point multiplication device which is an embodiment of the present invention. The operand data having the above format is set in registers 0 and 20, and the product is set in register 3.
It is assumed that the output is 0.

浮動小数点数の乗算はよく知られているように、両波演
算数の仮数の乗算によって積の仮数を、指数の加算によ
って積の指数を、符号部の処理によって積の符号部を得
ることができる。
As is well known in the multiplication of floating point numbers, the mantissa of the product can be obtained by multiplying the mantissas of the two-wave operation numbers, the exponent of the product can be obtained by adding the exponents, and the sign part of the product can be obtained by processing the sign part. can.

図において、乗算回路31は被演算数のレジスタ10及
び20から取り出された仮数部の数値について乗算を実
行して、積を正規化回路32に出力する機能を有する回
路、符号計算回路33は被演算数の符号部を入力として
乗算結果の符号を決定し、出力レジスタ30の符号部を
設定する回路であり、公知の各種方式の回路を使用する
ことができる。
In the figure, a multiplication circuit 31 is a circuit that has a function of performing multiplication on the mantissa values taken out from the registers 10 and 20 of the operands and outputs the product to the normalization circuit 32, and a sign calculation circuit 33 is a circuit that has the function of outputting the product to the normalization circuit 32. This is a circuit that receives the sign part of the arithmetic number as input, determines the sign of the multiplication result, and sets the sign part of the output register 30, and various types of circuits known in the art can be used.

本装置においては、前記の形式により指数部の長さ及び
それに伴って仮数部の長さに3種の場合があるので、指
数の計算、及び乗算回路31への仮数の入力において、
長さに応じた制御を必要とする。その為に、指数処理回
路11及び21はそれぞれレジスタ10及び20から指
数部E、〜E3に相当する部分を入力して処理する。該
回路11と21とは同一の機能で構成されるので、以下
主として回路11について述べる。
In this device, there are three types of lengths of the exponent part and correspondingly the length of the mantissa part according to the above format, so when calculating the exponent and inputting the mantissa to the multiplication circuit 31,
Requires control according to length. For this purpose, the exponent processing circuits 11 and 21 input and process portions corresponding to the exponent parts E, -E3 from the registers 10 and 20, respectively. Since the circuits 11 and 21 have the same function, the circuit 11 will be mainly described below.

指数処理回路11は、入力から有効指数部を判定して、
指数値を計算し、指数加算回路34へ入力すること、及
び有効指数部の個数によって定まる仮数部の有効長に応
じて、ゲート12(指数処理回路21の場合は、ゲート
22)を制御し、乗算回路31への入力の上位8又は1
6ビツトの通過を阻止する(該部分の入力を全゛0“と
する)機能を持つ。
The exponent processing circuit 11 determines the effective exponent part from the input,
Calculating the exponent value and inputting it to the exponent addition circuit 34, and controlling the gate 12 (gate 22 in the case of the exponent processing circuit 21) according to the effective length of the mantissa determined by the number of effective exponent parts, Upper 8 or 1 of inputs to multiplication circuit 31
It has a function of blocking the passage of 6 bits (setting the input of the part to all 0s).

第4図は指数処理回路11内部の処理の流れ図である。FIG. 4 is a flowchart of processing inside the exponent processing circuit 11.

まずステップ40でレジスタ10のE1〜B、部分が入
力される。ステップ41及び42により、そのE。
First, in step 40, portions E1 to B of the register 10 are input. By steps 41 and 42, that E.

部がO又は127であるか判定する。何れでもなければ
61部のみが有効指数部であるので、ステップ43でゲ
ート12を全て通過状態に設定し、ステップ44で後の
計算の為に、入力のE2及びE8部を0に書き換える。
It is determined whether the part is O or 127. If neither of these is the case, only part 61 is an effective exponent part, so in step 43 all gates 12 are set to pass, and in step 44 parts E2 and E8 of the input are rewritten to 0 for later calculations.

86部がOか127であれば、ステップ45において0 次の8ビツトの12部が255か判定する。255でな
ければEl及び12部が有効指数部であるので、ステッ
プ46でゲート12を83部に相当する部分のみ通過す
るように設定し、ステップ47で入力の[!3部をOに
する。
If the 86th part is O or 127, it is determined in step 45 whether the 12th part of the 0th order 8 bits is 255. If it is not 255, El and the 12th part are valid exponent parts, so in step 46 the gate 12 is set to pass only the part corresponding to 83rd part, and in step 47 the input [! Set the third part to O.

12部が255である場合には、3指数部すべて有効で
あるので、ステップ48でゲート12を阻止状態にする
If the 12th part is 255, all three exponent parts are valid, so the gate 12 is placed in a blocked state at step 48.

以上の制御の後、ステップ50の判定で入力のE。After the above control, it is determined in step 50 that the input is E.

部がOの場合はE2.83部を負数としなければならな
いので、ステップ51で−([!24E3+64)によ
り指数値をめる。ε1部がOでない場合には、ステップ
52においてEI+82+E3−64によって指数値を
める。
If the part is O, the E2.83 part must be a negative number, so in step 51 the exponent value is subtracted by -([!24E3+64). If the ε1 part is not O, the exponent value is calculated by EI+82+E3-64 in step 52.

なお、この計算で使用される[!2、E3の値は上記の
制御の説明の通り、0に書き換えられている場合がある
値である。
Note that [!] used in this calculation. 2, the value of E3 is a value that may be rewritten to 0, as explained in the above control.

得られた指数値はステップ53で指数加算回路34の一
方の入力として転送される。指数加算回路34の他方の
入力には、レジスタ20の指数部について上記と同様の
処理で得られた指数値が、指数処理1 回路21から転送される。
The obtained index value is transferred in step 53 as one input of the index addition circuit 34. An exponent value obtained by processing similar to the above for the exponent part of the register 20 is transferred from the exponent processing 1 circuit 21 to the other input of the exponent addition circuit 34 .

指数加算回路34は通常の加算器で構成され、再入力指
数値の和として、レジスタ10及び20の被演算数の積
の指数値を得、指数分割回路35に転送する。
The exponent addition circuit 34 is constituted by an ordinary adder, obtains the exponent value of the product of the operands of the registers 10 and 20 as the sum of the re-input exponent values, and transfers it to the exponent division circuit 35.

正規化回路32はシフトレジスタを主に構成されて、乗
算回路31から転送された仮数の積を保持し、左に4ビ
ツトづつシフトして、最上位4ビツト内に有効数字を含
む、いわゆる正規化された形式の仮数を得る回路である
。正規化の為のシフトした量(4ビツトシフトの回数)
は指数分割回路35に転送される。
The normalization circuit 32 mainly consists of a shift register, holds the product of the mantissas transferred from the multiplication circuit 31, shifts it to the left by 4 bits, and converts it into a so-called normal state in which the significant digits are included in the most significant 4 bits. This is a circuit that obtains the mantissa in converted form. Shifted amount for normalization (number of 4-bit shifts)
is transferred to the exponential division circuit 35.

指数分割回路35は指数加算回路34から転送された指
数値から上記シフト量を減じて補正した後、指数の分割
処理を行う。第5図は指数分割回路35の分割処理の流
れ図である。
The exponent division circuit 35 corrects the exponent value transferred from the exponent addition circuit 34 by subtracting the shift amount, and then performs exponent division processing. FIG. 5 is a flow chart of the division processing of the index division circuit 35.

第5図のステップ60及び61において、補正後の指数
値の大きさを判定する。もし−64〈指数値〈63であ
れば、指数部はE、のみで表示できるので、ステップ6
2により、指数値に64を加算して[E、を発生2 して、出力レジスタ30の83部へ設定する。
In steps 60 and 61 of FIG. 5, the magnitude of the corrected index value is determined. If -64〈exponent value〈63, the exponent part can be displayed only as E, so step 6
2, 64 is added to the exponent value to generate [E, 2] and set in the 83rd section of the output register 30.

指数値〈−63の場合には、ステップ63でE、として
0をレジスタ30の81部へ設定し、ステップ64で指
数値を=(指数値+64)に更新する。62〈指数値の
場合には、ステップ65でレジスタ30のε1部へ12
7を設定し、ステップ66で指数値を(指数値−63)
に更新する。
If the exponent value is <-63, 0 is set as E in the 81st part of the register 30 in step 63, and the exponent value is updated to =(exponent value +64) in step 64. 62〈In the case of an exponent value, 12 is stored in the ε1 part of the register 30 in step 65.
7, and in step 66 set the index value (exponent value - 63)
Update to.

この両場合共出力にε2部が入るので、その領域をあけ
る為に、ステップ67で正規化回路32を制御してシフ
トレジスタ上の仮数を右へ4ビツトシフトする。
In both cases, the ε2 part is included in the output, so in order to free up that area, the normalization circuit 32 is controlled in step 67 to shift the mantissa on the shift register to the right by 4 bits.

ステップ68で、更新した指数値が254より大か判定
し、大でなければ指数は12部までで表示できるので、
ステップ69でその指数値をレジスタ30の12部に設
定する。
In step 68, it is determined whether the updated index value is greater than 254, and if it is not, the index can be displayed in up to 12 parts, so
In step 69, the index value is set in the 12th part of the register 30.

254〈指数値であれば、ステップ70でレジスタ30
の12部を255に設定する。ステップ71で指数値を
(指数値−255)に更新して指数部E3に設定すべき
値をめる。
254〈If it is an exponent value, register 30 is stored in step 70.
Set 12 copies to 255. In step 71, the exponent value is updated to (exponent value - 255) and the value to be set is entered in the exponent part E3.

ステップ72はこの値が限界値を越えているかを3 検査するもので、もし255を越えていれば8ビツトの
68部では表示できず、即ち本実施例で規定した範囲を
こえる浮動小数点数であることになるので、ステップ7
3で例外処理動作を起動する。例外処理は、例えば所定
の状態情報を設定して割り出しを行う公知の方式でよい
Step 72 checks whether this value exceeds the limit value. If it exceeds 255, it cannot be displayed in 68 parts of 8 bits, that is, it is a floating point number that exceeds the range specified in this embodiment. Therefore, step 7
Step 3 starts the exception handling operation. The exception handling may be a known method that performs determination by setting predetermined status information, for example.

指数値が255を越えていなければ、ステップ74で指
数値をレジスタ30の83部に設定し、ステップ75で
正規化回路32の仮数を更に4ビツト右シフトさせる。
If the exponent value does not exceed 255, the exponent value is set in the 83rd part of the register 30 in step 74, and the mantissa of the normalization circuit 32 is further shifted to the right by 4 bits in step 75.

以上により、指数分割回路35の処理をおわり、出力レ
ジスタ30上に指数部はすべて設定されたので、次ぎに
正規化回路32からレジスタ30へ仮数を転送すれば浮
動小数点数の積が完成する。
As described above, the processing of the exponent division circuit 35 has been completed and all the exponent parts have been set on the output register 30. Next, the mantissa is transferred from the normalization circuit 32 to the register 30 to complete the product of floating point numbers.

(沿発明の効果 以上の説明から明らかなように本発明によれば、浮動小
数点数の演算において、数値の使用可能な大きさの範囲
を容易に拡げることができ、又実行前に数値の大きさの
範囲を予測する必要がなくなるので、計算機システムの
応用範囲を拡大し、及4 び使い易さを向上するという著しい工業的効果がある。
(Effects of the Invention As is clear from the above explanation, according to the present invention, the range of usable numerical values can be easily expanded in floating-point number operations, and Since there is no longer a need to predict the range of data, there is a significant industrial effect of expanding the application range of the computer system and improving its ease of use.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例における浮動小数点数のデー
タ形式を示す図、 第2図は従来の浮動小数点数データ形式例の図、第3図
は本発明の一実施例乗算装置のブロック図、第4図は指
数処理回路の処理の流れ図、第5図は指数分割回路の処
理の流れ図である。 図において、 1は符号部、 2は指数部、 3は仮数部、 10.20はレジスタ、11.21は指
数処理回路、12.22はゲート、30は出力レジスタ
、31は乗算回路、32は正規化回路、 33は符号計
算回路、34は指数加算回路、35は指数分割回路、4
0〜75は処理のステップを示す。 5 亮 1 目 療 zT!!J 茶 3 図 亭 4 和
FIG. 1 is a diagram showing a data format of a floating point number in an embodiment of the present invention, FIG. 2 is a diagram of an example of a conventional floating point number data format, and FIG. 3 is a block diagram of a multiplication device in an embodiment of the present invention. 4 is a flowchart of the processing of the exponent processing circuit, and FIG. 5 is a flowchart of the processing of the exponent division circuit. In the figure, 1 is the sign part, 2 is the exponent part, 3 is the mantissa part, 10.20 is a register, 11.21 is an exponent processing circuit, 12.22 is a gate, 30 is an output register, 31 is a multiplication circuit, and 32 is a multiplication circuit. 33 is a sign calculation circuit, 34 is an exponent addition circuit, 35 is an exponent division circuit, 4
0 to 75 indicate processing steps. 5 Ryo 1 Eye treatment zT! ! J Tea 3 Zutei 4 Japanese

Claims (2)

【特許請求の範囲】[Claims] (1)指数部及び仮数部を有する浮動小数点数の演算を
実行する装置において、1の浮動小数点数を表示するデ
ータに1又は複数の指数部を有し、該指数部の各々を幕
数として定まる各数値の積を仮数部の数値に乗じて該浮
動小数点数の値とするように構成されてなることを特徴
とする浮動小数点演算制御方式。
(1) In a device that executes arithmetic operations on a floating point number having an exponent part and a mantissa part, data representing a floating point number of 1 has one or more exponent parts, and each of the exponent parts is used as an act number. 1. A floating-point arithmetic control system, characterized in that the floating-point number is determined by multiplying the value of the mantissa by the product of determined numerical values.
(2)上記浮動小数点数を表示するデータの複数の指数
部の各々は、特定の1指数部を先頭とする所定の制御順
位を有し、該特定の指数部を除く各指数部は該制御順位
において先行するすべての指数部が、それぞれ所定の値
を有する場合に有効となり、すべての指数部は該有効で
ない状態においては仮数部の一部となるように構成され
てなることを特徴とする特許請求の範囲第(1)項記載
の浮動小数点演算制御方式。
(2) Each of the plurality of exponent parts of the data displaying the floating point number has a predetermined control order with one specific exponent part at the top, and each exponent part other than the specific exponent part has the control order. It is characterized in that it is configured such that all the exponent parts preceding it in the ranking are valid when each has a predetermined value, and all the exponent parts become part of the mantissa part in a state where they are not valid. A floating point arithmetic control method according to claim (1).
JP59111239A 1984-05-31 1984-05-31 Control system for floating point arithmetic Pending JPS60254231A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59111239A JPS60254231A (en) 1984-05-31 1984-05-31 Control system for floating point arithmetic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59111239A JPS60254231A (en) 1984-05-31 1984-05-31 Control system for floating point arithmetic

Publications (1)

Publication Number Publication Date
JPS60254231A true JPS60254231A (en) 1985-12-14

Family

ID=14556100

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59111239A Pending JPS60254231A (en) 1984-05-31 1984-05-31 Control system for floating point arithmetic

Country Status (1)

Country Link
JP (1) JPS60254231A (en)

Similar Documents

Publication Publication Date Title
JP2662196B2 (en) Calculation result normalization method and apparatus
JPS584369B2 (en) Digit Validity Tracker
JP2511527B2 (en) Floating point arithmetic unit
JPH09231201A (en) Floating point multiplication accumulation device
US6202078B1 (en) Arithmetic circuit using a booth algorithm
JP3579087B2 (en) Arithmetic unit and microprocessor
US7003540B2 (en) Floating point multiplier for delimited operands
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
JPH0831024B2 (en) Arithmetic processor
Russinoff SSE Floating-Point Instructions
JP2856792B2 (en) Floating point arithmetic unit
JPH0251732A (en) Floating point computing element
JP3019796B2 (en) Multiplier
JPH01282633A (en) Non-normalized number processing system
JPS6149234A (en) Multiplier circuit for floating point
JP3100868B2 (en) Arithmetic unit for floating point numbers
JP3137636B2 (en) Data processing device
JPS60247781A (en) computing device
JP2622012B2 (en) Shift circuit
JPH04160533A (en) Microprocessor
JPH0357019A (en) Floating-point data adding and subtracting circuit
JP3124286B2 (en) Floating point arithmetic unit
JPH0498421A (en) Microprocessor
JPH0498524A (en) Floating point arithmetic unit
JPH01171023A (en) Rounding processing system in binary floating point multiplication