数制介绍与IP地址

本文介绍了数制的基本概念,包括二进制、十进制和十六进制之间的转换,并详细阐述了二进制在计算机中的重要性。接着,文章详细探讨了IP地址,包括其定义、分类(A、B、C类地址)、本机地址和子网掩码的概念,以及子网掩码在确定网络地址和进行通信判断中的作用。
摘要由CSDN通过智能技术生成


前言

  • 在网络中传输的各式各样的信息,都是依靠一种基本的数制计算方法——二进制来表示的
  • 我们可以这样形象的理解,在人类的世界里,通常采用十进制方法计数,而在网络世界里,计算机通常采用二进制方法计数,对于我们这些经常与计算机打交道的专业人士而言,需要学习数制转换
  • 在日常生活中我们最常使用的是十进制,基数是10,因为人有10根手指,数完就要考虑进位了;南美的印第安人数完手指数脚趾,所以他们使用二十进制;北美是五进制手指计数法的起源地,至今都还有人使用;最早采用六十进制的是古巴比伦人,1小时等于60分钟,1分钟等于60秒,圆周角为360°,每度60分
  • 当然了,世界上大多数地区还是采取十进制的,有0~9个数字符号,逢十进一
  • 二进制与十进制类似,但是其技术是2,只有两个数字0和1,逢二进一

一、数制的概念

  • 数制是计数的方法,指用一组固定的符号和统一的规则来表示数值的方法

  • 既然有不同的进制,那么在给出一个数时,就需要指明它是什么数制里的数,对不同的数制,可以给数字加上括号,使用下标来表示该数字的数制(当没有下标时默认为十进制)
    mark

在数制中,还有一个规则,就是N进制必须是逢N进一:

  • 十进制的特点是逢十进一,例如:
    (1010)10=1×103+0×102+1×101+0×100=1010
  • 二进制的特点是逢二进一,例如:
    (1010)2=1×23+0×22+1×21+0×20=(10)10
  • 十六进制的特点是逢十六进一,例如
    (1010)16=1×163+0×162+1×161+0×160=(4112)10

二、数制转换

1.二和十进制的转换

这里推荐两种转换算法

  1. 除法(余数倒排)
    mark
125=1111101B
  1. 减法
    mark
将数值减去2的最高次方的数值,可以减去取1,不可以减去取0,以此类推一直到2^0^

常见的八位二进制数
mark

上表记忆方法:从第一个128开始逐次加上64、32、16、8、4、2、1

2.二进制和八进制、十进制以及十六进制的转换

  • 二、八、十、十六进制转换表:

mark


三、二进制的优点

在数字计算机的发展历程中,一个重大的设计进步就是引用了二进制作为内部的数字系统
这种方式避免了那些基于其他数制的计算机中必须的的、复杂的进位机制,简化了算术功能和逻辑运算的设计实现
同时,采用二进制可以充分发挥电子器件的工作特点,使结构紧凑且更通用化

  1. 二进制容易实现:
    计算机是由电子元器件构成的,而二进制在电子、电子元器件中最易实现
    二进制只有两个数字,用两种稳定的物理状态即可表达,而且稳定可靠,如磁化和未磁化
    若采用十进制,则需十种稳定的物理状态来表达十个数字,具有这种性能的元器件很难找到
    即使有,其运算和控制的实现也很难

  2. 二进制的运算规则简单:
    加法是最简单的运算,乘法是连加,减法是加法的逆运算,除法是乘法的逆运算
    其他任何复杂的数值计算也都可以分解为基本算数运算来进行,为了提高运算效率,在计算机中除采用加法器外,也可以直接使用乘法器
    十进制的加法和乘法运算规则口诀各有100条,用计算机的电路去实现这么多运算规则是很复杂的
    相比之下,二进制的算法运算规则非常简单,加法、乘法各四条

