子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。 最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单。
请看以下示例:
运算演示之一:
IP地址 192.168.0.1
子网掩码 255.255.255.0
转化为二进制进行运算:
IP地址 11000000.10101000.00000000.00000001
子网掩码: 11111111.11111111.11111111.00000000
AND运算: 11000000.10101000.00000000.00000000
转化为十进制后为: 192.168.0.0
运算演示之二: IP地址 192.168.0.254 子网掩码 255.255.255.0
转化为二进制进行运算:
IP地址 11000000.10101000.00000000.11111110
子网掩码 11111111.11111111.11111111.00000000
AND运算:11000000.10101000.00000000.00000000
转化为十进制后为: 192.168.0.0
运算演示之三:
IP地址 192.168.0.4
子网掩码 255.255.255.0
转化为二进制进行运算:
IP地址 11000000.10101000.00000000.00000100
子网掩码 11111111.11111111.11111111.00000000
AND运算:11000000.10101000.00000000.00000000
转化为十进制后为: 192.168.0.0
通过以上对三组计算机IP地址与子网掩码的AND运算后,我们可以看到它运算结果是一样的,均为192.168.0.0,所以计算机就会把这三台计算机视为在同一子网络。
输入的第一行是本机IP地址; 第二行是子网掩码; 第三行是一个整数N,表示后面有N个IP地址; 接下来N行: 第1个IP地址 ... ... 第N个IP地址
1<=N<=100
计算并输出N个IP地址是否与本机在同一子网内。对于在同一子网的输出“INNER”,对于在不同子网的输出“OUTER”。
192.168.0.1 255.255.255.0 3 192.168.0.2 192.168.0.254 192.168.1.2
INNER INNER OUTER
AND在编程术语中表示一种运算方法,不可逆 常用符号:&(按位与),&&(逻辑与) 其运算规则如下: 1&1=1; 真&&真=真; 1&0=0; 真&&假=假; 0&1=0; 假&&真=假; 0&0=0; 假&&假=假;
基础题-2.模拟