怎么通过IP地址和子网掩码计算子网号和主机编码?

主机ip地址:160.200.21.87 ,子网掩码:255.255.248.0

c类的我照葫芦画瓢写出来了
b类的怎么算呐?

将主机ip地址与子网掩码地址展开成2进制:
主机ip: 10100000 11001000 00010101 01010111
子网掩码: 11111111 11111111 11111000 00000000

IP地址 = 网络地址 + 子网地址 + 主机地址

网络地址:将主机ip与子网掩码作与运算,得出 10100000 11001000 00010000 00000000,即160.200.16.0。
主机编码:将主机ip与子网掩码取反作与运算,得出 00000000 00000000 00000101 01010111, 即0.0.5.87。
子网号:由于B类ip默认子网掩码是16位,而实际用了21位,所以子网号向前借了5位,一共可以划分出32个子网,其子网号位于主机ip第3个号段的前5位,即00010。