如何用二进制表示一个小数
这里需要结合具体例子来讲解,比如:十进制的0.65转化为二进制表示为:0.1010011……(跟精度限制有关)。
十进制小数用二进制通常是用乘二取整法来获得的。
比如0.65换算成二进制就是:0.65 × 2 = 1.3 取1,留下0.3继续乘二取整;0.3 × 2 = 0.6 取0, 留下0.6继续乘二取整;0.6 × 2 = 1.2 取1,留下0.2继续乘二取整;……
一直循环,直到达到精度限制才停止(所以,计算机保存的小数一般会有误差,所以在编程中,要想比较两个小数是否相等,只能比较某个精度范围内是否相等)。
扩展资料:
二进制的优缺点:
一、优点
1、数字装置简单可靠,所用元件少;
2、只有两个数码0和1,因此它的每一位数都可用任何具有两个不同稳定状态的元件来表示;
3、基本运算规则简单,运算操作方便。
二、缺点
用二进制表示一个数时,位数多。因此实际使用中多采用送入数字系统前用十进制,送入机器后再转换成二进制数,让数字系统进行运算,运算结束后再将二进制转换为十进制供人们阅读。
二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。
参考资料来源:百度百科-二进制
推荐于2017-10-13 · 知道合伙人金融证券行家
整数部分5用2进制为101
小数部分0.6
有这样一个公式: *2 如果<1就为0,基数=基数;大于1,就为1,基数=基数-1
0.6*2=1.2>0 那么就为1 基数=1.2-1=0.2
0.2*2=0.4<0 那么就为0,基数=0.4
0.4*2=0.8<0,那么就为0,基数=0.8
0.8*2=1.6>0 那么就为1,基数为1.6-1=0.6
:
:
:
:
所以5.6可以表示为:101.1001
想往下面再乘,就更精确了