ホーム ] 概要 ] プログラミング仕様 ] 演算速度 ] 技術解説(システム編) ] 技術解説(四則演算編) ] 技術解説(FFT編) ] 技術解説(数学関数編) ]

上へ
多倍長語 MegaLong
基数変換
数値変換
定数システム
演算時間予測システム

技術解説(システム編)

数値変換

最終更新日:2007/04/26 新規

●概要

 一般的な数値をMegaLong に変換したり、MegaLong を一般数値(可能であれば)や人間に分かる表現にしたりする。これがないと多倍長演算の意味がない。

●MegaLong 変換

 MegaLong のNew メソッドで必要な変換で、一般的に表現された数値や、.NET 標準の数値形式をMegaLong に変換する。整数、浮動小数点、10進数、文字列表現の数値などが元となる。

整数 → MegaLong

 整数とは、Byte、SByte、Short、UShort、Integer、UInteger、Long、ULong を言う。

実数 → MegaLong

 実数とは、Single、Double を言う。

10進数 → MegaLong

 10進数とは、Decimal を言う。Decimal の場合、小数もあり、値範囲も大きいので処理は少し複雑になる。以前は、文字列にしてから処理を行っていたが、やはり遅いので、高速化を図った。

文字列 → MegaLong

 文字列とは、String、StringBuilder で表された数値を言う。 

●値分離

整数部分

 MegaLong の整数部分をMegaLong として取り出す。

小数部分

 MegaLong の小数部分をMegaLong として取り出す。

部分値

 MegaLong の仮数部を指定した位置、桁数で切出し、新しいMegaLong にする。残りは切捨てられる。

●一般数値変換

 MegaLong を.NET標準の数値に可能であれば変換する。

MegaLong → Long

MegaLong → Double

文字列変換

 MegaLong を、人間が分る文字列数値に変換する。MegaLong を正確に表現できる。