本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对
计算机组成
知识点的理解的总结。希望对新一届的计算机考研人提供帮助!!!
关于对计算机系统概述
章节知识点总结的十分全面,涵括了《计算机组成原理》课程里的全部要点(本人来来回回过了三遍视频),其中还陆陆续续补充了许多内容,所以 读者可以相信本篇博客对于考研计算机组成原理 “计算机系统概述” 章节知识点的正确性与全面性;
但如果还有自主命题的学校,还需额外读者自行再观看对应学校的自主命题材料。
计算机组成原理
笔记导航
- 第一章 计算机系统概述
⇦当前位置
- 第二章 数据的表示和运算
- 第三章 存储系统
- 第四章 指令系统
- 第五章 中央处理器
- 第六章 总线
- 第七章 输入输出系统
计算机组成原理 复试精简笔记 (加班中...)
- 408 全套初复试笔记汇总 传送门
如果本篇文章对大家起到帮助的话,跪求各位帅哥美女们,
求赞 、求收藏、求关注!
你必考上研究生!
我说的,耶稣来了也拦不住!
食用说明书:
第一遍学习王道课程时,我的笔记只有标题和截图,后来复习发现看只看图片,并不能很快的了解截图中要重点表达的知识点。
在第二遍复习中,我给每一张截图中 标记了重点,以及 每张图片上方总结了该图片 对应的知识点 以及自己的 思考 。
最后第三遍,查漏补缺。
所以 ,我把目录放在博客的前面,就是希望读者可以结合目录结构去更好的学习知识点,之后冲刺复习阶段脑海里可以浮现出该知识结构,做到对每一个知识点熟稔于心!
请读者放心!目录展示的知识点结构是十分合理的,可以放心使用该结构去记忆学习!
注意(⊙o⊙)!,每张图片上面的文字,都是该图对应的知识点总结,方便读者更快理解图片内容。
【考纲内容】
王道 P14 ~ 37
(一) 计算机系统层次结构 网课耗时:
1.5 h
- 计算机系统 的基本组成;
- 计算机硬件 的基本组成;
- 计算机 软件 和 硬件 的关系;
- 计算机系统的 工作原理:
“存储程序”方式、高级语言程序与机器语言程序的转换、程序和指令的执行过程
(二) 计算机性能指标
网课耗时:
0.5 h
吞吐量、响应时间、CPU时钟周期、主频、CPI、 CPU执行时间
MIPS、MFLOPS、 GFLOPS、TFLOPS、PFLOPS、EFLOPS、ZFLOPS
【复习提示】
本章是组成原理的概述,考查时易针对有关概念或性能指标出选择题,也可能综合后续章节的内容出有关性能分析的综合题。
【注】标题中带 “*” 的内容表示新大纲已经删除,仅供学习参考;
1. 什么是计算机系统 ?
计算机系统由 硬件 和 软件 两部分组成;
2. 计算机硬件的发展
机器字长 :计算机一次整数运算所能处理的二进制位数
3. 计算机软件的发展
编程语言的发展 + 计算机发展趋势
小结
1. 早期冯诺伊曼机的结构
存储程序:指 将指令以二进制代码的形式事先输入计算机的主存储器 ,然后按其在存储器中的首地址执行程序的第一条
指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。
冯 · 诺伊曼计算机的特点:
- ① 计算机由 五大部件 组成;
- ② 指令和数据以 同等地位 存于存储器,可按地址寻访;
- ③ 指令和数据用 二进制 表示;
- ④ 指令由 操作码 和 地址码 组成;
- ⑤ 采用 存储程序(核心特征) 的工作方式;
- ⑥ 以 运算器 为中心;
冯 · 诺依曼计算机的缺点:
机器以运算器为核心,数据的输入输出必须经过运算器,但是运算器工作十分繁忙,运算器会逐渐成为计算机性能的瓶颈
2. 现代计算机的结构
以 存储器 为中心的计算机结构
现代计算机硬件框图
小结
1. 主存储器的基本组成
存储体用来存储数据; MAR 存储地址寄存器;
MDR 存储数据寄存器;
2. 运算器的基本组成
3. 控制器的基本组成
4. 计算机的工作过程
小结
小结
1. 存储器性能指标
主存容量 =字数 × 字长
; =
存储单元个数 × 存储字长
;
2. CPU的性能指标
- CPU 时钟周期
- 主频
- CPI
CPU 执行时间
3. 系统整体的性能指标
- 数据通路带宽
- 吞吐量
- 响应时间
基准程序
【小问题】
小结
1. 翻译程序、解释程序、汇编程序、编译程序的区别和联系是什么 ?
翻译程序有两种:一种是编译程序,它将高级语言源程序一次全部翻译成目标程序,只要源程序不变,就无须重新翻译。另一种是解释程序,它将源程序的一条语句翻译成对应的机器目标代码,并立即执行,然后翻译下一条源程序语句并执行,直至所有源程序语句全部被翻译并执行完。所以解释程序的执行过程是翻译一句执行一句,并且不会生成目标程序。
汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译为机器语言程序。
编译程序与汇编程序的区别:若源语言是诸如C、C+t、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,则这样的一个翻译程序称为编译程序。
若源语言是汇编语言,而目标语言是机器语言,则这样的一个翻译程序称为汇编程序。
2. 什么是透明性? 透明是指什么都能看见吗 ?
在计算机领域中,站在某类用户的角度,若感觉不到某个事物或属性的存在,即“看”不到某个事物或属性,则称为“对该用户而言,某个事物或属性是透明的”。这与日常生活中的“透明”概念(公开、看得见)正好相反。
例如,对于高级语言程序员来说,浮点数格式、乘法指令等这些指令的格式、数据如何在运算器中运算等都是透明的;
而对于机器语言或汇编语言程序员来说,指令的格式、机器结构、数据格式等则不是透明的。
在CPU中,IR、MAR和 MDR对各类程序员都是透明的。
3. 字、字长、机器字长、指令字长、存储字长的区别和联系是什么 ?
在通常所说的“某16位或32位机器”中,16、32指的是字长,也称机器字长。所谓字长,通常是指CPU内部用于整数运算的数据通路的宽度,因此字长等于CPU内部用于整数运算的运算器位数和通用寄存器宽度,它反映了计算机处理信息的能力。字和字长的概念不同。字用来表示被处理信息的单位,用来度量数据类型的宽度,如x86机器中将一个字定义为16位。
指令字长:一个指令字中包含的二进制代码的位数。
存储字长:一个存储单元存储的二进制代码的长度。它们都必须是字节的整数倍。
指令字长一般取存储字长的整数倍,若指令字长等于存储字长的2倍,则需要2个访存周期来取出一条指令:若指令字长等于存储字长,则取指周期等于机器周期。
早期的存储字长一般与指令字长、字长相等,因此访问一次主存便可取出一条指令或一个数据。随着计算机的发展,指令字长、字长都可变,但必须都是字节的整数倍。
4. 计算机体系结构和计算机组成的区别和联系是什么 ?
计算机体系结构是指机器语言或汇编语言程序员所着得到的传统机器的属性,包括指令集、数据类型、存储器寻址技术等,大都属于抽象的属性。
计算机组成是指如何实现计算机体系结构所体现的属性,它包含对许多对程序员来说透明的硬件细节。
例如,指令系统属于结构的问题,但指令的实现即如何取指令、分析指令、取操作数、如何运算等都属于组成的问题。
因此,当两台机器指令系统相同时,只能认为它们具有相同的结构,至于这两台机器如何实现其指令,完全可以不同,即可以认为它们的组成方式是不同的。
例如,一台机器是否具备乘法指令是一个结构的问题,但实现乘法指令采用什么方式则是一个组成的问题。许多计算机厂商提供一系列体系结构相同的计算机,而它们的组成却有相当大的差别,即使是同一系列的不同型号机器,其性能和价格差异也很大。
5. 基准程序执行得越快说明机器的性能越好吗 ?
一般情况下,基准测试程序 能够反映机器性能的好坏。
但是,由于基准程序中的语句存在频度的差异,因此运行结果并不能完全说明问题。
1) 计算机由哪几部分组成 ? 以哪部分为中心 ?
计算机由 运算器、控制器、存储器、输入设备及输出设备 五大部分构成,现代计算机通常把 运算器和控制器 集成在一个芯片上,合称为 中央处理器 。
而在微处理器面世之前,运算器和控制器分离,而且存储器的容量很小,因此设计成 以运算器为中心 的结构,其他部件都通过运算器完成信息的传递。
随着微电子技术的进步,同时计算机需要处理、加工的信息量也与日俱增,大量I/O设备的速度和CPU的速度 差距悬殊 ,因此以运算器为中心的结构不能满足计算机发展的要求。
现代计算机已经发展为 以存储器为中心 ,使I/O操作尽可能地绕过CPU,直接在IO设备和存储器之间完成,以提高系统的整体运行效率。
2) 主频高的CPU一定比主频低的CPU快吗?为什么 ?
衡量CPU运算速度的指标有很多,不能以单独的某个指标来判断CPU的好坏。
CPU 的主频,即 CPU内核工作的 时钟频率 。
CPU的主频表示 CPU内数字脉冲信号振荡的速度,主频和实际的运算速度存在一定的关系,但目前还没有一个确定的公
式能够定量两者的数值关系,因为CPU的运算速度还要看CPU的流水线的各方面的性能指标(架构、缓存、指令集、CPU
的位数、Cache大小等)。
由于主频并不直接代表运算速度,因此在一定情况下很可能会出现主频较高的CPU实际运算速度较低的现象。
3) 不同级别的语言编写的程序有什么区别 ?哪种语言编写的程序能被硬件直接执行 ?
机器语言和汇编语言与机器指令对应,而高级语言不与指令直接对应,其有较好的可移植性。
其中机器语言可以被硬件直接执行。