0+0=0 0×0=0
0+1=1 0×1=1
1+0=1 1×0=0
1+1=0 1×1=1
根据交换率去掉重复项,实际各三条,用计算机的脉冲数字电路很容易实现
  1. 二进制容易实现逻辑运算:
    计算机不仅要具备数值计算功能,还要具备逻辑运算功能,二进制的0和1分别可以代表假和真,很容易实现逻辑运算

二进制的主要缺点是表示同样大小的数值时,其位数比十进制或其他数制多很多,难写难记,因此在日常生活中和工作重视不便使用的
但这个缺点对于计算机而言不构成困难,在计算机中,每个存储记忆元件(由晶体管组成的触发器)可以代表一位数字,“记忆”是它们本身的属性,不存在“记不住”或者“忘记”的问题
至于位数多的问题只要对排列一些记忆元件就能解决,鉴于在集成电路芯片上元件的集成度极高,因此在体积上不存在问题
对于电子元器件,0和1两种状态的转换速度极快,因而运算速度很高


四、IP地址

1.IP地址的定义及分类

1.1 IP地址的格式

  • 互联网上连接的网络设备和计算机都有唯一的地址,以此作为该主机在 Internet 上的唯一标识,称为 IP 地址
  • 就如同我们写一封信,要标注信件的发信人地址和收信人地址,以便邮政人员通过该地址来投递新建一样,在计算机网络中,每个被传输的数据包也要包括一个源 IP 地址和目的 IP 地址
IP 地址由32位二进制数组成,如我的电脑连接在互联网上的IP地址如下:
11000000.10101000.01111110.00000001

很显然,这些数字不太容易记忆且可读性较差
因此,人们就将计算机 IP 地址的32位二进制分成四段,每段八位,中间用圆点隔开,然后再将每八位二进制数转换成一位十进制数,这种方式称之为点分十进制

这样,上述计算机的IP地址就会变成如下:
192.168.126.1
附:上述为ipv4,IPv6由128位组成,一般用冒号分隔,十六进制表示

1.2 IP地址的分类

IP 地址由两部分组成:网络部分(netID)和主机部分(hostID)
网络部分用于表示不同的网络,而主机部分用于表示一个网络中特定的主机
例:192.168.126.1
其中192.168.126为网络部分,即网段,1为主机部分

  • IP地址的网络部分由 LANA(Internet 地址分配机构)统一分配,以保证 IP 地址的唯一性
  • 为了便于分配和管理,LSNA 将 IP 地址分为 A、B、C、D、E 五类,根据 IP 地址二进制表示方法前几个比特位,就可以判断 IP 地址属于哪类
  • 目前在 Internet 上使用最多的 IP 地址是 A、B、C 这三类,IANA 根据机构或组织的具体需求为其分配 A、B、C 类网络地址
  • 具体主机的 IP 地址由得到某一网络地址的机构或组织自行决定如何分配
1.2.1 A类地址
A类地址范围: (0xxxxxxx), 1.0.0.1-126.255.255.254
A类地址=网络部分+主机部分+主机部分+主机部分
(有类边界)默认子网掩码为/8,即255.0.0.0
1.2.2 B类地址
B类地址范围: (10xxxxxx), 128.0.0.1~191.255.255.254
B类地址=网络部分+网络部分+主机部分+主机部分
(有类边界)默认子网掩码为/16,即255.255.0.0
1.2.3 C类地址
c类地址范围: (110xxxxx), 192.0.0.1~223.255. 255.254
c类地址=网络部分+网络部分+网络部分+主机部分
(有类边界)默认子网掩码为/24,即255.255.255.0
1.2.4 D类地址与E类地址

使用较少

D类地址范围: (1110xxxx), 224.0.0.1~239.255.255.254 
用于组播通信的地址

E类地址范围: (11110xxx), 240.0.0.1~255.255.255.254
用于科学研究的保留地址
1.2.5 本机地址
  • 以127开头的IP地址都代表本机(广播地址127.255.255.255除外) , 127.0.0.1为本机回环地址
  • 169.254.0.0~169.254.255.255为DHCP服务失效时分配的地址
  • DHCP服务可以理解为自动获取IP服务

