傳統(tǒng)計算機發(fā)展多年已趨近穩(wěn)定棋恼,從大家的筆記本電腦或臺式機也能看出計算機結(jié)構(gòu)包含的幾個部分,這篇文章我們便簡單探究一下咳促。
一绑青、計算機組成部分
1.CPU
雖然計算機上的其他部分也很重要,但CPU可以說得上是計算機上最核心的部件怠褐,其全名為中央處理器(Central Processing Unit)畏梆。承擔了計算機所有的“計算”任務,一般來說,CPU也是最昂貴的配件奠涌。(當然某些行情下和顯卡的價格不相上下T_T)
2.內(nèi)存
內(nèi)存(Memory)宪巨,我們所有運行的程序運行時需用到的存儲,從硬盤讀取的數(shù)據(jù)溜畅、計算的結(jié)果等捏卓,都存儲在內(nèi)存中,為什么要引入內(nèi)存而不直接從硬盤中讀寫數(shù)據(jù)至CPU中呢慈格?早些常用的存儲設備是紙帶怠晴、磁帶和軟盤等,讀寫數(shù)據(jù)的速度存在瓶頸浴捆,需要先將程序加載至內(nèi)存運行蒜田。內(nèi)存容量越大、頻率越高汤功,性能也越高物邑。
3.主板
主板(Motherboard)溜哮,是連接所有配件的配件滔金。芯片組(Chipset)和總線(Bus)解決了CPU和內(nèi)存間通信的問題。芯片組控制數(shù)據(jù)傳輸茂嗓,而總線則為數(shù)據(jù)傳輸?shù)耐ǖ啦鸵稹?偩€傳輸數(shù)據(jù)的速度即為總線速度(Bus Speed)述吸。除去CPU的運算速度與內(nèi)存外忿族,總線速度也可以影響到計算機的性能。
I/O設備
I/O設備即為輸入輸出設備蝌矛,我們常見的輸入和輸出設備都有哪些呢道批?計算機通過顯示器顯示程序運行的結(jié)果、人們使用鍵盤鼠標輸入文本或操作指令入撒,計算機使用音箱來輸出音頻隆豹,這都是常見的輸入輸出設備。
顯卡及GPU
顯卡(Graphics Card)負責將圖形界面渲染顯示在屏幕上茅逮。有時候即使裝機的時候沒有選配獨立顯卡璃赡,也依然可以顯示內(nèi)容,是因為有的CPU中自帶一枚核心顯卡献雅,也一樣包含GPU圖形處理器(Graphics Processing Unit)負責處理圖像顯示碉考,但通常由于功耗以及空間的限制,很難與同時期獨立顯卡的性能相媲美挺身。GPU也同樣可以進行一部分運算侯谁。
那么有朋友可能會問,CPU和GPU都能夠進行運算,他們的區(qū)別在哪里呢墙贱?讓我們看下他們的不同點
在實際使用中技扼,CPU和GPU都有其各自的優(yōu)缺點。CPU的優(yōu)點在于其靈活性和通用性嫩痰,它可以處理各種不同類型的任務剿吻。此外,它還可以通過超線程技術(shù)和動態(tài)頻率調(diào)整等技術(shù)提高性能串纺。然而丽旅,由于其設計目標是通用計算,因此它在處理圖像和圖形等任務時的效率不如GPU纺棺。
GPU的優(yōu)點在于其高效的并行處理能力榄笙。由于它可以同時處理多個任務,因此在處理大量數(shù)據(jù)時祷蝌,它比CPU更加高效茅撞。此外,GPU還具有專用的處理器單元和內(nèi)存結(jié)構(gòu)巨朦,可以更好地支持圖形和圖像處理米丘。然而,由于其設計目標是圖形處理糊啡,因此在處理其他類型的任務時可能不如CPU高效拄查。
關(guān)于南/北橋
南橋和北橋通常集成在主板上,目前隨著芯片工業(yè)發(fā)展棚蓄,某些“北橋”已經(jīng)被集成進CPU之中了堕扶,主板上可能已經(jīng)看不到北橋芯片了。那么南橋和北橋是做什么的呢梭依?鍵鼠這類的外部I/O設備稍算,通常是通過南橋(South Bridge)芯片組來控制其與CPU的通信的,通常在主板的“南”側(cè)役拴,作為“橋”來鏈接鍵鼠以及硬盤等外設和CPU的通信糊探。
北橋(North Birdge)早些年位置位于主板的“北”側(cè)靠近CPU和顯卡附近的位置,因而被叫做“北橋”扎狱。通常負責鏈接CPU與內(nèi)存和顯卡之間的通信侧到。
二、關(guān)于馮·諾伊曼體系結(jié)構(gòu)計算機
那么除了上述的部分淤击,符合我們對筆記本匠抗、臺式機、服務器等設備的印象污抬。那么手機或者樹莓派之類的設備是否也屬于計算機呢汞贸?答案是肯定的绳军。它們都遵循一個抽象的“計算機”的概念,即馮·諾伊曼提出的馮·諾依曼體系結(jié)構(gòu)(Von Neumann architecture)計算機矢腻,也叫做存儲程序計算機门驾。
為什么叫做存儲程序計算機呢?其實拆開來講就是符合“存儲”多柑,即可以存儲所編寫程序的奶是,以及“可編程”的這兩個特點。除了可編程的計算機外竣灌,還有一種“固定程序”的不可編程的計算機聂沙,比如通過特定的硬件電路實現(xiàn)特定的計算或功能,除更改硬件結(jié)構(gòu)外無法更新其功能初嘹,然而這對懶惰的工程師們來說是不可接受的及汉。所以馮·諾伊曼在First Draft中定義了他認為的一臺計算機應有的樣子。
首先是一個處理器單元(Processing Unit)屯烦,用來完成各種算術(shù)和邏輯運算坷随。它包含算術(shù)邏輯單元(Arithmetic Logic Unit,ALU)和處理器寄存器(Processor Register)驻龟,因為能夠完成各種數(shù)據(jù)的處理或者計算工作温眉,因此也有人把這個叫作數(shù)據(jù)通路(Datapath)或者運算器。然后是一個包含指令寄存器(Instruction Register)和程序計數(shù)器(Program Counter)的控制器單元(Control Unit/CU)迅脐,用來控制程序流程芍殖,通常就是不同條件下的分支和跳轉(zhuǎn)。在現(xiàn)在的計算機里谴蔑,上面的算術(shù)邏輯單元和這里的控制器單元,共同組成了我們說的 CPU龟梦。
接著是用來存儲數(shù)據(jù)(Data)和指令(Instruction)的內(nèi)存隐锭。以及更大容量的外部存儲,現(xiàn)在大部分是硬盤计贰,過去還有軟盤(也屬于磁盤的一種)和磁帶钦睡,不過即使現(xiàn)在磁帶依然是存儲量最大的存儲介質(zhì)。
最后就是各種輸入和輸出設備躁倒,以及對應的輸入和輸出機制荞怒。我們現(xiàn)在無論是使用什么樣的計算機,其實都是和輸入輸出設備在打交道秧秉。個人電腦的鼠標鍵盤是輸入設備褐桌,顯示器是輸出設備。我們用的智能手機象迎,觸摸屏既是輸入設備荧嵌,又是輸出設備呛踊。而跑在各種云上的服務器,則是通過網(wǎng)絡來進行輸入和輸出啦撮。這個時候谭网,網(wǎng)卡既是輸入設備又是輸出設備。任何一臺計算機的任何一個部件都可以歸到運算器赃春、控制器愉择、存儲器、輸入設備和輸出設備中织中,而所有的現(xiàn)代計算機也都是基于這個基礎架構(gòu)來設計開發(fā)的薄辅。而所有的計算機程序,也都可以抽象為從輸入設備讀取輸入信息抠璃,通過運算器和控制器來執(zhí)行存儲在存儲器里的程序站楚,最終把結(jié)果輸出到輸出設備中。而我們所有撰寫的無論高級還是低級語言的程序搏嗡,也都是基于這樣一個抽象框架來進行運作窿春,這就是馮·諾伊曼體系。
三采盒、計算機組成結(jié)構(gòu)總結(jié)
那么最后總結(jié)下旧乞,計算機包含哪幾個部分呢?分別是:運算器磅氨、控制器尺栖、存儲器、輸入設備和輸出設備這五大基本組件烦租。我們?nèi)粘=佑|到的計算設備耐亏,無論是PC、手機味混、單片機等眼姐,其組成結(jié)構(gòu)均可歸納到這幾大組件中。我們編寫的程序一條條的指令的控制過程窃祝,要靠控制器來完成掐松;進行的各種運算,要靠運算器來進行粪小;存儲及加載數(shù)據(jù)要靠存儲器大磺;人機交互或設備間通信要用到I/O設備。這五大基本組件的結(jié)構(gòu)探膊,也貫穿了現(xiàn)代計算設備發(fā)展的歷程杠愧。