计算机组成原理期末(初稿)

发布时间 2024-01-12 15:47:13作者: The_A_W

计算机组成原理期末(初稿)

说明:标题带 ' * ' 为待补充或有争议

1. 三个周期:时钟,机器,指令。

指令周期是指完成一条指令所用的时间(由若干个机器周期来表示)

机器周期是指完成一个规定操作所用的时间(比如读写一次存储器等操作所需要的时间)机器周期由若干个时钟周期组成

时钟周期T又称为振荡周期,由单片机片内振荡电路OSC产生,常定义为时钟脉冲频率的倒数,是时序中 最小的时间单位。

最小的时间单位(哪个在上哪个在下):时钟周期,指令周期 →(n)机器周期 →(n)时钟周期

当CPU的主频越高,性能越高吗?
答:主频越高,只能代表时钟周期越小,除此之外,内部结构的映射关系也很重要,两者是共同决定CPU的性能的。评判CPU的具体性能,是看指令周期的大小

2. 补码的表示:-128~127

[-128] =1000 0000

[-1] = 1111 1111

[-127] = 1000 0001

554db6df4a01f88162b561cfe899d92

3. DRAM和SRAM的特点和原理:

SRAM:静态随机存储器,依靠双稳态触发器的两个稳定状态保存信息

依靠双稳态电路内部交叉反馈的机制存储信息。

缺点:功耗较大,容量小

优点:速度快,作Cache

SRAM相关芯片:2114 (1K * 4位)

静态存储器的主力是MOS存储器

DRAM:动态随机存储器,是依靠电路的电容上存储的电荷来暂存西南西的(主存)

优点:功耗小,容量大,速度较快,作主存

DRAM的刷新

含义:定期向电容补充电荷->刷新

原因:动态存储器依靠电容电荷存储信息。平时无电源供电,时间一长电容电荷会泄漏,需定期向电容补充电荷,以保持信息不变。

DRAM相关芯片:2164(64K * 1位)

刷新和重写的区别

重写:破坏性读出后重写,以恢复原来的信息。

刷新:非破坏性读出的动态M,需补充电荷以保持原来的信息。

4. 虚拟存储器

虚拟存储器是一种将辅助存储器(如硬盘)扩展到主存的技术。其基本原理是将主存分割成固定大小的块(页面),并将页面与辅助存储器上的块(页框)进行映射。当程序需要访问某个页面时,虚拟存储器会将该页面从辅助存储器加载到主存中,当页面不再使用时,可以将其换出到辅助存储器中。虚拟存储器的主要目的是增加可用的地址空间,并提供更大的程序和数据存储空间。

5. 中断

中断芯片:8259

6. DMA

名字:直接存储器访问

作用(中断响应过程):当设备提出了随机的I/O请求后,控制系统依靠控制硬件(主要是DMA)直接控制主机和外围设备之间的数据I/O操作

CPU不参与具体的I/O操作控制,只负责启动该DMA,和执行I/O的后善后处理工作,具体操作完,DMA控制器就通过中断的方式告诉CPU

相关的芯片:8237 8257

7. 双端口的型号

双端口的型号:LDT7132

具有连个彼此独立的读写口,两个端口分别具有各自的地址线,数据线和控制线,可进行独立的存取操作

访问冲突:

  1. 当两个端口访问不同的地址时,可以同时进行读写

  2. 当两个端口同时访问同一个地址,会发生访问冲突

    设置BUSY标志,采用仲裁逻辑,由芯片上的判断逻辑决定由哪个端口优先进行读写操作,而暂时关闭另一个被延迟的端口

8. 存储程序的三个要点

三个要点:事先编写程序,存储程序,自动、连续地执行程序

9. 汉字和ASCII

ASCII的中文名:美国信息交换标准代码

ASCII能表示的字符:共有128常用的字符,每个ASCLL字符自身用7位编码,
存储器用1字节信息可以存放ASCll码。空出来的一位存放奇偶校验位

汉字内码:是计算机内部存储,处理,传输用的代码,用双字节表示一个汉字

汉字编码分为输入码,内部码,交换码,输入码需要借助区位码对照表,才能转化成内部码

