2024考研408-计算机组成原理第一章-计算机系统概述学习笔记

文章目录

前言

目前正在备考24考研,现将24计算机408学习整理的知识点进行汇总整理。

博主博客文章目录索引:博客目录索引(持续更新)


起步:认识计算机

计算机中通过电信号来传递数据:计算机识别二进制数据的原理

image-20230520204944172

熟悉硬件:

image-20230520205155304

  • 主板上的印刷电路如何传输数据:可以看到有多个电路,这个就是各个部件之间传输电路的通道。

一、计算机发展历程

1.1、什么是计算机系统

image-20230520205454696

软件的分类:

image-20230520205603541

计组中主要去探究硬件部分!


1.2、计算机硬件的发展

1.2.1、总览四代发展

主要是利用电路来进行运算,下面是各个时代发展阶段:

image-20230520211514201


1.2.2、四代发展详细介绍

第一代:电子管时代

在这一代时,程序员都是使用机器语言来进行编程

image-20230520210107286

image-20230520210355990

第二代:晶体管时代,替代了电子管

体积减小、功耗降低,计算速度也达到了质的飞跃,此时出现面向过程的语言:FORTRAN,有了操作系统雏形。

image-20230520210746924

第三代:中小规模集成电路时代,集成电路

计算机变得越来越小,功耗变低,集成电路比手动焊接的晶体管的可靠性更好,此时高级语言迅速发展,此时有了分时操作系统。

  • 其实就是将晶体管、电容元器件高密度的存在了电路板上。

此时阶段主要用于科学计算,暂时还没有步入个人生活:

image-20230520211054607

第四代:大规模,超大规模集成电路

随着集成电路的提升,出现第四代,此时开始出现微处理器,也就是CPU,例如苹果的A13。

芯片技术的进步导致微处理器的诞生,同时也导致微型计算机的诞生,之后微型计算机开始逐步步入每一个人的生活。

image-20230520211456581

看一下Intel公司处理器的发展:

image-20230520211726696

  • 例如采用8080的8位CPU处理16位字长,则需要处理两次,而采用8086则只需要处理一次即可。

1.2.3、计算机硬件的发展历史

image-20230520212102141


1.2.4、摩尔定律介绍

摩尔定律出自仙童公司的摩尔提出的:

image-20230520212244305


1.3、计算机软件的发展

1.3.1、软件的发展

image-20230520212637853


1.3.2、目前的发展趋势

image-20230520213003858


知识回顾与重要考点

image-20230520213221616


二、计算机的层次结构

2.1、计算机硬件的基本组成

image-20230521084610532

2.1.1、冯诺依曼基本思想及特点(以运算器为中心,包含五大部件)

早期的冯诺依曼机器

原本的手动接线需要程序员或操作员先去手动的操作布线,之后才操作完成之后才能够进行运算。

而冯诺依曼提出了存储程序的概念,提前可以将二进制代码输入计算机的主存储器,之后按照存储器的首地址执行程序的第一条指令,接着就往后执行其他指令直到结束。

image-20230521085201475

image-20230521085723038

  • 存储器->控制器中的传输线:控制器从存储器中读取指令的一个数据流

对于同一个功能可以使用软件来实现,也可以使用硬件来实现。

  • 软件实现成本更低,效率更低。
  • 硬件实现成本更高,效率更高。

冯诺依曼计算机特点

image-20230521093542902

以运算器为中心,那么相当于所有的数据都要经过运算器,那么就会导致效率降低,针对于这个问题,现代计算机做了优化,实际加工厂例子

image-20230521093942804

image-20230521145049932

  • 有些计算机的指令可执行多个地址码的,例如一条指令包含两条地址,这种指令被称为二地址指令。
  • 存储程序:在程序运行之前,会将指令与数据提前存储到内存当中。

2.1.2、现代计算机的结构(以存储器为中心)

优化之前冯诺依曼以运算器为核心的架构,现代计算机的机构是以存储器为核心,如下图:

image-20230521094617794

输入设备的数据是直接放入到存储设备中去的,当运算器处理完毕之后,输出设备也会直接从存储器中取出数据,此时就可以更多的解放运算器的时间,让运算器进行更多的计算。

注:由于运算器、控制器之间的逻辑关系十分紧密,在大规模集成电路工艺出现了之后,这两个部件通常是集成到同一个部件上的,整合了整两个部件就是现在的CPU。

