这一章的考点主要是集中在计算机的性能指标,前面部分的发展历程也是简单的考察点,计算机的层次结构的概念要记清楚,在后面的章节中会详细讲解一部分的知识,所以对于一些概念无需深究,等学完所有的知识后再来看第一章,就会明白很多。
冯诺依曼体系结构
要求:理解概念
摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。这一定律揭示了信息技术进步的速度 [1] 。尽管这种趋势已经持续了超过半个世纪,摩尔定律仍应该被认为是观测或推测,而不是一个物理或自然法。
计算机系统由软件和硬件两部分组成(不需要背过,但要有概念) 硬件 硬件系统主要由中央处理器、存储器、输入输出控制系统和各种外部设备组成。中央处理器是对信息进行高速运算处理的主要部件,其处理速度可达每秒几亿次以上操作。存储器用于存储程序、数据和文件,常由快速的内存储器(容量可达数百兆字节,甚至数G字节)和慢速海量外存储器(容量可达数十G或数百G以上)组成。各种输入输出外部设备是人机间的信息转换器,由输入-输出控制系统管理外部设备与主存储器(中央处理器)之间的信息交换。 软件 软件分为系统软件、支撑软件和应用软件。系统软件由操作系统、实用程序、编译程序等组成。操作系统实施对各种软硬件资源的管理控制。实用程序是为方便用户所设,如文本编辑等。编译程序的功能是把用户用汇编语言或某种高级语言所编写的程序,翻译成机器可执行的机器语言程序。支撑软件有接口软件、工具软件、环境数据库等,它能支持用机的环境,提供软件研制工具。支撑软件也可认为是系统软件的一部分。应用软件是用户按其需要自行编写的专用程序,它借助系统软件和支援软件来运行,是软件系统的最外层。 软件和硬件在逻辑上是等效的 对于某一功能来说,实现方式可以通过软件也可以通过硬件实现,则称为软硬件在逻辑上是等效的。 一般一个功能的实现使用硬件会有效率高优点,但是也有成本高的缺点。而使用软件时,可以调高其灵活性,但效率不如硬件。 即软件和硬件在逻辑功能上是等效的。但是,软件和硬件在性能和成本上是不等效的。
例:
计算机系统中软硬件在逻辑上是等效的,提高软件功能实现的比例将会( B )
A. 提高解题速度
B. 提高系统灵活性
C. 增加成本
D. 减少所需存储容量
以下说法中,不正确的是:软硬件功能是等效的,提高硬件功能的比例会( B )
A . 提高解题速度
B . 提高硬件利用率
C . 提高硬件成本
D . 减少所需要的存储容量
计算机硬件主要由存储器、运算器、控制器、输入设备和输出设备(I/O设备)组成。 其中ALU+CU=CPU ,CPU+主存=电脑主机 I/O设备又称作外部设备。
其中名词:
简称 | 全称 | 中文 |
---|---|---|
CPU | Central Processing Unit | 中央处理器,中央处理机,中央处理单元 |
ALU | Aritmetic Logical Unit | 算术逻辑单元,运算器,算术逻辑部件; |
CU | Control Unit | 控制单元,控制器 |
I/O | Input/Output | 输入/输出 |
注意:储存一般是口语中的用词,考试的时候尽量一定写存储器。(中文20级学者,手动狗头) 后面有专门的章节讲这部分文章,现在不用慌
存储器分为主存和辅存,CPU能够直接访问主存,但是不能直接访问辅存,辅存数据需要先调入主存后才能别CPU访问。
主存的作用:主存是存放程序和数据的部件,它是计算机实现“存储程序控制”的基础
概念 | 说明 |
---|---|
存储元 | 存储器的最小存储单位,它的作用是用来存放一位二进制代码0或1 |
存储单元 | 一个存储器由多个存储单元组成 ,能够存储多位二进制信息 |
存储体 | 许多存储单元可组成存储体 (U盘、硬盘可理解为存储体) |
存储字 | 存储字是指存放在一个存储单元中的二进制代码组合,可以代表数据,指令,地址等 |
存储字长 | 每个存储单元中的二进制代码的位数就是存储字长 |
解题方式为博主原创,可以自行使用,凡是以文章和视频等媒体方式发布时,请注明来源,抄袭必究。
考察方式一: 我们在这给出公式化的解题步骤
已知计算机的字长为32位,存储器的容量为1MB,如果按照一下寻址方式,寻址范围是多少?
2.半字 套用解题步骤: 1. 总容量:1MB=1MX8Bit=8MBit 2. 半字寻址,半个字的容量:1/232Bit=16Bit 3. 坐商:8MBit/16Bit= 512K 3.字 1. 总容量:1MB=1MX8Bit=8MBit 2. 字寻址,一个字的容量: 32Bit 3. 坐商:8MBit/32Bit= 256K 4.双字 套用解题步骤: 1. 总容量:1MB=1MX8Bit=8MBit 2. 两字寻址,两个字的容量:232Bit=64Bit 3. 坐商:8MBit/64Bit=128K
考察方式二: 我们在这给出公式化的解题步骤
若CPU有20根地址线,和32根数据线,请问按字节和字寻址的寻址范围? 套用解题步骤:
难理解的是步骤二,因为不知道为什么20根地址线的存储器容量是1MB,这跟存储器的构造有关,但是这部分内容就考察这么多,不建议大家过多了解。
大部分ALU都可以完成以下运算∶ 整数算术运算(加、减,有时还包括乘和除,不过成本较高) 位逻辑运算(与、或、非、异或) 移位运算(将一个字向左或向右移位或浮动特定位,而无符号延伸),移位可被认为是乘以2或除以2。
控制器是指挥计算机的各个部件按照指令的功能要求协调工作的部件,是计算机的神经中枢和指挥中心,由指令寄存器IR(InstructionRegister)、程序计数器PC(ProgramCounter)和操作控制器0C(OperationController)三个部件组成,对协调整个电脑有序工作极为重要。
计算机软件总体分为系统软件和应用软件两大类:
是各类操作系统,如windows、Linux、UNIX等,编译程序Java、 C#、等,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类 系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。 应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。
翻译程序是指把高级语言源程序翻译成机器语言源程序(目标代码)的软件。
翻译程序有两种:一种是编译程序,它将高级语言源程序一次性全部翻译成目标程序,每次执行程序时,只要执行目标程序。另一种是解释程序,它的执行过程是翻译一句执行一句,并且不会生成目标程序。
编译程序是先完整编译后运行的程序,如C、C++等;解释程序是一句一句翻译且边翻译边执行的程序,如JavaScript、Python等。附C语言编译链接过程:
汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译成机器语言程序。
编译程序与汇编程序的区别:如果源语言是诸如C、C++、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,这样的一个翻译程序称为编译程序。如果源语言是汇编语言,而目标语言是机器语言,这样的一个翻译程序称为汇编程序。 引用博主CMTSA 地址:https://blog.csdn.net/IWGoo/article/details/85528562
计算机在运行时,不断的执行: 先从内存中取出第一条指令,通过控制器的译码,按指令的要求,从存储器中取出数据进行指定的运算和逻辑操作等加工,然后再按地址把结果送到内存中去。接下来,再取出第二条指令,在控制器的指挥下各部件完成各种操作。 一直进行下去。直至遇到停止指令
部分资料又说5个层次,又说6个层次,有说7各层次的,我们都来说一下。
M0硬联逻辑级 第零级是硬联逻辑级,这是计算机的内核,由门,触发器等逻辑电路组成。
M1微程序级 第一级是微程序级。这级的机器语言是微指令集,程序员用微指令编写的微程序,一般是直接由硬件执行的。
M2传统机器级 第二级是传统机器级,这级的机器语言是该机的指令集,程序员用机器指令编写的程序可以由微程序进行解释。
M3操作系统级 第三级是操作系统级,从操作系统的基本功能来看,一方面它要直接管理传统机器中的软硬件资源,另一方面它又是传统机器的延伸。
M4汇编语言级 第四级是汇编语言级,这级的机器语言是汇编语言,完成汇编语言翻译的程序叫做汇编程序。 [1]
M5高级语言级 第五级是高级语言级,这级的机器语言就是各种高级语言,通常用编译程序来完成高级语言翻译的工作。
M6应用语言级 第六级是应用语言级, 这一级是为了使计算机满足某种用途而专门设计的,因此这一级语言就是各种面向问题的应用语言。 把计算机系统按功能分为多级层次结构,就是有利于正确理解计算机系统的工作过程,明确软件,硬件在计算机系统中的地位和作用。
CPU:吞吐量,响应时间,CPU时钟周期,主频,CPI,CPU执行时间,MIPS,MFLOPS,GFLOPS,TFLOPS,PFLOPS,利用率,处理机字长; 其他:总线宽度。
一个系统的吞度量(承压能力)与一个请求request对CPU的消耗、外部接口、IO等密切关联。单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。
一般系统吞吐量由几个重要关键要素组成:
QPS: Queries Per Second 每秒内的查询率。它是指一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。QPS统计方式,一般使用http_load 进行统计。
TPS: TransactionsPerSecond 每秒内的事务数。一个事务是指一个客户机向服务器发送请求然后等待服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,客户机使用加权协函数平均方法来计算得分,最终利用这些信息得出服务器端的整体TPS得分。
并发数: 系统同时处理的request/事务数。
响应时间: 系统平均响应时间。
计算关系 QPS = 并发量 / 平均响应时间 并发量 = QPS * 平均响应时间
响应时间是指系统对请求作出响应的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。由于一个系统通常会提供许多功能,而不同功能的处理逻辑也千差万别,因而不同功能的响应时间也不尽相同,甚至同一功能在不同输入数据的情况下响应时间也不相同。所以,在讨论一个系统的响应时间时,人们通常是指该系统所有功能的平均时间或者所有功能的最大响应时间。当然,往往也需要对每个或每组功能讨论其平均响应时间和最大响应时间。
对于单机的没有并发操作的应用系统而言,人们普遍认为响应时间是一个合理且准确的性能指标。需要指出的是,响应时间的绝对值并不能直接反映软件的性能的高低,软件性能的高低实际上取决于用户对该响应时间的接受程度。对于一个游戏软件来说,响应时间小于100毫秒应该是不错的,响应时间在1秒左右可能属于勉强可以接受,如果响应时间达到3秒就完全难以接受了。而对于编译系统来说,完整编译一个较大规模软件的源代码可能需要几十分钟甚至更长时间,但这些响应时间对于用户来说都是可以接受的。
CPU时钟周期 时钟发生器发出的脉冲信号做出周期变化的最短时间称之为震荡周期,也称为 CPU 时钟周期。它是计算机中最基本的、最小的时间单位。每一次脉冲(即一个震荡周期)到来,芯片内的晶体管就改变一次状态,让整个芯片完成一定任务。一个震荡周期内,晶体管只会改变一次状态。由此,更小的时钟周期就意味着更高的工作频率。 主频 一秒(1 s)内,震荡周期的个数称为时钟频率,俗称主频。
由上面的关系不难推出,主频越高,CPU的运算速度就越快。
MIPS(Million Instructions Per Second):单字长定点指令平均执行速度 Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。
FLOPS是Floating-point Operations Per Second每秒所执行的浮点运算次数的英文缩写。它是一个衡量计算机计算能力的量,这个量经常使用在那些需要大量浮点运算的科学运算中。有时也会被记为flop/s。
MFLOPS(Million Floating-point Operations per Second,每秒百万个浮点操作),衡量计算机系统的技术指标,不能反映整体情况,只能反映浮点运算情况。
GFLOPS 就是 Giga Floating-point Operations Per Second,即每秒10亿次的浮点运算数,常作为GPU性能参数但不一定代表GPU的实际表现,因为还要考虑具体如何拆分多边形和像素、以及纹理填充,理论上该数值越高越好。1GFlops = 1,000MFlops。
CPU利用率,是对一个时间段内CPU使用状况的统计,通过这个指标可以看出在某一个时间段内CPU被占用的情况,如果CPU被占用时间很高,那么就需要考虑CPU是否已经处于超负荷运作,长期超负荷运作对于机器本身来说是一种损害,因此必须将CPU的利用率控制在一定的比例下,以保证机器的正常运作。
Load Average是 CPU的Load,它所包含的信息不是CPU的使用率状况,而是在一段时间内CPU正在处理以及等待CPU处理的进程数之和的统计信息,也就是CPU使用队列的长度的统计信息。
理机字长是指处理机能同时处理(或运算)的位数,即同时处理多少位(bit)数据。
1.数据总线 数据总线是CPU与存储器、CPU与I/O接口设备之间传送数据信息(各种指令数据信息)的总线,这些信号通过数据总线往返于CPU与存储器、CPU与I/O接口设备之间,因此,数据总线上的信息是双向传输的。
2.地址总线 地址总线上传送的是CPU向存储器、I/O接口设备发出的地址信息,寻址能力是CPU特有的功能,地址总线上传送的地址信息仅由CPU发出,因此,地址总线上的信息是单向传输的。
3.控制总线 控制总线传送的是各种控制信号,有CPU至存储器、I/O接口设备的控制信号,有I/O接口送向CPU的应答信号、请求信号,因此,控制总线是上的信息是双向传输的。控制信号包括时序信号、状态信号和命令信号(如读写信号、忙信号、中断信号)等。
总线带宽的计算公式为:总线带宽=总线数据传输频率 X 数据总线位数
拓展资料:
总线是一组进行互连和传输信息(指令、数据和地址)的信号线。主要参数有总线位宽、总线时钟频率和总线传输速率。/传统的PCI并行总线和最新的PCI-E串行总线带宽。
总线位宽决定输入/输出设备之间一次数据传输的信息量,用位(bit)表示,如总线宽度为8位、16位、32位和64位。
按照工作模式不同,总线可分为两种类型,一种是并行总线,它在同一时刻可以传输多位数据,好比是一条允许多辆车并排开的宽敞道路,而且它还有双向单向之分;另一种为串行总线,它在同一时刻只能传输一个数据,好比只容许一辆车行走的狭窄道路,数据必须一个接一个传输、看起来仿佛一个长长的数据串,故称为“串行”。
总线的带宽指的是这条总线在单位时间内可以传输的数据总量,它等于总线位宽与工作频率的乘积。例如,对于64位、800MHz的前端总线,它的数据传输率就等于64bit×800MHz÷8(Byte)=6.4GB/s;32位、33MHz PCI总线的数据传输率就是32bit×33MHz÷8=132MB/s,等等,这项法则可以用
11年考研真题
解析:D 定义性的东西,FLOPS是Floating-point Operations Per Second每秒所执行的浮点运算次数的英文缩写。它是一个衡量计算机计算能力的量,这个量经常使用在那些需要大量浮点运算的科学运算中。有时也会被记为flop/s。
12年考研真题
解析:D CPU执行时间为90s, 设该任务的指令共计M条,则90=CPIM。 现处理每一条的时间为CPI/1.5,则T=CPIM/1.5=60。 因为I/O时间不变所以共计60+10
13年考研真题
解析:C
14年真题
解析:D
15年考研真题
解析:A 计算机只认识0/1,计算机语言程序
17年考研真题
解析:
18年考研真题(这是个多选的)
解析:123都对
写在最后: 我叫风骨散人,名字的意思是我多想可以不低头的自由生活,可现实却不是这样。家境贫寒,总得向这个世界低头,所以我一直在奋斗,想改变我的命运给亲人好的生活,希望同样被生活绑架的你可以通过自己的努力改变现状,深知成年人的世界里没有容易二字。目前是一名在校大学生,预计考研,热爱编程,热爱技术,喜欢分享,知识无界,希望我的分享可以帮到你! 如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文! 感谢大家的阅读!?你的点赞、收藏、关注是对我最大的鼓励!