传统计算机发展多年已趋近稳定,从大家的笔记本电脑或台式机也能看出计算机结构包含的几个部分,这篇文章我们便简单探究一下。
一、计算机组成部分
1.CPU
虽然计算机上的其他部分也很重要,但CPU可以说得上是计算机上最核心的部件,其全名为中央处理器(Central Processing Unit)。承担了计算机所有的“计算”任务,一般来说,CPU也是最昂贵的配件。(当然某些行情下和显卡的价格不相上下T_T)
2.内存
内存(Memory),我们所有运行的程序运行时需用到的存储,从硬盘读取的数据、计算的结果等,都存储在内存中,为什么要引入内存而不直接从硬盘中读写数据至CPU中呢?早些常用的存储设备是纸带、磁带和软盘等,读写数据的速度存在瓶颈,需要先将程序加载至内存运行。内存容量越大、频率越高,性能也越高。
3.主板
主板(Motherboard),是连接所有配件的配件。芯片组(Chipset)和总线(Bus)解决了CPU和内存间通信的问题。芯片组控制数据传输,而总线则为数据传输的通道。总线传输数据的速度即为总线速度(Bus Speed)。除去CPU的运算速度与内存外,总线速度也可以影响到计算机的性能。
I/O设备
I/O设备即为输入输出设备,我们常见的输入和输出设备都有哪些呢?计算机通过显示器显示程序运行的结果、人们使用键盘鼠标输入文本或操作指令,计算机使用音箱来输出音频,这都是常见的输入输出设备。
显卡及GPU
显卡(Graphics Card)负责将图形界面渲染显示在屏幕上。有时候即使装机的时候没有选配独立显卡,也依然可以显示内容,是因为有的CPU中自带一枚核心显卡,也一样包含GPU图形处理器(Graphics Processing Unit)负责处理图像显示,但通常由于功耗以及空间的限制,很难与同时期独立显卡的性能相媲美。GPU也同样可以进行一部分运算。
那么有朋友可能会问,CPU和GPU都能够进行运算,他们的区别在哪里呢?让我们看下他们的不同点
在实际使用中,CPU和GPU都有其各自的优缺点。CPU的优点在于其灵活性和通用性,它可以处理各种不同类型的任务。此外,它还可以通过超线程技术和动态频率调整等技术提高性能。然而,由于其设计目标是通用计算,因此它在处理图像和图形等任务时的效率不如GPU。
GPU的优点在于其高效的并行处理能力。由于它可以同时处理多个任务,因此在处理大量数据时,它比CPU更加高效。此外,GPU还具有专用的处理器单元和内存结构,可以更好地支持图形和图像处理。然而,由于其设计目标是图形处理,因此在处理其他类型的任务时可能不如CPU高效。
关于南/北桥
南桥和北桥通常集成在主板上,目前随着芯片工业发展,某些“北桥”已经被集成进CPU之中了,主板上可能已经看不到北桥芯片了。那么南桥和北桥是做什么的呢?键鼠这类的外部I/O设备,通常是通过南桥(South Bridge)芯片组来控制其与CPU的通信的,通常在主板的“南”侧,作为“桥”来链接键鼠以及硬盘等外设和CPU的通信。
北桥(North Birdge)早些年位置位于主板的“北”侧靠近CPU和显卡附近的位置,因而被叫做“北桥”。通常负责链接CPU与内存和显卡之间的通信。
二、关于冯·诺伊曼体系结构计算机
那么除了上述的部分,符合我们对笔记本、台式机、服务器等设备的印象。那么手机或者树莓派之类的设备是否也属于计算机呢?答案是肯定的。它们都遵循一个抽象的“计算机”的概念,即冯·诺伊曼提出的冯·诺依曼体系结构(Von Neumann architecture)计算机,也叫做存储程序计算机。
为什么叫做存储程序计算机呢?其实拆开来讲就是符合“存储”,即可以存储所编写程序的,以及“可编程”的这两个特点。除了可编程的计算机外,还有一种“固定程序”的不可编程的计算机,比如通过特定的硬件电路实现特定的计算或功能,除更改硬件结构外无法更新其功能,然而这对懒惰的工程师们来说是不可接受的。所以冯·诺伊曼在First Draft中定义了他认为的一台计算机应有的样子。
首先是一个处理器单元(Processing Unit),用来完成各种算术和逻辑运算。它包含算术逻辑单元(Arithmetic Logic Unit,ALU)和处理器寄存器(Processor Register),因为能够完成各种数据的处理或者计算工作,因此也有人把这个叫作数据通路(Datapath)或者运算器。然后是一个包含指令寄存器(Instruction Register)和程序计数器(Program Counter)的控制器单元(Control Unit/CU),用来控制程序流程,通常就是不同条件下的分支和跳转。在现在的计算机里,上面的算术逻辑单元和这里的控制器单元,共同组成了我们说的 CPU。
接着是用来存储数据(Data)和指令(Instruction)的内存。以及更大容量的外部存储,现在大部分是硬盘,过去还有软盘(也属于磁盘的一种)和磁带,不过即使现在磁带依然是存储量最大的存储介质。
最后就是各种输入和输出设备,以及对应的输入和输出机制。我们现在无论是使用什么样的计算机,其实都是和输入输出设备在打交道。个人电脑的鼠标键盘是输入设备,显示器是输出设备。我们用的智能手机,触摸屏既是输入设备,又是输出设备。而跑在各种云上的服务器,则是通过网络来进行输入和输出。这个时候,网卡既是输入设备又是输出设备。任何一台计算机的任何一个部件都可以归到运算器、控制器、存储器、输入设备和输出设备中,而所有的现代计算机也都是基于这个基础架构来设计开发的。而所有的计算机程序,也都可以抽象为从输入设备读取输入信息,通过运算器和控制器来执行存储在存储器里的程序,最终把结果输出到输出设备中。而我们所有撰写的无论高级还是低级语言的程序,也都是基于这样一个抽象框架来进行运作,这就是冯·诺伊曼体系。
三、计算机组成结构总结
那么最后总结下,计算机包含哪几个部分呢?分别是:运算器、控制器、存储器、输入设备和输出设备这五大基本组件。我们日常接触到的计算设备,无论是PC、手机、单片机等,其组成结构均可归纳到这几大组件中。我们编写的程序一条条的指令的控制过程,要靠控制器来完成;进行的各种运算,要靠运算器来进行;存储及加载数据要靠存储器;人机交互或设备间通信要用到I/O设备。这五大基本组件的结构,也贯穿了现代计算设备发展的历程。