什么是二进制、十进制、8进制、16进制 - Luomusha/blog GitHub Wiki
要说明进制,不得不说科学计数法。科学计数法。我们首先直观看一下各种进制的样子
| 进制名 | 例子 | 例子十进制 | 科学计数法 |
|---|---|---|---|
| 二进制 | 1111 | 15 | 1x23 + 1x2 + 1x21 + 1x0 |
| 8进制 | 10 | 8 | 1x81 + 0x0 |
| 十进制 | 120 | 120 | 1x102 + 2x101 + 0x100 |
| 16进制 | 1F | 31 | f(16)x161 + 0x160 |
看出规律了吗?其实我们平时表示的数字520,其实是科学计数法的简写。真实的含义是
| 百位 | 十位 | 个位 |
|---|---|---|
| 5 | 2 | 0 |
5X100 + 2x10 + 0x1
5X102 + 2x101 + 0x100
所谓“位高权重”,说的就是位置高的数字,影响力大。比如元首说游戏上架需要审批,我等P民辛苦一年的血汗就要付诸流水。
刚才的例子说明的是十进制,我们抽象出来通用的进制表示发是什么样子的呢?
数字 x 进制数位数
进制之间转换分为几种情况。
2进制到十进制就用前面我们讲过的公式计算即可
1X22 + 0x21 + 0x20
提问,计算一下上面数字是多少?
这里给个小tip,计算2进制的时候,我们只需要背熟位数。就像1,10,100,1000,这样。
1024,512,256,128,64,32,16,8,4,2,1
很熟悉吧,我们常说的电脑参数,内存,显存,都是这样表示的。
其中8421需要常用。 举个例子:
1001 对应
8421
8001=9 先看位数是1的,在8,1两位。其他都是0,不用管。然后把她们加起来就得了。
再来一个:
1101 对应
8421
8401=13
再来一个例子:
1010
8020=10
反过来也是一样,如果我有一个是进制数15,怎么用二进制表示呢?
15 = 8 + 4 + 2 + 1 所以1111就是二进制版本的15了。
上一节我们讲了快速计算2进制转换十进制。 现在了解一下二进制转换成8进制
我们有一个二进制的数字
11011011
我们想转换成8进制数。首先我们用计算器验证一下这个数是什么
| 2进制 | 8进制 | 十进制位 | 16进制 |
|---|---|---|---|
| 11011011 | 333 | 219 | db |
我们平时说的10进制,是说一个位上的数字从0~9.逢10进一位。
我们平时说的8进制,是说一个位上的数字从0~7,逢8进1位。
还记得8421吗?
4 + 2 + 1 = 7
所以我们把2进制的数字每三位一切割,转换成8进制的数字就可以了。
11011011转换成|011|011|011|,第一个位数不够拿0补的位。
巧了,三个数都是011,0+2+1=3
所以
|3|3|3
这个数的8进制就是333,和上面计算器计算的结果相符。
一样的道理 16进制是一个位上的数字从0~15,逢16进位1. 我们用
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
表示从0~15的数字。
11011011每4位数一切割变成|1101|1011|
转换成16进制
1101 = 8401 = 13 = D 1011 = 8021 = 11 = B
DB
搞定
二狗子,你懂了吗?