分值:5~6分
1.1 中央处理单元(CPU)
计算机系统的核心部件——中央处理单元(CPU),负责获取程序指令、对指令进行译码并加以执行。
1.1.1 计算机基本硬件系统
计算机基本硬件系统由 运算器、控制器、存储器、输入设备和输出设备 5大部件组成。
CPU是硬件系统的核心,用于数据的加工处理,能完成各种算术、逻辑运算及控制功能。
1.1.2 CPU的功能 ⭐
(待补充详细功能描述)
1.1.3 CPU组成
1)运算器 ⭐
运算器组成:算术逻辑单元(ALU)、累加寄存器、数据缓冲寄存器和状态条件寄存器。是数据加工处理的部件,用于完成计算机的各种运算和逻辑运算。
运算器主要功能:
- 执行所有的 算术运算
- 执行所有的 逻辑运算 并进行逻辑测试
运算器各组成部分:
| 组成 | 英文缩写 | 功能说明 |
|---|---|---|
| 算术逻辑单元 | ALU | 负责处理数据,实现对数据的算术运算和逻辑运算 |
| 累加寄存器 | AC | 通用寄存器,当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区 |
| 数据缓冲寄存器 | DR | 作为CPU和内存、外部设备之间数据传送的中转站 |
| 状态条件寄存器 | PSW | 保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容 |
2)控制器 ⭐
控制器用于控制整个CPU的工作,决定了计算机运算过程的自动化。
指令 = 操作码 + 地址码。例如:1 + 2 中 1和2为地址码;+为操作码。
控制器组成:
| 组成 | 英文缩写 | 功能说明 |
|---|---|---|
| 指令寄存器 | IR | 保存当前CPU执行的指令 |
| 程序计数器 | PC | 初始时保存的内容是程序第一条指令的地址,执行指令时,CPU自动修改PC的内容对PC加1,使其保持的总是将要执行的下一条指令的地址 |
| 地址寄存器 | AR | 保存当前CPU所访问的内存单元的地址 |
| 指令译码器 | ID | 对指令中的操作码字段进行分析解释,识别该指令规定的操作,向控制器发出信号,控制各部件工作,完成所需的功能 |
1.2 计算机进制 ⭐
1.2.1 计算机基本单位 ⭐
数值在计算机中的表示为机器数,特点是采用二进制来表示。
常用单位及转换:
| 单位 | 英文 | 描述 | 转换 |
|---|---|---|---|
| 位 | bit(b) | 最小的数据单位 | — |
| 字节 | Byte(B) | 最小的存储单位 | 1B = 8bit |
| 千字节 | KB | — | 1KB = 1024B = 2^10 B |
| 兆字节 | MB | — | 1MB = 1024KB |
| 吉字节 | GB | — | 1GB = 1024MB |
| 太字节 | TB | — | 1TB = 1024GB |
1.2.2 进制
| 进制 | 符号 | 数码范围 |
|---|---|---|
| 十进制 | D | 0-9 |
| 二进制 | B | 0,1 |
| 八进制 | O | 0-7 |
| 十六进制 | H | 0-15 |
进制转换规则:
- 按权展开求和:n进制 → 十进制
- 除n取余法:十进制 → n进制
进制加减法:
- 加法:逢 n 进 1
- 减法:借 1 当 n
计算题做题思路:
- 大 减 小 再加 1
- 十六进制 转 十进制
- 再根据题意 转换单位 进行计算
1.3 原码、反码、补码、移码
对于n位的机器数其表示编码有原码、反码、补码、移码等表示。
以下均假设 n=8:
原码
最高位为符号位,0表示正号,1表示负号,其余的n-1位表示数值的绝对值。
反码
最高位为符号位,0表示正号,1表示负号,其余的n-1位表示数值的绝对值。
其中正数的反码与原码相同,负数的反码则是除符号位以外其余各位按位取反。(二进制取反即为0变成1,1变成0)
补码
最高位为符号位,0表示正号,1表示负号,其余的n-1位表示数值的绝对值。
其中正数的补码与原码和反码相同,负数的补码则是在其反码的基础上再加1。
- 补码的正负0编码相同
- 同时对补码再求一次补码等于其原码
移码
正数和负数的移码是在其补码的基础上对符号位取反。移码的正负0编码相同。
原、反、补、移码表示范围
| 编码方式 | 可表示个数 | 特点 |
|---|---|---|
| 原码 | 2^n - 1 | 0的表示占了两个编码 |
| 反码 | 2^n - 1 | 0的表示占了两个编码 |
| 补码 | 2^n | 0的表示有相同的编码 |
| 移码 | 2^n | 0的表示有相同的编码 |
当机器字长为n时,补码和移码可表示 2^n 个数(0的表示有相同的编码)
原码和反码只能表示 2^n - 1 个数(0的表示占了两个编码)
1.4 浮点数
核心规则:
- 阶码不一致 先对阶,小阶向大阶对齐,尾数右移
- 浮点数所能表示的 数值范围由阶码决定
- 所表示数值的 精度由尾数决定
1.5 寻址
(待补充详细内容)
1.6 校验码
码距: 一个编码方案中任意两个合法编码之间至少有多少个二进制位不同。
- 码距=2:有检错能力
- 码距≥3:才可能有纠错能力
- 一个校验码要想能够检错和纠错,那么它的码距至少是3
1.6.1 海明码
海明码利用多组数位的奇偶性来检错和纠错,可以检错和纠错,码距为3。
1.6.2 奇偶校验码
码距为2,仅能检测出奇数位错误,不能纠错。
- 奇校验:增加一位校验码,使得编码中1的个数为 奇数
- 偶校验:增加一位校验码,使得编码中1的个数为 偶数
1.6.3 循环冗余校验码(CRC)
k个数据位后跟 r个校验位,可以检错但不能纠错,码距为2,采用模2运算得到校验码。
总结对比表
| 校验码类型 | 码距 | 检错能力 | 纠错能力 | 特点 |
|---|---|---|---|---|
| 奇偶校验码 | 2 | 奇数位错误 | 无 | 简单,只能检错 |
| 循环冗余校验码 | 2 | 有 | 无 | 模2运算,检错能力强 |
| 海明码 | 3 | 有 | 有 | 利用多组奇偶性,可检错纠错 |
评论