右手拿著筆做計算,左手拿著指令集手冊;本身是先進積體電路工藝的結晶, 將許多的計算與控制電路微縮在一塊晶片裡,但只能執行指令集裡有的動作, 因為運算時總是會發出高熱,所以頭上經常戴著散熱片帽子和風扇。
處理器(processor)是一個微電腦裝置中最核心的零件,本質上,你可以把處理器晶片想像成許多功能電路的集合體,它能夠接受指令, 從指定的記憶體位置或線路讀取資料,進行運算,並將結果輸出會寫回記憶體。現代的電腦系統非常地複雜,其實系統中包含了不只一個處理器, 許多周邊裝置為了能夠運行內部的韌體程式功能,本身就自帶了處理器,在整個電腦系統當中,我們把最主要用來執行作業系統與應用程式的處理器稱為 「中央處理器(Central Processing Unit, CPU)」,而把其他的小處理器稱為「微控制器(Micro Control Unit, MCU)」。
為了能夠同時執行多個程式,現代的中央處理器可能包含了不只一套處理器電路,每一套處理器電路被稱為一個「中央處理器核心(CPU core)」, 除此之外,現代的中央處理器更像各種電路核心的大會議室,裡面可能還包含了圖形處理核心(GPU)、多媒體編解碼、加解密晶片、以及其他複雜運算的電路, 所以中央處理通常是整部電腦系統裡採用最先進工藝製造、運行速度最快、發熱量最高、同時價格也最昂貴的零件。
處理器(processor)是一個微電腦裝置中最核心的零件,本質上,你可以把處理器晶片想像成許多功能電路的集合體,基本上包含三種電路, 第一、算術邏輯單元,例如數字的加減乘除,第二、資料處理單元,例如資料的搬進搬出,第三、流程控制單元, 包括了讓程式根據先前計算的結果,讓程式走向不同流程的控制功能。
而處理器外的接腳(pin)是成百上千的,這些接腳連接著三種線路,第一、控制訊號線路,藉由不同的訊號輸入可選用不同功能的電路, 或改變處理器的狀態,第二、資料輸出入線路,計算步驟當中所需要的資料由此進入,結果也由此輸出, 第三、位址線路,處理器通常連接著記憶體(memory),而記憶體是一塊很大的資料空間,處理器由此指定目前要讀取或寫回的資料位於記憶體的哪裡, 就像郵寄地址一樣,然後該地址所在的資料內容便由前述的資料輸出入電路進出。
電腦程式是一個包含了一連串許多 0 與 1 資料的檔案,每一組 0 與 1 數字串經過解碼以後,都可以對應到每個接腳的 0 與 1 訊號, 以此驅使處理器啟用指定的電路進行指定的計算工作,而這些「0 與 1 數字串」的定義表就稱為這個處理器的「指令集(instruction set)」, 原則上,以相同指令集編寫的程式應該都相同指令集的處理器上運行,就算處理器是由不同的廠商設計製造的; 而以某一指令集編寫的程式則不能在不同指令集的處理器上執行,這是理所當然的事情。 常見處理器所使用的指令集有 X86 指令集,ARM 指令集,以及 RISC-V 指令集。
我們經常用電晶體的數量來衡量晶片電路的複雜度,根據物理原理,常溫下只要是有電流通過的東西,都會產生熱能和電磁波, 而 CPU 隨著歷年的不斷改進,雖然電晶體越做越小,但是因為電路越來越複雜,所以電晶體數量卻不斷倍增,大約是每兩年就會增加一倍, 你可以想像當我們把越來越多的電晶體塞進約略相同尺寸的 CPU 晶片裡,它會變得有多燙! 幾十年前最初的 CPU 是不需要任何散熱零件的,漸漸地,後來幾年推出 CPU 就必須裝上金屬散熱片了,再過了幾年, 市面上推出的 CPU 不但需要散熱片,而且還要再裝上大大的風扇,甚至有些電腦系統裡的 CPU 已經需要水冷式散熱系統了。