你好,我是海纳。
在开始正式的课程之前,我专门为你设置了三节导学课,目的是帮你打好基础,扫清一些知识盲区,这样你学习这个课程会更加轻松、高效。
导学部分共有三节课,都是以视频方式讲述的,内容比较多,但我保证干货十足,非常值得你花时间好好观看学习。
今天这节导学课,我们会来拆解CPU的基本结构和运行原理。我们知道,CPU 作为计算机的总司令官,它管理着计算机的所有资源。它有两个主要的作用,分别是计算和控制。其中,计算主要是指逻辑数值运算,控制则体现在对数据传输,输入输出的控制上。可以想象,CPU在内存管理方面一定发挥着重要的作用。
CPU的基本架构,包含了运算器、寄存器、内存管理单元等模块。我在视频中会对这些模块的构成原理、运行原理以及其作用进行介绍。
了解了基本架构之后,我们还会从CPU运行的角度出发,来深入理解机器码和中断的原理。为什么我要给你讲机器码和中断呢?
这是因为程序员可以通过编程来指挥CPU为人们工作,而对 CPU 发号施令的就是机器码。此外,CPU 在与外设交互时,最重要的机制就是中断,内存、磁盘 IO、网络 IO 有很多功能都是依赖中断完成的,所以,不管是系统级程序员,还是应用开发程序员,深刻地理解中断也是你的必备技能之一。
好,不啰嗦了,现在就请你点开下面的视频,来学习今天的课程吧!
点击这里获取课件,提取码:hn66。
精选留言
2021-11-07 20:31:37
2021-11-07 16:37:43
2022-01-25 17:43:36
2021-10-27 14:14:54
2021-12-25 20:22:10
2021-11-12 09:33:39
2021-11-04 15:31:22
2021-11-17 09:49:31
老师,关于CPU乱序执行有一个疑惑:乱序执行下,为保证顺序,会把指令的执行结果会被写入到重排序缓存ROB中,按照原有顺序进行提交。既然会保证顺序,那么为什么会出现因为乱序执行导致的并发问题呢?
举个例子;
cpu1: load 地址B 寄存器B;store 100 地址A
cpu2: load 地址A 寄存器A;store 200 地址B
假设cpu1乱序执行,先执行store指令,再执行load指令,cpu2顺序执行,初始时地址A、B的值为0。在cpu1执行完store指令后,cpu2开始执行load指令,这个时候cpu1看到的值可能是100吗?
2024-07-30 21:49:03
2023-05-17 05:27:11
2022-10-20 23:14:54
2022-01-19 10:47:26
PPT用的是误写成 -s(小写),这个参数会把符号表从最终的可执行文件中删除。
2021-12-25 20:11:13
2021-12-25 20:05:35
2021-12-25 19:54:52
2021-12-25 19:52:29
2021-12-25 19:38:15
2021-12-25 19:34:10
2021-11-10 11:38:52
2021-10-26 13:53:38