2
0
mirror of https://github.com/gnu4cn/ccna60d.git synced 2024-05-21 04:55:00 +08:00
This commit is contained in:
Peng Hailin 2016-08-31 09:45:20 +08:00
parent a13e91182f
commit feaa87a162

View File

@ -52,6 +52,7 @@ IP 版本 4(IPv4设计用于解决设备命名问题。IPv4 使用二进制
每一个二进制位表示一个十进制数,你可以在相应的列中,依据该列是 1 还是 0, 而使用或不用其对应的十进制数。下面是 8 个列。
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| -- | -- | -- | -- | -- | -- | -- | -- |
| 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
从上表中可以看到,仅有前两个十进制数被用到(下方有 1 的两个),这就产生出数值 128+64=192。
@ -67,21 +68,25 @@ IP 版本 4(IPv4设计用于解决设备命名问题。IPv4 使用二进制
我们从仅有两位的二进制数开始。
| 2 | 1 |
| -- | -- |
| 0 | 0 |
0+0=0
| 2 | 1 |
| -- | -- |
| 0 | 1 |
0+1=1
| 2 | 1 |
| -- | -- |
| 1 | 0 |
2+0=2
| 2 | 1 |
| -- | -- |
| 1 | 1 |
2+1=3
@ -94,11 +99,13 @@ IP 版本 4(IPv4设计用于解决设备命名问题。IPv4 使用二进制
在往各列中填入0时就有了十进制的0。
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| -- | -- | -- | -- | -- | -- | -- | -- |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
而将1填入各列就得到了十进制的255.
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| -- | -- | -- | -- | -- | -- | -- | -- |
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
不信吗?
@ -108,6 +115,7 @@ IP 版本 4(IPv4设计用于解决设备命名问题。IPv4 使用二进制
如此逻辑使然你实际上可以通过将0或1放入不同的列而生成0到255之间的任何数值。比如。
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| -- | -- | -- | -- | -- | -- | -- | -- |
| 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
32+8+4=44