作者:猫小爪喵
原文:https://blog.csdn.net/sophie1314/article/details/84287948

》》十进制整数转化为二进制:

举例:10

10/250
5/221
2/210
1/201

 

所以10转化为二进制就是“1010”,从下到上,过多的就不说了,整数转化为二进制还是很简单的,只要遇到商为0即可结束。

那么,十进制整数转化为二进制的算**不会无限制循环下去呢,答案当然是不会的,整数除了奇数就是偶数,最后都会到达商为0的情况,也就结束了,所以说,整数一定是可以用二进制精确表示的。

》》十进制小数转化为二进制

举例1:

0.25

  小数部分 整数部分
0.252 0.5 0 0.52 0.0 1
 

所以0.25转化为二进制位0.01(从上到下),这个小数是可以用二进制精确表示的

举例2:

0.9

  小数部分 整数部分
0.92 0.8 1 0.82 0.6 1
0.62 0.2 1 0.22 0.4 0
0.42 0.8 0 0.82 0.6 1
0.62 0.2 1 0.22 0.4 0
… … …
 

0.9用二进制表示的结果是:0.1110011001100…,0.9是不能用二进制精确表示出来的

综上,十进制小数转化为二进制不一定都能够精确表示。

发表评论

电子邮件地址不会被公开。 必填项已用*标注