问题3591--位运算:求计算机的网络号(Network ID)和主机号(Host ID)

3591: 位运算:求计算机的网络号(Network ID)和主机号(Host ID)

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 64 MB

题目描述

我们知道IP地址是一个4字节(共32bit)的数字,被分为4段,每段8位,段与段之间用句点分隔。为了便于表达和识别,IP地址是以点分十进制形式表示的如210.52.207.2,每段所能表示的十进制数最大不超过255。IP地址由两部分组成,即网络号(Network ID)和主机号(Host ID)。网络号标识的是Internet上的一个子网,而主机号标识的是子网中的某台主机。 在配置计算机的网络地址时,我们通常除了配置其IP地址外,还要配置其子网掩码(Subnet Mask),子网掩码和IP地址一样有32bit,为了便于表达和识别,子网掩码也是以点分十进制形式表示,如255.255.255.0。根据计算机的IP地址与子网掩码,我们可以计算出该机IP地址的网络号(Network ID)和主机号(Host ID),方法如下: Network ID = (IP) & (Subnet Mask) Host ID = (IP) & ~ (Subnet Mask)

输入

多组测试数据。对于每组测试数据,第一行为一个计算机的IP地址,第二行为与该IP地址对应的子网掩码

输出

根据计算机的IP地址与子网掩码计算得到的网络号(Network ID)和主机号(Host ID),两个数据中间用逗号隔开

样例输入 Copy

10.11.168.69
255.255.255.0
10.11.168.69
255.255.0.0

样例输出 Copy

10.11.168 69
10.11 43077

来源/分类