/// <summary> /// Decode a double into its sign, mantissa, and exponent. /// </summary> internal static bool Decode(double value, out ulong mantissa, out uint exponent) { ulong bits = RyuUtils.double_to_bits(value); mantissa = bits & MANTISSA_MASK; exponent = (uint)(bits >> DOUBLE_MANTISSA_BITS) & EXPONENT_MASK; return((bits & SIGN_MASK) != 0U); }