109 年 國立成功大學工程科學系碩士班丙組《計算機概論》
第 1 題28 分
下列表示式為網路空間內一個物件的統一資源定位符(Uniform Resource Locator)或稱全球資源定位
器,其包含多個部分如線段所括示,請將空格內之英文名詞寫出,並針對每一名詞作詳細解釋。
(答案未標明號碼不予計分。)
https://eagle.es.ncku.edu.tw:8080/eaglesource/computer_science.pttx
4. ____
5. ____
6. ____
7. ____
登入後即可作答並保存紀錄。
此題主要在考驗考生對於 Uniform Resource Locator (URL) 各組成部分的理解與解釋能力。URL 是用來定位網際網路上資源的字串,其結構包含多個部分,每個部分都有其特定的意義。
解析:
URL 的標準格式為:protocol://hostname:port/path?query_string#fragment。
根據題目提供的 URL https://eagle.es.ncku.edu.tw:8080/eaglesource/computer_science.pttx,我們可以將其拆解如下:
-
https:- 這是 URL 的 Protocol (協定) 部分。
- 解釋: 指示瀏覽器或客戶端程式如何與伺服器進行通訊。
https代表 Hypertext Transfer Protocol Secure,是一種安全版本的 HTTP 協定,使用 TLS/SSL 加密來保護資料傳輸。
-
eagle.es.ncku.edu.tw:- 這是 URL 的 Hostname (主機名稱) 或 Domain Name (網域名稱) 部分。
- 解釋: 指示網際網路上的伺服器名稱。它通常由一系列由點分隔的標籤組成,代表了網域的層級結構(例如
tw是頂級網域,edu是次級網域,ncku是國家級網域,es是子網域,eagle是主機名稱)。
-
tw:- 這是 Hostname 中的一部分,屬於 Top-Level Domain (TLD)。
- 解釋: 頂級網域,代表一個國家或地區的代碼,例如
.tw代表台灣。
-
8080:- 這是 URL 的 Port (埠號) 部分。
- 解釋: 指示伺服器上用於接收請求的特定通訊端點。如果省略埠號,則會使用協定的預設埠號(例如 HTTP 是 80,HTTPS 是 443)。這裡
8080是一個非預設的埠號,通常用於開發或測試環境。
第 2 題
傳統上作業系統在和周邊設備溝通時,有輪詢(polling)及岔斷處理(interrupt handling)兩種模式。
a. 請說明兩種模式之運作方式
b. 請針對兩種模式之運用各舉一例說明
登入後即可作答並保存紀錄。
此題主要在考驗考生對於作業系統中常見的 I/O (輸入/輸出) 溝通模式:輪詢 (Polling) 與岔斷處理 (Interrupt Handling) 的理解。
核心觀念: 輪詢和岔斷是 CPU 與 I/O 設備之間協調資料傳輸的兩種基本機制,它們在 CPU 的參與程度、效率和適用場景上有顯著差異。
a. 兩種模式之運作方式說明
-
輪詢 (Polling)
- 運作方式: 在輪詢模式下,CPU 持續不斷地檢查 I/O 設備的狀態,以判斷設備是否準備好進行資料傳輸(例如,是否已準備好接收指令、是否已完成資料讀取等)。CPU 會週期性地讀取設備的狀態暫存器 (Status Register)。如果設備狀態顯示準備就緒,CPU 就會進行資料傳輸;否則,CPU 會繼續等待並重複檢查。
- CPU 參與程度: CPU 的大部分時間都花費在主動輪詢設備狀態上,即使設備並未準備好,CPU 也無法執行其他任務。這是一種 CPU 主導的、較為耗費 CPU 資源的模式。
-
岔斷處理 (Interrupt Handling)
- 運作方式: 在岔斷處理模式下,I/O 設備在準備好進行資料傳輸(例如,資料已準備好讀取,或已接收完畢)時,會主動向 CPU 發出一個「岔斷請求」(Interrupt Request, IRQ)。CPU 在執行當前指令的間隙,會檢查是否有新的岔斷請求。若有,CPU 會暫停當前正在執行的任務,轉而執行一個預先定義好的「岔斷服務程序」(Interrupt Service Routine, ISR)。ISR 的主要工作是處理該 I/O 事件(例如,讀取或寫入資料),完成後,CPU 會恢復之前被暫停的任務。
- CPU 參與程度: CPU 在 I/O 操作的大部分時間裡可以執行其他任務,只有在 I/O 設備真正需要 CPU 服務時,CPU 才需要介入。
第 3 題
下列圖示為正反器(flip-flop)的邏輯線路及一個記憶體位元(memory bit)的電子線路。
🖼️【此處有附圖,請對照原卷】
S
R
位址線
電容器
電電晶體
位元線
a. 請劃出正反器之功能真值表並說明正反器之工作原理(非僅僅描述功能真值表,而是配合
功能真值表來描述邏輯閘之運作情形)
b. 請問兩種線路各用在建造何種種類之記憶體,並請描述兩種記憶體之主要不同處及主要用
途。
登入後即可作答並保存紀錄。
核心觀念
本題考查兩種基本記憶元件:
- 兩個 NOR 閘交叉回授形成的 S-R 正反器(SR latch)。
- 由一個電晶體與一個電容器構成的動態記憶元件(DRAM cell)。
NOR 閘的特性為:只要任一輸入為 ,輸出即為 ;只有所有輸入皆為 時,輸出才為 。
圖中上方輸出為 ,下方輸出為 ,其邏輯關係為
兩個輸出透過回授彼此維持狀態,因此能儲存一個位元。
解題方法與正反器功能真值表
判斷方式是先觀察 或 是否將其中一個 NOR 閘的輸出強制為 ,再利用回授推導另一個輸出。
| 下一狀態 | 下一狀態 | 功能 | ||
|---|---|---|---|---|
| 0 | 0 | 保持原值 | 保持原值 | 保持 |
| 1 | 0 | 1 | 0 | Set,設定 |
| 0 | 1 | 0 | 1 | Reset,重設 |
| 1 | 1 | 0 | 0 | 禁止狀態 |
其中 時,輸出取決於原先儲存的狀態:
- 若原本 、,回授後仍維持此狀態。
- 若原本 、,回授後仍維持此狀態。
因此, 並不會產生新的資料,而是保存原有資料。
正反器工作原理
-
:設定狀態
上方 NOR 閘有一個輸入為 ,因此其輸出被強制為
此時下方 NOR 閘的兩個輸入為 與 ,所以輸出為
當 恢復為 後, 的回授仍使 ,因此正反器維持 。
-
:重設狀態
下方 NOR 閘有一個輸入為 ,因此其輸出被強制為
此時上方 NOR 閘的兩個輸入為 與 ,所以輸出為
當 恢復為 後, 的回授仍使 ,因此正反器維持重設狀態。
-
:保持狀態
兩個 NOR 閘的外部輸入皆為 ,輸出完全由原本的回授狀態決定。只要原本是合法狀態 或 ,就能持續保存資料。
-
:禁止狀態
上、下兩個 NOR 閘皆至少有一個輸入為 ,所以
第 4 題
傳統范紐曼架構(Von Neumann architecture)電腦的中央處理器包含有控制單元(Control unit)、算術
邏輯單元(Arithmetic/Logic unit)及暫存器(Registers),並至少使用控制匯流排(Control bus)、資料匯
流排(Data bus)、及位址匯流排(Address bus)和周邊設備溝通。
a. 請劃出一完整范紐曼電腦架構圖,並標明所有上述提及之單元及匯流排。
b. 請說明中央處理器在使用這三種匯流排來針對某一記憶體位址讀取指令碼或寫入資料時的
詳細作動流程。
c. 中央處理器在針對某一記憶體位址讀入指令碼後,便啟動一機器循環(Machine Cycle)來執行
該指令,請詳細說明一機器循環之流程步驟。
登入後即可作答並保存紀錄。
此題主要考驗考生對傳統馮紐曼 (Von Neumann) 電腦架構的理解,包括其核心組成單元、匯流排的作用,以及 CPU 如何透過這些匯流排與記憶體和 I/O 設備進行資料交換和指令執行。
核心觀念: 馮紐曼架構的關鍵在於將指令和資料儲存在同一記憶體中,並透過共享的匯流排進行傳輸。CPU 透過控制單元協調整個電腦的運作,包括指令的提取、解碼和執行,以及資料的讀寫。
a. 完整馮紐曼電腦架構圖
🖼️【此處有附圖,請對照原卷】
一個典型的馮紐曼架構圖應包含以下主要部分,並標示出匯流排:
- 中央處理器 (CPU):
- 控制單元 (Control Unit, CU): 協調所有指令的執行,產生控制信號。
- 算術邏輯單元 (Arithmetic Logic Unit, ALU): 執行算術運算 (加、減、乘、除) 和邏輯運算 (AND, OR, NOT)。
- 暫存器 (Registers): CPU 內部的高速儲存單元,如程式計數器 (PC)、指令暫存器 (IR)、記憶體位址暫存器 (MAR)、記憶體資料暫存器 (MBR) 或暫存資料緩衝器 (MDR)、通用暫存器等。
- 記憶體 (Memory): 儲存指令和資料。
- 輸入/輸出設備 (I/O Devices): 如鍵盤、顯示器、硬碟等。
- 匯流排系統 (Bus System): 連接 CPU、記憶體和 I/O 設備的通道。
- 位址匯流排 (Address Bus, AB): 單向,由 CPU 指向記憶體或 I/O 設備,用來指定要存取的記憶體位置或 I/O 埠。其寬度決定了 CPU 可定址的記憶體空間大小。
- 資料匯流排 (Data Bus, DB): 雙向,用於傳輸指令、資料或結果。CPU 與記憶體/I/O 設備之間的資料交換都透過此匯流排。
- 控制匯流排 (Control Bus, CB): 雙向,傳輸控制信號和狀態信號,用於協調 CPU、記憶體和 I/O 設備之間的活動,例如讀取/寫入信號 (RD/WR)、時脈信號、中斷請求信號等。
架構圖繪製說明:
CPU 內部包含 CU, ALU, Registers。
CPU, Memory, I/O Devices 之間由三種匯流排連接:
- Address Bus: 從 CPU 指向 Memory 和 I/O Devices (單向)。
- Data Bus: 在 CPU, Memory, I/O Devices 之間雙向傳輸。
- Control Bus: 在 CPU, Memory, I/O Devices 之間雙向傳輸控制和狀態信號。
b. CPU 使用三種匯流排讀取指令碼或寫入資料的詳細作動流程
這裡我們分別說明讀取和寫入的操作流程。
-
讀取記憶體的操作流程 (例如,讀取指令碼):
- CPU 產生位址: CPU 的控制單元 (CU) 會將要讀取的記憶體位址放入記憶體位址暫存器 (MAR)。
- 位址傳輸: CU 將 MAR 中的位址傳送到位址匯流排 (Address Bus)。此時,位址匯流排上就包含了目標記憶體單元的唯一識別碼。
- 發出讀取指令: CU 在控制匯流排上發出一個「記憶體讀取」(Memory Read) 的控制信號。這通常是一個讀取有效 (RD=1) 的信號,同時確保寫入信號 (WR) 為無效。
- 記憶體回應: 記憶體控制器接收到位址匯流排上的位址和控制匯流排上的讀取信號後,會找到對應的記憶體位置。
- 讀取資料: 記憶體從該位址讀取指令碼 (或資料)。
- 資料傳輸: 記憶體將讀取的指令碼透過資料匯流排 (Data Bus) 傳送回 CPU。
- CPU 接收資料: CPU 的記憶體資料暫存器 (MBR/MDR) 接收資料匯流排上的指令碼。
- 處理指令: CU 將 MBR/MDR 中的指令碼複製到指令暫存器 (IR) 中,然後進行解碼和執行。
-
寫入記憶體的操作流程 (例如,寫入資料):
- CPU 產生位址: CPU 的 CU 將要寫入的記憶體位址放入 MAR。
- 位址傳輸: CU 將 MAR 中的位址傳送到位址匯流排。
- CPU 準備資料: CPU 將要寫入的資料放入 MBR/MDR。
- 資料傳輸: CU 將 MBR/MDR 中的資料透過資料匯流排傳送出去。
- 發出寫入指令: CU 在控制匯流排上發出一個「記憶體寫入」(Memory Write) 的控制信號。這通常是一個寫入有效 (WR=1) 的信號,同時確保讀取信號 (RD) 為無效。