美文网首页
十进制和二进制互相转换

十进制和二进制互相转换

作者: codingriver | 来源:发表于2017-10-15 01:27 被阅读22次

二进制表示一般用原码表示,计算加减时用补码表示。
这里的二进制小数是用的定点数表示,不是用浮点数表示的。

0X01 二进制转十进制

  • 由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。

例子:
[01101100]2=0×27+1×26+1×25+0×24+1×23+1×22+0×21+0×20=10810
[101.101]2=1×22+0×21+1×20+1×2-1+0×2-2+1×2-3=5.625
注:这里的二进制小数是原码表示的,使用的定点数表示,没有用浮点数表示

0X02 十进制转二进制

1.十进制整数转二进制

十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
例子:求17310的二进制

2.十进制小数转二进制

十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。
例子:求0.812510的二进制

例子:173.812510=17310+0.812510=101011012(原)+0.11012(原)=10101101.11012(原)
-1.2510=10000001.012(原)

十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又 得到一个积,再将积的整数部分取出,如此进行,直到积中的整数部分为零,或者整数部分为1,此时0或1为二进制的最后一位。或者达到所要求的精度为止。
  然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。 
  十进制小数转二进制
  如:0.62510=0.1012
  0.6252=1.25======取出整数部分1
  0.25
2=0.5========取出整数部分0
  0.5*2=1==========取出整数部分1

再如:0.710=0.1011001102
  0.72=1.4========取出整数部分1
  0.4
2=0.8========取出整数部分0
  0.82=1.6========取出整数部分1
  0.6
2=1.2========取出整数部分1
  0.22=0.4========取出整数部分0 
  0.4
2=0.8========取出整数部分0
  0.82=1.6========取出整数部分1
  0.6
2=1.2========取出整数部分1
  0.2*2=0.4========取出整数部分0

参考文章:
http://www.cnblogs.com/xkfz007/articles/2590472.html

相关文章

  • Java 数据类型 类型转换 运算符

    常用的进制二进制八进制十进制十六进制进制之间是可以互相转换的。 进制如何转换 以二进制和十进制进制为例10 -> ...

  • python 的进制转换

    十进制, 二进制相互转换 十进制转换为二进制 二进制转换为十进制 十进制, 八进制相互转换 十进制转换为八进制 八...

  • 【iOS 开发】二进制、十进制、十六进制相互转换的方法

    十进制转换为二进制 十进制转换为十六进制 二进制转换为十六进制 十六进制转换为二进制 二进制转换为十进制 作者:J...

  • 二进制基础

    了解 十进制和二进制的由来 进制转换 位运算 JDK内置的进制转换 Java中的进制 十进制和二进制的又来 十进制...

  • 计算机基础知识

    一,二进制和十进制转换 1.十进制转换为二进制:进行对2取余法计算 2.二进制转换为十进制: 从最后一位开始算,依...

  • 进制转换

    一、二进制与十进制互相转换 1. 十进制转二进制 方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得...

  • 快速理解位运算符和二进制数

    二进制转十进制,十进制转二进制,位运算符 | 和 & 先看个例子 十进制转二进制如何转换: 以上述67和33数字为...

  • 一.计算机系统构成及硬件基础知识--数制转换

    数制转换: 一.十进制转换为二进制 二,二进制转十进制 三. 二进制与八进制之间的转换 四. 八进制转成二进制 五...

  • python-基础篇练习题

    通过代码实现如下转换:二进制转换成十进制:v = “0b1111011”十进制转换成二进制:v = 18八进制转换...

  • 数据类型与运算符

    进制转换 在我的Java基础知识整理,补充内容,里面有十进制和二进制之间的转换,我这里就不再写十进制和二进制之间的...

网友评论

      本文标题:十进制和二进制互相转换

      本文链接:https://www.haomeiwen.com/subject/paofuxtx.html