簡介:電腦的「大腦」與「身體」

歡迎!在本章中,我們將深入探索電腦機殼內部的硬體組件。如果你曾經好奇為什麼點擊按鈕時電腦會有反應,或者為什麼更強大的處理器能讓遊戲跑得更順暢,那你就來對地方了!

你可以把電腦想像成一家繁忙的餐廳。處理器 (Processor) 是大廚,主記憶體 (Main Memory) 是備餐櫃檯,而匯流排 (Buses) 則是負責來回傳遞訂單與食材的侍應生。讀完這些筆記後,你將明白這些組件是如何互相溝通,共同創造出神奇的效能。如果現在覺得專有名詞太多也不用擔心——我們會將它們拆解,逐一擊破!


1. 核心組件

每台電腦系統都依賴幾個「主力」來運作。根據 AQA 的教學大綱,你需要掌握以下關鍵成員:

處理器 (CPU)

中央處理器 (Central Processing Unit, CPU) 是電腦的「大腦」。它的工作是執行指令,包括提取數據、進行運算以及作出邏輯判斷。

主記憶體 (RAM)

這是電腦儲存當前正在使用的數據和指令的地方。它是可定址的 (addressable),這意味著記憶體中的每一個「插槽」都有一個獨特的編號(即地址),讓處理器能精確找到它所需要的東西。

I/O 控制器

電腦需要與外界進行通訊(例如鍵盤或螢幕)。I/O (輸入/輸出) 控制器是一種位於處理器與周邊設備之間的硬體。它扮演「翻譯官」的角色,確保處理器不必處理每一個鍵盤或滑鼠所使用的特定「語言」。


2. 「神經系統」:通訊匯流排

上述組件是如何溝通的呢?它們使用匯流排 (Buses)。匯流排其實就是連接不同獨立組件的一組平行導線。

你需要知道三種主要的匯流排,它們統稱為系統匯流排 (System Bus)

  • 地址匯流排 (Address Bus): 用於發送數據去向的位置。它是單向的 (unidirectional),只能從處理器發送到記憶體或 I/O 控制器。
  • 數據匯流排 (Data Bus): 負責攜帶實際的數據(數字、字元或指令)。它是雙向的 (bi-directional),因為數據既需要流入處理器,也需要流出處理器。
  • 控制匯流排 (Control Bus): 發送訊號以協調一切。它告訴系統現在應該進行「讀取」還是「寫入」,並處理「中斷 (interrupts)」請求。

快速複習箱:
- 地址匯流排: 去哪裡?(單向)
- 數據匯流排: 什麼數據?(雙向)
- 控制匯流排: 怎樣做、何時做?(雙向)

記憶小撇步:地址匯流排想像成 GPS(告訴你去哪裡),數據匯流排是快遞貨車(運送貨物),而控制匯流排是交通號誌(告訴所有人何時該走)。


3. 電腦架構

電腦組織「佈局」的方式主要有兩種。別被這些名稱嚇到了!

馮·紐曼架構 (Von Neumann Architecture)

在此設計中,數據與指令共用相同的記憶體與相同的匯流排。大多數通用電腦(如你的筆記型電腦)都採用這種架構。 問題所在: 由於它們共用同一個匯流排,處理器無法同時提取指令和數據。這被稱為馮·紐曼瓶頸 (Von Neumann Bottleneck)

哈佛架構 (Harvard Architecture)

這種設計為數據和指令使用獨立的記憶體和獨立的匯流排。就像學校裡有兩條不同的走廊——一條供學生使用,另一條供老師使用。這種方式速度快得多,常應用於嵌入式系統 (Embedded Systems)(例如洗衣機裡的電腦或數位訊號處理器)。

重點總結: 馮·紐曼 = 共用(成本較低、靈活);哈佛 = 分離(速度更快、專用性強)。


4. 儲存程式概念 (Stored Program Concept)

這是計算機科學的基本概念。它規定程式必須駐留在主記憶體中才能執行。處理器會逐一提取指令,並以串列方式 (serially)(按順序)執行。

