将十进制/浮点值转换为符合IEEE754标准的十六进制值



我正在寻找一些c#源代码,可以将十进制/浮点值转换为符合IEEE754标准的十六进制值

将hax转换为单精度,步骤如下

  1. 使用X格式提供程序将十进制转换为字符串
  2. 转换成字节数组
  3. 将数组
  4. 中的所有元素转换为字节
  5. 转换成单

    decimal decValue = 989.99M;
    string hexValue = decValue.ToString("X");
    //Convert to float(24)/Single-precision floating-point format/ IEEE 754-2008/ binary32.
    byte[] raw = new byte[hexValue.Length / 2];
    for (int i = 0; i < raw.Length; i++)
    {
        raw[i] = Convert.ToByte(hex.Substring(i * 2, 2), 16);
        raw[raw.Length - i - 1] = Convert.ToByte(hex.Substring(i * 2, 2), 16);
    }
    float f = BitConverter.ToSingle(raw, 0);
    

相关内容

  • 没有找到相关文章

最新更新