十进制小数==二进制小数
十进制小数 ⇒ 二进制小数
乘2取整
对十进制小数乘2得到的整数部分和小数部分,
整数部分即是相应的二进制数码,
再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分。
如此不断重复,直到小数部分为0或达到精度要求为止.
第一次所得到为最高位,最后一次得到为最低位
如:
0.25的二进制
0.25*2=0.5 取整是0
0.5*2=1.0 取整是1即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)
0.8125的二进制
0.8125*2=1.625 取整是1
0.625*2=1.25 取整是1
0.25*2=0.5 取整是0
0.5*2=1.0 取整是1即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位)
def dec2bin(x):x -= int(x)bins = []while x:x *= 2bins.append(1 if x>=1. else 0)x -= int(x)return binsprint(dec2bin(.8125))# [1, 1, 0, 1]
二进制小数 ⇒ 十进制小数
小数点后,从左向右,每位分别表示 2−1,2−2,2−3,⋯2^{-1},2^{-2},2^{-3},\cdots
0.1101b=1⋅2−1+1⋅2−2+0⋅2−3+1⋅2−4=0.81250.1101_b=1\cdot2^{-1}+1\cdot2^{-2}+0\cdot2^{-3}+1\cdot2^{-4}=0.8125
def bin2dec(b):d = 0for i, x in enumerate(b):d += 2**(-i-1)*xreturn d
print(dec2bin(0.8125))# [1, 1, 0, 1]
print(bin2dec(dec2bin(0.8125)))# 0.8125
References
[1] 十进制小数转二进制小数方法
十进制小数==二进制小数相关推荐
- python十进制小数转二进制_Python十进制小数和二进制小数相互转换的实现方式
这篇文章主要介绍了Python实现的十进制小数与二进制小数相互转换功能,结合具体实例形式详细分析了二进制与十进制相互转换的原理及Python相关实现技巧,需要的朋友可以参考下 本文实例讲述了Pytho ...
- python十进制小数转二进制小数_python将小数转化为二进制_Python实现的十进制小数与二进制小数相互转换功能...
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应 ...
- python十进制小数转二进制_Python实现的十进制小数与二进制小数相互转换功能
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应 ...
- 十进制小数转二进制小数方法
十进制小数转二进制小数方法</font color> 十进制小数→→→→→二进制小数 方法:"乘2取整" 对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二 ...
- 【转载】十进制小数转二进制小数方法
十进制小数转二进制小数方法 十进制小数→→→→→二进制小数 方法:"乘2取整" 对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二进制数码,再用2乘小数部分(之前乘后得 ...
- c语言小数转化为十进制小数,浅谈十进制小数和二进制小数之间的转换
一.二进制数转换成十进制数 由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和.这种做法称为"按权相加"法. 二.十进制数转换为二进制 ...
- python二进制转为十进制-Python实现的十进制小数与二进制小数相互转换功能
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应 ...
- python小数的进制转换_Python实现的十进制小数与二进制小数相互转换功能
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应 ...
- float数据在计算机内存中的存储方法
*************************************************** 更多精彩,欢迎进入:http://shop115376623.taobao.com ****** ...
最新文章
- CSS常见布局解决方案
- ipfs如何查找一个文件的_如何用 1 分钟遍历一个 100TB 的文件?
- 小谈Online-game服务器端设计(4)
- 【js类库AngularJs】解决angular+springmvc的post提交问题
- SqlServer标识列、修改标识列值
- linux下安装软件后的环境变量设置
- 2016.6.2近日学习计划
- MongoDB 分片操作
- linux 联通ip配置,linux下设置电信网通双线路IP地址
- Markdown 小技巧之图片左对齐
- 头腾大战再升级 字节跳动做游戏的胜算有多少?
- OpenVINO™基于人脸landmark检测实现眼睛疲劳/睡意检测
- 全网唯一正确身份证和社统一社会信用代码自定义表单校验器(身份证校验和社统一社会信用代码校验)
- 简要分析用MD5加密算法加密信息(如有疑问,敬请留言)
- 自动驾驶外卖上线,美团即将配送一切-1
- 解决安卓手机USB接口被外设占用导致无法调试的问题
- wmm的学习日记(XSS跨站脚本漏洞)
- Pandas数据类型自行变换及数据类型转换失败情况分析与解决方法
- 最大类间方差(大津法)详解
- (WPS篇)Excel一次性删除所有照片
热门文章
- 必须包含数字和字母,字符随意的正则表达式
- 鸿蒙系统更新法定年龄,超25000位开发者参赛,华为首届鸿蒙开发者创新大赛创意满满...
- caffe和caffe-yolov3编译出错:fatal error: caffe/proto/caffe.pb.h: No such file or directory
- 女人的话中话(英文版),供男生参考哦
- Visual C# .NET2003语言的改变
- Python 中的 - 是什么意思
- 毕业之际,个人学习感言和收获
- Python学习之路3 - 字符串操作字典
- Linux恢复删除的文件
- Android之——AsyncTask和Handler对照