• 二进制 与 十进制 互转


    ==============================================================================
    二进制转十进制:
    方法:“按权展开求和”
      例: (1011.01)2 =(1×2^3+0×2^2+1×2^1+1×2^0+0×2^(-1)+1×2^(-2) )10
      =(8+0+2+1+0+0.25)10
      =(11.25)10
      规律:个位上的数字的次数是0,十位上的数字的次数是1,......,依奖递增,而十
      分位的数字的次数是-1,百分位上数字的次数是-2,......,依次递减。
      注意:不是任何一个十进制小数都能转换成有限位的二进制数。
    
    
    1010.101B=2^3+2^1+2^-1+2^-3=8+2+0.5+0.125=10.625
    
    
    ================================================================================
    十进制转二进制:整数部分:采用"除2取余,逆序排列"法。
                             小数部分:采用"乘2取整,顺序排列"法。
    
    
    例:235.725的小数部分取出,
    
    
    即:0.725,将其乘以进制数二进制就乘以2后得到1.45,取其整数部分1为二进制小数的第一项(十分位),
    在将小数部分0.45乘2得0.9,取其整数部分为二进制小数的第二位(百分位)0,
    在将其小数部分0.9乘2,得1.8,取其整数部分为二进制小数的第三位(千分位)1,
    取其小数部分0.8再乘2……以此类推,直到值为0 或者 形成循环小数则停止 或者 达到所要求的精度为止。
    
    
    
    
    例如:十进制 8.325 转为二进制_____?___。
    
    
    整数部分:
    
    
    8/2 = 4 余0
    4/2 = 2 余0 
    2/2 = 1 余0
    1/2 = 0 余1  // 直到商为零
    逆序排列 故二进制为 1000
    
    
    小数部分:
    规则是:乘2取整
    0.325*2= 0.65
    0.65*2 = 1.3
    0.3*2  = 0.6
    0.6*2  = 1.2  // ------
    0.2*2  = 0.4
    0.4*2  = 0.8
    0.8*2  = 1.6
    0.6*2  = 1.2 // -----
    0.2*2  = 0.4
    0.4*2  = 0.8
    0.8*2  = 1.6
    ……
    继续循环(1001)
    顺序排列 故二进制为0101001……(+1001循环)
    
    
    答案为:1000.0101001……(+1001循环)



  • 相关阅读:
    利用CSS3 中steps()制用动画
    移动WEB测试工具 Adobe Edge Inspect
    Grunt配置文件编写技巧及示范
    CSS3 box-shadow快速教程
    编写爬虫程序的神器
    node+express+jade搭建一个简单的"网站"
    node+express+ejs搭建一个简单的"页面"
    node的模块管理
    node的调试
    mongoDB的权限管理
  • 原文地址:https://www.cnblogs.com/riasky/p/3429304.html
Copyright © 2020-2023  润新知