一、不同数制之间的转换基本概念
1、基本概念
计数的规则。
在人们使用最多的进位计数制中,表示数的符号在不同的位置上时所代表的数的值是不同的。
数码
数制中表示基本数值大小的不同数字符号。
例如,十进制有10个数码:0、1、2、3、4、5、6、7、8、9。
基数
数制所使用数码的个数。
例如,二进制的基数为2;十进制的基数为10。
位权
数制中某一位上的1所表示数值的大小(所处位置的价值)。
例如,十进制的123,1的位权是100,2的位权是10,3的位权是1。
二进制中的 1011 ,第一个1的位权是8,0的位权是4,第二个1的位权是2,第三个1的位权是1
十进制D(decimal)
人们日常生活中最熟悉的进位计数制。
在十进制中,数用0,1,2,3,4,5,6,7,8,9这十个数码来描述。计数规则是逢十进一,借一当十。
1、非十进制转换成十进制
方法是:将其它进制按权位展开,然后各项相加,就得到相应的十进制数。
例1: N=(10110.101)B=(?)D
按权展开N=1*2^4+0*2^3+1*2^2+1*2^1+0*2^0+1*2^-1+0*2^-2+1*2^-3
=16+4+2+0.5+0.125 =(22.625)D
1)、二进制转十进制
bn×2^(n-1)+ bn-1×2^(n-2)…+b1×2^0
练习:(11010)2转换成十进制 26
(1001011)2转换成十进制 75
2)、八进制转换成十进制
bn×8^(n-1)+ bn-1×8^(n-2)…+b1×8^0
练习:(26356)8转换成十进制 11502
3)、十六进制转换成十进制
bn×16^(n-1)+ bn-1×16^(n-2)…+b1×160
练习:(26345)16转换成十进制 156485
2、十进制转换成非十进制
1)、十进制转换成二进制
除基取余法:用基数相除,然后反序(由后向前取)取余数
2)、十进制转换成八进制
除基取余法
3)、十进制转换成十六进制
除基取余法
二进制B(binary)
二进制是计算技术中广泛采用的一种数制。
二进制数据是用0和1两个数码来表示的数。它的基数为2,
进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。
当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。
计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。
将一个二进制数换算为八进制
从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数。
八进制数转换成二进制数:把每一个八进制数转换成3位的二进制数,就得到一个二进制数。
例如,1010011:
001 010 011
1 2 3
二进制数转换成十六进制数
从小数点开始,整数部分向左、小数部分向右,每4位为一组用一位十六进制数的数字表示,不足4位的要用“0”补足4位,就得到一个十六进制数。
十六进制数转换成二进制数:把每一个十六进制数转换成4位的二进制数,就得到一个二进制数。
(712)8 = (1110 0101 0)2 = (1CA)16
八进制O(octal)
Octal,缩写OCT或O,一种以8为基数的计数法,采用0,1,2,3,4,5,6,7八个数字,逢八进1。
八进制化为二进制
规则:按照顺序,每1位八进制数改写成等值的3位二进制数(如果需要的话,在前面补零)次序不变。
例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2
八进制化为十六进制
先将八进制化为二进制,再将二进制化为十六进制。
例:(712)8 = (111 001 010)2 = (1CA)16
十六进制H (Hexadecimal)
在十六进制中,数用0,1,…,9和A,B,…,F(或a,b,…,f)16个符号来描述。计数规则是逢十六进一。
十六进制化为二进制
规则:按照顺序,每1位八进制数改写成等值的四位二进制数(如果需要的话,在前面补零)次序不变。
例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2
十六进制化为十六进制
先将十六进制化为二进制,再将二进制化为八进制。
标准表示
在数制使用时,常将各种数制用简码来表示:
如十进制数用D表示或省略;二进制用B来表示;十六进制数用H来表示。
如:十制数123表示为:123D或者123;二进制数1011表示为:1011B;十六进制数3A4表示为:3A4H。
另外在编程中十六进制数也用“0x”作为开头。
二、IP地址
1)、IANA
IANA 就是指(Internet Assigned Numbers Authority) ,Internet号分配的机构。负责对IP地址分配规划以及对TCP/UDP公共服务的端口定义。
2)、IP地址的基本格式
IPv4使用32位(4字节)地址,因此整个地址空间中有4,294,967,296(2^32)个地址,也就是近43亿个地址。
IPv4地址在计算机内部是以二进制形式表示,是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。
IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。
例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。
地址格式为:IP地址=网络地址+主机地址 或 IP地址=网络地址+子网地址+主机地址。
3)、子网掩码
子网掩码的作用就是获取主机IPv4地址中的网络地址信息
用于区别主机通信不同情况,选择不同路由
子网掩码与IP地址一样,也是由32位二进制组成的。它被分成“网络ID”和“主机ID”两部分。
“网络ID”部分全是“1”;“主机ID”部分全是“0”表示。
4)、IP地址分类
IPv4地址的基本分类
五个类别:A、B、C、D和E。
A、B和C类用于单播通信中设备IP地址分配,D类属于组播地址,用于组播通信,E类是保留地址。
它们均有不同的网络类别(也就是“网络ID”)长度,用来标识不同的网络类别,剩余的部分被用来识别网络内的主机(称之为“主机ID”)。
“网络ID”用来确定每类网络中有的网络数
“主机ID”则用来确定每个网络中有的IP地址数
最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。
同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址。
大:0 000 0000-0 111 1111 0-127 A
中:10 00 0000-10 11 1111 128-191 B
小:110 0 0000-110 1 1111 192-223 C
1110 0000-1110 11111 224-239
1111 0000-1111 1111 240-255
主机位全0:网络地址
主机位全1:广播地址
A:1-126
2^7-2个网络
每个网络的主机:2^24-2
B:128-191
2^14个网络
每个网络中的主机:2^16-2
C:192-223
2^21个网络
每个网络中的主机:2^8-2
1. A类IP地址
A类地址的网络ID为1~126。
一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围从1.0.0.0 到126.0.0.0,默认网络掩码为:255.0.0.0;可用的A类网络有126个,每个网络能容纳1亿多个主机。
注意,数字0和 127不作为A类地址,数字127保留给内部回送函数,而数字0则表示该地址是本地宿主机,不能传送。
2. B类IP地址
B类地址的网络ID为128~191。
一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255,默认网络掩码为:255.255.0.0;可用的B类网络有16382个,每个网络能容纳6万多个主机 。
3. C类IP地址
C类地址网络ID为192~223。
一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围从192.0.0.0到223.255.255.255,默认网络掩码为:255.255.255.0;C类网络可达209万余个,每个网络能容纳254个主机。
4. D类地址用于多点广播(Multicast)。
D类IP地址第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。
5. E类IP地址
以“11110”开始,为将来使用保留。
有类/无类IPV4网络
有类
A、B、C、D、E类IPv4地址
每类IPv4地址都有固定长度的网络ID,有固定的子网掩码
大大降低了IPv4地址的利用率和可用的网络数
无类(VLSM 可变长子网掩码)
每个IPv4地址的网络ID长度都可以不固定
通常把以前的有类网络称之为标准网络,而把网络ID长度大于对应标准网络的网络称之为“子网”
网络地址
用来标识一个有类或无类网络的地址,是对应网络或子网的第一个IPv4地址,即“主机ID”部分全为0的IPv4地址
主机地址
除了网络地址和广播地址这两个一头一尾的地址外,中间的其他所有地址都是主机地址,可以直接分配给主机使用
广播地址
是一个有类或无类网络中的最后一个IPv4地址,即“主机ID”部分全为1的IPv4地址
IPv4地址前缀表示形式
在一个IPv4地址后面先加上一个斜杠(/),然后在这个斜杠后面直接写出该地址所在网络的“网络ID”,或者“子网掩码”长度
如192.168.1.10/24代表的是一个标准的C类网络IPv4地址,而10.1.0.10/8则代表了一个标准的A类网络IPv4地址
私有IP地址
在IP地址3种主要类型里,各保留了3个区域作为私有地址,其地址范围如下:
A类地址:10.0.0.0/8(10.0.0.0,255.0.0.0) 1个网络 每个网络的主机数:2^24 -2
B类地址:172.16.0.0/12(172.16.0.0,255.240.0.0)
172.16.0.1--172.31.255.254 16个网络 每个网络的主机数:2^20 -2
C类地址:192.168.0.0/16(192.168.0.0,255.255.0.0) 256个网络 每个网络的主机数:2^16 -2
全零(“0.0.0.0”)地址对应于当前主机。全“1”的IP地址(“255.255.255.255”)是当前子网的广播地址。
查阅百度知道里一些说法如下:
1. 严格说来,0.0.0.0已经不是一个真正意义上的IP地址了。它表示的是这样一个集合:所有不清楚的主机和目的网络。这里的“不清楚”是指在本机的路由 表里没有特定条目指明如何到达。对本机来说,它就是一个“收容所”,所有不认识的“三无”人员,一 律送进去。如果你在网络设置中设置了缺省网关,那么Windows系统会自动产生一个目的地址为0.0.0.0的缺省路由。
2. 网络中0.0.0.0的IP地址表示整个网络,即网络中的所有主机。
它的作用是帮助路由器发送路由表中无法查询的包。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。
0.0.0.0 表示监听本地所有ip地址,其他电脑是可以访问的,并且修改ip不受响。 127.0.0.1 表示只监听本机回环地址,只能本机访问。 x.x.x.x ip地址,是只监听这个ip。修改ip后程序就不能监听了。需要手动修改软件监听地址才可以用 localhost 只是 127.0.0.1 的别
169.254开头的IPv4地址
“自动专用IP地址”,其地址范围为:169.254.0.0/16,子网掩码为255.255.0.0。
127.0.0.1地址
“环回地址”(Loopback Address),是主机IP堆栈内部的IPv4地址,主要用于网络软件测试以及本地机进程间通信;在IP网络中就是用来测试主机TCP/IP协议是否工作正常v0.0.0.0地址
0.0.0.0地址
代表所有IPv4地址,常用于默认路由配置,或者代表整个不确定的IP地址范围
VLSM子网划分:
把原来标准网络IPv4地址中的“网络ID”部分向“主机ID”部分借位,
把一部分原来属于“主机ID”部分的位变成“网络ID”的一部分(通常称之为“子网ID”)
原来的“网络ID”+“子网ID”=新“网络ID”
“子网ID”长度决定了可以划分子网的数量
全0子网:“全0子网”代表的是对应子网的“子网ID”部分各位都是0,是第一个子网
全1子网:“全1子网”代表的是对应子网的“子网ID”部分各位都是1,是最后一个子网
练习:
1、一公司原来使用的是192.168.1.0/24这个标准网络,现在想为公司中每个部门(共6个)单独配置一个子网,其中最大一个部门要分配IPv4地址的数量不超过25个。求每个子网的子网掩码、地址范围、网络地址和广播地址。
子网数: 2^2<6<2^3
子网掩码为:/27, 255.255.225.224
每个子网的可用主机数:2^5 -2=30>25
每个子网的地址范围:0-31,32-63,64-95,96-127,128-159,160-191,192-223,224-255
就是说192.168.1.30/27和192.168.1.60/27属于不同网络,要三层路由能才互通
2、IPv4地址为202.112.14.137,子网掩码为255.255.255.224,求:所在子网的网络地址和广播地址各是什么?
IP: 202.112.14.1000 01001
掩码:255.255.255.1110 0000
子网:202.112.14.1000 0000
子网数:2^3=8
每个子网的地址范围:0-31,32-63,64-95,96-127,128-159,160-191,192-223,224-255
答案:网络地址:202.112.14.128
广播地址:202.112.14.159
超网(supernetting)
子网划分是把一个网络划分成为多个不同的网络,而构造超网则是把网络前缀都相同的连续的ip地址组成一个“CIDR地址块”。
其中CIDR(Classless Inter_Domain Routing)是无分类域间路由选择。使用超网能够减少路由表中的项目、减轻路由表的负担。
CIDR消除了传统的A类、B类和C类地址以及划分子网的概念,把32位的IP地址划分为两个部分。如:128.14.35.7/20是某个CIDR地址块中的一个地址,其前20位是网络前缀(用下划线表示的部分),后面的12位为主机号:
128.14.35.7/20= 10000000 00001110 00100011 00000111
其地址掩码,也叫子网掩码是:11111111 11111111 11110000 00000000 (20个连续的1),即斜线后面的数字就是地址掩码中1的个数。
若某个公司拥有地址块 206.0.64.0/18 ,即相当于有64个C类网络。再举个简单的例子:
192.168.0.0/24 192.168.1.0/24 192.168.2.0/24 192.168.3.0/24 这四个网络,通过CIDR可以汇总成一个超网192.168.0.0/22 ,因为这四个网络 的前22 位网络号相同。 呵呵,看明白了吗?
就是向网络位借主机位咯,增加主机数,实现一个网络内超过254个主机
主机名:FQDN(Full Qulified Domain)
完全合格域名/全称域名,是指主机名加上全路径,全路径中列出了序列中所有域成员。
全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。
从全域名中包含的信息可以看出主机在域名树中的位置。
DNS解析流程:首先查找本机HOSTS表,有的直接使用表中定义,没有查找网络连接中设置的DNS 服务器由他来解析。
www.magedu.com