简单了解进制转换

一、进制是什么?

进制是人为定义的带进位的计数方法(当然还有不带位进的计数方法,感兴趣的可以去私下了解,这里不介绍)。对于任何一种进制—X进制,就表示每一位置上的数运算时都是逢X进一位,x进制就是逢x进位。 例如十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推。然后经过一系列复杂的社会关系等,人们选择了十进制。

二、除K取余法(用于十进制转为其他进制)

除k取余法:除k取余法,主要用于把十进制的数化为k进制的数,将十进制连续除以k,直到商为0,逆序排列余数即可得到。

我们先看一个题目:

将十进制(26)转换为二进制。

所以我们可以采用除二取余法进行计算:

26 ÷ 2 = 13 ... 0
13 ÷ 2 = 6  ... 1
6  ÷ 2 = 3  ... 0
3  ÷ 2 = 1  ... 1
1  ÷ 2 = 0  ... 1

我们将得到的余数(01011)进行逆向排序得到(11010),即:26转换为二进制为:11010

我们再来看一道题目

将十进制(26)转换为八进制

所以我们可以采用除八取余法进行计算:

26 ÷ 8 = 3 ... 2
3  ÷ 8 = 0 ... 3

我们将得到的余数(23)进行逆向排序得到(32),即:26转换为八进制为:32

通过上面的例子我们可以得知十进制转换为其他进制时可以使用除K取余法来进行计算。

三、按权求和(其他进制转换为十进制)

把二进制数(或十六进制数)每位上的数乘以权,求其最后的和,就是其对应的十进制数。其中权为:当前进制n-1次方(n是数字所在的位数)——简称“按权求和”

我们直接来看题目

将二进制(11010)转换为十进制

我们先来看看11010每个位所对应的全分别是多少:

位数11010
n的值54321
全数2⁴2⁰

根据按权求和我们可以得到:

  11010
= 1 * 2+ 1 * 2³ + 0 * 2² + 1 * 2¹ + 0 * 2= 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1
= 16 + 8 + 0 + 2 + 0
= 26   

即二进制(11010)转换为10进制为26

我们在来看一个题

将八进制(32.1)转换为十进制

我们先来看看32.1每个位所对应的全分别是多少:

位数32.1
n的值21.0
全数8⁰.8的-1次
  • ps:从这个例子中我们可以看出来个位的n是1,小数点后是0依次递减。
    根据按权求和我们可以得到:
  32
= 3 * 8¹ + 2 * 8+ 1 * 8-1= 3 * 8 + 2 * 1 + 1 * 0.125
= 24 + 2 +0.125
= 26.125   

即八进制(32)转换为10进制为26.125

三、其他进制转换法

我们在这里先想一件事,例如二进制转为八进制,二进制转换为十六进制,这两种进制转化,难道我们要先把二进制转换为十进制,在从而转换为十六进制以及八进制吗?

我们先来想一下2,8,16之间的关系,是不是都是2的幂次。

2816
2⁴

通俗的来说就是8是2的三倍,16是2的四倍。

那是不是每三位所转换成的十进制就是所对应的八进制数纳?我们来试试看

将二进制(11010)转换为八进制

我们将二进制(11010)按照我们刚才的想法进行测试,从后往前没三位分一组,最后不够三位的用零补齐。即:

二进制011010
十进制32

果然每三位分一组转换后的十进制对应的就是8进制数,我们在来测试一下

将二进制(11110)转换为八进制
二进制011110
十进制36

我们可以计算一下二进制(11110)所对应的八进制是不是为36(这里不在演示,有兴趣计算的可以根据前面的公式先将二进制转换为十进制,再将十进制转换为八进制看看结果是否一致),所以我们得到一个结论(具体原理自行百度,这里不细说):
二进制转为八进制:从后往前每三位分一组,最后不够三位用零补齐,然后每三位转换为十进制,即为所对应的八进制
二进制转为十六进制:从后往前每四位分一组,最后不够四位用零补齐,然后每三位转换为十进制,即为所对应的十六进制

  • 相反八进制,十六进制转换为二进制是怎么样?这里我就不演示了直接说明。

八进制转为二进制:每位数当作十进制来看,分别转换为三位二进制数即得到答案。例如八进制(12),其中1对应的三位二进制数为001,2对应的三位二进制数为010,所以八进制(12)所对应的二进制为001010即1010.
十六进制转为二进制:每位数当作十进制来看,分别转换为四位二进制数即得到答案。例如十六进制(45),其中4对应的三位二进制数为0100,5对应的三位二进制数为0101,所以十六进制(45)所对应的二进制为01000101即1000101.

四、十进制快速转换为二进制

我们先来背一下2的次幂分别是:
1 2 4 8 16 32 64 128 256 512 1024
那么他们分别对应那个位置?我们看图片:
进制图片
根据上面图可以知道每个二进制位数所对应的十进制值,所以我们只需要跟据图上的值进行填写就行了,
例如十进制(56)
那么56可以看成32+16+8 所以对应的二进制数为111000

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值