10. 组合逻辑,微程序控制的优缺点;微程序 ->指出序列是什么?

组合逻辑控制器和微程序控制器的各自优缺点

组合逻辑控制器:指产生控制信号即微命令的部件是用组合逻辑线路来实现的控制器。

优点:速度快

缺点:

(1)设计较凌乱,效率较低,检查调试较困难。

(2)不易修改与扩展。

微程序控制器:指将程序技术引入到CPU的构级,即采用微程序控制方式来产生微命令的控制器。

优点:设计比较规整,易于修改补充。

缺点:速度较组合逻辑控制器稍慢。

image

序列 微程序-微命令-微操作。

11. 寻址的方式*

定义: 按某种规则形成操作数的有效地址,把产生操作数的有效地址叫做寻址方式

  1. 立即寻址: 操作数存放于指令中,在读取指令就从指令之中获得了操作数,速度最快

  2. 直接寻址(一层糖衣): 直接给出主存地址或者寄存器号,以读取操作数。

    主存直接寻址:在指令中直接给出操作数的有效主存地址,在根据该地址从主存中读出操数

    寄存器直接寻址:在指令中直接给出寄存器号,操作数实际存储在指定的寄存器中

  3. 间接寻址(两层糖衣):

    主存间接寻址

    在指令中直接给出主存单元中操作数地址的地址,根据这个地址去访问主存单元中操作数的地址,再根据该地址去访问相应的主存单元中的操作数。

    寄存器间接寻址

    在指令中给出寄存器号,指定的寄存器号中存放的是操作数的有效地址,按照这个有效地址去访问主存单元中的操作数

  4. 变址寻址: 指令给出的是形式地址(不是最好的地址),经过某种计算(相加,相减,高低位地址拼接等)才能获得有效地址,据此访问主存储器,以读取操作数

12. 一维数组和二维数组的寻址方式*

一维数组寻址方式:

寄存器寻址,基址寻址

二维数组寻址方式:

基址变址寻址,间接寻址

13. 南桥北桥的作用

北桥揽括CPU,主存,显卡,主要承担内存控制,视频控制与CPU交互

南桥负责控制外部设备的输出/输出,承担BIOS的管理任务

两者之间通过DMI,即直接媒体接口标准的总线连接

14. 宝图(位置,含义)

image

