本课程主要介绍可执行文件中的代码如何在CPU中执行,如何从存储器中取指令,以及如何从存储器中取数据或存结果。在本课程中,我们主要围绕以下问题进行讲解。
计算机中的CPU是如何执行程序的?
CPU中包含哪些基本的功能部件?
存放代码和数据的主存储器如何构成?
存放文件的磁盘存储器是怎么工作的?
CPU如何把一个虚拟地址转换为主存地址?
如何利用高速缓存技术加快访问存储器的速度?
IA-32/Linux平台如何实现存储访问?
高级语言程序设计(最好有C语言程序设计的基础)
1.最终成绩由小测验成绩和期末考试成绩两部分组成。
2.课程讲授共7周,每周对应一次小测验,每次小测验由10道单选题构成,每题1分,共70分。
3.期末考试占30分。
总成绩60分及以上合格,85分及以上优秀。
电子版的课程结业证书免费。纸质版认证证书收费:100元/人 。
教材:袁春风. 计算机系统基础 [M]. 北京:机械工业出版社,2014 (第5-6章)
参考书目:Randal E. Bryant, David R. O'Hallaron. 深入理解计算机系统(原书第3版)[M]. 龚奕利,贺莲译 北京:机械工业出版社,2016
1.学习“计算机系统基础”课程时,最重要的学习方法是什么?
首先,不要死记硬背,关键是要不断将所学内容关联起来,以真正理解所学内容。
其次,要多动手实践。不明白的地方就编写一个程序,通过打印结果或利用gdb等调试工具查看机器级代码来分析。
此外,多提问和多参与讨论。真理越辩越明,在与他人的讨论过程中,往往会忽然开朗,有时,一个问题自己冥思苦想几天都想不明白,但实际上课程讨论区早就有人讨论过了,或者在讨论区一提问,马上就有人帮你解决了。
2.“计算机系统基础”属于硬件课程还是软件课程?
该课程涉及到其他很多课程,包括硬件课程和软件课程。它与高级语言程序设计、组成原理、汇编、编译、链接和操作系统等课程的内容有关。虽然涉及到很多其他课程的内容,但是,我们在本课程中只会讲解这些课程内容之间的关联,而不会讲解这些课程的细节内容,例如,本课程不会讲解如何实现编译器和如何实现操作系统。
3.《计算机系统基础》系列一共包含几门慕课?
包含以下三门慕课:
(1)计算机系统基础(一):程序的表示、转换与链接。
(2)计算机系统基础(二):程序的执行和存储访问。
(3)计算机系统基础(三):异常、中断和输入/输出。