zoukankan      html  css  js  c++  java
  • float point to fixed point

    浮点数

    5.23

    表示为二进制

    小数位这里只计算5位,不再继续算了

    0.23 * 2 = 0.46 0 余0.46
    0.46 * 2 = 0.92 0 余0.92
    0.92 * 2 = 1.84 1 余0.84
    0.84 * 2 = 1.68 1 余0.68
    0.68 * 2 = 1.36 1 余0.36

    101. 001110进一步表示为1.01001110 * 2^2

    浮点数存储方式

    符号位1 |  指数127+2 |  01001110   00000000000000000 | 

    约定定点数取8位,整数6,小数2

    原始float        101. 001110

    截取整数2,小数2共8位    #000101. 00#1110   

    用#截取浮点数二进制的过程就是转换定点数的过程

    得到10100这个数转成十进制就是要转的定点数 20

    20这个定点数再转回浮点数

    注意之前约定了定点数整数是6,小数是2,小数点位置就确定了

    原始int 20    二进制10100

    变化为101.00

    转换成float

    符号位1 | 指数 127+2| 0100  00000000000000000000 | 

    浮点转定点,再转会,比较下两次,精度丢失了一部分

        

  • 相关阅读:
    内置函数(少量)
    画国旗(尺寸不标准)
    测试题——程序
    乱码笔记2--字典
    列表
    课堂笔记 ——————乱
    如何利用pip安装国内镜像源
    pip常用指令
    pip卸载
    pip简介
  • 原文地址:https://www.cnblogs.com/nafio/p/13436021.html
Copyright © 2011-2022 走看看