歡迎來到硬體世界!
你好!今天我們將深入探討電腦科學的物理層面。軟體是一組告訴電腦該做什麼的指令集,而硬體 (Hardware) 則是「你可以觸摸到的實體」。我們將探討電腦是如何思考、如何記憶,以及如何與外界溝通。如果這聽起來內容很多,別擔心,我們會把它拆解開來,一點一點地學!
3.1 電腦及其組件
每台電腦系統要運作,都需要四個核心要素:輸入 (Input)、輸出 (Output)、儲存 (Storage) 和 記憶體 (Memory)。你可以把它想像成一個廚房:你將食材帶進來(輸入),在檯面上進行處理(記憶體),將剩餘的食材放在儲物櫃(儲存),最後將完成的餐點端上桌(輸出)。
1. 記憶體:RAM 與 ROM
這兩者很容易混淆,但這裡有一個簡單的竅門:RAM 是為了「當下」正在發生的事情,而 ROM 則是用於「永不改變」的事項。
- RAM(隨機存取記憶體): 這是揮發性 (Volatile) 記憶體。這意味著當你關掉電源時,裡面所有的資料都會消失!它負責儲存當前正在使用中的資料和程式。
- ROM(唯讀記憶體): 這是非揮發性 (Non-volatile) 的。即使斷電,它也能保留其中的資料。它通常包含電腦的「啟動」指令(BIOS)。
深入了解:RAM 的類型
- DRAM(動態 RAM): 需要每秒刷新數千次。它的成本較低,用於主記憶體。
- SRAM(靜態 RAM): 速度更快且不需要刷新,但價格較昂貴。它用於 CPU 內部的高速緩存 (Cache)。
深入了解:ROM 的類型
- PROM: 可程式化唯讀記憶體(只能寫入一次)。
- EPROM: 可抹除可程式化唯讀記憶體(可以使用紫外線進行抹除)。
- EEPROM: 電子抹除式可程式化唯讀記憶體(可以使用電子訊號抹除——這就是快閃記憶體的運作原理!)。
2. 輸入與輸出設備
我們如何與電腦溝通,以及它如何回應我們?
- 雷射印表機: 利用雷射光束和粉末狀墨水(碳粉)快速列印高品質的文件。
- 3D 印表機: 通過將材料(如塑膠)一層一層地「列印」堆疊起來,創造出實體物件。
- 麥克風與揚聲器: 麥克風將聲波轉換為電訊號(輸入);揚聲器則執行相反的操作(輸出)。
- 虛擬實境 (VR) 頭戴式裝置: 利用感測器追蹤你的頭部移動,並通過螢幕向你展示 3D 世界。
3. 儲存:檔案都去哪了?
- 磁碟硬碟 (Magnetic Hard Disk): 使用旋轉盤和移動的讀寫頭。它在提供大量儲存空間方面很便宜,但速度較慢且容易損壞。
- 固態(快閃)記憶體 (Solid State / Flash Memory): 沒有移動部件!它速度非常快且耐用。這就是你手機或 USB 隨身碟裡面的儲存方式。
- 光碟 (Optical Discs):(CD、DVD、藍光光碟)使用雷射光在反射面上讀取和寫入資料。
4. 嵌入式系統 (Embedded Systems)
嵌入式系統是內嵌在大型裝置中,用於執行特定任務的小型電腦。 例子:微波爐裡的計時器、汽車的引擎管理系統,或是洗衣機裡的控制器。
優點: 體積小、製造成本低、非常可靠。
缺點: 難以更新,且只能執行一項特定的工作。
快速回顧: RAM 是揮發性的(斷電即忘),ROM 是非揮發性的(永遠記得)。嵌入式系統是隱藏在電器裡的「電腦」。
虛擬機器 (Virtual Machines, VMs)
想像一下,你有一台 Mac,但你需要運行一個只支援 Windows 的軟體。與其買一台新電腦,你可以使用虛擬機器。
虛擬機器是一種表現得像實體電腦的軟體程式。它在另一個「作業系統」內部運行一個「作業系統」。
- 主機作業系統 (Host OS): 實際安裝在硬體上的主要作業系統。
- 客體作業系統 (Guest OS): 在虛擬機器內運行的作業系統。
優點: 你可以同時運行多個作業系統,而且如果虛擬機器中了病毒,通常不會損害你的實體電腦!
缺點: 同時運行兩台電腦需要大量的 RAM 和強大的 CPU 效能。
4.1 CPU 架構(電腦的大腦)
大多數現代電腦都遵循馮·紐曼架構 (Von Neumann Model)。這意味著程式 (Program) 和資料 (Data) 都儲存在同一個記憶體(RAM)中。
CPU 的關鍵組件:
- ALU(算術邏輯單元): 計算機。它處理數學運算(加、減)和邏輯運算(AND、OR)。
- CU(控制單元): 經理。它協調 CPU 的所有組件並管理資料流。
- 系統時鐘 (System Clock): 心跳。它發送脈衝以確保一切保持同步。
暫存器(微小且超快速的儲存區)
別被這些名字嚇到了!把把它們想像成 CPU 用來記錄此時此刻正在做什麼的「便利貼」。
- PC(程式計數器): 保存下一個要提取的指令位址。
- MAR(記憶體位址暫存器): 保存當前正在存取的記憶體位址。
- MDR(記憶體資料暫存器): 保存剛從記憶體讀取或即將寫入記憶體的實際資料。
- ACC(累加器): 保存來自 ALU 的計算結果。
- CIR(當前指令暫存器): 保存當前正在解碼和執行的指令。
三種匯流排(傳輸道路)
資料透過「匯流排」在電腦中傳輸:
- 位址匯流排 (Address Bus): 攜帶資料要去哪裡的「位址」。它是單向的 (Unidirectional),從 CPU 到記憶體。
- 資料匯流排 (Data Bus): 攜帶實際資料。它是雙向的 (Bidirectional)。
- 控制匯流排 (Control Bus): 攜帶協調一切的訊號(如「讀」或「寫」)。它是雙向的。
你知道嗎?「匯流排寬度」就像公路的車道數。64 位元的匯流排一次能傳輸的資料量比 32 位元匯流排多得多!
提取-執行週期 (Fetch-Execute Cycle)
這是 CPU 每秒執行數十億次的「循環」過程。它主要分為三個階段:
- 提取 (Fetch): CPU 從 RAM 中獲取下一個指令(使用 PC 中的位址)。
- 解碼 (Decode): 控制單元 (CU) 解析該指令的實際含義。
- 執行 (Execute): CPU 執行該指令(例如在 ALU 中將兩個數字相加)。
記憶小撇步: 只要記住「F-D-E」—— Fetch(提取)、Decode(解碼)、Execute(執行)!
中斷 (Interrupts)
中斷是發送給 CPU 的一個訊號,意思是:「停下你正在做的事,我需要處理!」
常見原因: 印表機沒紙了、使用者點擊滑鼠,或是硬體故障。
當發生中斷時,CPU 會完成當前任務,在暫存器中保存當前的「位置」,並執行一個稱為中斷服務程式 (Interrupt Service Routine, ISR) 的特殊程式來處理問題。完成後,它會回到之前中斷的工作繼續進行。
重點總結: CPU 是大腦,暫存器是它的即時筆記,提取-執行週期是它不斷進行的思考過程。中斷只是硬體引起 CPU 注意的一種「禮貌」方式。