计算机编程的原理(计算机系统的组成)

陈小速:一名职业技术学院计算机技术与应用专业的学生,他梦想成为一名程序员。

吴进:一所重点大学软件工程专业大三学生,编程经验丰富。

关于二人的故事,请参看历史文章:小速学编程:像我这样职业学院的学生,也能成为程序员吗?

计算机编程的原理(计算机系统的组成)(1)

问题

陈小速上了一个月的课之后,觉得有好些问题搞不明白,于是专程跑去找吴进求教了。他们在食堂里边吃边聊。

吴进先问着:“小速,第一个月学什么课了?”

“基础课程,计算机系统组成原理。” 陈小速一边嚼着一块鸡肉,一边回答。

不等吴进继续问话,陈小速自己把话接上了:“吴大哥,我现在有个疑问啊,计算机不就是由CPU、内存条、主板、硬盘、显卡、声卡这些组成的吗?可我怎么听老师讲的都是寄存器、计算单元、系统总线、I/O总线,高速缓存,多级存储啊,这都是些啥玩意啊?”

即使沉稳镇定如吴进,闻言也忍不住笑出了声,这下让陈小速羞了个大红脸,局促不安地说:“让吴大哥笑话了啊,我确实不懂。”

“不懂就问明白,这是对的,”吴进先表示了肯定,接着说,“你的理解是从直观感觉出发,这也没什么不对的。一台计算机不就是这么攒出来的嘛。不过,既然是讲原理的课,那就不能只停留在攒机的程度上喽。”

“这个吴大哥说的是。” 陈小速放下了筷子,专心地听着。

计算机最重要的部件

吴进先提了个问题:“小速,你觉得,一台计算机要是把哪个部件去掉,就不能被称之为计算机了?”

陈小速认真地想了一会儿,说:“应该是中央处理器CPU,它是负责运算的,这个我知道。”

“对,没错,” 吴进点头表示肯定,“这个CPU就像我们的大脑一样,大脑停止工作,人也不存在了。”

“哈,我想到了<三体>里的云天明!” 平常爱看科幻小说的陈小速,这时候思维也跳跃起来,“他就是去掉了所有肢体和器官,就保留了一个大脑被送到三体人那儿去了。”

“那你知道世界上第一台PC机Altair吗?” 吴进继续提问。

陈小速摇了摇头,吴进笑着说:“那台机器就像云天明的大脑一样,没有屏幕,没有硬盘,没有声卡,没有鼠标和键盘,就是一个箱子。它的前面板上放了几个开关和一排会闪烁的红灯,作为输入输出设备。对了,这机器是1974年被制造出来的。”

陈小速听着瞪大了眼睛,张大了嘴巴,问:“那这样的机器有啥用?不能看电影、打游戏、听音乐。”

吴进解释说:“当时制造它的人也想不到微型计算机以后可以干什么,他只是想证明计算机并不是必须像房间一样高大,被重重保护起来,只是少数人使用的专利。普通人一样可以在家里就拥有一台计算机。”

“Altair最具革命性的意义,就在于它的设计者采用了总线式的结构。” 吴进渐渐进入正题,陈小速也听得入了神。

计算机系统结构

吴进开始了详细的解说。

CPU要进行计算,那么它就需要读取数据并进行运算,然后再输出结果。而数据要通过输入设备传输给CPU,就必须要有一条通道。总线就是这样一条用于数据传输的通道。

总线式的结构,就构造了一个开放式的架构。这意味着计算机可以通过扩展插槽的方式,将其他部件集成到机器中。这些插槽上的设备就通过总线与CPU相连,从而可以实现数据的输入输出处理了。

而CPU的处理速度是非常快的,要想将它的性能发挥出来,就必须做到尽快地给它提供数据。因此PC使用了分级存储式的结构。

计算单元是从寄存器取数据的,因此它访问寄存器的速度是最快的。CPU内部集成有L1,L2,L3三级高速缓存,在外部则是主存,再然后是硬盘。可以认为,越靠近CPU的存储,它的速度越快。

吴进拿来纸和笔,边说边画了下面这张图。

计算机编程的原理(计算机系统的组成)(2)

看着这幅图,陈小速先是沉思不语,然后猛地站起来,口中念念有词地来回走动。接着他两眼放光,大笑着对吴进说:“吴大哥,我明白了,计算机系统就像工厂生产一样。原材料通过各种运输途径运进来,例如高速公路、铁路、飞机。然后工厂把这些原材料一通加工,又把产品从各种途径给送出去,是这意思吧?哈哈!”

吴进赞许地点了点头,说:“你有听说过计算机主板上的南桥芯片与北桥芯片吧?现在有了这个知识你就好理解了。北桥芯片是靠近CPU的,系统总线就是由它来管理,负责CPU与高速设备打交道,例如主存、显示卡。南桥芯片则管理I/O总线,负责CPU与低速设备传输数据,例如硬盘、键盘和鼠标等。”

学习的方法

陈小速点头如捣蒜,兴奋地说:“今天真是太有收获了,回去我得好好跟同学们讲讲,他们也都是一头雾水呢。”

“对,这个很重要,” 吴进强调着,“学习知识,最好的方法就是讲解给别人听。所以我给你讲的过程中,也是在帮我复习基础知识。你自己只有完全弄明白,才能保证让别人听懂。那这次给你留个作业吧,就是你回去以后把今天的内容讲解给同学听,能回答他们提出的问题,让他们明白这个基本原理,可以吧?”

“收到!” 陈小速抬头挺胸一口答应下来。

“下次过来,我们就讨论一下CPU的工作原理,以及计算机程序的初步概念吧。”

计算机编程的原理(计算机系统的组成)(3)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页