第四部分:二进制和十六进制互相转换(包教包会)

在数字系统和计算机科学领域,二进制和四进制 八进制 十进制 十六进制是计算机科学和数字系统中最常见的几种表示形式。二进制是一种基于2的数字系统,其中每个数字位只能是0或1。四进制则是基于4的数字系统,每个数字位可以是0到3之间的数字。八进制则是基于8的数字系统,每个数字位可以是0到7之间的数字。

十进制是我们日常生活中最为熟悉的表示方法,其中每个数字位可以是0到9之间的数字。而十六进制则是一种更为广泛用于计算机编程和数据表示的方法,它采用了16个不同的符号,包括数字0到9和字母A到F。

接下来,我们将详细介绍如何将二进制转换为十六进制,以及如何将十六进制转换为二进制,帮助您在数字世界中游刃有余。

必记住的内容1,二进制和十六进制的对应关系表:

二进制 十六进制

0000 ——- 0

0001 ——- 1

0010 ——- 2

0011 ——- 3

0100 ——- 4

0101 ——- 5

0110 ——- 6

0111 ——- 7

1000 ——- 8

1001 ——- 9

1010 ——- A

1011 ——- B

1100 ——- C

1101 ——- D

1110 ——- E

1111 ——- F

我们可以简单的记一下:二进制数字从小到大排列,即0000最小,1111最大

必记住的内容2,取四合一法,二进制和十六进制的转换规律:

二进制整数部分从右往左,四四分组,不足数,最高位补0

二进制小数部分从左往右,四四分组,不足数,最后位补0

另一种转换规律:8421法则

即二进制分组好后,每组中四个数字,从左往右权重就是8421。第一位上是1就加个8,第二位是1就加个4,第三位是1就加个2,第四位是1就加个1,结果依次相加。比如四个数字全是1,那就是8421的和,也就是15,对应关系表16进制就是F。

记住上面的内容后,换算就相当于如鱼得水了。

我们简单的举几个例子:

例子1:11110000

二进制整数部分从右往左,四四分组,不足数,最高位补0

1111 0000

F 0

十六进制的结果:F0

例子2:100111

0010 0111

2 7

十六进制的结果:27

例子3:1111.11011

先算整数部分:1111

二进制整数部分从右往左,四四分组,不足数,最高位补0

1111

F

十六进制结果:F

再算小数部分:11011

二进制小数部分从左往右,四四分组,不足数,最后位补0

1101 1000

D 8

十六进制结果:D8

十六进制的整合结果:F.D8

例4:00001.010101101

这次我们用8421计算一下

先算整数部分:00001

每组中四个数字,从左往右权重就是8421。第一位上是1就加个8,第二位是1就加个4,第三位是1就加个2,第四位是1就加个1,结果依次相加。

0000 0001

0 1

十六进制的结果:01

再算小数部分:010101101

0101 0110 1000

(4+1=5) (4+2=6) (8)

十六进制的结果:568

十六进制的整合结果:01.568 即 1.568

接下来我们就来看看,十六进制转换成二进制,这个就超级简单了,记住对应关系表,闭着眼睛都能写出来。

例子1:D9

D 9

1101 1001

二进制的结果:11011001

例子2:A31249BC

A 3 1 2 4 9 B C

1010 0011 0001 0010 0100 1001 1011 1100

二进制的结果:10100011000100100100100110111100

例子3:45.67231

先算整数部分:45

4 5

0100 0101

再算小数部分:67231

6 7 2 3 1

0110 0111 0010 0011 0001

二进制的整合结果:01000101.01100111001000110001

结束语录:

至此,二进制和四进制 八进制 十进制 十六进制 这四个部分已全部完成。很多朋友看出来了,怎么讲的都是整数和小数,负数怎么不讲。其实这个我是有考虑过的,因为如果涉及到负数,需要将其转换成原码、反码和补码。这么一来很容易混淆。我们先记住这四个部分的内容,熟悉之后可举一反三。

进制转换工具:https://tool.lu/hexconvert

https://www.sojson.com/hexconvert.html