type
status
date
slug
summary
tags
category
icon
password
计算器的基本硬件系统由运算器、控制器、存储器、输入设备、输出设备的5大部件组成。
参考链接:B站zst
1. 计算机系统基础知识
1.1 计算机系统硬件基本组成
- 硬件
- CPU
- 运算器
- 控制器
- 存储器
- 内部存储器(速度高,容量小):临时存放程序、数据及中间结果
- 外部存储器(速度慢,容量大):长期保存程序和数据
- 外设
- 输入设备:输入原始数据及各种命令
- 输出设备:输出计算机运行结果
1.2 中央处理单元CPU
CPU(Central Processing Unit),负责获取程序指令、对指令进行译码并加以执行。
1.2.1 CPU功能
- 程序控制
- 通过执行程序来控制程序的执行顺序(控制器)
- 操作控制
- CPU产生每条指令的操作信号,并将操作信号送往对应的部件,以控制相应的部件按指令的功能要求进行操作(控制器)
- 时间控制
- 控制指令执行过程中,操作信号的出现时间、持续时间及出现的时间顺序(控制器)
- 数据处理
- 通过对数据进行算术运算及逻辑运算等方式进行加工处理(运算器)
1.2.2 CPU组成

- 运算器:只能完成运算,执行部件
- 算术逻辑单元(ALU,Arithmetic Logic Unit)
- 处理数据,实现对数据的算术运算和逻辑运算
- 累加寄存器(AC,Accumulator Register)
- 运算器的算数逻辑单元执行算数或逻辑运算时,为ALU提供一个工作区,运算的结果存储在AC中
- 数据缓冲寄存器(DR,Data Register,DR)
- 作为CPU和内存、外部设备之间的中转站
- 状态条件寄存器(PSW,Program Status Word)
- 保存各种条件码内容
- 控制器
- 指令寄存器(IR,Instruction Register)
- 当CPU执行指令时,先把它从内存存储器取到缓冲寄存器中,在送入IR暂存。对用户完全透明
- 程序计数器/指令计数器(PC,Program counter)
- 跟踪指令的地址。
- 在顺序执行的加1(PC+1);在转移执行的时候加上一个位移量
- 地址寄存器(AR,Address Register)
- 保存当前CPU所访问的内存单元的地址
- 指令译码器(ID,Instruction Decoder)
- 指令= 操作码 + 地址码
- 对指令中的操作码进行分析解释
1.3 数据表示
1.3.1 计算机基本单位
单位 | 符号 | 说明 |
位(比特) | bit (b) | 计算机最小的存储单位 |
字节 | byte (B) | 数据表示的最小单位
1B = 8bit |
千字节 | KB | 1KB = 1024B |
兆字节 | MB | 1MB = 1024KB |
吉字节 | GB | 1GB = 1024 MB |
太字节 | TB | 1TB = 1024GB |
1.3.2 进制转换
进制 | 符号 | 表示 |
二进制 | B | 0-1 |
八进制 | O | 0-7 |
十进制 | D | 0-9 |
十六进制 | H | 0-9
A-F (10-15) |
- R进制 ➔ 十进制(按权展开求和)
- 每一位数值 × R的位权次方,再累加
- 二进制
10100.01
=1×2⁴ + 1×2² + 1×2⁻²
- 十进制 ➔ R进制(短除法)
- 整数部分:除R取余,商为0时,余数倒序输出
- 小数部分:乘R取整,直至积为0(或满足精度), 整数部分正序输出



