计算机组成原理期末复习

计组知识点

第一章

  • 国外计算机发展
  1. 电子管计算机(1946—1958 年)
  2. 晶体管计算机(1958—1964 年)
  3. 集成电路计算机(1964—1971 年)
  4. 超大规模集成电路计算机(1971 年至今)

第二章

一、机器码基本概念

用二进制的 0/1 表示符号位(0 表正、1 表负)+ 数值位的编码形式,称为机器码(机器数)。
常用定点数机器码包括:原码、反码、补码


二、原码

1. 编码规则

  • 正数:符号位为 0,数值位与真值的数值位一致;
  • 负数:符号位为 1,数值位与真值的数值位一致。

2. 定点数原码公式

  • 定点小数(形式:\((x_0x_1x_2\cdots x_n)\)\(x_0\) 为符号位):

\[[x]_{\text{原}}= \begin{cases} x, & 0 \le x < 1 \\ 1+|x|, & -1 < x \le 0 \end{cases} \]

  • 定点整数(形式:\((x_0x_1x_2\cdots x_n)\)\(x_0\) 为符号位):

\[[x]_{\text{原}}= \begin{cases} x, & 0 \le x < 2^n \\ 2^n+|x|, & -2^n < x \le 0 \end{cases} \]

3. 0 的表示

原码中 0 有两个编码:
\([+0]_{\text{原}}=0000\cdots0\)
\([-0]_{\text{原}}=1000\cdots0\)

4. 特点

  • 优点:表示直观,仅需符号位加数值绝对值;
  • 缺点:存在两个机器 0,加减法运算复杂,仅用于浮点数尾数。

三、反码(1 的补码)

1. 编码规则

  • 符号位与原码一致;
  • 正数:反码与原码相同;
  • 负数:数值位逐位取反。

示例

  • \(x=+0.1101\)\([x]_{\text{反}}=0.1101\)
  • \(x=-0.1111\)\([x]_{\text{反}}=1.0000\)

四、补码(2 的补码)

1. 模的概念

模(模数)表示计数系统的范围,记为 \(\text{mod } M\),超过模的部分自动舍弃。

\[16 \equiv 4 \ (\text{mod }12), \quad -8 \equiv 4 \ (\text{mod }12) \]

2. 定点小数补码定义

形式:\((x_0x_1x_2\cdots x_n)\)\(x_0\) 为符号位,模为 2:

\[[x]_{\text{补}}= \begin{cases} x, & 0 \le x < 1 \\ 2+|x|, & -1 \le x < 0 \end{cases} \]

3. 负数补码的简便求法

(1)反码加 1 法

规则:符号位为 1,数值位逐位取反后末位加 1。

\[x=-1000 \Rightarrow [x]_{\text{补}}=11000 \]

(2)扫描法

规则:符号位为 1,从右向左扫描,找到右起第一个 1,该位及其右边保持不变,其左边逐位取反。

\[x=-1000 \Rightarrow [x]_{\text{补}}=11000 \]

4. 补码求真值

  • 符号位为 0:真值为正;
  • 符号位为 1:真值为负,数值位取反加 1 或扫描还原。

第三章

一、溢出的概念

由于字长有限,运算结果超出表示范围称为溢出。

  • 正溢:正数加正数得负;
  • 负溢:负数加负数得正。

二、溢出检测方法

1. 符号位一致性检测法

  • 同号数相加才可能溢出;
  • 加法判别式:

\[V=X_fY_f\overline{S_f}+\overline{X_f}\,\overline{Y_f}S_f \]

  • 减法判别式:

\[V=X_f\overline{Y_f}S_f+\overline{X_f}Y_f\overline{S_f} \]

2. 进位一致性检测法

最高数值位进位为 \(C_d\),符号位进位为 \(C_f\)

\[C_d \ne C_f \Rightarrow \text{溢出} \]

3. 变形补码(双符号位)检测法

  • 正数:00,负数:11
  • 结果为 01:上溢;10:下溢

\[V=S_{f1}\oplus S_{f2} \]


第四章

一、存储单元表示

  • 电容有电荷 → 表示 1
  • 电容无电荷 → 表示 0

二、单管 DRAM 读操作流程

  1. 预充:位线预充到 \(V_{CC}/2\)
  2. 访问:电荷重分配;
  3. 放大:跷跷板放大器放大信号;
  4. 恢复:恢复电容电荷并刷新;
  5. 输出:列选通输出数据。

三、DRAM 刷新

  • 最大刷新周期:2 ms、4 ms、8 ms;
  • 按行刷新。
刷新方式 特点
集中刷新 有死区
分散刷新 无死区但速度慢
异步刷新 综合性能最好

四、DRAM 与 SRAM 区别

项目 SRAM DRAM
刷新 不需要 需要
速度
密度
用途 Cache 主存

第五章 指令系统

一、指令寻址方式

  • 顺序寻址:\(PC \leftarrow PC+\text{指令长度}\)
  • 跳跃寻址:PC 由指令给出目标地址

