-
-
我的大哥叫CPU
-
发表于:
2021-3-26 12:05
2821
-
大家好,我是良为逆。这篇帖子写的是学习汇编之前,对于CPU和各类硬件之间联系的知识点。我会用很短的篇幅写完原本要看几个小时的书才能收获的内容。(PS:当然,因为我是个新手,这些都是我的个人理解,所以如果有什么错误,还请各位大佬多多指正,良为逆提前谢谢大家了:))
首先,我认为一个学生或者一个学习的人他要面对的最大挑战和考验就是前期的基础学习。
基础的学习是很枯燥,乏味甚至厌恶的,而如何克服这些心态便是我们要做的。在汇编的基础学习中,第一步是对cpu如何控制和访问硬件的知识进行了解。
对于CPU这个名词很多人应该都知道,它是一台计算机的核心。但很多人对于CPU又有很多误解,比如说:
1.觉得CPU可以做任何事情
2.CPU才是系统最重要的零件,其它东西可有可无
3.CPU的运行机制特别复杂
但是事实却正好相反:
1.CPU并不能做到任何事情都能解决,因为它的运行机制决定了它永远受控于人类的想法,人类已有的想法和需求才是CPU能处理的范围
2.CPU确实是系统最重要的零件,但它是之一,其它东西也是很重要的。
首先CPU是负责运算和处理各种指令和数据的,那这个指令和数据从哪里获得呢?获得之后怎么送到CPU里面呢?
这个时候存储硬件和高速内存就派上用途了,也就是机械、固态硬盘和”运行内存”。存储硬件负责存储开发好的各类代码,指令,数据。高速内存负责接收CPU的命令去把存储硬件中保存的各类代码,指令,数据先提取到自身里面,然后再传给CPU,这个时候高速内存的角色更多的就像是一个中间人、搬运工、CPU的小弟。
到了这里就是如何传入CPU的解答了。计算机本身是用电驱动的,那么思考一下就知道它的内部就是电的交流。各类代码,指令,数据在传输过程中从某种意义上来说算是电流,电压,名词叫做”电平信息”。电平信息就是两个高低电压,高低电压驱动着计算机运行,因为它比较抽象不利于学习,所以用0和1两个数字表示它们,高电压是1,低电压是0。而物理上说过电的传输需要传输途径,就是导线。计算机里面也是这样,CPU需要连接导线去接收各类代码,指令,数据。但是这里就不叫导线了,叫做”总线”。总线负责三个功能:寻址,传输,控制。说白了就是负责传输各类命令给其它零件,接收其它零件传回来的各类数据,好比老大给小弟发话,小弟完成任务后反馈给老大的那种,哈哈哈哈哈哈哈哈哈:)
这也说明了CPU其实很有局限性,它没办法直接参与操作,它只负责计算好一切,然后让其它零件去执行,最后接收执行的结果继续计算,继续下发,重复这些操作。
所以CPU和其它的零件是相辅相成的关系。
3.CPU的运行机制就是算,靠内部的各类寄存器存储的指令和数据进行计算,一个字,算!!!!!!哈哈哈哈哈哈哈哈哈:)寄存器是CPU内部用来存放准备计算的资源的一种存储硬件,也是后面汇编要经常研究的对象之一,因为汇编就是往寄存器里塞数据和指令,而且我们只能操作寄存器去研究底层。
总结一下就是CPU通过总线去下发命令达到访问和控制硬件,总线越多,寻址,传输,控制的能力就越强,而我们一般把有多少根总线称作多少宽的总线,比如16根总线称作16宽的总线。
总线就是主板上插CPU的位置里面那些和CPU底面金属针脚对接的东西!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课