看一下硬件的组成部分及主机、IO设备的包含范围

image-20230521094905203


知识点回顾与重要考点

image-20230521095012634


2.2、各个硬件的工作原理

寄存器也是存放二进制数据,MAR是存放与地址相关的二进制数据,MDR是存放实际的数据

2.2.1、主存储器的基本组成

左边是主存储器的结构,而右边则是去仿照主存储器来说明的现实应用:

image-20230521105124995

接下来理解一下MAR与MDR的作用

对于存储器来说,CPU可以指明要写入到哪个位置(放入到MAR),写入的哪个数据(放入到MDR),最后CPU会通过控制总线告诉主存储器说这次要进行的操作是写操作,那么主存储器根据CPU发出的这三个信息,就可以往对应的位置写入CPU想要写的数据了。

image-20230521105214928

接着来理解下存储体:一个存储体包含多个存储单元,一个存储单元对应一个地址

image-20230521110232597

  • 一个字的大小要看主存储器的计算机硬件如何设计,有8、16、32位的。不要将其和1个字节混淆,还有1B、1b。

额外扩展:例如宽带的100Mbps换算对应的迅雷下载为B,则中间有8倍的关系,实际下载为10MB/s。

image-20230521110017491


2.2.2、运算器的基本组成

主要有三个不可或缺的寄存器以及一个核心部件。

运算器里面制造成本最高的是ALU,其他基本都是存放操作数的。

image-20230521110856466


2.2.3、控制器的基本组成

在控制器中CU才是真正的核心,很多时候会将PC、IR统称为取指阶段,CU表示为执行阶段:

image-20230521111123178


2.2.4、计算机的工作过程

高级语言示例并分析指令执行

下面执行一段程序,我们来看在计算机硬件部分是如何运行的:

image-20230521145155073

接下来看一下对于一条y=a*b+c指令在硬件指令的运行过程

image-20230521133707528


①第一条指令:执行取数指令

执行主存地址0的一条指令流程:其是一条取数指令,包含下面的多个硬件执行步骤

初步:PC(0):取出地址为0的指令并执行。

#1:(PC)->MAR:会导致(MAR)=0,控制器向主存指明了接下来要访问的是0号地址的这一串数据,同时控制器会通过控制总线告诉主存储器这次要进行的是读操作,接下来主存储器会根据MAR记录的这条地址去存储器里找出0号地址所对应的二进制数据,并将二进制数据放入到MDR当中。

  • (MAR)有括号,表示的是里面的内容。

#3 M(MAR)->MDR:表示将主存储器中的MAR地址中的数据放入到MDR当中。

  • M(MAR):表示的是主存储器里的MAR

#4 (MDR)->IR:会将当前MDR中的数据放入到IR寄存器中。

#5 OP(IR)->CU:会将IR的前6位送到CU中,CU识别6位二进制为取数指令。

#6 Ad(IR)->MAR:此时会将在IR中的地址码送到MAR中,导致(MAR)=5

#8 M(MAR)->MDR:表示将主存储器中的MAR地址中的数据放入到MDR当中。

最终在控制单元的操作下,会将MDR的数据传输到ACC中。

#9 (MDR)->ACC:将MDR中的值传输到ACC累加器中。

上面的多个步骤实际上可分为取指令、分析指令以及执行指令:

image-20230521134441988

此时当一条指令执行完成之后,PC会自动+1,也就是说会去执行主存地址为1的指令。


②第二条指令:执行乘法指令

接下来执行第二条指令:很明显中间过程也是让CU去处理识别操作码000100,即为乘法指令,对应的地址码指定主存地址为6的

image-20230521141334902

执行第二条指令的完成步骤如下图所示:

image-20230521142602925

注意在这一个阶段将MDR中的数据会传输到MQ当中去,此时b=3。

接着会将对应的被乘数2,也就是(ACC)->x,将ACC中的值放入到x中,令(x)=2。

最终执行由ALU执行完乘法操作,(MQ)*(x)->ACC,将乘法求得的数放置到ACC中。

注意:其中的取指令、分析指令过程与执行指令一一致,对于执行xx指令的步骤不相似。


③第三条指令:执行加法指令

上面第二条指令执行完毕之后,PC同样会加1,此时开始执行主存地址为2的PC指令:

image-20230521143333212

