電腦科學 9618 AS Level 學習筆記:第 3 章 - 硬體 (Hardware)
歡迎來到精彩的硬體世界!理解硬體就像在學習電腦的「解剖學」——正是它讓其他一切(軟體、數據和通訊)得以運作。在本章中,我們將剖析構成電腦系統的基本元件,從強大的伺服器到微小的嵌入式晶片,並深入探討電子學的基本建構模組:邏輯閘 (Logic Gates)。
如果有些術語看起來很複雜,請不用擔心;我們會使用簡單的類比,確保你能牢記每個概念!讓我們開始吧。
3.1 電腦及其元件
電腦元件的基本功能
每台通用電腦都需要四個主要功能才能運作。可以把這些想成是系統生存的基本需求:
- 輸入 (Input): 將數據送入系統(例如:鍵盤、麥克風)。
- 處理 (Processing): 操作數據(由 CPU 完成——我們將在第 4 章詳細說明!)。
- 主記憶體 (Primary Memory / 即時存取儲存器 IAS): CPU 當下需要存取數據和指令時所使用的臨時儲存空間(例如:RAM)。
- 輸出 (Output): 向使用者呈現結果(例如:螢幕、喇叭)。
- 輔助儲存裝置 (Secondary Storage): 用於在斷電時保存數據和程式的永久儲存空間(例如:硬碟)。
深入了解記憶體
主記憶體:RAM 與 ROM
主記憶體對於 CPU 的高效運作至關重要。主要分為兩種類型:
1. 隨機存取記憶體 (Random Access Memory, RAM)
- 用途: 儲存程式目前正在使用的數據和指令。
- 揮發性: 它是揮發性 (volatile) 的。類比:RAM 就像你的書桌工作空間。如果斷電了,桌面上的一切都會消失。
- 可寫入性: 可以不斷地從 RAM 讀取數據並寫入數據。
2. 唯讀記憶體 (Read Only Memory, ROM)
- 用途: 儲存啟動電腦所需的必要指令(引導程式 Bootstrap 或韌體)。
- 揮發性: 它是非揮發性 (non-volatile) 的。類比:ROM 就像教科書——其中的資訊是固定的,即使斷電後依然存在。
- 可寫入性: 通常只能讀取,但現代的類型可以進行修改(見下文)。
進階 ROM 類型
雖然 ROM 通常是「唯讀」的,但科技允許某些 ROM 晶片在特定條件下被寫入:
- PROM (可程式化唯讀記憶體): 通常只能由製造商或開發人員使用特殊設備寫入一次。
- EPROM (可抹除可程式化唯讀記憶體): 可以通過強紫外光 (UV light) 照射來抹除,然後重新寫入。這個過程緩慢且麻煩。
- EEPROM (電子抹除式可複寫唯讀記憶體): 無需從電路板上移除,即可通過電信號抹除並重新寫入。這在現代設備中很常見(例如儲存 BIOS 設定)。
SRAM 與 DRAM
靜態 RAM (SRAM) 和 動態 RAM (DRAM) 都是揮發性的,但在速度、大小和成本上有很大差異:
- DRAM: 使用微小的電容器儲存數據,這些電容器會漏電,因此需要不斷重新整理 (refreshed)(故稱為「動態」)。它較便宜、密度較高(在較小的空間內儲存更多數據),通常用於系統主記憶體。
- SRAM: 使用六個電晶體儲存數據(它是「靜態」的,因為不需要重新整理)。它速度快得多,成本更高,且密度較低。SRAM 幾乎專門用於 CPU 內部的快取記憶體 (Cache Memory),或是 CPU 與主記憶體之間對速度要求極高的場所。
快速回顧:
如果速度至關重要(如快取),請使用 SRAM。
如果大容量和低成本至關重要(如主記憶體),請使用 DRAM。
輔助儲存裝置
輔助儲存裝置是非揮發性的,用於長期保存數據。
- 磁性硬碟 (HDD): 使用旋轉的磁盤來儲存數據。以大容量和相對低廉的成本著稱。
- 固態硬碟 (SSD/快閃記憶體): 使用非揮發性的快閃記憶體晶片(通常基於 EEPROM 技術)。存取速度快、無移動部件、耗電量低,但通常比 HDD 更昂貴。
- 光碟機/燒錄機: 使用雷射讀取/寫入數據(CD、DVD、藍光)。適合便攜式儲存及存檔。
輸入、輸出與緩衝區
輸入與輸出設備
課程要求你了解常見 I/O 設備的主要運作原理:
- 印表機 (雷射/3D): 雷射印表機利用靜電和碳粉將圖像轉移到紙上。3D 印表機則採用增材製造技術,根據數位模型層層堆疊材料(如塑膠)。
- 麥克風: 將模擬聲音波轉換為數位訊號。
- 喇叭: 將數位音訊訊號轉換回模擬聲音波。
- 觸控螢幕: 結合了輸入與輸出功能。使用者通過觸摸座標直接提供輸入。
- 虛擬實境 (VR) 頭戴式裝置: 提供沉浸式的視覺和聽覺輸出,通常包含通過動作追蹤進行的輸入。
緩衝區 (Buffer) 的重要性
緩衝區 (Buffer) 是主記憶體 (RAM) 中的一個小區域,用於在運作速度不同的兩個元件或程序之間傳輸數據時,臨時存放數據。
類比: 想像印表機(慢)正在接收來自電腦(快)的數據。如果電腦一次發送太多數據,印表機就會當機。緩衝區就像數據的「候診室」,確保慢速設備能以可控的速率接收數據。
嵌入式系統 (Embedded Systems)
嵌入式系統是指在大型機械或電子設備中執行特定功能的電腦系統。
範例:智慧洗衣機內部的微小電腦晶片,負責控制轉速、溫度和洗滌時間。
- 優點: 體積小、耗電量低、成本效益高,且高度可靠(只做一件事)。
- 缺點: 難以升級,資源有限(記憶體/處理能力),且初期程式設計較複雜。
監測與控制系統
這些系統通常基於嵌入式硬體,並依賴感測器 (sensors) 和致動器 (actuators)。
1. 監測系統 (Monitoring Systems): 僅觀察並記錄數據。如果數值超出設定範圍,它們會提醒人類。
範例:溫度監測系統使用溫度感測器測量室溫並顯示在螢幕上。如果溫度過高,它會觸發警報。
2. 控制系統 (Control Systems): 利用數據在無需人工干預的情況下,通過致動器直接影響環境。
範例:空調控制系統使用溫度感測器,如果溫度超過 25°C,它會啟動致動器(壓縮機)來開啟冷氣裝置。
回饋 (Feedback) 的概念在控制系統中至關重要。系統持續測量輸出(新的溫度),並將該測量結果回饋給處理器,以便進一步調整致動器。
3.1 關鍵總結: 硬體確保滿足四大核心功能(輸入輸出、處理、儲存)。主記憶體 (RAM/ROM) 速度快,而輔助儲存裝置是永久性的。控制系統則利用致動器和回饋機制主動改變環境。
3.2 邏輯閘與邏輯電路
邏輯閘是數位電子電路的基本建構模組。它們接收一個或多個二進位輸入(0 或 1),並根據簡單的邏輯規則產生單一的二進位輸出(0 或 1)。
邏輯閘符號與功能
我們必須能夠識別六個核心閘的符號並理解其功能(與真值表)。請記住,除非是 NOT 閘,否則本節中的所有閘都有兩個輸入。
1. NOT 閘 (反相器)
- 功能: 反轉單一輸入。如果 A 為 1,輸出則為 0。
- 符號: (想像一個向右的三角形,輸出線上帶有一個小圓圈(即「反相小泡」)。)
2. AND 閘
- 功能: 只有當所有輸入皆為 1 時,輸出才為 1。
- 類比: 我會去公園 AND 買冰淇淋。(需要兩件事都發生。)
3. OR 閘
- 功能: 如果任何輸入為 1(或兩者皆為 1),輸出即為 1。
- 類比: 我會看電視 OR 讀書。(至少需要一件事發生。)
4. XOR 閘 (互斥或)
- 功能: 如果輸入不同(一個為 1,另一個為 0),則輸出為 1;若兩者皆為 1,則輸出為 0。
- 類比: 我要喝茶 OR 咖啡,但不能兩者都喝。(互斥的選擇。)
5. NAND 閘 (反與閘)
- 功能: AND 的相反。只有當兩個輸入皆為 1 時,輸出才為 0。
6. NOR 閘 (反或閘)
- 功能: OR 的相反。只有當兩個輸入皆為 0 時,輸出才為 1。
記憶小撇步: NAND 和 NOR 閘的輸出端總是帶有一個小圓圈(「反相小泡」),表示它們分別是 AND 和 OR 的反相版本。
真值表 (Truth Tables)
真值表展示了邏輯閘或電路所有可能的輸入組合及其產生的輸出。
真值表示例 (OR 閘)
| 輸入 A | 輸入 B | 輸出 Q |
|:-------:|:-------:|:--------:|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
構建邏輯電路與表達式
你需要能夠在問題陳述、邏輯表達式、邏輯電路和真值表之間進行轉換。
步驟 1:邏輯表達式(數學表示)
邏輯表達式使用特定的運算子:
- AND: 通常用點 (\(A \cdot B\)) 或乘號 (\(AB\)) 表示。
- OR: 通常用加號 (\(A + B\)) 表示。
- NOT: 用字母上的橫線 (\(\bar{A}\)) 或有時用 NOT(A) 表示。
- XOR: 用圓圈內的加號 (\(A \oplus B\)) 表示。
範例表達式:若 A 為真,OR (B 為真 AND C 為假),則輸出 Q 為真。
邏輯表達式:\(Q = A + (B \cdot \bar{C})\)
步驟 2:構建邏輯電路
從表達式繪製電路時,請遵循運算順序:先 NOT,再 AND,最後 OR。
對於表達式 \(Q = A + (B \cdot \bar{C})\):
- 對輸入 C 使用 NOT 閘來處理 \(\bar{C}\)。
- 處理括號內的項:將 B 和 \(\bar{C}\) 輸入一個 AND 閘。
- 處理最終項:將 A 和 AND 閘的輸出一起輸入一個 OR 閘。此最終輸出即為 Q。
步驟 3:從電路建立真值表
要為複雜電路(例如有三個輸入 A、B、C 的電路)建立真值表,請列出所有 \(2^3 = 8\) 種可能的組合。為中間閘的輸出建立臨時列,直到得出最終輸出 Q。
學生貼士: 當處理 3 個輸入 (A, B, C) 時,這 8 行的輸入總是遵循以下二進位規律:000, 001, 010, 011, 100, 101, 110, 111。先把這個寫下來!
3.2 關鍵總結: 邏輯閘是電子開關。記住六個符號(NOT, AND, OR, NAND, NOR, XOR)。真值表將所有可能的二進位輸入映射到對應的輸出。
完成硬體部分,你表現得很棒!這些概念——從記憶體層級到基礎邏輯閘——構成了所有軟體依賴的基本基礎設施。繼續練習那些邏輯轉換吧!