zoukankan      html  css  js  c++  java
  • IEEE754 浮点数

    1.将十进制数5.75,161.875,-0.0234375转化为IEEE754标准的32浮点数的二进制格式

    1、5.75
    整数部分
    5/2=2 .... 1
    2/2=1 .... 0
    1/2=0 .... 1
    小数部分
    0.75·2=1.5 .... 1
    0.5·2=1 .... 1
    5.75=101.1100000000=1.011100000000·2的2次方
    S=0 E=2+127=129 M=011100000000
    0 10000001 01110000000000000000000
    结果:
    符号位(S) =0
    阶码(E)=10000001
    尾数(M)=01110000000000000000000
    2、161.875
    整数部分
    161/2=80 .... 1
    80/2=40 .... 0
    40/2=20 .... 0
    20/2=10 .... 0
    10/2=5 .... 0
    5/2=2 .... 1
    2/2=1 .... 0
    1/2=0 .... 1
    小数部分
    0.875·2=1.75 .... 1
    0.75·2=1.5 .... 1
    0.5·2=1 .... 1
    161.875=10100001.1110000000=1.01000011110000000·2的7次方
    S=0 E=7+127=134 M=01000011110000000
    0 10000110 01000011110000000000000
    结果:
    符号位(S) =0
    阶码(E)=10000110
    尾数(M)=01000011110000000000000
    3、-0.0234375
    整数部分
    0
    小数部分
    0.0234375·2=0.046875 .... 0
    0.046875·2=0.09375 .... 0
    0.09375·2=0.1875 .... 0
    0.1875·2=0.375 .... 0
    0.375·2=0.75 .... 0
    0.75·2=1.5 .... 1
    0.5·2=1 .... 1
    -0.0234375=-0.0000011=-1.1000000000·2的-6次方
    S=1 E=121 M=1000000000
    1 01111001 10000000000000000000000
    结果:
    符号位(S) =1
    阶码(E)=01111001
    尾数(M)=10000000000000000000000

    经http://www.weitz.de/ieee/验证,三个转化均正确。

    2.使用python 实现类http://www.weitz.de/ieee/的浮点数转换功能




    参考资料:
    在线转码工具在线IEEE754转码工具
    Python代码参考Python实现十进制小数转IEEE754单精度浮点数转换

  • 相关阅读:
    二叉搜索树
    splay模板
    树状数组模板
    K尾相等数
    寻找最大数
    布线问题(最小生成树)
    开心的小明
    独木舟上的旅行(二)
    The Triangle(记忆化搜索)
    喷水装置(二)
  • 原文地址:https://www.cnblogs.com/leo-skr/p/11679484.html
Copyright © 2011-2022 走看看