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

    1.5.75          0 10000001 0111 0000 0000 0000 0000 000

    161.875             0 10000110 0100 0011 1100 0000 0000 000

    -0.0234375            1 01111001 1000 0000 0000 0000 0000 000

    经检验(具体请看网址http://www.weitz.de/ieee/)该结果无误

    2.利用python实现类浮点数的转换功能

    代码大致如下(尚未能成功分辨符号)

    s = float(input())
      if int(s)!=0:
        f = s-int(s)
        print(int(s),round(f,9))
        f=round(f,9)

        def dec2bin(x):
          x -= int(x)
          a = []
          while x:
            x *= 2
            a.append('1' if x>=1. else '0')
            x -= int(x)
          return a

        print(dec2bin(f))
        c = ''.join(dec2bin(f))
        print(c)

        b = list(str(bin(int(s))))
        print(b)

        del b[0]
        del b[0]
        print(b)

        d = len(b)
        d=d-1+127
        e = list(str(bin(int(d))))
        print(e)
        del e[0]
        del e[0]
        print(e)

        del b[0]
        b = ''.join(b)
        print(b)

        e.extend(b)
        e.extend(c)
        g = ''.join(e)
        print(g)

        j = int(len(e))
        print(j)
        while (j<31):
          e.append('0')
          j = len(e)

        e.insert(0,'0')
        g = ''.join(e)
        print(g)
      if int(s)==0:
        f = s-int(s)
        print(int(s),round(f,9))
        f=round(f,9)
        def dec2bin(x):
          x -= int(x)
          a = []
          while x:
            x *= 2
            a.append('1' if x>=1. else '0')
            x -= int(x)
          return a
        print(dec2bin(f))
        c = dec2bin(f)
        k = c.index('1')
        k = k*(-1)+127
        e = list(str(bin(int(k))))
        del e[0]
        del e[0]
        print(e)
        e.extend(c)
        j=len(e)
        while (j<31):
          e.append('0')
          j = len(e)
        e.insert(0,'0')
        g = ''.join(e)
        print(g)

  • 相关阅读:
    appium-flutter-driver 测试flutter_boost项目_Java语言
    appium-flutter-driver 测试flutter项目
    Android Studio 制作出来的9图无法进行拖拉,导致无法制作出正确的9图
    Flutter 正确删除emoji表情/正确分割字符串
    如何清除git仓库的所有提交记录,成为一个新的干净仓库
    js中this的总结
    python判断时间是否在某个时间段里面的三种方式
    centos7使用rpm包安装mysql5.74
    django学习之 从服务端上传文档与下载文档接口
    python 之阿里云短信服务接入流程短信接口
  • 原文地址:https://www.cnblogs.com/wxMing/p/13836646.html
Copyright © 2011-2022 走看看