常用数制的转换

二进制、八进制、十进制和十六进制等常用数制及其相互转换

一、二进制,十进制相的互转换

1十进制整数转换成二进制方法:  整数部分“除以2取余数,反序排列”;

 

2),十进制小数转二进制数部分“乘2取整数,正序排列”。
补充:  有的十进制小数不能用二进制小数精确地表示出来,即上述乘法过程永远不能到达小数部分为0而结束,这时根据精度要求取够一定位数的二进制数即可。
       对于既有整数部分又有小数部分的十进制的转换,可以将两部分的转换分开进行,最后再将结果合并在一起即可。
【例】将十进制小数0.625转换成二进制数。
用乘2取整法,转换过程如下:
     0.625*2=1.25                 取整数 1(最高位)
     0.25*2=0.5                   取整数 0
     0.5*2=1.0                    取整数 1(最低位)
0.625 = 0.101.

3),二进制整数转十进制方法为:把二进制数按权展开、相加即得十进制数。

 

 

 

4),二进制小数转十进制

二进制的小数转换为十进制主要是乘以2的负次方,从小数点后开始,依次乘以2的负一次方,2的负二次方,2的负三次方等。例如二进制数0.001转换为十进制。

第一位为0,则0*1/2,即0乘以2负 一次方。

第二位为0,则0*1/4,即0乘以2的负二次方。

第三位为1,则1*1/8,即1乘以2的负三次方。

各个位上乘完之后,相加,0*1/2+0*1/4+1*1/8得十进制的0.125

 

二丶二进制,八进制互相转换

二进制与八进制之间的转换有一张数据对应表,应深情的记住。

 

1), 二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位,

这里需要注意的是,在向左(或向右)取三位时,取到最高位(最低位)如果无法凑足三位,就可以在小数点的最左边(或最右边)补0,进行换算,如图所示。

 

2) 八进制转为二进制,反过来啦,方法就是一分三,即一个八进制数分成三个二进制数,用三位二进制按权相加,最后得到二进制,小数点依旧就可以啦。如图所示。

 

三丶二进制,十六进制互相转换

二进制与十六进制之间的转换同二进制与八进制之间的转换类似,也有一张数据对应表。

十六进制数的表示方法

 

十六进制与二进制之间的数据对应表。

 

二进制转换成十六进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位,组分好以后,对照二进制与十六进制数的对应表,将四位二进制按权相加,得到的数就是一位十六进制数,然后按顺序排列,小数点的位置不变哦,最后得到的就是十六进制数哦,如图所示。

 

 

注意16进制的表示法,用字母H后缀表示,比如BH就表示16进制数11;也可以用0X前缀表示,比如0X23就是16进制的23.直观表示法如图所示。

 

这里需要注意的是,在向左(或向右)取四位时,取到最高位(最低位)如果无法凑足四位,就可以在小数点的最左边(或最右边)补0,进行换算。

四丶八进制,十进制互相转换

1),  先来看八进制如何转换成十进制。其方法与二进制转换成十进制差不多:按权相加法,即将八进制每位上的数乘以位权,然后将得出来的数再加在一起。

 

2) 十进制转八进制,整数部分,除8取余法,每次将整数部分除以8,余数为该位权上的数,商继续除以8,余数又为上一个位权上的数,然后以此类推一直下去,直到商为零,最后从最后一个余数向前排列就可以了,嗨,还是上图直观。

 

再看小数部分,与转二进制相同,这里是乘八取整法,也就是说小数部分乘以8,然后取整数部分,再让剩下的小数部分再乘以8,再取整数部分,……以此类推,一直乘到小数部分为零为止。例如0.703125.正序排列为0.55.

 

小数部分乘以8,如果永远也碰不到零该怎么办?那就根据位数要求进行“34入”吧。

 

还有个间接的方法是先把十进制转二进制,再根据二进制和八进制之间的数据对应表转换。

五丶八进制,十六进制互相转换

八进制与十六进制之间的转换有两种方法

第一种:他们之间的转换可以先转成二进制然后再相互转换。

第二种:他们之间的转换可以先转成十进制然后再相互转换。

六丶十进制,十六进制互相转换

十进制转八进制或者十六进制有两种方法

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

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


个人见解,如有错误,敬请谅解。

 

  • 7
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值