1.3 Internet上的合法IP地址

  • 目前在 Internet 上只使用 A、B、C 这三类地址,而且为了满足企业用户在 Internet 上的使用需求,从 A、B、C 三类地址中分别划分出一部分地址供企业内部网络使用,这部分地址称之为私有地址
  • 且不再 Internet 上再被分配的
A类私有地址: 10.0.0.0~ 10.255.255.255
A类子网掩码为/8

B类私有地址: 172.16.0.0~172.31.255.255
B类子网掩码为/12

c类私有地址: 192.168.0.0~192.168.255.255
C类子网掩码为/16

2.子网掩码

2.1 概述

在网络中,不同主机之间的通信情况可以分为两种:
同一网段中两台主机之间相互通信
不同网段中两台主机之间相互通信

注意:具有相同网络地址的IP地址称为同一网段的IP地址
网段的组成:网络组成,可用IP,广播地址
例:192.168.126.100/24
网络号:192.168.126.0
可用IP:192.168.126.1~192.168.126.254
广播地址:192.168.126.255

  • 如果是同一网段内两台主机通信,则主机将数据直接发送给另一台主机;但如果不是同一网段内,则主机将数据发送给网关,再由网关进行转发
  • 为了区分这种情况,进行通信的计算机需要获取远程主机 IP 地址的网络部分以做出判断
    • 如果源主机的网络地址 = 目的主机的网络地址,则为相同网段主机之间的通信
    • 反之亦然
  • 因此对于一台计算机而言,关键问题就是如何获取远程主机 IP 地址的网络地址信息,这就需要借助子网掩码(Netmask)

2.2 子网掩码的组成

  • 与IP地址一样,子网掩码也是由32个二进制位组成,对应 IP 地址的网络部分用1来表示,对应IP地址的主机部分用0表示,通常也是由四个点分开的十进制数表示
  • 当为 IP 网络中的节点分配 IP 地址时,也要一并给出每个节点所使用的子网掩码
  • 对于 A、B、C三类地址而言,通常情况下都使用默认子网掩码:
    mark

2.3 子网划分及运算

  • 子网划分也可称之为借位或租位,主机位借给网络位的位数决定了网络可以被分成几份,而借走之后剩余的主机位数决定了划分之后网络的规模
    mark
  • 子网个数及主机数的换算公式
子网数=2^n,其中n为子网部分位数,例: /26, n=26-24
主机数(可用IP) =2^N - 2,其中N为主机部分位数: N=32-26 

192.168.1.0		/24		/25		/26		/27		/28		/29		/30		/31		/32
子网掩码			0		128		192		224		240		248		252		254		255
子网个数			1		2		4		8		16		32		64		128		256
IP数量			256		128		64		32		16		8		4		2		1
可用IP			254		126		62		30		14		6		2		1		1

192.168.1.100/32 表示为一一个固定IP
  • 有了子网掩码后,只要把 IP 地址和子网掩码“与”运算,得出的结果就是 IP 地址的网络地址
  • 即0和任何数相与都等于0,1和任何数相与都等于任何数本身
  • 也可以简单理解为相乘的概念,即IP地址乘以子网掩码得到网络地址

示例:

192.168.1.189/26 												
11000000.10101000.00000001.10 111101	##IP地址
11111111.11111111.11111111.11 000000	##子网掩码
与
11000000.10101000.00000001.10 000000 	##网络地址
192.168.1.128

将主机部分位全部置 1 得到广播地址
11000000.10101000.00000001.10 111111	##广播地址
192.168.1.191

注:将主机部分位全部置1得到广播地址

/24 255.255.255.0 11111111.11111111.11111111.00000000
/12 255.240.0.0   11111111.11110000.00000000.00000000
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Xucf1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值