C Sharpのデータ型
C#のdecimal型は128bitの十進浮動小数点数であるが、以下の点で他の浮動小数点数とは大きく異なる。
非数NaN, 負の無限大NegativeInfinity, 正の無限大PositiveInfinityは表現できない。 ゼロ除算では、DivideByZeroExceptionをthrowする。 decimal.MaxValueを上回る、あるいはdecimal.MinValueを下回る演算では、OverFlowExceptionをthrowする。
指数部は常に非正数 [-28, 0] を取る。
仮数部は単に96bit符号無し整数として扱われる。
符号部は 0 ならば正、1 ならば負を表現する。
指数部は 0 〜 28 の値を取り、実際にはその反数の値を表現する。基数は10である。
仮数部は 0 〜 79,228,162,514,264,337,593,543,950,335 の値を表現する。