• 二进制能够精确表示十进制数吗?


    十进制小数转二进制问题


    我们知道,十进制小数转二进制的方法为“乘2取整,顺序排列”,下面看两个实例:

    1. 计算0.625的二进制表示
    0.625 × 2 = 1.25 ...... 1
    0.25  × 2 = 0.50 ...... 0
    0.50  × 2 = 1.00 ...... 1
    0.00
    

    0.625 = (101) B

    1. 计算0.1的二进制表示
    0.1 × 2 = 0.2 ...... 0
    
    0.2 × 2 = 0.4 ...... 0
    0.4 × 2 = 0.8 ...... 0
    0.8 × 2 = 1.6 ...... 1
    0.6 × 2 = 1.2 ...... 1
    
    0.2 × 2 = 0.4 ...... 0
    0.4 × 2 = 0.8 ...... 0
    0.8 × 2 = 1.6 ...... 1
    0.6 × 2 = 1.2 ...... 1
    
    0.2 × 2 = 0.4 ...... 0
    0.4 × 2 = 0.8 ...... 0
    0.8 × 2 = 1.6 ...... 1
    0.6 × 2 = 1.2 ...... 1
    ......
    

    0.1 = (1100 1100 1100 ......) B

    可见有限长度的二进制并不能精确表示0.1,就像有限长度的十进制不能精确1/3。

  • 相关阅读:
    设计模式
    idea多个项目
    多个tomcat配置
    mysql数据库默认时间字段格式
    读取文件
    上传图片
    数据库创建用户授权
    统计12个月份的数据
    行列转换
    分页
  • 原文地址:https://www.cnblogs.com/XiaoZhengYu/p/12837950.html
Copyright © 2020-2023  润新知