一、数制介绍

1.数制的基本概念

虽然计算机能极快地进行运算,但其内部并不像人类在实际生活中使用的十进制,而是使用只包含0和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

计数

计数的规则。在人们使用最多的进位计数制中,表示数的符号在不同的位置上时所代表的数的值是不同的。

数制符号

二进制B(binary)

八进制O(octal)

十进制D(decimal)

十六进制H(hexadecimal)

2.计算机常用数制

二进制

数码:0,1。只有这两个数。

基数:2,用字母B表示。

运算规律:逢二进一,如;1+1=10。

二进制数的权展开式:各个数位上的数码*各个数位上的权数,再将其求和。

八进制

数码:0,1,2,3,4,5,6,7

基数:8,用字母O表示。

运算规律:逢八进一,如:7+1=10。

十进制

数码:0,1,2,3,4,5,6,7,8,9

基数:10,用字母D表示。

运算规律:逢十进一,如:9+1=10。

十六进制

数码:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.

基数:16,用字母H表示。

运算规律:逢十六进一,如:F+1=10.

3.数制的转换

十进制转化为二进制

第一步 将十进制数值从小数点的位置分为两部分。整数部分除2取余数,倒序取。

第二步 将十进制数的小数部分乘2取整数,正序取。

第三步 将整数部分与小数部分合起来就行了。

十进制转化为八进制

第一步 将十进制数值从小数点的位置分为两部分。整数部分除8取余数,倒序取。

第二步 将十进制数的小数部分乘8取整数,正序取。

第三步 将整数部分与小数部分合起来就行了。

十进制转化为十六进制

第一步 将十进制数值从小数点的位置分为两部分。整数部分除16取余数,倒序取。

第二步 将十进制数的小数部分乘16取整数,正序取。

第三步 将整数部分与小数部分合起来就行了。

二进制与八进制之间的转换

二进制转化为八进制

第一步 把二进制从小数点开始,向左(对整数)、向右(对小数)将每三位(因为8等于2的3次方,所以是三位)二进制数做一组,数到首尾不足三位的补0(缺几位补几个0)。

第二步 将每三位二进制数用一位对应的八进制数进行替换即可。

八进制转化为二进制

直接将每一个八进制的数值转化为对应的二进制数就行了,每个八进制数对应三个二进制数。

八进制与十六进制之间的转换

通过二进制作为中介

八进制 ~ 二进制 ~ 十六进制

十六进制 ~ 二进制 ~ 八进制
微信图片_20211006131919.png
微信图片_20211006131859.png

二、IP地址

1.IP地址的定义

IP,全称互联网协议地址,是指IP地址,意思是分配给用户上网使用的网际协议(英语:InternetProtocol,IP)的设备的数字标签。常见的IP地址分为IPv4与IPv6两大类,但是也有其他不常用的小分类。

IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。

网络互连设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。IP协议实际上是一套由软件、程序组成的协议软件,它把各种不同“帧”统一转换成“网协数据包”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点。

2.IP地址的分类

IP地址的组成
IPv4地址由两部分组成:
网络部分( NETWORK)
主机部分( HOST)
192.168.1.142
网络部分(192.168.1) 主机部分(142)

分类
IPv4私有网络地址和公有网络地址
公有网络地址(以下简称公网地址)是指在互联网上全球唯一 的IP地址。2019年11月26日,是人类互联网时代值得纪念的一-天, 全球近43亿个IPv4地址已正式耗尽。
IP地址分为A、B、C、D、E五类
A类地址范围: 1.0.0.1~126.255.255.254
A类地址=网络部分+主机部分+主机部分+主机部分
(有类边界)默认子网掩码为/8,即255.0.0.0
B类地址范围: 128.0.0.1~191.255.255.254
B类地址=网络部分+网络部分+主机部分+主机部分
(有类边界)默认子网掩码为/16,即255.255.0.0
C类地址范围: 192.0.0.1~223.255.255.254
C类地址=网络部分+网络部分+网络部分+主机部分
(有类边界)默认子网掩码为/24,即255.255.255.0
D类地址范围: 224.0.0.1~ 239.255.255.254
用于组播通信的地址
E类地址范围: 240.0.0.1~255.255.255.254
用于科学研究的保留地址
以127开头的IP地址都代表本机(广播地址127.255.255. 255除外),127.0.0.1为本机回环地址
169.254.0.0~169.254.255.255 DHCP服务失效时分配的地址

私有网络地址
私有网络地址(以下简称私网地址)是指内部网络或主机的IP地址,IANA(互联网数字分配机构)规定将下列的IP地址保留用作私网地址,不在Internet上被分配,可在一个单位或公司内部使用。RFC1918中规定私有地址如下:
A类私有地址: 10.0.0.0~10.255.255.255 10.0.0.0/8
B类私有地址: 172.16.0.0~172.31.255.255 172.16.0.0/12
c类私有地址: 192.168.0.0~192.168.255.255 192.168.0.0/16
A 类IP地址:一个 A 类地址由1 字节的网络地址和3字节主机地址形成 B 类 IP地址:一个B类地址由2字节的网络地址和2字节的主机地址形成 C 类 IP 地址:一个C 类地址由3字节的网络地址和1字节的主机地址形成

图片

子网的划分与运算

子网掩码只有一个作用:将 IP 地址划分成网络地址和主机地址两部分。

子网掩码是一个网络掩码,地址掩码,是用来指明 IP 地址的哪些标识是主机所在的子网,以及哪些标识是主机的位掩码,子网掩码不能单独存在,必须和 IP 结合使用。
A类的默认子网掩码 255.0.0.0
B类的默认子网掩码 255.255.0.0
C类的默认子网掩码 255.255.255.0
微信图片_20211006131941.png
微信图片_20211006131944.png

3.如何根据子网掩码计算网络地址和主机标识

子网掩码与IP地址一样是32位地址,然后将IP地址与子网掩码进行与运算即可得到网络地址

举个例子:
IP地址为192.168.10.2,子网掩码为255.255.255.240。
先将十进制转换成二进制:
IP地址: 11000000 10101000 00001010 00000010
子网掩码:11111111 11111111 11111111 11110000
进行与运算:--------------------------
11000000 10101000 00001010 00000000
则可得其网络标识为192.168.10.0,主机标识为2。
XX.XX.XX.128/25

回到开头的,已经说过了子网掩码也是32位的地址,那么开头的25怎么转化呢?

25的意思是网络号为25,就代表连续的25个1,然后剩下的用0补齐

即11111111 11111111 11111111 10000000
(1)主机号:主机号+网络号=32,32-25=7 (2)网络地址:当7位主机号全为0,也就是XX.XX.XX.128 (3)广播地址:当7位主机号全为1,也就是XX.XX.XX.255 (4)可用地址数量:7位主机号有2 ^ 7 种结果,但是要去掉网络地址和广播地址,即:2^7-2=126
根据IP地址的类型来判断n的值:
A类地址: 子网掩码 - 8
B类地址: 子网掩码 - 16
c类地址: 子网掩码 - 24
N=32 - 子网掩码
172.16.0.200/20