你的位置:首页 > 软件开发 > Java > 二进制

二进制

发布时间:2017-09-18 15:00:23
注:符号位1,0不做计算,后面的0或1是用来补齐字节码位数长度十进制转二进制  -10.8125:    10  正数  十进制转二进制  除二留商取余,倒序排列  (10)10 = (1010)2         0.8125  小数  十进制转二进制  乘二取整,顺序排列 ...

二进制

注:符号位1,0不做计算,后面的0或1是用来补齐字节码位数长度

  • 十进制转二进制  -10.8125:

    10  正数  十进制转二进制  除二留商取余,倒序排列  (10)10 = (1010)2

    二进制

     0.8125  小数  十进制转二进制  乘二取整,顺序排列   (0.8125)10=(0.1101)2

      二进制

把整数部分和小数部分合并所得:(10.8125)10=(1010.1101)2

得到10.8125的二进制:1010.1101,转化为反码

00000000,00000000,00000000,0000,1010.1101->11111111,11111111,11111111,111,10101.0010

反码再加1称其为补码,负数的原码就是其补码

11111111,11111111,11111111,111,10101.0010->11111111,11111111,11111111,111,10110.0010

-10.8125的二进制就是10110.0010

  •  二进制转十进制:

负数(10110.0010)2转十进制:

  10110.0010 补码转反码 补码减1即反码:10101.0010

负数反码转正数对应的原码:
  11111111,11111111,11111111,111,10101.0010->00000000,00000000,00000000,000,01010.1101

正数先取其整数部分原码转成十进制:
   1010->0*20+1*21+0*22+1*23=2+8=10

再取其小数部分原码转成十进制:
   .1101->
     小数点后 
           第一位 1*(1/2) 即乘以2的负一次方
           第二位 1*(1/4) 即乘以2的负二次方
           第三位 0*(1/8) 即乘以2的负三次方
           第四位 1*(1/16)即乘以2的负四次方
    
     (1/2)+(1/4)+(1/16)=0.5+0.25+0.0625=0.8125

      二进制

整数部分与小数部分十进制相加,再取其负数:

 (1010.1101)2=(1*23+0*22+1*21+0*20+1*2-1+1*2-2+0*2-3+1*2-4)10

      =(10+0.8125)10

      =10.8125                        -(10.8125) 即 -10.8125

 

原标题:二进制

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录