浮動小数点演算のコンピュータの構成原理のトピック

浮動小数点演算のコンピュータの構成原理のトピック

私たちは、元教師も非常に素晴らしいですし。PPTは、外のブログへのリンクを提供しています。我々は、すべてのルックPPT、pptのクラスメートは、リンクをブログ見えにくいです。私は無知に見えます。
本当に、私は例を理解していません。ない嘘。それから私は、コンセプトの概念を扱います。

浮動小数点加算および減算動作は、検査オペランド0、仮数の和の順序、正規化結果、丸め処理、オーバーフロー処理ステップを完了するために必要な場合。
:ここではいくつかの概念である
オーバーフローを計算する際のチェック:ダブルシンボルビットが。二重の符号ビットがあります。00 11は、負の数を示し、正の数を表します。
最上位ビットのキャリーと言うには、符号ビットの矛盾が発生した場合。
結果の符号ビット、2 01と10があり
、結果の符号ビットが01のとき:オーバーフローは、
符号ビットの結果は午前10時です:アンダーフローです
:オーバーフローがアンダーフローは何かということです何
百度は非常に公式の説明。
オーバーフロー:バッファに長いデータであり、過剰バッファが高いに書き込まれたとき、より高いデータコンテンツ、命令の出力にバッファ、ポインタ、または他のプログラムの内容に格納されてもよいです彼らはカバーされたり破壊されています。可視データまたは命令のセットの小さな部分は、プログラムまたはオペレーティングシステムクラッシュのオーバーフローを引き起こす可能性があります。
アンダーフローは、下部過剰バッファに書き込まれるときに、長いデータバッファに、下部バッファポインタは、次の命令で出力の内容や他のプログラムを格納されています。
公式の説明はので、私はJike非常に無知を学びましょう。(IはXueyibujingであってもよい)
、単純なポイント:
時間は0に丸められたときにアンダーフローが0に近い場合
、大きな数のオーバーフローが正の無限大または負の無限大として近似した場合。

この例としては、例えば:
例えば、セットX = + 1000001、Y = + 1000011、 デュアルシンボルはY = 00、X = 00 1000001を示し 1000011、[X + Y] 正オーバーフロー= 01 0000100,01補数演算結果。
だから、オーバーフローが発生したときに?
同じ2つのシンボルの個数が追加(または異なるシンボル数を減算)している場合、演算結果がオーバーフローしてもよいです。オーバーフロー検出メカニズムは、主に二分決定符号ビットとダブル判定方法を使用していました。
別の例は、場合シンボル数が異なる減算である:
X = 0.1101、Y = -0.0111、シンボルのシンボルビットはダブルビット、X-Y相補見つける設け
[X-Y]を補= [X]補体+ [ - Y]塗りつぶし間違っ= 001101 + 000111 = 010100結果、正のスピルオーバー

従来の浮動小数点表現:
N ^ = R&E M * LT
N浮動小数点数、Rは基板であり、Eは、Mは、仮数である、注文コードです。
たとえば、次の1
2 R、基板、010はEであり、注文コード、0.11011011はM、仮数であります

両方の補数形式を使用して、ポイントの減算演算を浮動します。内部コンピュータが補数形式を採用しているため。
変形補数。元のコードは、正、負のを見ることができないので。
補体は、正と負を識別することができます。
ここで2つのシンボルビットは、注文コードシンボルは二重、二重仮数符号ビットをビット、使用されています。(上記前記)

1.ステップは
大きいオーダーコードに小さな庭を注文することです。大きな舞台に小さい順序ライン。
1.1 * 1.2 * 2 ^ 2 ^ 3と4は、
1.1 * 2 ^ 3に、仮数が正しいものにシフトしています。指数プラスワン。
たとえば
1
2
ここでは、補体によって表される次のとおり
:指数2重シンボルビットで表される
[X-]フローティング= 00 010であるが、
[Y]はフローティング= 00100
仮数デュアルシンボルが示す:
[X-]フローティング= 00.11011011
11.10101100:Y元のコード
は、抗Yをコード:11.01010011
Y補:11.01010100
[Y] =フロート11.01010100

注文コードY:
ここでは、減算プラス負に相当
[-Y] =オリジナル11,100
[-Y] 011トランス= 11
[-Y] = 11100補体
我々はオーダーの指数。E =例は、 - = 00010 + Eyを 11 100 = 11 110
元のコードを取得し、この補数変換:11010
され-2
非常に小さいXの指数、右側の仮数のXステージ2、Xコードプラス2
そう[X] = 00100,00.00110110フロート(11)

前記仮数和
3
は反対の数プラス減数に対応し、サブトラクティブである場合。これは、補体の添加の反対側の対応する減少に変換され

正規化3.
右規則や規制には、左
が右ルール二つの異なる符号ビット状況は、私は、符号ビットが同じ状況ではない残りの00又は11に加えて、上記述べたものです。
それは01 ...、10である...
いずれの場合も、それは正しいです。
すなわち、右の01 ... 001 ...
右の10つまり... 110 ...
その後、注文コードプラス1

同じシンボルのが、符号ビットの最大値を有する2つのビットが同じルール残っている
両方の場合には111である... 000 ...
111 ... 11 ... 0の結果左側
000 ... 00 ... 0の結果を残し
次に、注文コードに必要な移動の数を減算します。

規制は、上記の式は、左必要
4
指数マイナス1を左
になる:
1.00010101(10)
注文コードマイナス1

4.丸め
丸め1 0法、一定の丸め方法を切り上げ、方法を設定します

例えば、0を丸める方法を用いて、式1
のように
5
、最上位ビットが
1に必要です

6
最上位ビットが0に丸めダウンにする必要がある場合は、直接それを下に置きます

オーバーフロー解析5.
符号順位コードが00または01オーバーフローがされていない
だけオーバーフローさせるためのコードかどうかを決定する必要があり、仮数は決意オーバーフローを必要としません。現在、正規化数ではない
既に上述した順序コードオーバーフロー方法を決定するために
オーバーフロー01。プジョーオーバーフローカウンタ
アンダーフローのための10。設定された動作結果は指数と仮数部が0で、0であります

まあ〜
これは、浮動小数点加減算の友人である-
もし不十分な指導や改善ルックああ〜

公開された60元の記事 ウォンの賞賛2 ビュー1582

おすすめ

転載: blog.csdn.net/qq_44624316/article/details/104729667