转:十进制小数转化为二进制小数
2016-05-07 21:36
417 查看
一、二进制数转换成十进制数
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。
例1105 把二进制数110.11转换成十进制数。
二、十进制数转换为二进制数
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
1. 十进制整数转换为二进制整数
十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
例1107 把 (173)10 转换为二进制数。
解:
2.十进制小数转换为二进制小数
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
【例1108】把(0.8125)转换为二进制小数。
解:
例1109 (173.8125)10=( )2
解: 由[例1107]得(173)10=(10101101)2
由[例1108]得(0.8125)10=(0.1101)2
把整数部分和小数部分合并得: (173.8125)10=(10101101.1101)2
参考:http://zyk.thss.tsinghua.edu.cn/29/elecTec/resource/knowledge/zsd11/z1103.htm
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又 得到一个积,再将积的整数部分取出,如此进行,直到积中的整数部分为零,或者整数部分为1,此时0或1为二进制的最后一位。或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
十进制小数转二进制
如:0.625=(0.101)B
0.625*2=1.25======取出整数部分1
0.25*2=0.5========取出整数部分0
0.5*2=1==========取出整数部分1
再如:0.7=(0.1 0110 0110...)B
0.7*2=1.4========取出整数部分1
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
参考:/article/4186582.html
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。
例1105 把二进制数110.11转换成十进制数。
二、十进制数转换为二进制数
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
1. 十进制整数转换为二进制整数
十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
例1107 把 (173)10 转换为二进制数。
解:
2.十进制小数转换为二进制小数
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
【例1108】把(0.8125)转换为二进制小数。
解:
例1109 (173.8125)10=( )2
解: 由[例1107]得(173)10=(10101101)2
由[例1108]得(0.8125)10=(0.1101)2
把整数部分和小数部分合并得: (173.8125)10=(10101101.1101)2
参考:http://zyk.thss.tsinghua.edu.cn/29/elecTec/resource/knowledge/zsd11/z1103.htm
十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又 得到一个积,再将积的整数部分取出,如此进行,直到积中的整数部分为零,或者整数部分为1,此时0或1为二进制的最后一位。或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
十进制小数转二进制
如:0.625=(0.101)B
0.625*2=1.25======取出整数部分1
0.25*2=0.5========取出整数部分0
0.5*2=1==========取出整数部分1
再如:0.7=(0.1 0110 0110...)B
0.7*2=1.4========取出整数部分1
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
参考:/article/4186582.html
相关文章推荐
- FZU Problem 2231 平行四边形数
- 嵌入式linux入门一
- java多线程学习-java.util.concurrent详解(三)ScheduledThreadPoolExecutor
- 2.变量
- vmware虚拟机windows xp 登录后死掉不能修复的错误的解决
- app开发外包的流程、需求、报价,需要知道的细节!
- bzoj 1188: [HNOI2007]分裂游戏(sg函数)
- python实现简单爬虫功能
- STM32_DAC输出电压
- python小程序---20以内的加减法进位运算
- 1.认识Makefile文件
- 关于conversation generation的论文笔记
- 处理TAP国际漫游话单的几种类库使用方法
- Codeforces 665C Simple Strings【暴力,贪心】
- Codeforces 665C Simple Strings【暴力,贪心】
- Codeforces 665C Simple Strings【暴力,贪心】
- 兑换钱币问题
- 学生信息系统之优化(一)
- linux命令
- 用到MNIST数据集的实验(总结中……)