五分钟教会你任何进制之间的互相转换

什么是进制?

进制也就是进位制,是人们规定的一种进位方法。 对于任何一种进制—X进制,就表示某一位置上的数运算时是逢X进一位。 十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。

常见的进制

  • 二进制 Binary
  • 八进制 Octal
  • 十进制 Decimal
  • 十六进制 Hexadecimal

对应关系

二进制八进制十进制十六进制
0000000
0001111
0010222
0011333
0100444
0101555
0110666
0111777
10001088
10011199
10101210A
10111311B
11001412C
11011513D
11101614E
11111715F

进制之间的转换

进制转换

转换关系
  • 十转二
  • 十转八
  • 十转十六
  • 二转八
  • 二转十
  • 二转十六
  • 十六转二
  • 十六转八
  • 十六转十
  • ……

这么多进制之间的转换,看完以后就再也不打算学了!其实根本没有那么复杂,上面的转换关系可以精简成如下关系:

  • 十转其他
  • 其他转十
十转X

整数部分,对X短除取余倒序
小数部分,与X相乘取整正序

X转十

按权展开求和

什么是权?

例如十进制数 111,三个“1”放在不同的位置,所代表的意义也不同。从左到右分别为 100,10,1。还可以表示为: 1×102 1×101 1×100
这里面 10x 就叫做权,二进制则为 2x ,八进制为 8x ,以此类推。

OK,现在是不是简单了。到这里可能有人会有疑问了,你只说了十进制和其他进制之间的转换,那其他进制之间的转换呢?别着急往下看:

我们以二进制和十六进制的转换为例,首先大家看一下上面那个对应关系表,很容易就会发现一个规律——四位二进制数刚刚对应一位十六进制数所表示的范围(二进制的0000-1111对应十六进制的0-F)。OK知道这个规律以后,一切都变得明了了。那么将9F(H)转成二进制就可以分别将9和F转成四位二进制数,然后组合起来就好了,如下图:

十六进制转二进制

那么9F(H)转成二进制数就是10011111,二进制转十六进制就是先讲二进制数四位一组的规则分好组,然后转成对应的十进制数(超过十的用A-F表示)。八进制和二进制的转换也是这个规律,只不过对应关系变成了三位二进制数对应一位八进制数而已。

PS:八进制和十六进制之间不能直接转换,八进制需要先转成二进制或十进制,在有对应的二进制或十进制转成十六进制,反过来也一样。

还没想好

十进制转其他进制的短除法我觉得还是有点麻烦,有没有更简单的方法呢?当然有啦,哈哈哈!其实方法很简单,就三个字——找节点。

节点表
二进制的权二进制数十进制
20 11
21 102
22 1004
23 10008
24 1000016
25 10000032
26 100000064
27 10000000128
28 100000000256
29 1000000000512
210100000000001024

  
这个表有什么用呢?比如我们要将578转成二进制,我们不用短除法,我们看看上面表中与578最相近的数是多少?很容易就找到512,它是 29 对应的二进制数是1000000000(一个1后面九个0,2的n次方对应的二进制数是1后面n个0),578-512=66;再去表中找和66最相近的数,很容易找到了64,它是 26 ,对应的二进制数是100000,66-64=2;2对应的二进制是10。这样很容易就计算出578对应的二进制数为1001000010。

十转八和十转十六同理,不再赘述了。

总结

通过上面的分析,我们知道只要掌握了十进制和任何一种进制之间的转换,那么我们就掌握了所有进制之间的互相转换了。而且我们还知道下面的规则:

十转X

整数部分,对X短除取余倒序
小数部分,与X相乘取整正序

还可以通过找节点的方式进一步简化

X转十

按权展开求和

  • 28
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 16
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘水镜

文章写得不错,我要让更多人看到

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值