在执行加法的时候,X中存放被加数,ACC中存放加数。


④第四条指令:执行存储操作

第三条指令执行完成后,执行主存地址为3的指令:实际就是将之前的y=a*b+c=2*3+1=7存储到指定0000000000000111地址空间中

image-20230521143955752

第五条指令:执行停机指令

image-20230521144052288


知识点回顾与总结

image-20230521144458868


2.3、计算机系统的层次结构

2.3.1、计算机的层次结构

上面计算机工作过程中执行多条指令中的一个指令的多个命令,实际上就是微指令:

image-20230521152107649

像这里的层次结构(与操作系统有些不同)更多的是从编程人员与硬件设计人员角度来考虑的。


2.3.2、三种级别的语言(机器、汇编与高级语言,汇编、编译与解释程序)

image-20230521151222481

部分语言并不是直接通过编译程序来进行一步步编译到机器语言的,而是通过解释程序来翻译成与之对等的机器语言程序。

编译程序与解释程序区别

  • 编译程序是可以编译成.exe文件来最终执行的。(只需要翻译一次)
  • 解释程序则是翻译一句就立即执行,每次执行都要翻译。(每次执行都要翻译一次)

知识回顾与重要考点

image-20230521152305109


2.4、计算机体系结构vs计算机组成原理

image-20230521152738919

两者的不同点

  • 计算机体系结构:探讨的指令系统怎么设计,我设计的计算机需要对上层的程序员提供什么样的指令,有无乘法指令,若是不提供乘法指令,那么想要实现乘法功能的程序员,那么就只能通过执行多次加法来得到最终结果。
  • 计算机组成原理:如果我要给上层提供乘法指令,那么对于乘法指令我如何用硬件来实现。

三、计算机的性能指标

3.1、存储器的性能指标

主要包含MAR与MDR:

image-20230521154057314

注意下下面的一些注意点

点1:MAR的位数可以直接表示实际的容量,也就是按照最大值来算就可以了。

  • 因为在现实情况中并不是都有满的容量情况,考试直接按照最大来算即可。

点2:关于MAR多少位,为什么就可以直接使用232来计算呢?

image-20230521154235968


3.2、CPU的性能指标

指标:CPU时钟频率、CPU主频、CPI

image-20230521155250952

主频越高,速度也越快,很大程度上反应了CPU的性能。并不是只有主频才会影响CPU运行,还有如CPI等一些指标。

CPI:不同的指令,CPI也有可能会不同,甚至是相同的指令,也会有变化。

  • 一般来说我们都是去计算的一条指令平均耗时:一条指令的耗时 = CPI x CPU的时钟周期

此时我们可以做一题示例

image-20230521155450533

  • 其中3* (1 / 1000)就是一条指令的耗时,那么100条指令耗时就得到了上面的式子。

指标:IPS、FLOPS

image-20230521164522934

  • 例如:2MIPS表示每秒钟2百万条指令。2GIPS表示每秒二十亿条指令。
  • 3TFLOPS:表示3万亿次的浮点运算,拆分为3、T、FLOPS。

3.3、系统整体的性能指标

image-20230521165110495


3.4、基准程序(整体的性能指标,动态测试)

image-20230521165413024

本质上就是给你设计好了一大段程序代码,在这段代码中包含了各种各样的指令,各种指令出现的频次,频率是不一样的,会根据你电脑所运行指令的耗时来评定打分。


关于电脑机器性能好是否只由主频、CPI或者基准测试程序分数决定?

结论:决定执行指令速度的快慢与主频、CPI(一条指令执行的时间)、指令系统(不同的指令系统指令不一样都有,例如若是乘法指令没有就需要执行多条加法指令)有关

**问1:主频高CPU一定比主频低CPU快?**并不是,若是CPI快,后者可能执行的指令也很快!

image-20230521165859244

问2:若是问1中CPI一样呢,是否还是主频高的CPU快

image-20230521170027112

问3:基准程序跑分越好,电脑机器性能越好

image-20230521170057234

分数越高未必越好,要根据你的实际用途来进行测试,例如你的电脑对于运算十分擅长,但是你却用来进行显卡测试,明显不会高分。


知识点回顾与重要考点

image-20230521170216363


整理者:长路 时间:2023.5.20-21

猜你喜欢

转载自blog.csdn.net/cl939974883/article/details/130920912