您的位置 首页 新品

关于CPU的胡说八道

CPU具体是如何工作的?工作多年的资深程序员也未必说得清楚,即便是汇编高手也不一定能准确描述,大部分人对这些几乎没有兴趣,

CPU详细是怎么作业的?

作业多年的资深程序员也未必说得清楚,即便是汇编高手也纷歧定能精确描绘,大部分人对这些几乎没有爱好,照样能写出优异的程序。
作为一个学生时代就开端对电子电路产生爱好的爱好者,模仿电路天然很好了解,也很形象,比方一个波形经过扩大,变成电压更高的相同的波形,比方发光二极管加上一个正向电压就会发光……但是,一旦触摸到数字电路,这些东西都排不上了用场,有种不会外语的中国人到了外国的感觉。
数字电路触摸多了,大约也了解了一些皮裘,不过是输入一个高或低的电平,输出一个高或低的电平,这些规矩是设计好的(程序),这些与非或门便是最原始最质朴的CPU,而这些程序是固化的,焊接上去就那个姿态的,你输入一串脉冲,它就依照规矩输出一串脉冲,如此这般。
后来,触摸了编程,先学了高档言语VB、VB.net,再阅读过几本C言语,仰视了一下汇编言语,不明觉历啊!时刻长了,感觉也就那么回事,没什么艰深的,只需下功夫研讨,完全能够成为一个合格的程序员,就这么感觉着忽然就少了爱好,唉,人便是这么及安!

许多年来,对数字电路到程序之间的联络,一向处于模糊一盆的状况,苦于没有名师点拨,也缺少这方面的材料,登时感到那些所谓讲师都是书呆子,我深信他们能够照猫画虎地把汇编指令滚瓜烂熟,却讲不明白CPU内部那些奇特的脉冲是怎么跳动的,这是我所关怀的,我想也是很多人关怀的。

下面,就按我的个人傻瓜式的了解描绘一下我以为的CPU作业原理,太雷人,游客请停步,避免触电身亡!

先说内存,内存就像一张方格信纸,每行多个列,共有多上行都是固定的。这张方格纸被划了几个区域,别离寄存不同性质的数据。内存又像一块黑板,一切的演算进程都要在黑板上进行。
举个比如,教师在黑板上讲课,学生问:“1+1=?”,教师拿起粉笔(CPU的指针),在黑板上写下了“1+1=” ,相当于在方格纸上占了4个格(事实上不是那么少,先不论它),众所周知,CPU是靠程序宣布指令的,所以这时分程序员的指令必定是要求CPU进行加法运算,假定这个等号便是要求运算的指令,那么“1+1”这个算式就会被CPU编译成10010100101100010001110001……这样的二进制机器码送进CPU内部的加法器,然后输出一串011101010010011100101……之类的成果,成果放在哪里呢,天然是写在黑板上,同理,放在方格纸的指定方位(这个方位有必要是搁置的,否则会将本来的格子里的数据擦除,带来不可知的成果)。于是就完成了核算的进程。
假如觉得仍是难以了解,那我举个更粗浅的比如。曾经给火锅店修理过一台羊肉切片机,这种机器是经过调整切刀的空隙到达调整羊肉片的厚薄的,这儿的羊肉就代表需求运算的数据,空隙的巨细就代表逻辑算法,假如切刀空隙是固定的,那么你放进去一斤羊肉,会切出5盘肉片(老板好黑!),同理放进两斤羊肉就出出10盘肉片。这儿的羊肉、肉片都是要占用空间的(内存),羊肉片端出去上桌(输出),内存的数据就完成了使命。

依照这样貌同实异的逻辑,发挥我想入非非的专长,CPU内部国际林立着几亿个二极管,这些二极管组成了各式各样的逻辑电路,随时等待着羊肉的到来,在迅雷不及掩耳盗铃的时刻内切出了一盘一盘的羊肉片,羊肉丝,羊肉块,羊肉丁……
这是最简略的一个运算,而程序往往十分复杂和冗长,CPU像一个不知疲倦的工人,时刻等着下一条指令。回到方才方格纸那个思路上来,一切的程序代码有必要在内存上进行寄存才干进入CPU进行运算,运算后的成果也有必要写在内存里,这就像教师不能把1+1的成果“2”放在心里相同,他有必要写在黑板上。

CPU在内存这张方格纸上读取和写入数据的时分,并不像咱们写文章从左到右,从上到下一个字一个字,一行一行地写,而是随时进行跳转,神经病相同,它或许走着走着忽然就跳走了,然后又忽然跳回来,它的节奏永远是那么整齐,他跳一百米和一米的时刻是相同的,难以想象吧!

这便是我所了解的CPU底层作业的状况,不论你懂不懂,横竖我是似懂非懂。至于怎么将成果送到显示器,怎么将鼠标键盘的数据送进来,这不归于最底层,不是今日学习的笔记。这些东西相对仍是简单了解的,至少我真的略知一二。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/255197.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部