码迷,mamicode.com
首页 > 其他好文 > 详细

二进制,八进制,十进制,十六进制之间的相互转换

时间:2020-02-19 22:26:26      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:进制   次方   技术   就是   center   png   tps   举例   http   

素材来源:百度经验

一、二进制与十进制之间的转换

1、十进制转二进制(只含整数)

方法:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。读数要倒叙读。

技术图片

2、十进制转二进制(小数部分)

方法:乘2取整法,即将小数部分乘以2,然后取整数部分,剩下的小数部分继续乘以2,然后取整数部分,剩下的小数部分又乘以2,一直取到小数部分为零。
如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据后面一位是0还是1,取舍,如果是零,舍掉,如果是1,向入一位。换句话说就是0舍1入。读数要从前面的整数读到后面的整数,即读数要顺序读。

举例:0.625转二进制

首先,0.625乘以2得1.25,整数部分为1,小数部分为0.25,记1

第二步,0.25乘以2得0.5,整数部分为0,小数部分为0.5,记0

第三步,0.5乘以2得1.0,整数部分为1.小数部分为0,记1

读数,小数点后从第一位读到最后一位,则该小数得二进制为0.101。

 

0.45 转二进制(保留到小数点第四位)

 

第一步,将0.45乘以2,得0.9,则整数部分为0,小数部分为0.9;
第二步, 将小数部分0.9乘以2,得1.8,则整数部分为1,小数部分为0.8;
第三步, 将小数部分0.8乘以2,得1.6,则整数部分为1,小数部分为0.6;
第四步, 将小数部分0.6乘以2,得1.2,则整数部分为1,小数部分为0.2; 算到这一步就可以了,因为只需要保留四位小数
第五步, 将小数部分0.2乘以2,得0.4,则整数部分为0,小数部分为0.4;
第六步, 将小数部分0.4乘以2,得0.8,则整数部分为0,小数部分为0.8;后面会一直循环重复
第七步, 将小数部分0.8乘以2,得1.6,则整数部分为1,小数部分为0.6;

......

直接读数,从第一位读至最后一位,为0.0111。

 

3.二进制转十进制

 

 方法:将二进制数按位权展开、相加即得十进制数

技术图片

二、二进制与八进制之间的转换

1、二进制转八进制

 

 

 

 方法:取三位二进制数按位权展开相加得一位八进制数,因为2的三次方等于8。(注意,3位二进制转成八进制是从右到左开始转换,不足时补0)

技术图片

 

2、二进制转八进制

方法:八进制数通过除2取余法,得到二进制数,把每个八进制数转换为3个二进制,不足时在最左边补零。

技术图片

 

 

三、二进制与与十六进制之间的转换

 

1、二进制转十六进制

 

方法:与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(2的四次方等于16,4位二进制转成十六进制是从右到左开始转换,不足时补0)。

 

技术图片

 

2、十六进制转二进制

方法:十六进制数通过除2取余法,得到二进制数,对每个十六进制数转换为4个二进制,不足时在最左边补零。

技术图片

 

 四、十进制与八进制和十六进制之间的转换

1、十进制 转八进制或十六进制

间接法:把十进制转成二进制,然后再由二进制转成八进制或者十六进制。

直接法:把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为止。

技术图片

 

 2、八进制或十六进制转十进制

 

 

 方法:把八进制、十六进制数按权展开、相加即得十进制数。

技术图片

 

 五、十六进制与八进制之间的转换

方法一:先转成二进制然后再相互转换。

方法二:先转成十进制然后再相互转换。

 

 

 

 

 

二进制,八进制,十进制,十六进制之间的相互转换

标签:进制   次方   技术   就是   center   png   tps   举例   http   

原文地址:https://www.cnblogs.com/CYL1103/p/12333146.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!