你知道嗎? 在這個概念出現之前,若要更改電腦的任務,必須進行實體線路重連。現在,我們只需將不同的程式載入記憶體即可!


5. 處理器內部:暫存器與部件

處理器並非一個巨大的整體,它由許多專用部件和超高速的儲存位置組成,稱為暫存器 (Registers)

主要組件

  • 算術邏輯單元 (ALU): 計算機。負責所有數學運算(加、減)和邏輯運算(AND、OR)。
  • 控制單元 (CU): 老闆。管理「提取-執行週期 (Fetch-Execute cycle)」並向其他組件發送控制訊號。
  • 時鐘 (Clock): 鼓手。發送脈衝以保持所有組件同步運作。

專用暫存器

暫存器就像處理器用來記住當下正在做什麼的「便利貼」:

  • 程式計數器 (PC): 儲存下一條將被提取的指令的地址
  • 當前指令暫存器 (CIR): 儲存當前正在解碼/執行的指令。
  • 記憶體地址暫存器 (MAR): 儲存正在存取的記憶體地址
  • 記憶體緩衝暫存器 (MBR): 儲存從記憶體讀取或寫入記憶體的實際數據。(也稱為記憶體數據暫存器)。
  • 狀態暫存器 (Status Register): 記錄如上一次運算結果是否為零或負數等狀態。

6. 提取-執行週期 (Fetch-Execute Cycle)

這是電腦的「心跳」,每秒重複數十億次:

第 1 步:提取 (Fetch)
1. 將 PC 中的地址複製到 MAR
2. 從記憶體中提取指令,並放入 MBR
3. PC 遞增(加 1),使其指向下一條指令。
4. 將指令從 MBR 複製到 CIR

第 2 步:解碼 (Decode)
控制單元查看 CIR 中的指令,並解析其含義。

第 3 步:執行 (Execute)
處理器執行該指令(例如 ALU 將兩個數字相加,或在暫存器之間移動數據)。


7. 處理器指令

每個處理器都有自己的指令集 (Instruction Set)。指令通常由兩部分組成:

  1. 運算碼 (Opcode): 「操作代碼」(即做什麼,例如 ADD, LOAD, STOP)。
  2. 運算元 (Operand): 「數據」(即去哪裡什麼數值,例如地址或數字)。

定址模式

處理器如何解讀運算元?
- 立即定址 (Immediate Addressing): 運算元本身就是實際數值。(例如:ADD 5 意思是「加上數字 5」)。
- 直接定址 (Direct Addressing): 運算元是儲存該數值的記憶體地址。(例如:ADD 101 意思是「加上儲存在地址 101 的數值」)。


8. 影響效能的因素

為什麼有些電腦比其他電腦快?通常取決於以下因素:

  • 時鐘速度 (Clock Speed): 以赫茲 (Hz) 為單位。每秒脈衝越多 = 執行的指令越多。
  • 核心數量 (Number of Cores): 一個核心就是 CPU 的完整拷貝。多核心可以同時處理不同的任務。
  • 快取記憶體 (Cache Memory): CPU 內極微小且極快速的記憶體。它儲存常用數據,這樣 CPU 就不必等待較慢的 RAM。
  • 字組長度 (Word Length): CPU 一次能處理的位元數(例如 32-bit 或 64-bit)。
  • 匯流排寬度 (Bus Width): 匯流排越寬(導線越多),一次能傳輸的數據就越多。就像高速公路增加車道一樣。

重點總結: 要讓處理器變快,可以提高脈衝頻率(時鐘速度)、增加更多「大腦」(核心)、配備更快的「便利貼」(快取)或拓寬「道路」(匯流排寬度)。


做得好!你已經完成了電腦內部硬體的學習。別擔心暫存器(MAR, MBR 等)看起來很混亂——只要記住數據總是進入緩衝區 (MBR),地址總是進入地址暫存器 (MAR) 就行了。你一定做得到的!