一、进制转换
在计算机底层通信,以及数据处理都是采用二进制,也就是1和0传递信息,因此进制转换是非常重要的知识点。
十进制(DEC) | 【逢十进一 】案例: 按权展开 权:10的N次幂 |
1+2+3=123 | |
二进制(BIN) | 【逢二进一】 案例:1011B 权:2的N次幂 |
1+0+1+1=11 | |
十六进制(HEX) | 【逢十六进一】适合做存储 权:16的N次幂 |
1 2 3 4 5 6 7 8 9 A B C D E F 10H=16D 案例: | |
1+0+9+14=4096+144+14=4254D | |
八进制(OCT) | 【逢八进一】案例: 权:8的N次幂 |
4+3+2=282 | |
【进制之间的相互转换】 | |
任意进制数转换成十进制数:按权展开求和! | |
十进制转换为其他进制:除基取余逆排法,使用该十进制,除以基数,依次反复进行,直到商为0(商为整数) | |
八进制转换成十进制 | 127O=1+2+7=87 |
二进制和十六进制的转换要很熟悉哦!以下表格空白部分都是0!
=256 | =128 | =64 | =32 | =16 | =8 | =4 | =2 | =1 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
2 | 1 | |||||||
4 | 1 | |||||||
8 | 1 | |||||||
16 | 1 | |||||||
32 | 1 | |||||||
64 | 1 | |||||||
128 | 1 | |||||||
192 | 1 | 1 | ||||||
224 | 1 | 1 | 1 | |||||
240 | 1 | 1 | 1 | 1 | ||||
248 | 1 | 1 | 1 | 1 | 1 | |||
252 | 1 | 1 | 1 | 1 | 1 | 1 | ||
254 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
255 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
【B】二进制转十六进制【H】 【8 4 2 1】法 | 从低位(右侧)起,每四位数分成一组,最高位不够四位补零,然后顺序写出对应的十六进制数。 |
【十六进制的数】 1 2 3 4 5 6 7 8 9 A B C D E F (一共15个) | |
例: 1101 1011 B =DB H 13 11 | |
十六进制转二进制,牢记【8 4 2 1】,逆向推一下就可以算出! | |
例: A B C H =1010 1011 1100 B 1010 1011 1100 | |
【B】二进制转八进制【O】 【4 2 1】法 | 从低位(右侧)起,每三位数分为一组,最高位不够三位补零,然后顺序写出对应的八进制数。 |
例: 101 010 111 100 B = 5274 O 5 2 7 4 | |
八进制转二进制,牢记【4 2 1】,逆向退一下就可以! | |
例: 2 3 2 O = 10011010 B 010 011 010 |
平时要验证自己做的是否正确,可以打开计算机的程序员模式,可以用快捷键打开:
【win+R 】 ——>【cmd】——>【calc】
二、逻辑代数
逻辑与 | 当一个事情的几个条件全具备,这个条件才允许发生!【1真、0假】 | |||||||||||||||
逻辑与运算的短路运算:一旦条件为假,后面短路 | ||||||||||||||||
| ||||||||||||||||
逻辑或 (非运算) | 当一件事情的几个条件中只要有一个条件得到满足,则事情会发生。 | |||||||||||||||
逻辑或运算的短路运算:一旦前面条件为真,后面短路 | ||||||||||||||||
| ||||||||||||||||
逻辑非 (反运算) | 一件事情的发生是以其相反的条件为依据的。 | |||||||||||||||
| ||||||||||||||||
多位二进制数按位取反 |
三、ip地址和子网掩码
IP地址:基于网络层的一个非常重要的协议地址,目的是实现高层设备之间的点到点通信。
IP地址在计算机中存储是点分二进制,为了方便显示表示的方法是点分十进制!
1、 IP地址的分类
IP地址 | |
网络位【NETWORK】 | 主机位【HOST】 |
是标识一片网络的 | 标识一位主机的 |
IP地址范围 | |
A类 8位 | 0.0.0.0 ——127.255.255.255 |
B类 16位 | 128.0.0.0 ——191.255.255.255 |
C类 24位 | 192.0.0.0——223.255.255.255 |
网址一共分为五类,但是D类【组播地址】和E类【科研等】我们用不到,一般就用ABC这三大类!中国大陆IPV4地址总数为74391296个,合计4A+111B+31C !
2、子网掩码
默认各类地址的子网掩码 | ||
A类网址 | 255.0.0.0 | 8 |
B类网址 | 255.255.0.0 | 16 |
C类网址 | 255.255.255.0 | 24 |
如果我们设置了32位全一的子网掩码
就代表我们和谁都不在同一个网络,是一个只有自己的网络
3、网络号
IP地址和对应的子网掩码做与运算会得到网络号!
如何确定两个IP地址是否在同一个网络?(唯一的判定标准)
拿两个IP地址分别与指定的子网掩码做与运算,结果一模一样,即默认在同一网络!
- 通常在标准的写法里面,写一个IP地址,再写一个子网掩码!
- 而在Linux里面,一般都会写简便写法!
例如我在Ubuntu中 查看的IP地址:192.168.91.129/24
它表示的是24位的子网掩码,和255.255.255.0是一个意思!
4、划分子网 【VLSM】可变长子网掩码(向后(右)借位,借一!)
5、构建超网 【CIDR】无类域间路由(向前(左)借位,借零!)
四、有效IP地址和公有地址和私有地址
1、有效IP地址
- IP地址点分十进制最后一位不能为0 192.168.1.0 网络号(网段地址)
- IP地址点分十进制最后一位不能为255 192.168.1.255 定向广播
- A类地址0.0.0.0 - 0.255.255.255 预留使用,不能使用
- 0.0.0.0代表不确定的地址
- B类地址都可使用
- C类地址都可以使用
127.0.0.1--->本地回环地址 (用于测试网络设备和软件的连接)
2、公有地址和私有地址
私有地址范围 | |
A类的私有地址 | 10.0.0.0--10.255.255.255 |
B类的私有地址 | 172.16.0.0--172.31.255.255 |
C类的私有地址 | 192.168.0.0--192.168.255.255 |
- 公网地址不能重复使用,私网地址可以重复使用!
3、反掩码
255.0.0.0 | 0.255.255.255 |
255.255.0.0 | 0.0.255.255 |
255.255.255.0 | 0.0.0.255 |
255.255.255.255 | 0.0.0.0 |
4、特殊地址
127.0.0.0--127.255.255.255 (用于网络、回环、软件之间的连接关系)不可以指派给主机!
0.0.0.0 不确定的地址
255.255.255.255 全网广播
练习题
一、IP地址172.35.22.77 【考察VLSM】
①:其默认的子网掩码是多少?在默认的子网划分范围之内,能否直接和172.34.29.76通信?
- 由IP地址172.35.22.77可以看出,默认子网掩码是B类,即 255.255.0.0
【B类默认子网掩码】 255.255.0.0
11111111.11111111..0000000000000000【IP地址】 172.35.22.77
0010001110101100...0001011001001101【与运算得出网络号为】172.35.0.0 11111111.00100011.00000000.00000000
【B类默认子网掩码】 255.255.0.0
11111111.11111111..0000000000000000【IP地址】 172.34.29.76
0010001010101100...0001011001001101【与运算得出网络号为】172.34.0.0 11111111.00100010.00000000.00000000
- 由于得出来得网络号不一样,所以不能直接通信!(这个后面的操做就是一个原理,一般直接看就能得出结果!)
【IP地址】和【对应的子网掩码】做【与运算】会得到【网络号】!
如何确定两个IP地址是否在同一个网络?(唯一的判定标准)
拿两个IP地址分别与指定的子网掩码做与运算,得出的网络号结果一模一样,
即默认在同一网络!可以直接进行通信
②:规定其子网掩码为255.255.248.0 请写出其IP地址(172.35.22.77)的子网的网络号(网段),并判断是否可以和172.35.30.88进行通信,并写出此局域网中最多允许有多少台主机?
- 我们得把规定的子网掩码给它转换为二进制形式!
【规定得子网掩码】 11111111.11111111.11111000.00000000 【前缀为21】
网络号=规定的子网掩码和IP地址进行与运算!
【IP地址】172.35.22.77
【规定的子网掩码】
11111000.0000000011111111.11111111.【IP地址转换为二进制】
00010110.0100110110101100.00100011.【网络号的点分二进制】 11111111.11111111.00010000.00000000
【网络号的点分十进制】 172.35.16.0/21
- 【172.35.22.77】IP地址的子网的网络号为 172.35.16.0/21
【IP地址】172.35.30.88
【规定的子网掩码】
11111000.0000000011111111.11111111.【IP地址转换为二进制】
00011110.0100110110101100.00100011.【网络号的点分二进制】 11111111.11111111.00011000.00000000
【网络号的点分十进制】 172.35.24.0/21
- 【172.35.30.88】IP地址的子网的网络号为 172.35.24.0/21
- 由于所得网络号不一样,所以【IP地址】172.35.22.77 不能和【IP地址】172.35.30.88通信!只能走路由!
局域网中最多允许有多少台主机?(看主机位)
【规定的子网掩码】 11111111.11111111.11111000.00000000
网络位 主机位
一共有11个主机位,故最多允许有为 -2=2046台主机!网段号不能用,广播地址不能用!
③:在不同的局域网中,此IP地址(172.35.22.77)能否可以重复使用?
- 这是一个B类的公网地址。公网地址不能重复使用。【公网地址已经被注册了】
④:在测试自己主机的网络时,本地回环的IP地址是多少?
- 127.0.0.1 本地回环地址(代表本机)【这个是固定的】
二、已知的地址198.14.35.7/20是已经实现聚合链路CIDR地址集合的一个地址,请写出这个聚合网络中的子网掩码(点分十进制),最小可分配地址,最大可分配地址,可分配的地址总数量。最后判断是否和198.14.43.230/20直接通信。【考查CIDR】
- 地址198.14.35.7/20,本身是个C类地址,默认24位子网掩码,往前借位了!(借零!)
【默认的子网掩码是】 11111111.11111111.11111111.00000000 255.255.255.0
【聚合网络子网掩码】 11111111.11111111.11110000.00000000 255.255.240.0
- 聚合网络的子网掩码为255.255.240.0
CIDR 聚合链路(向前借位,借零),故,向前移的四位都变为了零。
这个聚合网络中的子网掩码(点分十进制)为:255.255.240.0
【聚合网络子网掩码】
.1111/0000.11111111.1111111100000000【地址198.14.35.7】
.0010/0011.11000110.0000111000000111【网络号点分二进制】 11111111.11111111.0010/0000.00000000
【网络号点分十进制】 198.14.32.0/20
和【地址198.14.35.7】同一网段的地址 11000110.00001110.0010/0011.00000111
【最小可分配地址】 11000110.00001110.0010/0000.00000000
198 . 14 . 32 . 0
- 【后面全零不能用,所以最小可分配地址198.14.32.1】
【最大可分配地址】 11000110.00001110.0010/1111.11111111
198 . 14 . 47 . 255
- 【主机位全一也不能用,所以最大可分配地址198.14.47.254】
【可分配的地址总数量】:-2=4096-2=4094【看主机位,主机位一共12位】
【聚合网络子网掩码】 11111111.11111111.1111/0000.00000000
- 【可用IP地址范围:198.14.32.1——198.14.47.254】
- 所以198.14.43.230/20 可以直接通信,因为在【198.14.32.1——198.14.47.254】范围内!
最大分配地址和允许有多少台主机是同一个问法!!!
建议在电脑端观看,手机排版有点问题感觉!!!