二、操作数寻址方式

方式 有效地址 EA
立即 操作数 = D
直接 \(EA=D\)
间接 \(EA=(D)\)
寄存器 操作数在寄存器
寄存器间接 \(EA=R[D]\)
相对 \(EA=PC+D\)
变址 \(EA=IX+D\)
基址 \(EA=BR+D\)
堆栈 \(EA=SP\)

第六章 中央处理器

1. 程序计数器 PC

  • 保存下一条指令地址;
  • 顺序执行时自动加指令长度;
  • 转移时由指令改写。

2. 地址寄存器 AR

  • 保存主存访问地址;
  • 位宽等于地址总线宽度。

3. 数据寄存器 DR

  • CPU 与主存之间的数据缓冲;
  • 位宽等于机器字长。

4. 指令寄存器 IR

  • 保存当前正在执行的指令;
  • 指令送入译码器。

第七章

一、微程序控制思想

将控制信号编码为微指令,若干微指令组成微程序,存于控制存储器中。

二、核心概念

名称 含义
微命令 控制信号
微操作 基本硬件操作
微指令 相容微命令集合
微程序 实现一条机器指令

三、微指令周期

一个微指令周期等于一个时钟周期。

四、微程序控制器组成

  1. 控制存储器
  2. 地址转移逻辑
  3. 微地址寄存器

作业重点

第二章 第3题

3.(40分) 已知某C语言编译器中,浮点数表示采用IEEE754标准,变量i的定义如下:
float i = -20.75,试求出变量i在存储器中的存储格式(结果用十六进制给出)。


第四章
(一)

  1. (30分)某计算机系统使用半导体存储器构建主存,其数据线为64位,已知DRAM芯片规格为:256M×32位,若要组成32GB主存,按字节地址编址,并采用内存条的形式,问:

(1)该系统主存需要多少片DRAM芯片?

(2)若每个内存条为2G×64位,共需要多少内存条?每个内存条内需要多少片DRAM芯片?

(3)若要实现32GB主存的访问,地址线最少需要多少位?设主存地址首地址从0开始,其末地址是多少?(给出十六进制结果)


  1. (30分)某计算机字长32位,采用直接相联Cache,主存容量4MB,Cache数据存储体容量为4KB,块长度为8个字。

(1)画出直接相联映射方式下主存字节地址划分情况,并说明每个字段位数。

(2)设Cache初始状态为空,若CPU顺序访问(读取)0-99号单元,每次访问一个单元(一个字),并重复此操作10次,请计算Cache命中率。


3.(20分)已知Cache命中率为90%,主存访问时间为120ns,Cache访问时间为20ns:

(1)若CPU访问10000次,共有多少次未命中?

(2)平均访问时间是多少?

(3)若通过技术提升命中率至95%,系统效率为多少?


第五,六章 第1题

img

  1. (20分)设有一台计算机,其指令长度为16位,有一类RS型指令的格式:

其中,OP为操作码,占6位;R为寄存器编号,占2位,可访问4个不同的通用寄存器;MOD为寻址方式,占2位,与形式地址A一起决定源操作数,规定如下:

     MOD=00,为立即寻址,A为立即数;

     MOD=01,为相对寻址,A为位移量;

     MOD=10,为变址寻址,A为位移量。

假定要执行的指令为加法指令,存放在1000H单元中,形式地址A的编码为01H,其中H表示十六进制数。该指令执行前存储器和寄存器的存储情况如图所示,假定此加法指令的两个源操作数中一个来自于形式地址A或者主存,另一个来自于目的寄存器R0,并且加法的结果一定存放在目的寄存器R0中。

在以下几种情况下,该指令执行后,R0和PC的内容为多少?

(1)若MOD=00,(R0)=__________。

(2)若MOD=01,(R0)=__________。

(3)若MOD=10,(R0)=; (PC)=


  1. (40分)某单总线结构的计算机框图如下图所示如下所示。指令“sub rd,rs,rt”的功能为“R[rd] ← R[rs] - R[rt]”,即把寄存器Rrs和Rrt的值相减,结果存入寄存器Rrd。
    img
    (1)分析CPU的数据流和控制流,给出①②③④⑤的部件名称;

(2)给出指令取指周期的数据通路;

(3)请画出指令“sub rd,rs,rt”执行部分的流程图,包括数据流和控制流。.(40分)某单总线结构的计算机框图如下图所示如下所示。指令“sub rd,rs,rt”的功能为“R[rd] ← R[rs] - R[rt]”,即把寄存器Rrs和Rrt的值相减,结果存入寄存器Rrd。

(1)分析CPU的数据流和控制流,给出①②③④⑤的部件名称;

(2)给出指令取指周期的数据通路;

(3)请画出指令“sub rd,rs,rt”执行部分的流程图,包括数据流和控制流。

  • 会问给出一条指令问他的操作数,寻址方式
posted @ 2025-12-30 13:48  LFmin  阅读(15)  评论(0)    收藏  举报