第一章节------计算机系统知识
文章目录
- 第一章节------计算机系统知识
- 一、计算机系统基础知识
- 二、计算机体系结构
-
- 1.计算机体系结构的发展(了解)
-
- [1.1 计算机体系结构的分类](#1.1 计算机体系结构的分类)
- [1.2 指令系统](#1.2 指令系统)
- 2.存储系统
-
- [2.1 存储器的层次结构](#2.1 存储器的层次结构)
- [2.2 存储器的分类](#2.2 存储器的分类)
- [2.3 高速缓存Cache](#2.3 高速缓存Cache)
- [2.4 虚拟存储器,磁盘](#2.4 虚拟存储器,磁盘)
- 3.输入/输出技术
-
- [3.1 程序查询方式](#3.1 程序查询方式)
- 3.2程序中断方式
- [3.3 DMA方式](#3.3 DMA方式)
- [3.4 输入/输出处理机IOP(通道方式)](#3.4 输入/输出处理机IOP(通道方式))
- 4.总线结构
- 三、安全性,可靠性与系统性能评测
-
- 1.计算机的安全概述
- 2.加密技术和认证技术
-
- [2.1 对称加密](#2.1 对称加密)
- 2.2非对称加密
- [2.3 数字签名](#2.3 数字签名)
- [2.4 公钥基础设施PKI](#2.4 公钥基础设施PKI)
- 3.计算机的可靠性
一、计算机系统基础知识
1.计算机系统硬件基本组成
-
计算机的基本硬件系统由运算器,控制器,储存器,输入设备,输出设备五大部件组成(冯·诺依曼结构)
-
运算器,控制器等部件被集成在一起统称为中央处理单元(CPU)
-
储存器是计算机系统中的记忆设备,分为内部存储器(内存)和外部存储器(硬盘)。内部存储器速度快,容量小,一般用于临时存放程序,数据及中间结果;外部存储器速度慢,容量大,可长期保存程序和数据
-
输入设备和输出设备合称为外部设备(外设),输入设备用于输入原始数据及各种命令,而输出设备则用于输出处理结果。
2.中央处理单元
- CPU主要由
运算器
,控制器
,寄存器组和内部总线等部件组成
2.1 运算器
2.1.1 运算器的功能
- 执行算数运算:如加,减,乘,除等基本运算
- 执行逻辑运算并进行逻辑测试:如与,或,非等逻辑运算
2.1.2 运算器中各组件的功能
- 算数逻辑单元(ALU:Arithmetic and logic unit):负责处理数据,实现对数据的算数运算和逻辑运算
- 累加寄存器(AC:Accumulator):又称累加器,是一个通用的寄存器,为ALU提供一个工作区,暂存运算结果
- 数据缓存寄存器(DR:Data Register):作为CPU和内存,外设之间数据传送的中转站,用于缓冲速度上的差异性,如在对内存进行读/写操作时,用DR暂存由内存读/写的指令或数据字
- 状态条件寄存器(PSW:Program Status Word):保存数据/逻辑运算结果的一种状态,主要分为状态标志和控制标志,如运算结果进位标志,溢出标志,中断标志
2.2 控制器
2.2.1 控制器的功能
-
运算器只能完成运算操作,而整个运算过程是由控制器来完成的,控制器控制整个CPU的工作
-
指令格式:
2.2.2 控制器的组成和特点
- 指令寄存器(IR):保存当前正在执行的指令
- 程序计数器(PC):指向下一条指令的地址;自增的功能
- 地址寄存器(AR):
- 指令译码器:
2.3寄存器组
寄存器组分为专用寄存器和通用寄存器。运算器和控制器中的寄存器是专用寄存器。通用寄存器的用途由程序员决定
通用寄存器:当ALU执行算术或逻辑运算时,为ALU提供一个工作区。
分类 | 寄存器 |
---|---|
程序员可见的寄存器 | 通用寄存器组,PSW,PC,AC |
程序员不可见 | IR,DR,AR |
2.4 CPU模型

3.数据表示
3.1 基础知识
3.1.1.进制转换
二进制:由0、1表示的数,逢2进1。如: 10111B或者(10111)2
八进制:由0...7表示的数,逢8进1。如: 27Q或者(27)8
十六进制:由0...和A...F表示的数,逢16进1。如: 17H或者(17)16
3.2.2.单位换算
单位 | 表示 | 换算 |
---|---|---|
位 | bit,b | 1b=二进制的一位 |
字节 | Bytc,B | 1B=8bit |
千字节 | KB | 1KB=2^10B |
兆字节 | MB | 1MB-2^10KB |
吉字节 | GB | 1GB-2^10MB |
太字节 | TB | lTB=2^10GB |
3.2 定点数
**小数点位置不变的数。分为纯整数(定点整数),和纯小数(定点小数)。
表示方式:原码,反码,补码,移码**
二进制数据 :
原码:二进制表示的码。最高位是符号位。0表示正数,1表示负数。
反码:正数的反码与原码相同,负数的反码是原码的符号位不变,其他位取反。
补码:正数的补码与原码相同,负数的补码等于反码的末尾+1。
移码:补码符号位取反即可。常用于表示浮点数的阶码。
3.3 定点数的加减运算
表示方式 | 加减运算特点 |
---|---|
原码 | 零的表示不唯一;真值与机器码易转换;加减法运算复杂。 |
反码 | 零的表示不唯一;加减法运算稍复杂。 |
补码 | 零的表示唯一;加减法运算简单。(可以将减法运算转化为加法运算; 符号位当做数值位直接参与运算;如高位溢出,则直接舍弃) |
移码 | 符号位0为负,1为正;相同真值的移码和补码数值位相同,符号位相反; 移码进行加减法运算时得到的结果是真值的补码形式 |
3.4 浮点数
小数点不固定的数。例如:
- 十进制科学计数法:123.456=1.23456×10^2
- 二进制的规格化:1011.10101=1.01110101×2^3
- 二进制N的一般形式:
N=2^E×M
- 其中
E
为阶码(指数),决定二进制的表示范围(阶码约大表示二进制的范围越大),M
为尾数,决定二进制数的精度(尾数长精度高)
3.5 IEEE 754标准
分类 | S | E | M |
---|---|---|---|
32位浮点数 | 1 | 8 | 32 |
64位浮点数 | 1 | 11 | 52 |
其中,32位的浮点数中:
- S是浮点数的符号位,占一位,安排在最高位,S=0表示正数,S=1表示负数。
- E是阶码,占8位,将浮点数的指数真正值e变为阶码E时,应在指数e上加一个固定的偏执常数127,即E=e+127(64位浮点数:E=e+1023)
- M是尾数,放在最低位,占32位,小数点位置放在尾数域最左有效位的右边
- 当尾数M的值不为0时,尾数的最高有效位为1
- 32位浮点数x对应的数值为
x=(-1)^S×1.M×2^(E-127)
- 64位浮点数x对应的数值为
x=(-1)^S×1.M×2^(E-1023)
3.6浮点数加减法
- 零操作数处理
- 求阶差并对阶,小阶向大阶看齐;
- 尾数求和
- 规格化处理
- 舍入处理,在对结果右规时,超出尾数的低部分要进行舍入处理;
- 溢出判断,判断阶码是否溢出。对于32位浮点数,除去全0和全1的特殊情况,阶码E∈[1,254]
4.校验码
4.1 奇偶校验码
奇偶校验码通过在编码中增加一位校验位,使编码中1的个数为奇数(奇校验)或偶数(偶校验)。
数据 | 奇校验 | 偶校验 |
---|---|---|
10101010 | 101010101 |
101010100 |
11111110 | 111111100 |
111111101 |
4.2 海明码
海明码是一种多重奇偶校验码,具有检错和纠错的功能(考不到)。数据位n,校验位k的关系应满足: n+k+1≤2^k
二、计算机体系结构
1.计算机体系结构的发展(了解)
1.1 计算机体系结构的分类
从宏观上按照处理机的数量分类
- 单处理系统:利用一个处理单元和其他外部设备结合起来,实现存储,计算,通信,输入和输出等功能的系统
- 并行处理与多处理系统:为了充分发挥问题求解过程中处理的并行性,将两个以上的处理机互连起来,彼此进行通信协调,便于共同求解一个大问题的计算机系统
- 分布式处理系统:物理上远距离而松耦合的多计算机系统。物理上的远距离意味着通信时间与处理时间相比已不可忽略,在通信线路上的数据传输速率要比在处理机总线上传慢的多。
从微观上按照并行程度分类
- Flynn分类法:1966年,由Flynn提出按指令流和数据流的多少进行分类。将计算机系统结构分为单指令流、单数据流(SISD),单指令流、多数据流(SIMD),多指令流、单数据流(MISD)和多指令流、多数据流(MIMD)四类
- 马泽云分类法:1972年由美籍华人马泽云提出按并行度对各种计算机系统进行结构分类。将计算机系统分为字串行位串行(WSBS)计算机、字并行位串行(WPBS)计算机、字串行位并行(WSBP)计算机和字并行位并行(WPBP)计算机四类
- Handler分类法:1977年,德国的汉德勒(Wolfgang Handler)提出一个基于硬件并行程度和计算并行程度的方法,把计算机的硬件结构分为三个层次:处理机级、每个处理机中的算术逻辑单元级、每个算术逻辑单元中的逻辑门电路级
- Kuck分类法:1978年美国的库克(David J.Kuck)提出与Flynn分类法类似的方法,用指令流和执行流及其多重性来描述计算机系统控制结构的特征。主要分为单指令流单执行流(SISE)、单指令流多执行流(SIME)、多指令流单执行流(MISE)和多指令流多执行流(MIME)四类
1.2 指令系统
(1)指令格式 :
操作码
指定要完成的操作
或功能,地址码
指定参与操作的操作数的地址
(2) 指令的寻址方式:
- 顺序寻址:下一条指令的地址由程序计数器PC给出,PC每次自增+1
- 跳跃寻址:下一条指令的地址由指令本身给出
(3) 操作数的寻址方式:
- 立即寻址:指令的地址码字段不是操作数的地址,而是操作数本身,速度最快
- 直接寻址:指令的地址码字段给出操作数在内存的地址(操作数在内存中)
- 间接寻址:指令的地址码字段给出操作数在内存的地址的地址(操作数在内存中)
- 寄存器寻址:指令的地址码字段给出操作数在寄存器的编号(操作数在寄存器中)
- 寄存器间接寻址:指令的地址码字段给出寄存器的编号,寄存器中所存的内容为操作数在内存额地址(操作数在内存中)
- 相对寻址:指令的地址码字段是一个偏移量,这个偏移量加上程序计数器的值即为操作数在内存的地址
- 基址寻址:指令的地址码字段是一个偏移量,这个偏移量加上基址寄存器的值即为操作数在内存的地址
- 变址寻址:指令的地址码字段是一个偏移量,这个偏移量加上变址寄存器的值即为操作数在内存的地址
操作数寻址方式速度比较:
计算机指令执行过程:
- 计算机指令执行过程:取指令->分析指令->执行指令三个步骤,首先将程序计数器PC中的指令地址取出,送入地址总线,CPU依据指令地址去内存中取出指令内容存入指令寄存器IR;之后由指令译码器进行分析,分析指令操作码;最后取出指令执行所需的源操作数,执行指令。
- CPU如何区分指令和数据:CPU根据指令周期的不同阶段来区分二进制的指令和数据,因为在指令周期的不同阶段,指令会命令CPU分别去取指令或数据
(4) 指令的分类:
- CISC指令集:复杂指令集,各条指令按顺序串行执行
- RISC指令集:精简指令集,减少指令总数,采用优化编译,硬布线,重叠寄存器窗口等技术
特性 | CISC | RISC |
---|---|---|
指令数目 | 多 | 少 |
指令长度 | 可变长指令 | 大部分等长指令 |
控制器复杂性 | 复杂 | 简单 |
寻址方式 | 较丰富,提高编程的灵活性 | 较少,以提高效率 |
编程便利性 | 指令多编程灵活 | 编程量更大,采用较多的通用寄存器 |
实现方式 | 为程序控制技术 | 采用硬布线逻辑控制优化编译程序,采用流水线技术 |
(5) 指令的流水处理
**指令流水线原理:**将指令的执行划分成若干个过程段,每个过程段由不同的部件进行处理
指令流水线计算:
- 非流水线执行时间:一条指令执行的时间×指令总数
- 流水执行时间:第一条指令执行时间+(n - 1)×最长流水段时间,n为指令总数
- 加速比:非流水方式与流水方式所用时间之比
- 流水线的操作周期:为最长流水段时间
- 流水线的吞吐率:为最长流水段时间的倒数
- 连续n条指令的吞吐率:指令总数/总时间
2.存储系统
2.1 存储器的层次结构
存储器分级的目的:构建容量大,速度快,成本低的存储系统
2.2 存储器的分类
(1) 随机存储器(RAM)
静态随机存储器SRAM,用于Cache
;
动态随机存储器DRAM,用于主存;
特性 | SRAM | DRAM |
---|---|---|
储存元 | 触发器 | 电容器 |
主要用途 | Cache | 主存 |
操作 | 读/写 | 读/写/周期性刷新 |
存储速度 | 快 | 稍慢 |
存储容量 | 小 | 大 |
成本 | 稍高 | 低 |
芯片集成率 | 高 | 低 |
(2) 只读存储器(ROM)=>(MAC,U盘)
ROM分类 | 擦除方式 | 擦除速度 | 可编程速度 |
---|---|---|---|
固定只读存储器 | 无 | 无 | 无 |
可编程只读存储器 | - | 较慢 | 一次 |
可擦除可编程只读存储器 | 紫外线照射 | 较慢 | 较少 |
电擦除可擦除可编程储存器 | 电擦除 | 较快 | 100W次左右 |
闪速存储器(闪存 如U盘) | 电擦除 | 最快 | 较少 |
2.3 高速缓存Cache
(1) Cache原理
高速缓存Cache位于CPU与主存之间,用于储存当前的程序和数据
- Cache的功能:
解决CPU和主存之间的速度不匹配问题
- Cache的理论依据:程序的局部性原理
CPU对主存中的指令和数据的访问,在一小段时间内,总是集中在一小块存储空间里。
**①时间局部性:**最近被访问过的指令和数据很可能会被再次访问;
**②空间局部性:**最近访问过的指令和数据往往集中在一小片存储区域中。
(2) 主存与Cache的地址映射
在CPU工作时,送出的是主存单元的地址
,而应从Cache存储器中读/写信息。这就需要将主存地址转换为Cache的地址
,这种地址的转化称为地址映像。由硬件自动完成映射。
- 全相联映像:主存中的任意一个块可以与Cachc中的任意一行相对应。
- 直接映像:Cache中一行固定对应主存中的多行。如主存块号对Cache总行数求模。
- 组相联映像:前两种方式的结合。将Cache进行分组,
组间采用直接映射方式,组内采用全相联映射方式。
特点 | 全相联映像 | 直接映像 | 组相联映像 |
---|---|---|---|
映射方法 | 多对多 | 一对多 | 一组对多 |
优点 | 冲突概率小,Cache利用率不高 | 硬件实现简单,成本低,地址变换速度快 | 综合前两者的优点,应用普遍 |
缺点 | 硬件难实现,且需要访问速度快, 成本高的相联存储器 | 冲突概率高,且Cache空间利用率低 | - |
适用场合 | 小容量Cache | 大容量Cache | - |
2.4 虚拟存储器,磁盘
虚拟存储器由主存,辅存和软件组成
磁盘:
- 存取时间:寻道时间+旋转等待时间+数据传送时间
- 寻道时间:将磁头定位至所要求的磁道上所需的时间
- 旋转等待时间:寻道完成后至磁道上需要访问的信息
到达磁头下的时间,平均等待时间为磁盘旋转一周所需时间的一半数据传送时间:读取数据所需的时间 - 数据传送时间:读取数据所需的时间
3.输入/输出技术
CPU与外围设备之间的信息交换方式
IO接口与外设之间的信息交换
CPU与I/O接口之间的信息交换:
- 程序查询方式
- 程序中断方式
- DMA方式
- 通道方式

3.1 程序查询方式
CPU执行程序来轮询查询外设的状态,判断外设是否准备好接受数据或向CPU输入数据。
特点
- CPU与外设串行工作
- 硬件结构简单
- CPU大量时间都在查询和等待,资源浪费较多
- 需要CPU保存现场,由CPU将数据放入内存
- 一次读写单位为字
适用场合: 低速外设或CPU任务不繁忙的情况
3.2程序中断方式
**中断:**CPU展示中止现行程序,转去处理随机发生的紧急事件,处理完成后自动返回原程序的功能和技术。
**中断方式:**当I/O接口与外设交换数据过程中,CPU无须等待;当交换数据完成时,I/O接口产生中断,通知CPU处理数据
特点
- CPU与外设可并行工作
- 但硬件结构相对复杂一些,服务开销时间大
- 需要CPU保存现场,由CPU将数据放入内存
- 一次读写单位为字
适用场合
- 微型机中随机出现的服务
- 对I/O处理的实时性要求很高的系统
中断向量:中断服务程序的入口地址
中断响应时间: 从发出中断请求到开始进入中断处理程序
保存现场: 为了正确返回原程序继续执行
3.3 DMA方式
直接内存存取(DMA) ,DMA控制器接管总线的控制权,数据交换不经过CPU,直接在内存和I/O设备间进行块传送。
特点
- CPU与外设可并行工作
- 尽在传送数据块的开始和结束时才需要CPU的干预
- 不需要CPU保护现场
- 由外设直接将数据放入内存(或相反)
- 一次读写单位为块,传送一个数据占用一个存储周期
适用场合: 微型机中内存与高速外围设备进行大批量的数据交换
3.4 输入/输出处理机IOP(通道方式)
由通道(输入输出处理机IOP)管理外围设备。
特点
- 大大提高的CPU的效率
- 但需要更多的硬件
适用场合: 处理外设较多,规模较大
的情形(大型机
)
4.总线结构
总线(Bus)是指计算机中,设备和设备之间传输信息的公共数据通道。
总线的分类如下
(1)内部总线:CPU内部连接运算器,控制器,各寄存器部件之间的总线。
(2)系统总线(外部总线):CPU与计算机系统中其他高速功能部件相互连接的总线
按系统总线传输信息内容不同,又可分为三类:数据总线,地址总线,控制总线
- 数据总线:用来传输各功能部件之间的数据信息,它是双向传输总线,其位数与机器字长,存储字长有关。
- 地址总线:用来指出数据总线上的源数据或目的数据所在的主存单元或I/O端口的地址,它是单向传输总线,地址总线的位数与主存地址的空间大小有关
- 控制总线: 传输的是控制信息,包括CPU送出的控制命令和主存(外设)返回CPU的反馈信号
(3)I/O总线:中低速I/O设备相互连接的总线
常见的总线
- PCI总线: PCI总线是目前微型机上广泛采用的
内总线
,采用并行
传输方式。 - SCSI总线: 小型计算机系统接口(SCSI)是一条
并行外总线
,广泛用于连接软硬磁盘、光盘、扫描仪等。 - RS-232C(串行外总线) 、
USB(串行外总线)
、IEEE-1394(串行外总线)、IEEE-488(并行外总线)等。
三、安全性,可靠性与系统性能评测
1.计算机的安全概述
信息安全的基本要素:机密性,完整性,可用性,可控性和可审查性
2.加密技术和认证技术
2.1 对称加密
采用对称密码编码技术,加密和解密的密钥相同
,不公开加密算法。优点是加密快,加密过程简单,缺点是加密强度不高(只有一个密钥),密钥分发困难,保密性较差。
常见的对称加密算法:DES,3DES,AES,RC-5,IDEA
2.2非对称加密
非对称加密算法需要两个不同的密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥进行加密,那么只有用对应的公开密钥才能解密。公钥体系也就是公开加密算法,即非对称加密。

优点是无需交换密钥,保密性好。缺点是仅适用少量数据加密,加密速度慢,时间长,常用来加密对称加密算法的密钥。(数字信封原理)
常见非对称加密算法:RSA,DSA,ECC
2.3 数字签名
对称加密技术与非对称加密技术的应用。
数字加密的主要过程:
(1)当信息发送者需要发送信息时,首先生成一个对称密钥,用该对称密钥加密要发送的报文;
(2) 信息发送者用信息接收者的公钥加密上述对称的密钥;
(3)信息发送者将上述两个步骤的结果集合在一起传给信息接收者,称为数字信封;
(4)信息接收者使用自己的私钥解密被加密的对称密钥,再用此对称密钥解密被发送方加密
的密文,最后得到真正的原文。
数字签名的主要过程:
(1)信息发送者使用一个单项散列函数(Hash函数)对信息生成信息摘要;
(2)信息发送者使用自己的私钥签名信息摘要;
(3)信息发送者把信息本身与已签名的信息摘要一起发送出去;
(4)信息接受者使用与发送者相同的单项散列函数(Hash函数)对接收的信息生成新的信息摘要,再使用发送者的公钥对信息摘要进行验证,以确认信息发送者的身份和信息是否被修改过。
- 数字信封运用了对称加密技术和非对称加密技术,本质是使用对称密钥加密数据,非对称密钥加密对称密钥,解决了对称密钥的传输问题。
- 信息摘要的特点:无论数据多长,都会产生固定长度的信息摘要;任何不同的输入数据,都会产生不同的信息摘要;单向性,即只能由数据生成信息摘要,不能由信息摘要还原数据。常见的信息摘要算法:MD5(产生128位的输出)、SHA-1(安全散列算法,产生160位的输出,安全性更高)
- 数字签名,用发送方的私钥签名,用发送方的公钥验证消息的真实性,发送方不可否认。
2.4 公钥基础设施PKI
公钥基础设施(Public Key Infrastructure,PKI)
是以非对称加密技术
为基础,以数据机密性、完整性、身份认证和行为不可抵赖性为安全目的,来实施和提供安全服务的具有普适性的安全基础设施。
- **数字证书:**一个数据结构,是一种由一个
可信任的权威机构签署的信息集合
。在不同的应用中有不同的证书。如X.509证书必须包含下列信息:(1)版本号(⑵序列号(3)签名算法标识符(4)认证机构(5)有效期限(6)主题信息(7)认证机构的数字签名(8)公钥信息。 - 公钥证书主要用于确保公钥及其与用户绑定关系的安全。这个公钥就是证书所标识的那个主体的合法的公钥。
任何一个用户只要知道签证机构的公钥,就能检查对证书签名的合法性。
如果检查正确,那么用户就可以相信那个证书所携带的公钥是真实的,而且这个公钥就是证书所标识的那个主体合法的公钥。例如驾照 - 签证机构CA:负责
签发证书、管理和撤销证书
。是所有注册用户所信赖的权威机构,CA在给用户签发证书时要加上自己的数字签名,以保证证书信息的真实性。任何机构可以用CA的公钥来验证该证书的合法性。
3.计算机的可靠性
系统的可靠性是指系统在给定时间间隔内正常运行的概率
串联系统可靠性:R = ∑ i = 1 n \sum_{i=1}^n ∑i=1nRi
并联系统可靠性:R = 1- ∑ i = 1 n \sum_{i=1}^n ∑i=1n(1-Ri)