CPU的主要组成

  1. ALU(算法逻辑单元

  2. 控制逻辑

  3. 工作寄存器

    8086/8088寄存器组

说明:

1. ALU

2. 控制逻辑

3. 寄存器

  1. 通用寄存器R0,R1,R2,R3

    可由CPU通过程序访问,在指令中可为这组寄存器分配各自的编号,可编程访问指定编号的寄存器。

    作用:提供操作数、存放运算结果,提供地址指针、基址、变址、计数器等。

    有的CPU为各通用寄存器分别规定了特定的任务,并按任务进行命名,如:

    AX(Accunulator) — 累加器,使用频度最高,用于算术、逻辑运算以及外设传送信息等。
    BX(Base Register) — 基址寄存器,常用于存放存储器地址。
    CX(Count Register) — 计数器,一般作为循环或串操作等指令中的隐含计数器。
    DX(Data Register) — 数据寄存器,常用于存放双字数据的高16位,在进行乘除运算时,它可作为默认的操作数参与运算,亦可存放外设端口地址

  2. 暂存器C、D

    暂存器C:存取源操作数或源操作数地址

    暂存器D:存取目的地址或运算结果

  3. 与主存的接口寄存器MAR,MDR

    MAR - 地址寄存器:CPU访问主存时,先要找到存储单元,因此设置地址寄存器来存放被访问单元的地址。从内存中读时,先将有效地址送入MAR。(CPU访问主存时的地址由MAR提供)

    MDR- 数据缓冲寄存器:存放CPU与主存之间交换的数据。无论是从主存读出的数据,还是写入主存的数据,都要经过MBR。

  4. 指令寄存器 IR

    作用:用来存放正在执行的指令,它的输出包括操作码信息、地址信息等,是产生微命令的主要逻辑依据。通常在主存的数据寄存器和指令寄存器之间建立直传通路,以提高速度。

  5. 程序计数器 PC

    作用:指示指令在存储器中的存放位置。

    注意:取指结束后,PC内容增加以指示下一条指令地址,增加量取决于现行指令所占存储单元数。

  6. 程序状态字寄存器 PSW

    作用:记录现行程序的运行状态和指示程序的工作方式。

    特征位(标志位):转31.

  7. 指针及变址寄存器

    四个16位寄存器SP、BP、SI、DI

    SP(Stack Pointer) 堆栈指针寄存器,用于存放当前堆栈段中栈顶的偏移地址;
    BP(Base Pointer): 基址指针寄存器,用于存放堆栈段中某一存储单元的偏移地址;
    SI(Source Index): 源变址寄存器
    DI(Destination Index): 目的变址寄存器
    SI,DI一般与DS联用,用来确定数据段中某一存储单元的地址。它们主要用于存放存储单元
    段内的偏移量,用他们可实现多种存储器操作数的寻址方式,为不同的地址形式访问存储单元
    提供方便。另外,在字符串操作中,SI和DI都具有自动增量和减量的功能。

*CPU基本组成:

  1. 运算部件
  2. 寄存器组
  3. 微命令产生部件
  4. 时序系统
  5. CPU内部数据通路结构

15. 微程序 -> ... ->微操作

微操作(微命令)->微指令 ->微程序 ->控制存储器

微程序(一对一)机器指令。

微命令(一对一)微操作。 微命令:构成控制信号序列的最小单位。

微指令(有序集合)→ 微程序(一对一) → 机器指令

微操作:由微命令控制是实现的最基本的操作。

扩展

指令: 执行某种基本操作的命令(如加,减)。指令是计算机硬件能够识别并直接执行的操作命令,指示是计算机硬件完成指定的基本操作

程序: 由一系列有序指令构成

指令系统:一台计算机能执行的全部的指令的集合。指令系统是软件和硬件的主要界面。是设计计算机硬件的一个基本依据。是软件设计者编制程序的基础。

几个重要的概念:

  1. 机器指令:提供给使用者编制程序的基本单位,它表明CPU所能完成的基本功能。(程序员)。
  2. 微指令:为实现机器指令中一部操作的微命令组合,它作为CPU内部的控制信息,通常不提供给使用者,对程序员可以是透明的。
  3. 微命令:构成控制信号序列的最小单位称为微命令,又称为微信号。通常是指那些直接作用于部件或控制门电路的命令。如复位控制脉冲等。(门电路是起开关作用的集成电路,它规定了各个输入信号之间满足某种逻辑关系时,才有信号输出,即一个开关作用,由于开放的条件不同,而分为与或非等)。
  4. 微操作:由微命令控制实现的最基本的操作称为微操作,如开门,关门等。
  5. 微周期:从控制存储器中读取一条微指令并执行相应操作说需要的时间。
  6. 微程序:一系列微指令的有序集合称为微程序,用来解释执行机器指令。

image

程序,指令,微程序,微指令(微命令组合),微操作

16. 双端口实验(书上三段话)| 冲突怎么产生?*

17. 机器(数)码与真值的区别:

真值:用正、负符号加绝对值表示数值

机器数:连同数符一起数字化的数称为机器数

18. 原反补移

补码、原码哪个擅长+-,哪个擅长* /:

原码擅长乘除,补码擅长加减

  1. 原码是用绝对值表示的,所以原码表示很直观,用原码实现乘除运算比较方便,但是加减比较复杂,因为它的实际操作要由操作性质(加还是减)和两个数的数符综合决定
  2. 负数补码表示的实质是将负数映射到正数域,因而实现化减为加,达到简化运算的目的

为什么用补码:

计算机是以加法为基础,使用的是补码表示,乘除法在计算机中是变为用加法来表示,如果乘法运算和除法运算用原码来表示,则需要在每次运算的时候将原码变为补码,会降低运算效率,所以直接都采用补码来进行运算。

19. 堆栈指针SP指向:栈顶

20. 校验方法

  1. 奇偶校验:只能发现一位错,但是不能判断是哪位出错,优点为占用的空间小
  2. 海明校验:可以发先出错的具体位置,是多重的奇偶校验,但是占用空间大,需要设置很多校验位
  3. 循环冗余校验:让校验码处有某个约定代码,如果余数为0表明代码正确,如果余数不为0则利用余数指明出错位,是目前应用最广的校验方法

哪个在内存中常见?奇偶校验

21. 显示器的接口类型:

VGA, DVI, HDMI, DP

22. 总线的分类(PPT)

按功能分类

内总线 局部总线 系统总线 外总线

按数据传送格式分类

并行总线 串行总线

按时序控制方式分类

同步总线 异步总线

23. Cache的作用和位置:

中文名称:高速缓存存储器

位置: Cache位于CPU和主存之间的一种临时存储器,他的容量比内存小但是交换速度快。

作用: 存放CPU在当前一小段时间内多次使用的程序和数据,以缓解CPU和主存的速度差异。

24. 存储器的首要特性是什么? 存储容量

25. 三总线分别跑什么数据,以及方向(单向/双向)

  1. 地址总线,单向传输,与CPU接口为MAR。

    传送控制信号时序信号

  2. 数据总线,传输数据和指令,混装,只有CPU才知道是数据还是指令,接口为MDR,IR,与MDR是双向传输,与IR单向传输

    传送数据指令

  3. 控制总线,总体双向,局部为单向。

    传送控制信号时序信号

26. 冯诺依曼体系的核心思想

  1. 计算机硬件系统由五大部件组成(存储器,运算器,控制器,输入设备和输出设备)
  2. 计算机采用二进制形式表示信息(数据、指令)
  3. 采用存储程序的工作方式

27. 统一编制,独立编制,X86体系用的哪个?​​

1.独立编址(专用的I/O端口编址)----存储器和I/O端口在两个独立的地址空间中

(1)优点:I/O端口的地址码较短,译码电路简单,存储器同I/O端口的操作指令不同,程序比较清晰;存 储器和I/O端口的控制结构相互独立,可以分别设计

(2)缺点:需要有专用的I/O指令,程序设计的灵活性较差

2.统一编址(存储器映像编址)----存储器和I/O端口共用统一的地址空间,当一个地址空间分配给I/O端口以 后,存储器就不能再占有这一部分的地址空间

(1)优点:不需要专用的I/O指令,任何对存储器数据进行操作的指令都可用于I/O端口的数据操作,程序 设计比较灵活;由于I/O端口的地址空间是内存空间的一部分,这样,I/O端口的地址空间可大可小,从 而使外设的数量几乎不受限制

(2)缺点:I/O端口占用了内存空间的一部分,影响了系统的内存容量;访问I/O端口也要同访问内存一 样,由于内存地址较长,导致执行时间增加

X86系统是独立编址

28. CPU综合性能取决于哪五个因素?

  1. CPU的主频(单位为GHz)
  2. 平均每秒执行的指令数IPS
  3. 平均每条指令的时钟周期数CPI
  4. 每秒执行定点/浮点的运算次数
  5. CPU的功耗

29. 传输路径/R-R,M-M的路径

寄存器->寄存器 Ri->A/B->AlU->移位器->内总线->Rj
寄存器->主存 Ri->A/B->AlU->移位器->内总线->MDR->数据总线->M
主存->寄存器 M->数据总线->MDR->B->ALU->移位器->内总线->Rj
寄存器->外设 Ri->A/B->ALU->移位器->内总线->MDR->数据总线->I/O设备
外设->寄存器 I/O接口->数据总线->MDR->B->ALU->移位器->内总线->Rj
主存->主存 (老师说不考这么难) M->数据总线->MDR->B->ALU->移位器->内总线->C,C->A/B->ALU->移位器->内总线->MDR->数据总线->M

30. 书2.33, 2.34*

31. PSW,标志位(ZF,...)

标志位

image

编程设定位

image

32. 浮点数的定义:尾数哪个表示范围,哪个表示精度*

image

阶码:阶码是整数,阶符和 m 位阶码的数值部分共同反映 浮点数的表示范围及小数点的实际位置 ,常用移码或补码表示。IEEE754标准中采用移码的表示形式。

尾数:数符表示浮点数的符号,尾数的数值部分的位数 n 反映浮点数的精度 ,常用原码或补码表示。

33. 中断向量的概念*

34. 查询和中断的区别*

中断方式,MCU可以执行别的任务,而查询方式只能进行接收查询,在此期间不能执行其他任务,在实现的区别当然是:是否把接收中断使能位置为有效。

35. 指令所需的操作数存放位置

  1. 内存
  2. 指令本身
  3. CPU内部寄存器
  4. 堆栈
  5. I/O接口的寄存器

36. CPU中断保护现场和恢复现场信息保存到哪里,又从哪里恢复?*

37. 时序信号,时序系统*

38. 总线的技术指标是什么?

总线宽度

总线的工作频率:总线的工作时钟频率以MHZ为单位,工作频率越高,总线工作速度越快,总线带宽越宽

39. 存储器的主要技术指标

主存储器的主要有以下技术指标:

1、存储容量:在一个存储器中可以容纳的存储单元总数、存储空间的大小、字数、字节数。

2、存取时间:启动到完成一次存储器操作所经历的时间、主存的速度。

3、存储周期:连续启动两次操作所需间隔的最小时间、主存的速度。

4、存储器带宽:单位时间里存储器所存取的信息量,数据传输速率技术指标。 主存储器的性能指标主要是存储容量、存取时间、存储周期和存储器带宽。

40. CPU设计的五大步骤

  1. 拟定指令系统
  2. 确定数据通路的总体结构
  3. 拟定指令流程和微命令序列
  4. 安排时序
  5. 形成控制逻辑

41. 需要多少地址线

地址总线的宽度与可寻址的内存单元数量有关,通常用 2^n^ 来表示,其中 n 是地址线的位数。每增加一根地址线,可寻址的内存单元数量翻倍。下面是根据 2n 的规则计算得出的地址线数量: 的规则计算得出的地址线数量:

8k:13根 16k:14根 64k:16根 128k:17根

42. 主存储器的基本组成与逻辑设计

主存储器的基本组成包括存储单元和地址线、数据线、读写控制线等。存储单元是存储数据的基本单元,每个存储单元都有一个唯一的地址。地址线用于传输地址信息,数据线用于传输数据信息。读写控制线用于指示读取还是写入操作。主存储器的逻辑设计通常采用静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)等技术来实现。

