计算机组成原理 订阅
《计算机组成原理》是由蒋本珊编著,2004年清华大学出版社出版的21世纪大学本科计算机专业系列教材。该书可作为高等院校计算机及相关专业“计算机组成原理”课程的教材,也可供从事计算机工作的工程技术人员参考。该书介绍了计算机的基本组成原理和内部工作机制。全书共分8章,主要内容分成两个部分:第1、2章介绍了计算机的基础知识;第3-8章介绍了计算机的各子系统(包括运算器、存储器、控制器、外部设备和输入输出子系统等)的基本组成原理、设计方法、相互关系以及各子系统互相连接构成整机系统的技术。 [1] 展开全文
《计算机组成原理》是由蒋本珊编著,2004年清华大学出版社出版的21世纪大学本科计算机专业系列教材。该书可作为高等院校计算机及相关专业“计算机组成原理”课程的教材,也可供从事计算机工作的工程技术人员参考。该书介绍了计算机的基本组成原理和内部工作机制。全书共分8章,主要内容分成两个部分:第1、2章介绍了计算机的基础知识;第3-8章介绍了计算机的各子系统(包括运算器、存储器、控制器、外部设备和输入输出子系统等)的基本组成原理、设计方法、相互关系以及各子系统互相连接构成整机系统的技术。 [1]
信息
页    数
346页
作    者
蒋本珊
类    别
21世纪大学本科计算机专业系列教材
装    帧
平装
书    名
计算机组成原理
出版时间
2004年3月1日
开    本
16开
出版社
清华大学出版社
ISBN
9787302081081
计算机组成原理成书过程
该书是中国计算机学会和清华大学出版社共同规划的面向全国高等院校计算机专业本科生的“21世纪大学本科计算机专业系列教材”之一。该教材由蒋本珊编著,在该书编写过程中得到了“21世纪大学本科计算机专业系列教材”编委会的指导和建议。重庆大学计算机系袁开榜教授审阅了该书的全部内容,提出了修改意见。该教材于2004年3月1日由清华大学出版社出版。 [2] 
收起全文
精华内容
下载资源
问答
  • 数据结构,计算机网络,数据库,计算机组成原理,操作系统这些在大学期间一定要掌握好来,因为现在互联网大厂面试都爱考察这些内容,一句话,计算机基础,yyds! 可能大家第一个问题是,这些课需要哪些先学? 讲真,...

    大家好,我是小林哥。

    作为自学CS过来的老学长,看过中国mooc、b站、网易云课堂很多视频,期间踩了不少坑,这次掏心掏肺前来跟分享下,网上的资源是免费的,但是找到质量好的是需要时间成本的!

    数据结构,计算机网络,数据库,计算机组成原理,操作系统这些在大学期间一定要掌握好来,因为现在互联网大厂面试都爱考察这些内容,一句话,计算机基础,yyds!

    可能大家第一个问题是,这些课需要哪些先学?

    讲真,这些都是独立的课程,关联性不会大到说学这个课前要先学另外一个课,所以大家不要担心这个问题,它不是问题!

    可能大家也会问,大学课程还没讲到这些,可以自己提前学吗?

    完全没问题啊!切莫跟着学校的课程学习,到大三的时候你就发现,按照学校的进度来学习,你的知识量根本就不能去面试的,你会被面试官吊打怀疑自己是不是计算机专业,这不是你的问题,这本来就是大多数高校的问题,学的东西并不一定是和现在企业所需求的技能,所以大家要提前知道的这个事,不要到大三大四才明白,这个时候已经来不及准备啦!

    其实这些计算机基础完全是可以自学的,不管你是不是计算机专业的同学,只要你认认真真跟着网课和自己看书学习,绝对超过大多数所谓的科班毕业的同学!

    我也整理一套系统化学习cs的书籍,数据结构,计算机网络,数据库,计算机组成原理,操作系统这些统统都有。

    这次分享给大家,点击获取方式计算机必读书籍(含下载方式)包含:数据结构,计算机网络,数据库,计算机组成原理,操作系统等等。

    好了,接下里的课程绝对高质量,是我自己在自学的时候,筛选出来的!

    计算机网络

    计算机网络微课堂

    《计算机网络微课堂》这个视频是湖南科技大学老师制作的,PPT 的动图是我见过做的最用心的了,一看就懂的佳作,而且也适合考研人,因为每个视频末尾都有往年的考题分析。

    B 站视频链接:计算机网络微课堂视频

    在这里插入图片描述

    计算机网络(谢希仁第七版)-方老师

    大学学习计算机网络配套的教材是谢希仁的,如果想根据此教材看视频学习的,可以看方老师讲解的计算机网络,看方老师的视频,你会觉得是一位漂亮的小姐姐在跟你讲课,方老师不仅颜值高,而且声音也甜,当然最重要是课程质量得到了很多人的认可。

    B 站视频链接:计算机网络(谢希仁第七版)-方老师

    在这里插入图片描述

    图解网络

    另外提一句,我在csdn共输出了 20 多篇图解网络系列的文章,总字数高达 15W 字,并且手绘的图共有 500 张,收获了很多读者的认可和支持,不少读者跑来感激我,说我的图解网络在面试中帮助到他们,不少人拿到了阿里、腾讯、字节等大厂的Offer。

    在这里插入图片描述

    为了方便阅读我把图解网络整理成了PDF,大家可以作为面基突击的手册,现在开源给大家下载:图解网络 PDF 下载地址

    操作系统

    操作系统 - 清华大学

    b栈关于操作系统课程资源很多,我在里面也看了不同老师讲的课程,觉得比较好的入门级课程是《操作系统 - 清华大学》,该课程由清华大学老师向勇和陈渝授课,虽然我们上不了清华大学,但是至少我们可以在网上选择听清华大学的课嘛

    B 站视频链接:操作系统-清华大学

    在这里插入图片描述

    操作系统 - 哈工大

    清华大学的操作系统视频课讲的比较精炼,涉及到的内容没有那么细,《操作系统 - 哈工大》李治军老师授课的视频课程相对就会比较细节,老师会用 Linux 内核代码的角度带你进一步理解操作系统,也会用生活小例子帮助你理解。

    B 站视频链接:操作系统 - 哈工大

    在这里插入图片描述

    图解系统

    学成操作系统后,也写了图解操作系统系列文章,现在已整理成PDF。

    在这里插入图片描述

    现在开源给大家下载:突击大厂面试,图解系统开放下载!

    计算机组成

    国防科大的《大学计算机基础CAP》

    这门课非常好,他是为非理工科专业的学生准备的一些计算机的基础知识,让你先有一个全局的思想。

    视频地址:大学计算机基础CAP_国防科技大学_中国大学MOOC(慕课)

    计算机组成原理(唐朔飞)

    如果想系统学习计算机组成原理,可以看哈工大这门计算机原理课,依据的教材正是大学配套的书。

    B 站视频链接:计算机组成原理(唐朔飞)

    在这里插入图片描述

    CSAPP(深入理解计算机系统)

    CSAPP 这本书相信大家都听说过吧?

    这本书是从程序员的角度学习计算机系统是如何工作的,通过描述程序是如何映射到计算机系统上,程序是如何执行的,以及程序效率低下的原因,这样的方式可以让大家能更好的知道「程序与计算机系统」的关系。

    涵盖的内容非常多,有计算机组成 + 操作系统 + 汇编 + C语言 + Linux系统编程,涉猎的领域比较多,是一本综合性的书,更是一本程序员修炼内功的指引书。

    单纯看书会很乏味,我们可以结合视频一起学。这本书的视频课程是国外老师录制的,但是在 b 站已经有好人帮我们做了中文字幕,看了这视频,相当于在国外上了一门计算机课的感觉。

    B站地址:csapp视频

    在这里插入图片描述

    数据库

    SQL 进阶教程

    无意间在 B 站发现一个学习 SQL 很牛逼的视频,主讲人是外国的工程师,这门课程适合初学者和进阶,这位工程师全程以「实战」的方式来授课,案例经典,课程真的通熟易懂,很简练。

    B 站视频链接:SQL 进阶教程

    在这里插入图片描述

    MySQL 高级教程

    如果你想学习 MySQL 底层原理,这个视频是个不错的选择,常见的面试题都会提到。

    B 站视频链接:MySQL 高级教程

    在这里插入图片描述

    Redis 教程

    学习 Redis 的同学,可以看看这个视频,每一个视频都很详细了说明了对应的知识点,而且不仅只是说了基础应用,还涉及了底层原理和互联网场景面试的知识点。

    B 站视频链接:Redis 教程

    算法与数据结构

    浙江大学 - 数据结构

    强烈推荐浙江大学的算法与数据结构课程,该课程非常系统,也很经典,适合小白入门算法。

    B 站视频链接:浙江大学 - 数据结构与算法

    在这里插入图片描述

    数据据结构与算法这方面的话是非常非常非常重要的。

    在我看来,笔试能力在秋招中要占据 60% 的重要程度。首先笔试不过,你根本没有面试的展示机会。其次面试中也会反复让你手写代码,以字节为例,每一轮面试都是1-2道编程题,有时候不怎么聊简历;百度每一轮面试有一道编程题。现在公司的面试模式就是这样,如果代码没搞出来,大概率会被淘汰。并且最窒息的是这些代码题都不简单,一般都是 leetcode中等到hard难度。

    刷题主要可从以下三个渠道:
    剑指offer:https://www.nowcoder.com/ta/coding-interviews
    leetcode: https://leetcode-cn.com/problemset/algorithms/
    近期面试中常考题:https://www.nowcoder.com/activity/oj

    剑指 offer 作为大经典,是一定要刷两遍以上的,很多题都是面试时的原题。里面包含了很多笔试常用的思想方法。反复看,反复研。我一开始每天10题,过两遍以后,要求自己每天快速过剑指一遍。

    leetcode 由于题目十分之多,刷完是不可能的。我的意见是 leetcode作为你弱项的专项练习。 leetcode右侧有标签分类,如下图:

    另外在巩固完弱项的情况下,建议将leetcode前300题刷熟练,国内大厂面试出的代码题 80% 都是这个范围内的。

    好东西 - 图解网络 + 图解操作系统

    小林在 CSDN 写了很多图解网络和操作系统的系列文章,很高兴收获到很朋友的认可和支持,正好最近图解网络和操作系统的文章连载的有 20+ 篇了,也算有个体系了。

    在这里插入图片描述

    所以为了方便大家阅读,小林把自己原创的图解网络和图解操作系统整理成了 PDF,一整理后,没想到每个图解都输出了 15 万字 + 500 张图,质量也是杠杠的,有很多朋友特地私信我,看了我的图解拿到了大厂的offer。

    图解系统 PDF 开源下载:图解系统 PDF 下载地址(点击)

    图解网络 PDF 开源下载:图解网络 PDF 下载地址(点击)

    好咧,本次分享就到这啦。

    肯定会有很多人收藏, 大家记得收藏前,先点个赞嘛!好的文章值得被更多人看到

    展开全文
  • 计算机组成原理

    2021-09-14 21:48:15
    不同于一般大学教授《计算机组成原理》主要进行芯片设计。本课程重点从程序员的角度,来学习计算机的组成部件,弄清楚计算机的底层原理,促进程序开发效率,构建计算机知识体系,增加计算机软件开发的“内容”。 ...
  • 计算机组成原理期末复习【超实用】

    万次阅读 多人点赞 2019-08-14 00:07:42
    计算机组成原理(第二版)唐朔飞 编著(课本有些地方还不错,可以下载电子版看看) 五道解答题30‘=9’(9个知识点)+6’+6’+4’+5’ 我依据老师的考题范围手动整理,有什么问题or想添加的知识点请在评论下方留言...

    计算机组成原理(第二版)唐朔飞  编著(课本有些地方还不错,可以下载电子版看看)

    b站2小时讲解链接 https://www.bilibili.com/video/BV1x4411q7Fz/初次录讲解视频,各种差错和画音不同步请各位谅解,我录到后面都想放弃了,只当是做做博文的推广,想着知识点都写得挺明白了,我个人看博文比看视频效率高,实在没想到挺多人宁愿看视频。我后台还看到有些人说听不懂,如果全都听不懂的话,我建议你们另寻高人指点。我和你们一样是学生,我也有很多没搞明白为什么的,只知道大概怎么算、怎么画。还有,大家别再问我要word文档了,我发到CSDN上的底稿全都删了,可能在你们看来是混课设和考试的救命稻草,在我看来只是一堆再无用处的垃圾。

    五道解答题30‘=9’(9个知识点)+6’+6’+4’+5’ 橙色题号的是当年我遇到的考试题,后面计算题记不清楚确切考了哪些,但掌握了做题技巧就问题不大了。

    我依据老师的考题范围手动整理,有什么问题or想添加的知识点请在评论下方留言!实时更新,助诸位共进步!

    一、解答题

    1. 影响流水线性能的因素主要有哪几种?请简要加以说明。P348

        结构相关:是当多条指令进入流水线后,硬件资源满足不了指令重叠执行的要求时产生的。不同指令争用同一功能部件产生资源冲突。

        数据相关:是指令在流水线中重叠执行时,当后继指令需要用到前面指令的执行结果时发生的。可能改变对操作数的读写访问顺序。

        控制相关:是当流水线遇到分支指令和其它改变PC值的指令时引起的。

    2. 为了保证DRAM的存储信息不遭破坏,必须在电荷漏掉前就进行充电,称为刷新。常见的刷新方式有哪三种,试分析它们间的区别。P86

        集中刷新:是在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作。

        分散刷新:是指对每行存储单元的刷新分散到每个存储周期内完成。

        异步刷新:是前两种方式的结合,既可缩短“死时间”,又充分利用最大刷新间隔2ms的特点。

    3. 说明计算机九大寻址方式及有效地址EA计算方法。P311

        立即寻址:无需寻址        隐含寻址:无需寻址       直接寻址:EA=A        间接寻址:EA=(A)         相对寻址:EA=(PC)+A

        基址寻址:EA=(BR)+A    变址寻址:EA=(IX)+A    寄存器寻址:EA=Rj    寄存器间接寻址:EA=(Rj)

    4. 按传输信息的不同,系统总线可分为哪几类?并加以简单描述。P43

        数据总线:用来传输各种功能部件间的数据信息,是双向传输总线,其位数与机器字长、存储字长有关,一般为8/16/32位。

        地址总线:主要用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址。

        控制总线:用来发送各种控制信号的传输线,通常对任意控制线而言,它的传输是单向的。

    5. 试说明具有Cache-主存结构的计算机,CPU在访问存储器时的工作流程。P110

        CPU欲读取主存某字时,有两种可能:一种是所需要的字已经在缓存中,即可直接访问Cache;另一种是所需的字不在Cache内,此时需将该字所在的主存整个字块一次调入Cache中(Cache与主存之间是字块传输)。当Cache未满时,主存块可被调入缓存块中,称该主存块与缓存块建立了联系。当Cache已满时,无法接收来自主存块的信息,就由Cache内的替换机构按一定的算法从Cache内移除哪块返回主存,并把新的主存块调入Cache中。

    6. 在写操作时,要考虑Cache和主存的数据一致性的问题,试说明写回法和写直达法的区别。P113

        写回法(拷回法):写操作时只把数据写入Cache而不写入主存(减少了主存的写操作次数),写操作时间=访Cache时间。但当(读操作且Cache已满时)Cache数据被替换出来时才写回主存,增加了Cache复杂性。

         写直达法(存直达法):写操作时数据既写入Cache又写入主存,写操作时间=访存时间,它能随时保证主存与Cache的数据始终一致,但增加了访存次数。(读操作时不涉及对主存的写操作,更新策划较容易实现。)

    7. 说明补码定点加减运算,判断溢出的两种方法。P239-240

         一位符号位判断溢出:参加操作的两个数(减法时即为被减数和“求补”后的减数)符号相同,其结果的符号与原操作数的符号不同,即为溢出。

         两位符号位判断溢出:若结果双符号位相同,则未溢出;若双符号位不同,则溢出。最高符号位为真结果符号。

    8. 说明Cache-主存的地址映像有哪三种方式,说明他们的基本映像原理。P117

        直接映射:将主存空间按Cache的尺寸分区,每区内相同的块号映像到Cache中相同的块位置。优:实现简单;缺:不够灵活

        全相连映射:主存中的每一个字块可映射到Cache任何一个字块位置上,当访问一个块中的数据时,块地址要与Cache块表中的所有地址标记进行比较以确认是否命中。

        组相连映射:是直接映射和全相连映射的一种折中方案,这种方案将存储空间分为若干组,各组间是直接映射,而组内各块间是全相连映射。

    9. 试说明指令周期,机器周期,时钟周期之间的关系。P386

         一个指令周期包含若干个机器周期,一个机器周期又包含若干个时钟周期(节拍),每个指令周期内的机器周期数可以不等,每个机器周期内的节拍数也可以不等。

    10. 试说明单译码方式(线选法)和双译码方式(重合法)的区别。P75

          存储芯片内的地址译码器有两种方式:一种是线选法,适用于地址线较少的芯片。地址信号只需经过一个方向的译码器就可以选中某一存储单元的所有位,结构较简单。

          另一种是重合法,适用于地址线较多的芯片。地址线分为两组,分别经行地址译码器和列地址译码器,通过两者“与”选中存储单元才能进行读/写。

    11. 分别说明一下名词MAR,MDR,CU,IR,PC的中文名称及该器件的主要功能。P14-16

         MAR是存储器地址寄存器,用来存放欲访问的存储单元的地址,其位数对应存储单元的个数。

         MDR是存储器数据寄存器,用来存放从存储体某单元取出or存入的代码,其位数与存储字长相等。

    如4K × 8位的存储芯片,有log2(4K)=12条地址线,8条数据线

         CU是控制单元,用来分析当前指令所需完成的操作,并发出各种微操作命令序列,用以控制所有被控对象。

         IR是指令寄存器,用来存放当前指令,IR的内容来自MDR。

         PC是程序计数器,用来存放当前欲执行指令的地址,它与主存的MAR间有一条直接通道且具有自动加1功能,即可自动形成下一条指令的地址。

    12. 计算机的五大基本组成是什么?P9

          运算器:用来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器里。

          存储器:用来存放数据和程序。

          控制器:用来控制、指挥程序和数据的输入、运行以及处理运算的结果。

          输入设备:用来将人们熟悉的信息形式转换为机器能识别的信息形式,常见的有键盘、鼠标等。

          输出设备:可将机器运算结果转换为人们熟悉的信息形式,如打印机输出等。

    13. 设某计算机采用微程序控制器,试说明微程序控制器的基本工作原理(即CPU执行指令时的操作过程)。P405

          首先将用户程序的首地址送到PC,然后进入

          取指阶段:①将取指周期微程序首地址M→CMAR

                            ②取微指令:将对应控存M地址单元中的第一条微指令读到控存数据寄存器中,记为CM(CMAR)→CMDR

                            ③产生微操作指令:第一条微指令的操作控制字段中为“1”的各位发出控制信号,如PC→MAR、I→R,命令主存    接收程序首地址并进行读操作。

                            ④形成下一条微指令的地址:此微指令的顺序控制字段指出了下一条微指令的地址为M+1,将M+1送至CMAR,即Ad(CMDR)→CMAR

                            ⑤取下一条微指令:将对应控存M+1地址单元中的第二条微指令读到CMDR中,即CM(CMAR)→CMDR

                            ⑥产生微操作指令:由第二条微指令的操作控制字段中对应“1”的各位发出控制信号,如M(MAR)→MDR使对应主存2000H地址单元中的第一条机器指令从主存中读出,送至MDR中。

                            ⑦形成下一条微指令地址:将第二条微指令下地址字段指出的地址M+2送至CMAR,即Ad(CMDR)→CMAR

          执行阶段:①取数指令微程序首地址的形成:当取数指令存入IR后,其操作码OP(IR)直接送到微地址形成部件,该部件的输出即为取数指令微程序的首地址P,且将P送至CMAR,记作OP(IR)→微地址形成部件→CMAR

                            ②取微指令:将对应控存P地址单元中的微指令读到CMDR中,记为CM(CMAR)→CMDR

                            ③产生为操作命令:由微指令操作控制字段中对应“1”的各位发出控制信号,如Ad(IR)→MAR、I→R,命令主存读操作数。

                            ④形成下一条微指令地址:将此条微指令下地址字段指出的P+1送至CMAR,即Ad(CMDR)→CMAR

    14. 试说明汉明码的校验原理(即如何生成汉明码,以及汉明码的检验原理),默认偶校验。P110

         汉明码的生成步骤:①确定校验位的位数 2^k ≥ n + k +1

                                         ②确定校验位的位置

                                         ③分组

                                         ④生成校验位的值

                                         ⑤得出结论

          检验原理:将已知的汉明码按照前三步正常进行,到第四步时,用H接收P和D一起异或,然后把H倒序排列,若都为0,即无错。否则,该序列对应的二进制位置出错。

    15. 试说明循环冗余校验码的校验原理。P144

           循环冗余校验码的生成步骤:①确定校验位的位数 r

                                                          ②写出信息多项式 M(x)

                                                          ③将信息多项式左移 r 位,得到 M(x)·x^r

                                                          ④用 M(x)·x^r 除以生成多项式 G(x),得到 r 位校验位

                                                          ⑤M(x)·x^r+R(x) 得到CRC码

         检验原理:根据余数判出错位,取反纠错。

    二、计算题

    第6章  运算方法和运算部件

    定点原码一位乘:符号位单独计算,运算数取绝对值参与计算。

    定点原码两位乘:提高了乘法速度,但仍基于重复相加和移位的思想,且随着乘数位数的↗,重复次数↗,仍影响乘法速度。计算较复杂,不常考,自行看书!

    并行阵列乘法器:可大大提升乘法速度。(拓展)

    定点补码一位乘:分校正法比较法(Booth法)。校正法中被乘数符号任意,乘数分正、负两种情况。若乘数为正,则按原码一位乘的算法计算,符号位不用另外计算,被乘数的符号位参与计算若乘数为负,则按原码一位乘的算法计算,被乘数和乘数取绝对值参与计算,最后加上 [-x]补 校正。虽然可将乘数和被乘数互换,使乘数保持+,不必校正,但当两数均为-时必须校正。∵Booth的运算规则不受乘数符号的约束 ∴控制线路较简明,在计算机中普遍使用,常考!

    定点补码两位乘:自行看书!

    区别:补码乘法中,乘积得符号位是在运算过程中自然形成的。而原码乘法中,符号位与数值部分分开计算。

    困扰作者得问题是:被乘数和乘数互换位置的其它情况在此不一 一列举,以上三个例子,两个源于书本,同一组数据,书上的校正法却不能全部适用。望指点!

    P8应=1,感谢网友指正

    较复杂,不怎么考,在此不赘述!

    第四章  主存储器

            

    第七章  指令系统

    教材P324

    第3篇  中央处理器

    教材P384

    看下方!!

        ←参考P412例10.6,上题改正为

    已确定是对的!

    第四章  存储系统

    书上P122原题!

    鉴于我用公式写易误导大家,我上传书上原解如下:

    4.4  辅助存储器

    1. 若某磁盘有两个记录面,每面80个磁道,每磁道18扇区,每扇区存512字节,计算该磁盘的容量是多少?

    解:         18×512×80×2B=1440KB

    举个栗子( o=^•ェ•)o

    如果对你有帮助,可以给点小赏。记得关注我呦!

    展开全文
  • 计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理
  • 计算机组成原理总结及知识网图

    万次阅读 多人点赞 2021-01-19 23:52:03
    计算机组成原理知识摘要,个人复习整理,仅供参考

    相关链接

    数据结构总结与知识网图
    计算机网络知识总结及知识网图
    操作系统总结及知识网图
    计算机组成原理总结及知识网图

    第一章 计算机系统概述

    知识网图

    在这里插入图片描述

    冯诺依曼机的特点:

    1)计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备5大部件组成。
    2)指令和数据以同等地位存储在存储器中,并可按地址寻址。
    3)指令和数据均用二进制代码表示。
    4)指令由操作码和地址码组成。操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
    5)指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下可根据运算结果或根据设定的条件改变执行顺序。
    6)早期的冯诺依曼机以运算器为中心,输入/输出设备通过运算器和存储器传送数据。

    不同级别的语言:

    机器语言: (二进制语言)计算机唯一可以直接识别和执行的语言。
    汇编语言: 用英文单词或其缩写代替二进制的指令代码,易于人们记忆和理解。
    高级语言: 为方便程序设计人员写出解决问题的处理方案和解题过程的程序。

    计算机的工作过程:

    1)把程序和数据装入主存储器。
    2)将源程序转换成可执行文件。
    3)从可执行文件的首地址开始逐条执行指令。

    计算机的性能指标:

    机器字长: 指计算机进行一次整数运算所能处理的二进制数据的位数。(通常与CPU的寄存器、加法器有关。
    数据通路宽带:指数据总线一次所能并行传送信息的位数(指外部数据总线的宽度,与CPU内部的数据总线宽度有可能不同)
    主存容量: 指主存储器所能存储信息的最大容量,通常以字节来衡量,也可用字数字长来表述存储容量。
    运算速度
    1)吞吐量:指系统在单位时间内处理请求的数量
    2)响应时间:指从用户向计算机发送一个请求到系统对该请求做出响应并获得所需结果的等待时间。通常包括CPU时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、I/O操作、操作系统开销等时间)
    主频和CPU时钟周期
    1)CPU时钟周期
    2)主频
    CPI:执行一条程序所用的时钟周期数
    CPU执行时间:指运行一个程序所花费的时间。
    CPU执行时间 = CPU时钟周期数/主频=(指令条数
    CPI)/主频
    MIPS、MFLOPS、GFLOPS、TFLOPS

    第二章 数据的表示和运算

    知识网图

    在这里插入图片描述

    在计算机系统内部,所有信息都用二进制进行编码的原因有以下几点:

    1)二进制只有0和1两种状态,使用有两个稳定状态的物理器件就可以表示二进制的每一位。制造成本低。
    2)二进制位1和0正好与逻辑值“真”和“假”对应,为计算机实现逻辑运算和程序中的逻辑判断提供了便利条件。
    3)二进制的编码和运算规则简单,通过逻辑门电路便能方便实现算术运算。

    有符号的机器表示

    (n+1)位整数表示范围小数表示范围
    原码和反码在这里插入图片描述在这里插入图片描述
    补码在这里插入图片描述在这里插入图片描述
    移码在这里插入图片描述移码全为0真值最小,移码全为1真值最大

    第三章 存储系统

    知识网图

    在这里插入图片描述

    DRAM刷新方式

    1)集中刷新
    在一个刷新周期内,利用一段固定的时间,依次对存储器的所有行进行逐一再生,期间停止对存储器的读写操作,即死时间,访存“死区”。
    优点:读写操作时不受刷新工作的影响,系统的存取速度较高。
    缺点:在集中刷新期间(死区)不能访问存储器。
    2)分散刷新
    把对每行的刷新分散到各个工作周期中,一个存储器的系统工作周期分为两部分:前半部分用于正常读写或保持;后半部分用于刷新某一行。
    优点:没有死区。
    缺点:加长了系统的存取周期,降低了整机的速度。
    3)异步刷新
    将刷新周期除以行数,得到两次刷新操作之间的时间间隔t,每间隔时间t产生一次刷新请求。
    前两种方法的结合,即可缩短”死时间“,又能充分利用最大刷新间隔2ms的特点。

    程序访问的局部性原理

    程序访问的局部性原理包括时间局部性和空间局部性。
    时间局部性
    指在最近的未来要用的信息很可能是现在正在使用的信息,(因为程序中存在循环)
    空间局部性
    是指在最近的未来要用到的信息,很可能与现在正在使用的信息在存储空间上是邻近的,因为指令通常是顺序存放,顺序执行的。
    高速缓冲技术
    利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而大大提高程序的执行速度。

    虚拟存储器程序的执行过程

    CPU使用续存时,由辅存硬件找出虚地址与实地址之间的对应关系,并判断这个虚地址对应的存储单元是否已装入主存。若已在主存中,则通过地址转换,CPU可直接访问主存指示的实际单元;若不在主存中,则把包含这个字的一页或一段调入主存后再由CPU访问。若主存已满,则采用替换算法置换主存的一页或一段。

    快表

    通常采用全相联或组相联方式,每个TLB项由页表表项内容加上一个TLB标记字段组成,TLB标记用来表示该表项曲子页表中的哪个虚页号对应的页表项,所以TLB标记的内容在全相联方式下表示该页表项对应的虚页号;组相联方式下表示对应虚页号的高位部分,虚页号的低位部分用于选择TLB组的组索引。

    虚拟存储器与Cache的比较

    共同点
    1)均是为了提高系统性能,二者都有容量、速度、价格的梯度;
    2)均把数据划分为小信息块,并作为基本得传递单元,虚存系统的信息块更大;
    3)都有地址的映射、替换算法、更新策略等问题;
    4)依据程序的局部性原理,将活跃的数据放在相对高速的部件中。
    不同点:
    1)Cache主要解决系统速度,虚存为了解决主存容量;
    2)Cache由硬件实现,是硬件存储器,对所有程序员透明;而虚拟存储器由OS和硬件共同实现,是逻辑上的存储器,对系统程序员不透明,对应用程序员透明;
    3)虚拟存储器系统不命中时对系统性能影响更大;
    4)CPU与Cache和主存都建立了直接访问的通路,辅存与CPU无直接通路。

    第四章 指令系统

    知识网图

    在这里插入图片描述

    常见指令寻址方式的特点及适用情况:

    1)立即寻址:操作数获取便捷,通常用于给寄存器赋初值。
    2)直接寻址:相对于立即寻址,缩短了指令长度。
    3)间接寻址:扩大了寻址范围,便于编制程序,易于完成子程序返回。
    4)寄存器寻址:指令字较短,指令执行速度较快。
    5)寄存器间接寻址:扩大了寻址范围。
    6)基址寻址:扩大了操作数寻址范围,适用于多道程序设计,常用于为程序或数据分配存储空间。
    7)变址寻址:主要用于处理数组问题,适合编制循环程序。
    8)相对寻址:用于控制程序的执行顺序、转移等。

    CISC与RISC特点

    CISC的主要特点
    1)指令系统复杂庞大,指令数量一般大于200+;
    2)指令的长度不固定,指令格式多,寻址方式多;
    3)可以放村的指令不受限制;
    4)各种指令的使用频度相差很大;
    5)各种指令执行时间相差很大,大多数指令需要多个时钟周期才能完成;
    6)控制器大多数采用微程序控制,有些指令非常复杂,难以采用硬连线控制;
    7)难以用优化编译生成高效的目标代码程序。
    RISC的主要特点
    1)选取使用频率最高的一些简单指令,复杂指令的功能由简单指令的组合来实现;
    2)指令长度固定,指令格式种类少,寻址方式种类少;
    3)只有Load/Store指令访存,其余指令的操作都在寄存器之间进行;
    4)CPU中通用寄存器的数量相当多;
    5)RISC采用指令流水线技术,大部分指令在一个时钟周期内完成;
    6)以硬布线控制为主,不用或少用微程序控制;
    7)重视编译优化工作,减少程序执行时间。

    与CISC相比,RISC的优点:

    1)更能充分利用VLSI芯片的面积;
    2)更能提高运算速度;
    3)便于设计,可降低成本,提高可靠性;
    4)有利于编译程序代码优化。

    第五章 中央处理器

    知识网图

    在这里插入图片描述

    CPU的具体功能

    1)指令控制:完成取指令,分析指令和执行指令的操作,即程序的顺序执行。
    2)操作控制:CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。
    3)时间控制:对各种操作加以时间上的控制。
    4)数据加工:对数据进行算数和逻辑运算。
    5)中断处理:对计算机运行过程中出现的异常情况及特殊请求进行处理。

    控制器的工作原理

    根据指令操作码、指令的执行步骤(微命令序列)和条件信号来形成当前计算机各部件要用到的控制信号。计算机整机各硬件系统在这些控制信号的控制下协同运行,产生预期的执行结果。
    1)运算器部件通过数据总线与内存储器、输入输出设备传送数据。
    2)输入输出设备通过接口电路与总线相连接。
    3)内存储器、输入输出设备从地址总线接收地址信息,从控制总线得到控制信号,通过数据总线与其他部件传送数据。
    4)控制器部件从数据总线接收指令信息,从运算器部件接收指令转移地址,送出指令地址到地址总线,还要向系统中的部件提供它们运行所需要的控制信号。

    控制器的主要功能

    1)从主存中取出一条指令并指出下一条指令在主存的位置。
    2)对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。
    3)指挥并控制CPU、主存、输入输出之间的数据流动方向。

    CPU的控制方式

    1)同步控制方式
    系统有一个统一的时钟,所有的信号均来自这一统一的时钟信号。
    控制电路简单,但运行速度慢。
    2)异步控制方式
    不存在基准时标信号,各部件按自身固有的速度工作,通过应答方式进行联络。
    运行速度快,但控制电路比较复杂。
    3)联合控制方式
    介于同步、异步之间的一种折中。对各种不同的指令的微操作实行大部分采用同步控制,小部分采用异步控制的办法。

    硬布线控制单元设计步骤:

    1)列出微操作命令的操作时间表。根据微操作节拍安排,列出微操作命令的操作时间表(包含各个机器周期,节拍下的每条指令完成的为操作控制信号)。
    2)进行微操作信号综合。对微操作信号进行综合分析、归类,根据微操作时间表可写出各微操作控制信号的逻辑表达式并进行适当的简化。
    3)画出微操作命令的逻辑图。根据逻辑表达式可画出对应每个微操作信号的逻辑电路图,并用逻辑门电路实现。

    硬布线和微程序控制器的特点

    硬布线控制器的特点
    速度快(控制器的速度取决于电路延迟),一旦设计完成后,就不能通过其他额外修改添加新功能(将控制部件视为专门产生固定时序控制信号的逻辑电路,用最少元件和取得最高速度作为设计目标)。
    微程序控制器
    具有规整性,灵活性,可维护性等优点,但由于微程序控制器采用了存储程序原理,所以每条指令都要从控制存储器中取一次,影响速度。

    第六章 总线

    知识网图

    在这里插入图片描述

    总线传输的4个阶段

    1)申请分配阶段。由需要使用总线的主模块提出申请,经总线仲裁机构决定将下一传输周期的总线使用权授予某一申请者(分为传输请求,总线仲裁两阶段)。
    2)寻址阶段。取得使用权的主模块通过总线发出本次要访问的从模块(或从设备)的地址及相关命令,启动参与本次传输的从模块。
    3)传输阶段。主模块和从模块进行数据交换,可单向或双向进行数据传送。
    4)结束阶段。主模块的有关信息均从系统总线上撤除,让出总线的使用权。

    第七章 输入/输出系统

    知识网图

    在这里插入图片描述

    程序查询方式的工作流程

    1)CPU执行初始化程序,并预置传送参数;
    2)向Iowa接口发送命令字,启动IO设备;
    3)从外设接口读取其状态信息;
    4)CPU不断查询IO设备状态,直到外设准备就绪;
    5)传送一次数据;
    6)修改地址和计数器参数;
    7)判断传送是否结束,若未结束转3),直到计数器为0

    程序中断的作用

    1)实现CPU与IO设备的并行工作;
    2)处理硬件故障和软件错误;
    3)实现人机交互,用户干预机器需要用到中断系统;
    4)实现多道程序,分是操作,多道程序的切换;
    5)实时处理需要借助中断系统来实现快速响应;
    6)实现应用程序和操作系统的切换;
    7)多处理器系统中各处理器之间的信息交流和任务切换。

    中断处理流程

    关中断
    保存断点
    引出中断服务程序
    保存断点和屏蔽字
    开中断
    执行中断服务程序
    关中断
    恢复现场和屏蔽字
    开中断

    DMA方式与中断方式的区别

    1)中断方式时程序的切换,需要保护和恢复现场;而DMA处理预处理和后处理,其他操作均不占用CPU的任何资源
    2)对中断请求的响应只发生在每条指令执行完毕时,而对DMA请求的响应可以发生在每个机器周期结束时,只要CPU不占用总线即可
    3)终端传送需要CPU的干预,而DMA传送过程无需CPU的干预
    4)DMA请求的优先级高于中断请求
    中断方式具有对异常事件的处理能力,而DMA仅限于传送数据块的IO操作
    6)中断方式靠程序传送数据,DMA方式靠硬件传送数据

    知识网图下载

    https://download.csdn.net/download/weixin_42104154/14922915

    展开全文
  • 计算机组成原理 计算机组成原理 计算机组成原理
  • 答案计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理...
  • 计算机组成原理试题计算机组成原理试题计算机组成原理试题计算机组成原理试题
  • 计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2计算机组成原理2...
  • 计算机组成原理核心知识点总结&面试笔试要点

    万次阅读 多人点赞 2019-08-13 14:04:07
    作为一名计算机专业的学生,计算机组成原理、计算机网络、操作系统这三门课程可以说是专业核心基础课,是至关重要的,其内容是一名合格的coder所必备的知识集;非科班出身的程序员要是想要有所提升,也需要认真学习...

      作为一名计算机专业的学生,计算机组成原理、计算机网络、操作系统这三门课程可以说是专业核心基础课,是至关重要的,其内容是一名合格的coder所必备的知识集;非科班出身的程序员要是想要有所提升,也需要认真学习这三门课程,可以快速形成计算机知识的结构体系,理解计算机底层原理,在工作实践中可以借鉴优秀的设计;而且很多互联网公司在笔试和面试中都会涉及到这三门课程的知识点,因此我通过视频学习对这三门课程就行复习巩固,同时分三篇博客记录总结。

    计算机组成原理

    一 计组之概述篇

    1. 计算机的发展历史
      第一阶段(1946-1957):电子管计算机 特点:集成度低,体积大,功耗高,运行速度慢,操作复杂。
      第二阶段(1957-1964):晶体管计算机 特点:相对电子管计算机,体积小,速度快,功耗低,可靠性高,配备显示器。
      第三阶段(1964-1980):集成电路计算机 特点:操作系统诞生。
      第四阶段(1980-至 今):超大规模集成电路计算机 特点:集成度高,速度快,体积小,价格低,用途广泛。
      第五阶段( f u t u r e) :生物计算机&&量子计算机 …

    2. 计算机的分类
      超级计算机、大型计算机、迷你计算机(普通服务器)、工作站、微型计算机(个人计算机)

    3. 计算机的体系与结构
      冯·诺伊曼体系:将程序指令数据一起存储的计算机设计概念结构,存储器+控制器+运算器+输入设备+输出设备。
      冯·诺伊曼体系
      现代计算机的结构:以存储器为核心,解决冯·诺伊曼体系瓶颈问题(CPU与存储设备之间的性能差异)。
      在这里插入图片描述

    4. 计算机的层次
      在这里插入图片描述

    5. 计算机的字符与编码集
      字符编码集的历史:ASCII码 --> Extended ASCII码
      中文编码集:GB2312、GBK、Unicode(统一码、万国码)

    二 计组之组成篇

    1. 计算机的总线与I/O设备
      a.计算机的总线(Bus)
       概述:连接多个设备或者接入点的数据传输通路。
      作用:解决不同设备之间的通信问题。
       分类:片内总线(高集成度内部的信息传输线)、系统总线(细分为:数据总线&地址总线&控制总线,是CPU、主内存、IO设备、各组件之间的信息传输线)
       总线的仲裁:为了解决总线使用权的冲突问题,三种方法:链式查询、计时器定时查询、独立请求。
      b.常见的输入输出设备
       字符输入设备:键盘
       图形输入设备:鼠标、数位板、扫描仪
       图像输出设备:显示器、打印机、投影仪
      c.输入输出接口的通用设计
       数据线:I/O设备与主机进行数据交换的传送线(单向&双向)。
       状态线:I/O设备状态向主机报告的信号线。
       命令线:CPU向I/O设备发送命令(读写信号、启动停止信号)的信号线。
       设备选择线:主机选择I/O设备进行操作的信号线。
      d.CPU与I/O设备的通信
       程序中断:提供低速设备通知CPU的一种异步的方式,CPU可以在高速运转的同时兼顾低速设备的响应。
       直接存储器访问(DMA):
      在这里插入图片描述

    2. 计算机的存储器
      a.存储器的分类:
       按照存储介质:半导体存储器(内存、U盘、固态硬盘)、磁存储器(磁带、磁盘)
       按照存取方式:随机存储器RAM(随机读取,与位置无关)、串行存储器(按顺序查找,与位置有关)、只读存储器ROM(只读不写)
      b.存储器的层次结构
      在这里插入图片描述
      缓存-主存层次:局部性原理,在CPU与主存之间增加一层速度快容量小的Cache,解决主存速度不足的问题。
      主存-辅存层次:局部性原理,主存之外增加辅助存储器,解决主存容量不足的问题。
      局部性原理:是指CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。
      在这里插入图片描述
      c.计算机的主存储器
       内存RAM(随机存取存储器Random Access Memory):通过电容存取数据,掉电将丢失所有数据。
      d.计算机的辅助存储器
      e.计算机的高速缓存
       工作原理:命中率是衡量缓存的重要性能指标,理论上CPU每次都能从高速缓存取数据的时候,命中率为1。
      在这里插入图片描述
      在这里插入图片描述
      高速缓存的替换时间:当缓存没有数据,需要从主存载入数据的时候。
      高速缓存的替换策略:随机算法、先进先出算法(FIFO)、最不经常使用算法(LFU)、最近最少使用算法(LRU)。

    3. 计算机的CPU
      a.计算机的指令系统
       机器指令的形式:操作码(指明指令所要完成的操作)+地址码(给出操作数或操作数的地址);
       机器指令的操作类型:数据传输、算术逻辑操作、移位操作、控制指令;
       机器指令的寻址方式:指令寻址(顺序寻址+跳跃寻址)、数据寻址(立即寻址(速度快)+直接寻址(寻找操作数简单)+间接寻址(寻址范围大,速度慢))
      b.计算机的控制器
       作用:控制器是协调和控制计算机运行的。
       组成:程序计数器(存储下一条指令的地址)、时序发生器(发送时序脉冲)、指令译码器(控制器的主要部件之一,翻译操作码+地址码)、指令寄存器(控制器的主要部件之一,从主存或缓存存取计算机指令)、主存地址寄存器(保存当前CPU正要访问的内存地址单元)、主存数据寄存器(保存当前CPU正要读或写的主存数据)、通用寄存器(比一般专用寄存器大,可以暂时存放或传送数据或指令,可保存ALU的运算中间结果)。
      c.计算机的运算器
       作用:进行数据运算加工。
       组成:数据缓冲器(输入缓冲暂时存放外设送过来的数据,输出缓冲暂时存放送往外设的数据)、ALU(算术逻辑运算)、状态字及寄存器(存放运算状态和运算控制信息)、通用寄存器(比一般专用寄存器大,可以暂时存放或传送数据或指令,可保存ALU的运算中间结果)。
      d.计算机指令执行的过程
       指令执行过程:取指令-分析指令-执行指令
      (3-10-0629)
      CPU的流水线设计:因运算器和控制器不能同时工作,CPU的综合利用率并不高,所以CPU的流水线设计可以提高CPU的利用率,提高大概3倍。

    三 计组之计算篇

    1. 进制运算的基础知识
      进位制:即进制,是一种计数方式,亦称进位计数法,有限种数字符号来表示无限的数值。
      传送门——>关于进制转换推荐看文
    2. 二进制数据的表示方法
      a.有符号数和无符号数
      原码表示法:0表示正数,1表示负数,规定符号位位于数值的第一位;表达简单,容易理解,但运算复杂。
      b.二进制的补码表示法
      定义:(4-4-0104)
      引入目的:为了消除减法(未完全实现)引入补码的概念,使用正数代替负数。
      规律:负数的补码等于反码+1,如十进制数-7,反码表示为1,1000,补码表示为1,1001。
      举个小例子计算题:(4-4-0622)
      c.二进制的反码表示法
      定义:(4-5-0216)
      引入目的:找出原码和补码之间的规律,消除转换过程中的减法操作。
      规律:负数的反码等于原码除符号位外按位取反,如十进制数-7,原码表示为1,0111,反码表示为1,1000
      举个小例子计算题:(4-5-0330)
      d.小数的二进制补码表示
      定义:(4-6-0032)
      上述两个整数的反码补码计算规律同样适用。
    3. 二进制数据的运算
      a.定点数与浮点数
      定点数:小数点固定在某个位置。
      浮点数的表示格式:符号、阶码、尾数
      (4-7--555)
      浮点数的表示范围:单精度± (2-2^-23) × 2127
      双精度± (2-2^-52) × 21023 其中大于浮点数绝对值最大的数为上溢,小于绝对值最小的数据为下溢
      浮点数的规格化:尾数使用纯小数、尾数最高位必须是1。
      b.定点数的加减法运算
      加法运算:数值位与符号位一同运算,并将符号位产生的进位自然丢掉(模2^n舍去)。
      (4-8-0107)
      举两个小栗子计算题(整数和小数):(4-8-0509)(4-8-0607)
      减法运算:将B[补码]转换成-B[补码]来计算,其中-B[补码]=B[补码]连同符号按位取反,末尾加1,例如B[补码]=1,0010101 ,则-B[补码]=0,1101011
      举个小栗子计算题:(04 08-1654)
      c.浮点数的加减法运算
      步骤:对阶(使得阶码一致,尾数才可以运算)–>尾数求和–>尾数规格化–>舍入–>溢出判断
      运算:先进行对阶,后与定点数的加减法相同。
      举个小栗子计算题:
      (4-9-1315)
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      d.浮点数的乘除法运算
      乘法:阶码相加,尾数求积。
      除法:阶码相减,尾数求商。

    四 计组之实践篇

    1. 实现双向链表
      单向链表:节点1–>节点2–>节点3–>节点4–>节点5 其中每一个节点都有下一个节点的地址或引用。
      双向链表:节点1⇋节点2⇋节点3⇋节点4⇋节点5 每一个节点都有上一个和下一个节点的地址和引用。
      双向链表优点:可以快速找到上/下节点,也可以快速去掉链表中的某一个节点。
      传送门——>实现双向链表
    2. 实现FIFO缓存置换算法
      淘汰缓存时,把最先进入链表的结点淘汰掉。
      传送门——> 实现FIFO缓存置换算法
    3. 实现LRU缓存置换算法
      传送门——> 实现LRU缓存置换算法
    4. 实现LFU缓存置换算法
      传送门——> 实现LFU缓存置换算法

    五 重要知识点及笔&面试常考题目

    传送门——>计算机组成原理试题1
    传送门——>计算机组成原理试题2
    传送门——>计算机组成原理试题3

    展开全文
  • 计算机组成原理计算机组成原理计算机组成原理计算机组成原理计算机组成原理
  • 合肥工业大学计算机组成原理课件,希望对大家计算机组成原理的学习会有点帮助
  • 计算机组成原理试题计算机组成原理试题计算机组成原理试题计算机组成原理试题计算机组成原理试题计算机组成原理试题计算机组成原理试题
  • 计算机组成原理 计算机组成原理 计算机组成原理

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 239,011
精华内容 95,604
关键字:

计算机组成原理