二进制十进制相互转换
来源:互联网 发布:淘宝卖家会员卡设置 编辑:程序博客网 时间:2024/05/18 00:48
1)十进制(整数)->二进制
概念:十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
用2辗转相除至结果为1
将最后的1和余数从下向上倒序写 就是结果
例程:208
208/2 = 104余0
104/2=52余0
52/2=26余0
26/2=13余0
13/2=6余1
6/2=3余0
3/2=1余1
故十进制208的二进制结果为:11010000
2)十进制(小数)->二进制
概念:十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。
具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
例程:0.625
(0.625)10= (0.101)2
0.625 X 2 = 1.25取1
0.25 X 2 = 0.5取0
0.5 X 2 = 1.0取1
故十进制0.625的二进制结果为:0.101
3)二进制->十进制
概念:由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。
从最后一位开始算,依次列为第0、1、2...位 第n位的数(0或1)乘以2的n次方,得到的结果相加就是答案
例程:100101110
0*(2的0次方)=0
1*(2的1次方)=2
1*(2的2次方)=4
1*(2的3次方)=8
0*(2的4次方)=0
1*(2的5次方)=32
0*(2的6次方)=0
0*(2的7次方)=0
1*(2的8次方)=256
故二进制100101110 的十进制结果为:256+32+8+4+2=302
- 二进制十进制相互转换
- 十进制与二进制相互转换
- 二进制十进制相互转换方法
- 十进制,八进制,十六进制,二进制相互转换
- 十进制,八进制,十六进制,二进制相互转换大全
- 十进制,八进制,十六进制,二进制相互转换大全
- java写十进制二进制相互转换
- js二进制和十进制相互转换
- VC 二进制 十进制 十六进制相互转换
- C# 二进制 十进制 十六进制 相互转换
- 十进制与二进制的相互转换
- 十进制和二进制的相互转换
- 二进制和十进制之间的相互转换
- 二进制 十进制和byte之间相互转换
- 十进制小数与二进制的相互转换
- 十进制,二进制,八进制的相互转换
- 十进制和二进制的相互转换
- 二进制和十进制的相互转换
- 通过实例体会 fork()同时创建多个子进程
- 利用JSP交互式打印表格
- 图论算法 最短时间
- Java 高新技术(内省)
- Problem 8:Largest product in a series
- 二进制十进制相互转换
- CoAP学习笔记1--概述
- Boost库学习—智能指针Shared_ptr学习01
- MFC-day01
- 2014年春
- C++中空类的大小
- nyoj 94 cigarettes
- Java 类中各成分加载顺序 和 内存中的存放位置
- travel the binary tree by level 2 ( from top to down )