1.3.3 原码、反码、补码、移码
编码类型 | 定义与公式(以机器字长n位为例) | 转换规则(以负数为例) | 示例(假设字长8位,数值为-5) |
原码 | 最高位为符号位(0正,1负),其余位为数值绝对值 | 直接二进制表示 | -5 ➔ 1000 0101 |
反码 | 符号位不变,数值位按位取反 | 原码符号位不变,数值位取反 | 原码 1000 0101 ➔ 反码 1111 1010 |
补码 | 反码基础上末位+1(计算机存储标准格式) | 反码末位加1 | 反码 1111 1010 ➔ 补码 1111 1011 |
移码 | 补码符号位取反(用于浮点数阶码) | 补码符号位取反 | 补码 1111 1011 ➔ 移码 0111 1011 |
符号位:如果机器字长为 n,则最高位(或最左边的第一位是符号位:0表示正号,1表示负号)
- 原码:符号位加上真值的绝对值
- 反码:正数的反码与原码相同,负数的反码则是其绝对值按位取反
- 补码:正数的补码与其原码相同,负数的的补码则等于其反码的末尾加
1
- 移码:将补码的符号位取反
1.3.4 数值表示范围
编码类型 | 定点整数 | 定点小数 |
原码 | ||
反码 | ||
补码 | ||
移码 |
1.3.5 浮点数表示
浮点数使用两个定点数来分别表示实数的尾数(F)和阶码(E)。其一般形式为:
- 运算过程:对阶 > 尾数计算 > 结果格式化
- 特点
- 一般尾数用补码,阶码用移码
- 阶码 的位数 决定 数的表示范围,位数越多范围越大
- 尾数 的位数 决定 数的有效精度,位数越多精度越高
- 对阶时,小数向大数看齐
- 对阶 是通过 较小数的尾数算术右移 实现的
- 存储格式
阶府 | 阶码 | 数符 | 尾数 |
1.4 校验码
1.4.1 奇偶校验码
可以检错,不能纠错,码距 = 2
- 通过在编码中增加一位校验位来使编码中的个数为奇数(奇校验)或者偶数(偶检验),从而使码距变为。
1.4.2 海明码
可以检错、纠错
- 码距 = 2,能检错
- 码距 ≥ 3,有可能纠错
在数据位之间的特定位置上插入个校验位,通过扩大码距来实现检错和纠错。
设 数据位 是 位, 校验位 是 位,则n和k必须满足: 。
1.4.3 循环冗余校验码(CRC)
可以检错,不能纠错,码距 = 2

循环冗余校验码是由 两部分组 成的,左边为 信息码(数据) ,右边为 校验码 。若 信息码占位,则校验码就占位 。其中, 为CRC码的字长,所以又称为码。
校验码是由信息码产生的,校验码位数越多,该代码的校验能力就越强。
在 求CRC编码 时, 采用 的是 模2运算 。
2. 计算机体系结构
2.1 计算机体系结构的发展
2.1.1 计算机体系结构的分类
- 按处理机数量(宏观)
- 单处理系统
- 并行处理与多处理系统
- 分布式处理系统
- 按并行程度(微观)
- Flynn分类法
- 冯泽云分类法
- Handle分类法
- Kuck分类法
2.1.2 指令系统
- CISC与RISC
- RISC,Complex Instruction Set Computer,复杂指令集计算机
- CISC,Reduced Instruction Set Computer,精简指令集计算机
ㅤ | RISC | CISC |
指令种类 | 少、精简 | 多、丰富 |
指令复杂度 | 低 | 高 |
指令长度 | 固定 | 变化 |
寻址方式 | 少 | 复杂多样 |
实现(译码)方式 | 硬布线控制逻辑 | 微程序控制技术 |
通用寄存器数量 | 多、大量 | 一般 |
流水线技术 | 支持 | 不支持 |
- 指令的流水处理
指令的控制方式:顺序方式、重叠方式、流水方式
RISC采用的流水技术有:超流水线,超标量、超长指令字
- 吞吐率和流水建立时间
- 流水线执行总时间 = 一条完整指令的时间 ,n 为指令数
- 流水线(操作)周期:执行时间最长的一段操作的时间
吞吐率:单位时间内流水线处理机流出的结果数。对指令而言,指单位时间内执行的指令数。
2.2 存储系统
2.2.1 存储器的分类
- 按访问方式:
- 按地址访问的存储器、按内容访问的存储器
- 按存储器所处位置
- 内存:主存,用来存放机器当前运行所需的程序和数据
- 外村:辅存,用来存放当前不窜与运行的大量信息,而在需要时调入内存
- 按存储器的构成材料
- 磁存储器:用磁介质做成
- 半导体存储器:
- 根据所用元件:双极型、MOS型
- 根据数据:静态、动态、
- 光存储器:利用光学方法读/写数据的存储器
- 按存储器的工作方式:
- 读/写存储器(Random Access Memory,RAM): 读取数据+存入数据
- 只读存储器
- ROM (Read Only Memory) 固定只读存储器
- PROM (Programmable Read Only Memory) 可编程的只读存储器,内容可有用户一次性写入,写入之后不能再修改
- EPROM (Erasable Programmable Read Only Memory) 可编程可擦除只读存储器。读出、写入、写入后修改
- EEPROM (Electrically Erasable Programmable Read Only Memory) 电擦除可编程只读存储器
- FM (Flash Memory) 闪存,其特性介于EPROM 和EEPROM之间,类似于EEPROM
- 按寻址方式:
- RAM,随机存储器
- SAM,顺序存储器
- DAM,直接存储器
- 立即寻址: 操作数 就包含 在指令中
- 直接寻址: 操作数 存放 在内存单元中 , 指令中 直接 给出操作数 所在存储单元的 地址
- 寄存器 址: 操作数 存放 在 某一 寄存器中 , 指令 中 给出 存放操作数的 寄存器名
- 寄存器间接寻址: 操作数 存放 在内存单元中 , 操作数 所在存储单元 的地址在 某个 寄存器中
- 间接寻址: 指令 中 给出操作数地址的地址
- 相对寻址: 指令地址码给出 的是一个 偏移量 (可正可负), 操作数地址等于本条指令的地址加上该偏移量
- 变址寻址:操作数地址等于 变址寄存器 的内容 加偏移量
寻址方式:
寻址速度:立即寻址 > 寄存器寻址 > 直接寻址 > 寄存器间接寻址 > 间接寻址
2.2.2 相联存储器
按 内容访问 的存储器

