|
|
●概要 MegaPrecision 特有な技術やそのシステムについて解説する。 構造体 MegaLongは、MegaPrecision で使用される数値であるが、世の中との互換性はない。 10進の浮動小数点形式となっている。 10進にしたのは、通常科学演算では10進であること、2進の小数で10進を表現する場合、無限循環小数になることがあること(有名なのは、0.1 )、人間に分かる10進表示では、2進数の場合、基数変換が重くなる(厄介で時間が掛かる処理となる)・・・などの理由である。 ●基数変換 基数変換について、その方法の一例を紹介する。 ●数値変換 一般的な数値をMegaLong に変換したり、MegaLong を一般数値や人間に分かる表現にしたりする。これがないと多倍長演算の意味がない。 定数とは、数学定数で、π や e などを言う。それらは、内外で使用されるが、設定された精度を反映する仕組みが必要となる。 数学の関数を級数やニュートン法などにより算出させる場合、その演算速度を知るためには、実測するのが一番良いが、関数によっては精度があがると、数十時間、数日間に及ぶものがある。これでは計測は困難である。今回、これをシステム化し、パラメータなどを与えると自動的に算出する仕組みを構築したので紹介する。 |