asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0
二进制数计数的原则是“逢2进1”。把十进制整数转换成二进制整数通常采用的方法是“除以2取余数”。即将十进制数除以2,得到一个商数和余数;再将其商数除以2,又得到一个商数和余数;按此方法继续下去,直到商数等于零为止。每次所得的余数(0或1)就是对应二进制数的各位数字,并且第一次得到的余数是二进制数的最低位,最后一次得到的余数是二进制数的最高位。将十进制数123转换成二进制数的过程如下:
二进制数的最低位

因此,十进制数123转换成二进制数是1111011。
把十进制小数转换成二进制小数所采用的规则是“乘以2取整数”。方法是用2乘以十进制纯小数,将其结果的整数部分去掉;再用2乘余下的纯小数部分,再去掉其结果的整数部分;如此继续下去,直到余下的纯小数为0或满足所要求的精度为止。最后将每次得到的整数部分(0或1)按先后顺序从左到右排列,即得到所对应的二进制小数。
本例将十进制小数0.6875转换成二进制小数的过程如下:
二进制数的最低位



因此,十进制小数0.6875转换成二进制小数为0.1011。
注意:有些十进制小数不一定能完全准确地转换成二进制小数。在这种情况下,可以根据精度要求只转换到小数点后某一位为止

posted on 2006-08-02 11:09 汪杰 阅读(400) 评论(1)  编辑 收藏 引用 所属分类: asp(javascrpt)

FeedBack:
# re: 二进制
2006-08-02 11:19 | 汪杰
小数
十进制->二进制
不停的*2,再取整,再去掉整数部分
比如0.125
*2取整再去整,0,0.25
*2取整再去整,0,0.5
*2取整再去整,1,0
所以十进制的0.125变成二进制就是0.001
二进制->十进制
第N位×2^(-N)再累加
比如0.101
0.101(十进制)=1×2^(-1)+0×2^(-2)+1×2^(-3)=0.625(二进制)   回复  更多评论
  
只有注册用户登录后才能发表评论。

<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(15)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

  •  

积分与排名

  • 积分 - 457549
  • 排名 - 6

最新随笔

最新评论

阅读排行榜

评论排行榜