2.2.4 高速缓存 Cache

- Cache
- 用来存放当前最活跃的程序和数据
- 对程序员来说是透明的
- 组成部分
- 控制部分:
- 存储部分
- Cache中的地址映像方法
- 直接映像:主存的块与Cache块的对应关系是固定的
- 全相联映像:允许主存的任一块可以调入Cache存储器的任何一个块的空间中
- 组相联映像:是前两种方式的折中方案,即 组采用直接映像、块采用全相联映像方式
- 发生块冲突从少到多的顺序:全相联映像 ➺ 组相联映射 ➺ 直接映射
2.3 输入输出技术
2.3.1 直接程序控制
- 输入输出过程 是 在CPU执行程序的控制下完成的
- CPU和 I/O(外设)只能串行工作

2.3.2 中断方式
- 中断
- 计算机在执行程序过程中,当遇到急需处理的事件时,暂停当前正在运行的程序,转去执行有关服务程序,处理完后自动返回源程序,这个过程称为中断
- 中断向量:提供中断服务程序的入口地址
- 中断响应时间:发出中断请求开始,到进入中断服务程序
- 保存现场:返回执行源程序
- 多级中断使用堆栈来保护现场最有效
- 中断驱动方式
- CPU 和 I/O(外设)可并行工作

2.3.3 直接存储器存取方式(DMA)
- CPU 和 I/O(外设)可并行工作
- 一次读写的单位为”块“而不是字

2.4 总线
一般来说,任何连接两个以上电子元器件的导线都可以称为总线(BUS)
- 微机中的总线分为 数据总线 、地址总线 、控制总线
- 数据总线(DB):传送 数据信息,双向
- 地址总线(AB):传送 CPU发出的地址信息,单向
- 控制总线(CB):传送 控制信号、时序信号和状态信息等,双向线表示
3. 计算机安全
3.1 加密技术和认证技术
3.1.1 加密技术
- 对称加密 (私钥 / 私有密钥)
- 算法:DES、3DES、RC-5、IDEA、AES、RC4
- 加密和解密是同一个密钥,且只有一个密钥
- 密钥分发有缺陷
- 加密解密速度很快,适合加密大量明文数据
- 非对称加密(公钥 / 公开密钥)
- 算法:RSA、ECC、DSA
- 加密和解密不是同一把密钥,一共有两把密钥,分别是公钥、私钥
- 不能通过一把推出另一把
- 用接收方的公钥加密明文,可以实现防止窃听的效果
- 密钥分发没有缺陷,加密解密速度很慢

对称密钥(私钥、私有密钥加密)算法 (共享密钥加密算法) | 非对称密钥(公钥、公开密钥加密)算法 |
DES | RSA |
3DES | ECC |
RC-5 | DSA |
IDEA | ㅤ |
AES | ㅤ |
RC4 | ㅤ |
3.1.2 认证技术
摘要:将发送的明文进行Hash算法后得到 摘要,放在密文后一起发送过去,与接收方解密后的明文进行相同的Hash算法,得到的摘要进行对比。如果一致,则没有篡改,否则有篡改
数字签名:发送方用自己的私钥对摘要进行签名(加密),得到数字签名放在密文后一起发送过去,接收方用发送方的公钥对数字签名进行验证(解密),如果验证成功则该消息没有被假冒且不能否认否则该消息的真实性为假冒发送
- 数字签名 是用 私钥签名 ,公钥验证 ,一般是 对信息摘要 进行 签名
- 数字签名是 非对称加密算法 的一种方法来 保证信息不会被篡改
数字证书:
- CA:权威机构
- 用户向CA机构申请数字证书将个人信息和公钥发给CA机构,CA机构颁给用户数字证书, 数字证书用 CA的私钥进行签名 (加密),用 CA的公钥验证 (解密)数字证书得到用户的公钥
数字证书 主要是用来对用户 身份进行认证
数字签名 主要用于 确保消息不可被否认
3.2 计算机可靠性
- 可靠性(R)
- 串联系统:
- 并联系统:


- 作者:Zzhangly
- 链接:http://zzhangly.top/article/Software-Designer01
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。