小数的十进制与二进制之间的转换
来源:互联网 发布:php命令执行漏洞 编辑:程序博客网 时间:2024/06/13 23:09
二进制小数--------------->>>>十进制小数
“按权展开求和法”:
例1:将101.111(2)转换成十进制数
1*(2^2)+0*(2^1)+1*(2^0)+1*(2^(-1))+1*(2^(-2))+1*(2^(-3))=5.875
只要记住个位数是2的0次方,往右一次增加,往左一次减少,写出关系式之后各式相加就是所求
十进制小数-------------->>>>二进制小数
(十进制数的整数位是二进制数的整数位,十进制数的小数位是二进制数的小数位)
“乘二取整法”(顺序排列):
假如我们有小数111.4(10),我们对他进行一下计算:
首先取小数位0.4,对其进行“乘二取整法”
0.4*2=0.8 取结果的的整数位置上的数是0 | 按 (取整法就是取整数位上的数字)
0.8*2=1.6 取1 | 顺
0.6*2=1.2 取1 | 序
0.2*2=0.4 取0 | 写
0.4*2=0.8 取0 | 出
0.8*2=1.6 取1 |
0.6*2=1.2 取1 |
0.2*2=0.4 取0 |
来到这了,我们发现出现了循环,因此可以推知小数点后的二进制是
0.01100110……(循环0110)
接下来是整数111
我们这里用“除以2取余法,逆序排列”
所以整数位是1101111
最终结果是整数位和小数位合并1101111.01100110……(2)
后记:
当我们对小数0.1(10) 0.2(10) 0.3(10) 0.4(10) 0.5(10) 0.6(10) 0.7(10) 0.8(10) 0.9(10)
发现只有0.5(10)不会出现循环小数,他转换成二进制是0.1(2)
其余的出现循环的小数
- 十进制小数与二进制小数之间的互相转换
- 小数的十进制与二进制之间的转换
- 十进制小数和二进制小数之间的转换
- 十进制小数与二进制的相互转换
- 十进制小数分数与二进制的转换
- 二进制与十进制之间的转换
- 二进制与十进制的相互转换(小数)
- 十进制与二进制小数的相互转换C语言
- 十进制、二进制之间的转换
- 十进制小数转换二进制的问题
- [十进制小数] 与 [二进制小数] 互相转换
- 十进制小数转换成二进制小数的快速方法
- 二进制、八进制、十六进制与十进制之间的转换
- 十进制数与二进制, 八进制, 十六进制之间的转换
- 二进制,八进制,十进制与十六进制之间的相互转换
- 十进制与十六进制、二进制、八进制之间的转换(Java)
- java 十进制与二进制,八进制,十六进制之间的转换
- Java 二进制、八进制、十六进制与十进制之间的转换
- Linux命令大全(四)--Linux用户管理
- ACM花式走楼梯
- 5. Longest Palindromic Substring
- 17年3月26日初来心得
- 最大黑区域
- 小数的十进制与二进制之间的转换
- 探讨php,mysql编码问题 ---1
- Activit多实例任务
- Java模板引擎之Freemarker
- 批量update的几种方式
- 基础练习 Sine之舞
- LeetCode算法题——18. 4Sum
- Linux命令大全(五)--Linux网络通信工具
- Unity Editor 基础篇(六):Property Drawers