歡迎來到計算的核心!
你好!今天,我們將深入探討計算機科學史上最重要的「頓悟時刻」之一:存儲程序概念(Stored Program Concept)。
別被這個名字嚇到,覺得它聽起來很專業。簡單來說,我們即將學習的是一個「大概念」,正是它讓電腦從單一用途的計算器,進化成我們今天使用的多工機器(如你的手機或手提電腦)。讓我們一步步拆解它吧!
1. 什麼是存儲程序概念?
在這個概念出現之前,如果你想讓電腦執行不同的任務,通常需要手動重新接線!
存儲程序概念改變了一切。它的核心觀念是:機器碼指令(machine code instructions)與數據一樣,都存儲在主記憶體(RAM)中,並由處理器逐一(序列式地)提取(fetched)和執行(executed)。
簡單的比喻:廚師與食譜書
想像一位廚師(即處理器)在廚房裡。
早期的電腦就像是一位只會烤吐司的廚師。如果要煮湯,你就得把廚師換掉!
而存儲程序概念就像是給廚師一本食譜書(即主記憶體)。
- 指令(烹飪步驟)都寫在書裡。
- 數據(食材)也放在廚房裡。
- 廚師從書中每次提取一條指令,執行它,然後移動到下一行。
重點總結:
在存儲程序電腦中,程式並非固定不變的。它以一系列數字(機器碼)的形式存儲在記憶體中,處理器可以讀取並執行這些數字。
2. 運作原理:「提取-執行」基礎
課程大綱要求你描述這個過程是如何發生的。它遵循一個非常特定的「節奏」。儘管現代電腦速度驚人,但它們大體上仍然遵循這些基本步驟,並且是序列式(serially)(一個接一個)進行的:
- 存儲在記憶體中:程式(指令集)被載入到主記憶體。
- 提取(Fetched):處理器從記憶體中提取(獲取)第一條指令。
- 執行(Executed):處理器執行該指令。這通常涉及算術運算(例如加法)或邏輯運算(例如比較兩個數值)。
- 重複:處理器隨後提取「下一條」指令並重複此過程。
「別擔心,這看起來可能太簡單——它本來就該這麼簡單!電腦的強大之處就在於它能每秒鐘執行這些簡單步驟數十億次。」
你知道嗎?
這個概念通常與馮·諾伊曼架構(Von Neumann Architecture)聯繫在一起。在此之前,「編程」一台電腦意味著要撥動數百個物理開關或插入電纜!
3. 理解「序列式(Serial)」執行
序列式(serially)這個詞是課程大綱的關鍵。它簡單地意味著「按順序」或「一次一個」。
超級市場比喻:
想像超級市場裡只有一個結帳櫃檯。即使你有 10 件商品,收銀員也是序列式地掃描它們——一個接一個。他們不會在同一瞬間掃描所有 10 件商品。處理器處理指令的方式也是一樣;它會在進行下一條指令之前,先完成當前的一條指令(或其中一部分)。
4. 必須避免的常見陷阱
當你在考試中解釋這個概念時,請記住這些「快速複習」點,以免失分:
快速複習框:- 指令存儲在哪裡?永遠在主記憶體中。
- 它們是什麼格式?必須是機器碼(二進制),處理器才能理解。
- 它們是如何被處理的?序列式(Serially)(一次一個)。
- 處理器實際做什麼?它執行算術和邏輯運算。
常見錯誤:許多學生會忘記提到指令 AND 數據都存儲在主記憶體中。如果你只說「數據被存儲」,那並沒有完整描述存儲程序概念!
5. 記憶輔助:「F-E-S」技巧
為了在考試中記住這個定義,可以想一下 F-E-S:
- Fetched(從記憶體提取)。
- Executed(由處理器執行)。
- Serially(按順序,一個接一個)。
總結檢查清單
在進入下一章之前,請確保你能回答這三個問題:
- 我能定義什麼是存儲程序概念嗎?
- 我知道指令在使用前存放在哪裡嗎?
- 我能解釋什麼是「序列式執行」嗎?