だいぶ分かりやすい浮動小数点

twcritique

名称としての「浮動小数点」からは、10進数表記で「小数点が移動する」イメージがあるが、そのイメージは捨てた方がよい。
「指数部」は「2の累乗」によって表現される。

小数の位置を固定せずに表現するため、表し方は 10 進数の指数の表現のようになります。

浮動少数点以前の事情 エジプトの分数

ヨーロッパ世界では1未満の数を表すにはエジプト数学より導入した分数を用いていた
六十進法 – Wikipedia

浮動少数点以前の事情 バビロニアの60進数

元前3000年~紀元前2000年の頃から、シュメールおよびその後を継いだバビロニアでは、六十進法が用いられた。これは、60 が 10 (両手の指の数に由来)と 12 (太陰暦の1年=12ヵ月に由来)の最小公倍数であり、かつ、 2, 3, 4, 5 の最小公倍数でもあるために、約数が多く( 2, 3, 4, 5, 6, 10, 12, 15, 20, 30 )、除算に便利だからだとされる。
六十進法 – Wikipedia

浮動少数点以前の事情 少数の発見

1427年、アル・カーシーは「計算法の鍵」の中で、従来の60進法による表記(60とその累乗)から10とその累乗に表記を改める方法を示した
オイラーの贈物―人類の至宝eiπ=-1を学ぶ|Books pro

ヨーロッパではじめて小数を提唱したのは、オランダのシモン・ステヴィンである。1585年に出版した「十進分数論」のなかで,はじめて小数を発表した。その名が示す通り、分数の分母を10の累乗に固定した場合に、計算が非常にやりやすくなる事を発見し、それが小数の発明となった。
小数 – Wikipedia

そして対数へ

10 進数の 1019 という数は、図の様な形式で表現することができます。

1.019 の部分を仮数部、3 を指数部、そして 10 を底と呼びます。
この形式を 2 進数で行うのが浮動小数点形式になります。

二進数

中国には古くから易の八卦や六十四卦があり、それぞれ 3 ビットと 6 ビットに相当している
二進法 – Wikipedia

1937年のクロード・シャノンによる “A Symbolic Analysis of Relay and Switching Circuits” により相次いで、リレーのようなスイッチング素子による回路(デジタル回路)の設計がブール代数によって行えることが示され、1940年代に始まり今日まで続くコンピュータの理論の基礎のひとつとなっている。
二進法 – Wikipedia

二進数の計算を、対数的に考える

二進対数は、アルゴリズム解析で頻出する。1より大きな数 n を2で繰り返し割っていき、その値が1以下になるようにするのに必要な繰り返しの数は lb n の整数部分として求められる。この考えは、多くのアルゴリズムとデータ構造の分析で使用される。
二進対数 – Wikipedia

分数->60進法->十進法->少数->対数->二進数(今ここ)

小数部を特定の位置で固定して表現する固定小数点数があります。
整数部と小数部のビット数が限られるので、表現できる限度があります。

浮動小数点数にはいくつか種類があり、昔はコンピュータごとに処理の仕方が違うようなカオスな状況だったらしい。 で、それではいかんと共通の取り決めを定めたのがIEEE754という偉い人たちの集まり。その時決まったルールがIEEE754規格。

IEEE 754(IEEE 浮動小数点数演算標準)とは、浮動小数点数の計算で最も広く採用されている標準規格であり、多くのCPUやFPU、またソフトウェアで実装されている。多くのコンピュータ言語でも、浮動小数点数処理の一部または全部に IEEE 754 が採用されている。

https://matome.naver.jp/odai/2146223276390364801
2019年06月29日