上一篇文章详细介绍了整数的二进制,八进制,十进制,十六进制之间的转换
详情可前往:二进制、八进制、十进制、十六进制的相互转换-CSDN博客
这篇介绍含有小数点之间的转换
一:二进制转十进制
二进制 101.11 可以分为两部分 101 和 0.11
整数部分 101 转换的方式是从右到左,每个数乘以2的N次方(N从0开始),再相加
小数部分0.11 则是从左往右,每个数除以2的M次方(N从1开始),再相加
整数部分:
小数部分:
整数部分和小数部分拼接起来就是5.75
所以二进制101.11转为十进制的结果为 5.75
二:十进制转二进制
十进制5.625转换二进制,依旧分为整数部分和小数部分来转.
整数部分5除以2,直到商为0,取余数倒叙排列
小数部分0.625乘以2,每次取积的整数部分,小数部分继续乘以2,直到小数部分为0,最后取整数部分的正序排列
最后把整数部分拼接上小数部分,即得到转换后的答案
整数部分:
5 除以 2, 得到2 ---> 取余数 1
2 除以 2, 得到 1---> 取余数 0
1 除以 2, 得到 0 ---> 取余数 1 (商位0,停止操作)
则5的二进制位 101 (注:这里巧合101 的正序和倒叙一样,但是你要明白,是从第三步->第二步->第一步 取的)
小数部分:
0.625 乘以 2得到 1.25 ---> 取整数 1
0.25 乘以 2 得到 0.5 ---> 取整数 0
0.5 乘以 2 得到 1.0 ---> 取整数 1 (小数位0,停止操作)
则0.625的二进制位 101 (注:这里巧合101 的正序和倒叙一样,但是你要明白,是从第一步->第二步->第三步 取的)
整数部分和小数部分拼接起来就是101.101
所以十进制5.625转为二进制的结果为 101.101