Python中进行进制的转换可以通过它的内置函数bin()、int()、oct()、hex()来实现。下面我们就通过实例来学习一下。
(一)比如要将一个ip地址192.167.45.1/24 (相当于子网掩码是:255.255.255.0)转换成二进制,那么我们就可以借助python来实现。
IP地址是一组能够识别主机和所在网络的编码,由32位二进制组成(等于4个字节),为了便于使用,常以xxx.xxx.xxx.xxx形式表现,每组xxx就代表小于或等于255的十进制数。由2部分组成,网络号+主机号。
分为A类:8+24; B类:16+16; C类:24+8;
那么如何得到网络号呢?
网络号就是将IP地址192.167.45.1 转换成二进制,子网掩码255.255.255.0转换为二进制,然后进行“与运算”。(“与运算”:对应为全是1结果为1,否则为0)
下面,我们就来把IP地址192.167.45.1 和子网掩码255.255.255.0转换成二进制。
步骤如下:
1、打开电脑的cmd命令窗口,然后进入Python解释器模式。
2、分别输入bin(192)、bin(167)、bin(45)、bin(1),将十进制转换成二进制。
3、那么可获得IP地址192.167.45.1 的对应二进制就是11000000.10100111.001011