在现代网络中,您很少需要手动进行子网计算,因为工具和计算器可以自动完成此过程。然而,理解十进制和二进制之间的手动转换对于网络面试、认证考试以及深入理解 IP 地址的工作原理至关重要。本课程提供了一些简单的技巧来帮助您掌握它。
首先,记住基于 2 的计算非常有益,因为它们构成了二进制数学的基础。
- 2^1 = 2
- 2^2 = 4
- 2^3 = 8
- 2^4 = 16
- 2^5 = 32
- 2^6 = 64
- 2^7 = 128
- 2^8 = 256
二进制转换表
为了方便地转换数字,我们使用一个图表来表示 IP 地址中 8 位八位字节中每一位的值。
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
此表是您的主要工具。每个数字对应一个位的位置。总和 128+64+32+16+8+4+2+1 等于 255,这是八位字节中可能出现的最高值。
十进制到二进制转换
让我们将 IP 地址 192.168.23.43 转换为二进制。我们将以第一个八位字节 192 为例来演示该过程。我们使用图表中的值:128 64 32 16 8 4 2 1。
- 从数字
192开始。您能从它减去 128 吗?可以 (192 - 128 = 64)。因此,第一位是 1。 - 我们的新数字是
64。您能从它减去下一个值 64 吗?可以 (64 - 64 = 0)。第二位是 1。 - 我们的余数现在是
0。我们不能减去 32、16、8、4、2 或 1。因此,其余的位都是 0。
192 的二进制形式是 11000000。您可以将此减法方法应用于其他八位字节。
二进制到十进制转换
要从二进制转换回十进制,您只需将二进制数中出现 1 的位置对应的图表值相加即可。让我们将 11000000 转换回十进制。
查看图表 128 64 32 16 8 4 2 1,前两位是 1。这意味着我们加上前两个值:
128 + 64 = 192
由于所有其他位都是 0,我们不添加任何其他值。公式 128 + 64 + 0 + 0 + 0 + 0 + 0 + 0 得到 192。就这么简单!