IP地址和子网掩码做与运算。。。

来源:百度知道 编辑:UC知道 时间:2024/05/14 19:41:58
是怎么回事情?
能举个例子吗?
谢谢。。。
太复杂了
就与运算咯/。。。

你这个问题问的可真是麻烦了,这个是一门课程啊,要讲的很明白是需要很长时间的,需要涉及到什么是ip地址,其分类,什么是网络地址,主机地址,广播地址等等等等。我简单给你讲讲吧。

ip地址是标识网络上唯一台计算机的一串32位二进制数。但是为了便于记忆就给转换成了4组十进制的数,每个用点隔开。
子网掩码与ip地址进行运算都是通过二进制数运算的,它们是进行与运算。就是1与1=1 1与0=0 0与1=0 0与0=0
比如ip地址192.168.1.1(这是三类ip地址,每一类都有固定取值范围),转化成二进制是11000000101010000000000100000001
它的子网掩码是255.255.255.0,转换成二进制是
11111111111111111111111100000000
按上面做与运算得到结果110000001010100000000000

至于有什么作用:首先必须的知道子网掩码一定是连续的1和连续的0
连续的1代表网络地址,连续的0代表的是主机地址。所以子网掩码是用来确定网络位和主机位的。子网掩码和ip地址做与运算得到的是子网地址。如果ip地址A和ip地址B与子网掩码做与运算得到的子网地址是一样的话那么他们就在一个网络内,是可以进行通信的,否则就不可以。

象上面那个例子。192.168.1.1这四组数字他的子网掩码是255.255.255.0
可以看出来子网掩码前三组数字化成二进制是连续的1,后面是0
所以ip地址前三组数字网络位不变,最后一组主机位随便怎么变和子网掩码做与运算的结果肯定是相同的,所以肯定是可以通信的。也就是说
192.168.1.1 192.168.1.2一直到192.168.1.244都是同一网络内可以通信的。
(只能到244,因为这四组数字的范围是0-255,而255是不能用的,那是广播地址)。

上面说的是每八位一划分的结果,还有借位的情况,那就更麻烦了,用笔都得算一阵,不过有软件可以帮你划分。