43. 串并行*

串行传输速度慢,但费用低,适合远距离传输; 并行传输相对速度更快,但 成本高,适用短距离传输。

44. 同步异步*

同步和异步关注事件之间的时间关系,同步要求事件按照预定的时间进行,而异步则允许事件在没有严格时间关系的情况下发生。

45. 计算机工作流程

image

46. 主存的设计原则

  1. 驱动能力
  2. 存储器芯片类型的选择
  3. 存储器芯片于CPU的时序配合
  4. 存储器的地址分配和片选译码
  5. 片选信号(RAS)'和列选信号(CAS)'的产生

计算题

补码一位乘法(保留一位符号位)

指令流程(3-36,3-37,...‘六个’)

四大操作

  1. 取指操作FT:公共操作:M->IR,PC+1->PC (保底分数)

  2. 源操作ST:对源地址进行操作

  3. 目的操作DT:对目的地址进行操作

  4. 执行操作ET: PC->MAR

  5. MOV(R0) , (R1)的读取和执行流程

    1. FT0 M->IR,PC+1->PC
      ST0 R1->MAR
      ST1 M->MDR->C
      DT0 R0->MAR
      ET0 C->MDR
      ET1 MDR->M
      ET2 M->MAR
  6. ADD(R0),(R1)的读取和执行流程

    1. FT0 M->IR,PC+1->PC
      ST0 R1->MAR
      ST1 M->MDR->C
      DT0 R0->MAR
      DT1 M->MDR->D
      ET0 C ADD D->MDR
      ET1 MDR->M
      ET2 M->MAR

存储器搭建*

  1. 算片数
  2. 地址线、数据线、多少根(文字描述)
  3. 片选线

字位,分配,画图

image

输入输出设备

​​