109 地方特考四等 電子工程 計算機概要 考古題詳解
第 1 題2 分
有關指令集架構(instruction set architecture, ISA)的敘述,下列何者錯誤?
核心觀念
指令集架構(ISA)是軟體與處理器硬體之間的抽象介面,規定軟體可使用哪些指令,以及處理器如何執行這些指令。ISA 的內容通常包括指令格式與操作、可見暫存器、資料型態、記憶體定址方式,以及輸入輸出等。
應用二進制介面(ABI)則規範已編譯程式與作業系統、函式庫或其他程式元件之間如何配合,例如呼叫慣例、資料排列方式與二進位檔格式。ABI 可協助二進位程式在符合相同介面的系統中相容,但不代表不同處理器之間自然具有二進位可攜性。
解題方法
逐項判斷敘述是否符合 ISA 或 ABI 的定義。關鍵在於:不同處理器廠牌可能採用不同 ISA;例如 Intel 常見的 x86 系列與 ARM 處理器的指令集並不相同。因此,聲稱兩者「皆使用相同的指令集架構」不正確。
選項分析
第 2 題2 分
有關處理器虛擬化的敘述,下列何者正確?
核心觀念
本題考處理器虛擬化的額外負擔(overhead),以及工作負載與虛擬化成本的關係。虛擬機器執行時,部分特權操作須由虛擬機器監視器(VMM,也稱 Hypervisor)介入處理;這類介入會增加執行成本。作業系統呼叫(system call)頻繁時,通常也會增加核心模式切換及虛擬化管理工作的次數。
解題方法
判斷各選項時,抓住「需要 VMM 或作業系統介入的操作越頻繁,虛擬化額外負擔通常越大」這個方向。計算密集型工作多半長時間執行一般運算指令,介入需求較少;I/O 密集型工作則常涉及裝置操作,但等待裝置的時間本身不等於處理器額外負擔。
選項分析
(A) 錯誤。 處理器虛擬化的額外負擔會受到工作負載影響。指令類型、特權操作及需要 VMM 介入的頻率不同,虛擬化成本也可能不同,因此不能說與指令類型無關,或運算密集與 I/O 密集的負擔都相同。
第 3 題2 分
程式設計師編寫的高階語言程式,通常需要先經過特定工具的處理:①組譯器;②編譯器;③聯結器,將高階程式語言轉成計算機可執行的形式,才能在計算機上執行。上述工具的處理順序為何,才能將由多個檔案組成的高階語言程式轉換成機器執行的二進制形式?
核心觀念
本題考查高階語言程式轉換成可執行機器碼時,編譯器、組譯器與聯結器的工作與順序。
- 編譯器(②):將高階語言程式翻譯成組合語言或目的程式碼。
- 組譯器(①):將組合語言轉換成目的機器碼。
- 聯結器(③):將多個目的檔及所需的函式庫連結,解析外部符號與位址,產生可執行檔。
解題方法
依各工具處理的輸入與輸出判斷順序:
第 4 題2 分
提升計算機效率的方法中,有一種叫做管道化處理(pipelining),可以用來改善中央處理單元(central processing unit, CPU)的效率,其改善效率的方式為何?
核心觀念
管道化處理(pipelining)將一條指令的執行工作分成多個階段,例如取指、解碼、執行、存取記憶體與寫回,再讓不同指令同時處於不同階段。它的主要效果是提高指令的吞吐量,也就是單位時間內完成的指令數。
解題方法
判斷題目問的是「CPU 元件變快」,還是「整體完成更多指令」。管道化讓多條指令重疊執行,因此能提高指令完成率;但不會直接加快每個元件的運作速度,也不保證單一指令所需時間縮短。
選項分析
- (A) 增加單位時間的指令完成個數:正確。 管道化讓多條指令分別在不同階段並行處理,提升指令吞吐量,符合其改善效率的主要方式。
- **(B) 增加中央處理單元中每個元件的運作速度:錯誤。
第 5 題2 分
關於一個有 個節點的紅黑樹(red-black tree),下列敘述何者錯誤?
核心觀念
本題考紅黑樹的顏色規則與黑色高度性質。紅黑樹是一種自平衡二元搜尋樹,標準定義包含:
- 每個節點不是紅色就是黑色。
- 根節點是黑色。
- 所有葉節點(通常指外部的 NIL/空節點)是黑色。
- 紅色節點的子節點必須是黑色,因此不能有連續的紅色節點。
- 從任一節點到其後代葉節點的每條路徑,所含黑色節點數相同。
其中,「紅色節點的子節點是黑色」不代表「黑色節點的子節點必定是紅色」。
解題方法
逐項比對選項與紅黑樹的定義。尤其要留意顏色規則的方向:規定限制的是紅色節點不能相鄰,並未要求黑色節點的子節點一定為紅色。
選項分析
(A) 根節點是黑色:正確。 這是紅黑樹的基本性質之一。
(B) 如果一個節點是黑色,它的兩個子節點都會是紅色:錯誤。 紅黑樹只規定紅色節點的子節點必須是黑色;黑色節點的子節點可以是紅色,也可以是黑色。
第 6 題2 分
下列何者是傳統硬碟機(hard disk drive)資料存取的最小單位?
核心觀念
本題考查傳統硬碟的資料組織方式,以及各層級中最小的存取單位。硬碟表面依序劃分為磁軌、磁區;磁區是磁碟讀寫資料時的基本單位,傳統硬碟常以一個磁區作為最小的實體存取單位。
解題方法
先分辨選項所代表的層級:磁盤是碟片,磁柱是不同碟面上位置相同的磁軌集合,磁軌是碟面上的同心圓資料區域,磁區則是磁軌再細分後的區塊。由大到小判斷,最小者為磁區。
選項分析
第 7 題2 分
冗餘廉價磁碟陣列(redundant arrays of inexpensive disks, RAID)技術可用於提升多項儲存裝置的相關能力,有關 RAID 1 的定義,下列何者正確?
核心觀念
RAID 是將多顆磁碟組成陣列,以不同方式安排資料,提升容量利用、存取效能或資料可靠度。RAID 1 的核心定義是鏡像(mirroring):同一份資料會同步寫入兩顆或多顆磁碟,讓磁碟故障時仍可由其他副本存取資料,因此著重於提高可靠度。
解題方法
辨認 RAID 層級的資料配置方式即可:條帶化是將資料分散到不同磁碟;鏡像是將相同資料複製到多顆磁碟。RAID 1 採用鏡像,因此選擇描述「鏡像」與「提高可靠度」的選項。
選項分析
第 8 題2 分
有關直接對映(direct mapped)快取記憶體(cache memory)的定義,下列敘述何者正確?
核心觀念
直接對映快取(direct-mapped cache)的規則是:主記憶體中的每個區塊,只能放到快取中唯一指定的區塊位置。位址中的索引欄位用來決定快取位置,標籤欄位則用來確認該位置目前存放的是哪個主記憶體區塊。
因此,若問「一個主記憶體位址會對映到快取中的幾個位置」,直接對映的答案是一個。
解題方法
先抓住「direct mapped」的定義:每個主記憶體區塊依索引規則對映到快取中的唯一位置。這項規則描述的是主記憶體到快取的對映關係,並不限定處理器存取時使用實體位址或虛擬位址。
選項分析
第 9 題2 分
有關虛擬記憶體的敘述,下列何者錯誤?
核心觀念
虛擬記憶體(Virtual Memory)利用磁碟等輔助儲存空間,配合記憶體管理機制,讓程式不必完全載入實體記憶體也能執行。它可以擴大程式可使用的記憶體位址空間,並讓作業系統更彈性地安排實體記憶體。
但虛擬記憶體不保證程式能在特定時間內完成。若程式頻繁存取未載入實體記憶體的頁面,就會發生缺頁(page fault),需要從輔助儲存裝置載入資料,增加執行時間。因此,它不等同於即時系統的時間保證機制。
解題方法
題目問「何者錯誤」,可先抓住虛擬記憶體的主要功能:提供較大的程式位址空間、簡化程式對記憶體配置的依賴,並提高實體記憶體的使用彈性。再檢查哪個選項宣稱了虛擬記憶體無法提供的能力。
「確保運算在一定的時間內完成」是時間限制的保證;虛擬記憶體可能因缺頁而造成延遲,並不提供這種保證。
選項分析
第 10 題2 分
相較於動態隨機存取記憶體(dynamic random access memory, DRAM),靜態隨機存取記憶體(static random access memory, SRAM)的優點為何?
核心觀念
本題考查 SRAM 與 DRAM 的儲存原理及特性。SRAM 以正反器電路儲存位元,供電期間可維持資料,不需要週期性重新整理;DRAM 以電容儲存電荷,電荷會逐漸消失,因此需要定期重新整理(refresh)。
解題方法
比較兩者的存取速度、儲存密度、是否需要 refresh,以及每單位資料的成本。SRAM 的電路結構較複雜、每位元占用面積較大,但存取速度通常較快;DRAM 則能以較小面積儲存較多資料,且成本較低。
選項分析
- (A) 單位資料的存取速度較快:正確。 SRAM 的存取速度通常比 DRAM 快,是 SRAM 的優點之一。
第 11 題2 分
根據范紐曼模型(von Neumann Model),計算機包含五大標準要件,包括:①輸入(Input);②輸出(Output);③控制(Control);④算術邏輯單元(ALU),亦稱為數據通道(Datapath);⑤記憶體(Memory)。中央處理單元(Central Processing Unit, CPU)是由那些要件組成?
核心觀念
范紐曼模型的五大要件為輸入、輸出、控制、算術邏輯單元(ALU)及記憶體。CPU 由控制單元(Control)與算術邏輯單元(ALU,亦稱數據通道 Datapath)組成;輸入、輸出與記憶體則是計算機系統的其他要件,不屬於 CPU 的組成部分。
解題方法
辨認題目問的是「CPU 包含哪些要件」,再從五大要件中找出 CPU 的兩個部分:
- ③ 控制單元:負責解碼指令、產生控制訊號,並協調各部件執行。
- ④ 算術邏輯單元(ALU):負責算術運算與邏輯運算,屬於數據通道的一部分。
因此,CPU 對應 ③④。
選項分析
第 12 題2 分
半加器在使用最少個數基本邏輯閘(如 AND、OR、XOR、XNOR、NAND、NOR、Inverter)的前提下,所使用到的邏輯閘種類包括:
核心觀念
半加器(Half Adder)用來將兩個 1 位元二進位數 、 相加,輸出和位元 與進位位元 :
其中 表示 XOR(互斥或), 表示 AND(及閘)。因此,以最少個數的基本邏輯閘實作半加器,使用的閘種類為 XOR 與 AND。
解題方法
半加器的真值表如下:
| 和 | 進位 | ||
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
和位元在輸入不同時為 1,符合 XOR;進位只在兩個輸入皆為 1 時為 1,符合 AND。兩個輸出各用一個閘即可完成,因此最少使用 2 個閘,閘種類是 XOR、AND。
選項分析
第 13 題2 分
在下列二進制運算中,若採用 2 的補數(2’s complement)表示法來表示數字,並以一個八位元的暫存器來儲存運算結果,則下列何者會產生滿溢(overflow)?
核心觀念
八位元二補數的表示範圍為 到 。判斷加法是否溢位,可檢查:
- 兩個同號數相加,結果符號若與原數不同,便發生溢位。
- 等價地,若最高位(符號位)的進位輸入與進位輸出不同,便發生溢位。
最高位的進位輸出本身不代表溢位。
解題方法
先看每個運算元的最高位:最高位為 表示非負數,為 表示負數。兩個同號數相加時,再確認八位元結果的符號是否合理;異號數相加則不會發生二補數加法溢位。
選項分析
(A)
兩個數最高位皆為 ,都是正數:
相加得 ,超過八位元二補數最大值 。八位元結果為:
兩個正數相加卻得到最高位為 的負數表示,發生溢位。本選項正確。
(B)
第 14 題2 分
將二進位實數 轉換成正規化(normalized)的科學表示法(scientific notation)後,尾數(mantissa)部分為何(不含小數點)?
核心觀念
二進位科學表示法是把數值寫成「尾數乘以 的整數次方」。正規化時,尾數小數點後第一位必須是 ,形式為 。題目問尾數時,依題意不列小數點,也不列符號與指數。
解題方法
原數為 。將小數點向右移兩位,使小數點後第一位成為 :
因此正規化尾數為 。題目要求尾數部分不含小數點,且選項沒有符號,故取尾數的數字部分 嗎?依本題官方答案採用的尾數取法,尾數的小數部分為 :正規化表示中的 ,不含小數點為 ;
第 15 題2 分
將十六進制數 轉換成八進制數,結果是:
核心觀念
十六進制轉八進制,可先將每個十六進制位數改寫成 4 位二進制,再由小數點向左右每 3 位分組;每組二進制對應一個八進制位數。小數部分由小數點往右分組,不足 3 位時在末尾補 。
解題方法
將 逐位轉成二進制:
小數點左側由右向左每 3 位分組;右側由左向右每 3 位分組:
小數部分原為 ,分組後剩下的 在末尾補兩個 ,成為 。
將各組二進制轉為八進制:
因此:
選項分析
第 16 題2 分
負向邊緣觸發的正反器(negative-edge-triggered flip-flop)在下列何種情況可觸發輸出狀態改變?
核心觀念
正反器(flip-flop)依時脈觸發方式,可分為正向邊緣觸發與負向邊緣觸發。負向邊緣觸發正反器只在時脈由高電位轉為低電位的瞬間,也就是下降沿,擷取輸入並改變輸出狀態;時脈維持高電位或低電位時,輸出不因該觸發方式而改變。
解題方法
辨認「負向邊緣」即可判斷時脈的轉換方向:
因此,輸出狀態改變的觸發時刻是 CLOCK 從 1 轉為 0 的瞬間。
選項分析
第 17 題2 分
下列布林函數之運算式中,何者正確?
核心觀念
本題考布林代數的基本運算律。符號「」代表邏輯或(OR),相乘代表邏輯及(AND),並使用互補律 、,以及冪等律 、。布林變數只取 或 。
解題方法
逐一利用布林代數化簡,或代入 的 、 組合驗算。選項若宣稱兩式相等,只要找到一組輸入使左右值不同,即可判定錯誤。
選項分析
- (A) :錯誤。 由吸收律 ,左式化簡為 ,並不恆等於 。例如 時,左式為 、右式為 。
第 18 題2 分
布林函數 的真值表中,共有幾種輸入組合可以使得 ?
核心觀念
本題考查布林代數與真值表的輸入組合計數。布林變數 各有 、 兩種取值;其中 表示邏輯 OR,乘積表示邏輯 AND,撇號表示邏輯 NOT。因此, 可讀作「,或同時 且 」。
解題方法
三個輸入變數共有 種組合。分情況計數:
- 當 時,不論 為何,。此時有 種組合。
- 當 時,;要使 ,必須 、,恰有 種組合。
兩種情況互不重疊,因此:
第 19 題2 分
使用 4 對 1 多工器(multiplexer)來實現布林函數 時,則下列何者是正確的電路?
核心觀念
4 對 1 多工器有四個資料輸入 至 ,由選擇線 決定輸出哪一個資料輸入:
| 輸出 | |
|---|---|
| 00 | |
| 01 | |
| 10 | |
| 11 |
本題以 、 作為選擇線,圖中 、。因此,把布林函數依 分組,就能直接判斷各資料輸入應接 、 或 。
解題方法
將函數依 的組合整理:
- 時,函數在 、 都為 ,故 。
- 時,函數值隨 改變,故 。
- 時,函數值隨 改變,故 。
- 時,函數值皆為 ,故 。
第 20 題2 分
若全加法器(Full Adder)的三個輸入為 、、,下列何者為其相加後的和(Sum)?
核心觀念
全加法器(Full Adder)將三個一位元輸入 、、 相加,輸出「和(Sum)」與「進位(Carry)」兩個位元。Sum 是三個輸入相加後的結果最低位,因此由三者的奇偶性決定:
- 有奇數個輸入為 ,Sum 為 。
- 有偶數個輸入為 ,Sum 為 。
互斥或(XOR)在兩個輸入不同時輸出 ,因此全加法器的和可表示為:
解題方法
把三個輸入視為二進位數相加。其總和可能是 :
| 輸入中 的個數 | 二進位總和 | Sum |
|---|---|---|
| 0 | 0 | |
| 1 | 1 | |
| 2 | 0 | |
| 3 | 1 |
第 21 題2 分
下列 C 程式執行後的輸出為何?
#include <stdio.h>
int a = 3, b = 4;
void fun(int a, int c) { a++; b += c; }
int main(void) { int a;
a = 1;
b = 2;
fun(a, b);
printf("%d, %d", a, b);
return 0;
}
核心觀念
本題考查 C 語言的區域變數與全域變數作用範圍,以及函式呼叫時的傳值呼叫。
- 函式外宣告的
a、b是全域變數。 main內的int a;是區域變數,會遮蔽同名的全域變數a。fun的參數int a也是區域變數,只在fun函式內有效;呼叫時取得引數的值,函式內修改它不會改變呼叫端的變數。fun沒有宣告自己的b,因此函式內的b指向全域變數b。
解題方法
依執行順序追蹤變數:
- 程式開始時,全域變數為
a = 3、b = 4。 - 進入
main後,區域變數a遮蔽全域a。執行a = 1;,此時main的區域a為 1。 - 執行
b = 2;,這裡沒有區域b,所以將全域b設為 2。 - 呼叫
fun(a, b)時,傳入的值是1和2。在fun中,參數a為 1、參數c為 2。 a++;只將fun的參數a改為 2,不影響main的區域a。
第 22 題2 分
在物件導向程式設計中,下列何者適用於描述「一個方法(Method)將依照呼叫物件的不同,而有不同的操作」?
核心觀念
本題考查物件導向的四項基本概念。題幹的關鍵是「方法依照呼叫物件的不同,而有不同的操作」,這描述的是多型(Polymorphism):不同物件可以透過相同的方法介面,執行各自適合的操作。
例如,Circle 與 Rectangle 都提供 draw 方法。呼叫 draw 時,圓形物件執行畫圓的操作,矩形物件則執行畫矩形的操作。呼叫方式相同,實際執行的內容依物件而異。
解題方法
先辨認題幹描述的差異發生在哪裡:方法名稱或呼叫方式相同,但不同物件會執行不同操作。這正是多型的特徵,常見實現方式包括方法覆寫(overriding)與動態繫結(dynamic binding)。
選項分析
第 23 題2 分
執行下列 Python 程式,螢幕上輸出的數字依序為何?
list = [0, 1, 2]
result, num = 0, 8
for item in list: try: result = num / item print(result) except: print(0) else: print(result)
核心觀念
本題考查 for 迴圈、例外處理(try/except)及 else 子句的執行順序:
for item in list依序取出串列中的0、1、2。try區塊若發生例外,就執行except;若沒有發生例外,就執行else。try區塊中的print(result)仍會執行;因此沒有例外時,result會印兩次:一次在try,一次在else。
解題方法
依序追蹤每次迴圈:
item | result = num / item | 執行結果 | 輸出 |
|---|---|---|---|
| 0 | 除以 0,發生 ZeroDivisionError | 跳過 try 中的 print(result),執行 except | 0 |
| 1 | try 中的 print(result) 與 else 中的 print(result) 都執行 | 8.0、8.0 |
第 24 題2 分
最小堆積樹(Min Heap)如圖所示,執行節點刪除後,此最小堆積樹前序走訪(Preorder Traversal)的結果為何?
核心觀念
最小堆積樹(Min Heap)須符合兩個條件:每個父節點的值都小於或等於子節點;樹的形狀是完全二元樹。刪除最小堆積的根節點時,先以最末端節點補到根,再沿著較小的子節點向下調整,直到恢復堆積性。
前序走訪順序為「根、左子樹、右子樹」。
解題方法
圖中的堆積樹依層序排列為:
刪除根節點 後,以最末端節點 補到根:
接著向下調整:
- 的子節點為 、,較小者是 ,與 交換:
- 的子節點為 、,較小者是 ,與 交換:
第 25 題2 分
一個具有十個空間(Entries)的雜湊表(Hash Table),已知資料的鍵值(Keys)為 ,透過「除以 10 取餘數」的方法作為雜湊函數,且以分別鏈結法(Separate Chaining)處理碰撞(Collision),此雜湊表進行上述資料的存放時,將發生幾次碰撞?
核心觀念
雜湊函數將鍵值映射到雜湊表的某個位置。本題的雜湊函數為「除以 10 取餘數」:
分別鏈結法會將映射到同一位置的資料串接在該位置的鏈結串列中。每當新鍵值映射到一個已經有資料的位置,就算發生一次碰撞。
解題方法
依序計算各鍵值的雜湊位置,並統計每個位置上「第一筆以外」的鍵值數量:
| 鍵值 | 雜湊位置 |
|---|---|
| 24 | |
| 37 | |
| 54 | |
| 66 | |
| 97 | |
| 124 | |
| 224 |
各位置的鍵值分布如下:
第 26 題2 分
下列排序方法中,何者採用分治法(Divide and Conquer)的概念?
核心觀念
本題考排序演算法是否採用分治法(Divide and Conquer)。分治法通常分成三個步驟:
- 分割:將問題拆成較小的子問題。
- 征服:遞迴解決各子問題。
- 合併:整合子問題的結果,完成原問題。
快速排序會選定一個樞紐(pivot),將資料分成比樞紐小與比樞紐大的兩部分,再分別對兩部分遞迴排序,符合分治法的核心概念。
解題方法
辨識各排序法的主要操作即可:快速排序會把資料分區後,遞迴處理較小的區段;氣泡、插入與選擇排序則主要依序比較或插入元素,逐步建立排序結果,並不採用快速排序這種分割子問題的分治架構。
選項分析
第 27 題2 分
在分時多工(time-sharing multitasking)作業系統核心中,下列何者不是因為時間片段(time slice)用盡時導致上下文交換(context switch)必定要執行的動作?
核心觀念
本題考查分時多工作業系統在時間片用盡時的上下文交換(context switch)。時間片用盡會觸發排程:作業系統保存目前程序的執行上下文,再選擇下一個程序執行,並載入該程序所需的執行狀態。
上下文包含程序恢復執行所需的資訊,例如程序狀態、程式計數器與 CPU 暫存器內容。虛擬記憶體分頁則由記憶體管理機制依需求處理;程序切換本身不代表要把程序修改過的分頁全部寫回硬碟。
解題方法
判斷各選項是否屬於「時間片用盡時進行程序切換所需的動作」。保存與恢復程序執行所需的狀態,以及處理造成排程的中斷,都與上下文交換直接相關;將修改過的頁面寫回硬碟則屬於分頁置換或頁面回寫,不是每次上下文交換的必要步驟。
選項分析
- (A) 儲存目前執行中程序的狀態:正確,屬於必要動作。 程序被暫停後,作業系統必須保存其執行狀態,才能在之後恢復執行。
第 28 題2 分
計算機記憶體系統之定址空間(Address Space)越來越大,以致於分頁表(Page Table)也越來越大,下列何者不是解決分頁表太大的適當方法?
核心觀念
本題考查作業系統的虛擬記憶體分頁表,以及在位址空間擴大、頁表隨之變大時,常用哪些方式降低頁表的空間負擔。
一般分頁系統會為每個虛擬頁面保存頁表項目;虛擬位址空間越大,頁表可能越大。常見的縮減或管理方法包括反向分頁表、雜湊分頁表與階層式分頁。題目所列的「壓縮分頁表」則不是此類教材中常見的標準頁表架構或典型解法。
解題方法
判斷各選項是否為解決大型頁表問題的典型方法:
- 若以實體頁框數量建立表格,可減少表格項目數,屬於反向分頁表。
- 若以雜湊方式查找虛擬頁面對應關係,屬於雜湊分頁表。
- 若將頁表分層,只配置實際需要的部分,可避免建立龐大的單一連續頁表。
- 「壓縮分頁表」不屬於上述標準方法,因此符合題目所問的「不是適當方法」。
選項分析
(A) 反向分頁表(Inverted Page Table)—錯誤選項
反向分頁表通常以實體頁框為索引,每個實體頁框的表項記錄目前存放其中的虛擬頁面及相關資訊。其表格大小主要與實體記憶體中的頁框數量相關,而非直接隨虛擬位址空間的頁數增加,因此可減少大型虛擬位址空間下的頁表負擔。這是適當方法。
第 29 題2 分
某一個程式在正常運作下並沒有安全漏洞(Security Hole),但是當某些預設參數條件一旦符合,即發生安全的漏洞。這樣的程式威脅(Program Threat)稱之為:
核心觀念
本題考「程式威脅」的定義辨識。**邏輯炸彈(Logic Bomb)**是藏在程式中的惡意程式碼,平時不會發作;當預先設定的條件成立,例如特定日期到來、某事件發生或特定參數符合時,才觸發破壞或未授權行為。
題幹的關鍵是「正常運作下沒有安全漏洞」以及「符合預設條件後才發生安全漏洞」,符合邏輯炸彈的觸發特徵。
解題方法
先看威脅是否具有「條件觸發」特性:程式平時正常運作,直到預先設定的條件成立才執行有害行為。這正是邏輯炸彈的定義,因此選 (A)。
選項分析
- (A) 邏輯炸彈(Logic Bomb)—正確。 惡意程式碼被置於程式中,等待特定條件成立才觸發。題幹所述的預設參數條件就是觸發條件。
第 30 題2 分
在 UNIX 系統中,檔案系統配置(Layout)不包含下列哪一種區塊?
核心觀念
本題考 UNIX 檔案系統的配置(layout),要分清楚「檔案系統本身的區塊」與「作業系統管理檔案資料時使用的快取」。
常見的檔案系統配置會包含:
- super block(超級區塊):保存檔案系統整體資訊,例如容量、區塊大小及可用空間等。
- i-node block(索引節點區塊):存放 i-node,記錄檔案的屬性及資料區塊位置。
- data block(資料區塊):存放檔案內容。
**cache block(快取區塊)**是作業系統用來暫存磁碟資料、加速存取的記憶體快取,並非檔案系統磁碟配置中的一種區塊。
解題方法
判斷各選項是否屬於檔案系統配置中的構成項目。super block 與 i-node block 是檔案系統的結構資訊;swap area 是 UNIX 系統用於交換空間的磁碟區域。cache block 則是快取機制的概念,不是檔案系統配置中的區塊,因此選 (B)。
選項分析
第 31 題2 分
人工智慧類神經網路是由許多的人工神經元(artificial neurons)所組成的計算模型,每一個神經元會有許多的輸入連結,連到其他神經元的輸出。每個神經元會先統合所有輸入連結的強度,計算出一個有效輸入(effective input)值,再經由一個啟動函數(activation function)計算出一個輸出值。人工神經元在統合所有輸入連結的強度進行有效輸入值的計算時,最常採用哪一種數學計算?
核心觀念
人工神經元會將各輸入乘上對應的連結權重,再加總成有效輸入值。若輸入為 ,對應權重為 ,偏置為 ,則有效輸入通常寫為:
加權總和 就是輸入向量與權重向量的內積;之後再將 送入啟動函數,產生神經元輸出。
解題方法
題幹問的是「統合所有輸入連結的強度」以計算有效輸入值,關鍵在於辨認神經元的加權求和。輸入值與連結權重逐項相乘後加總,正是內積的定義,因此選內積。
例如輸入為 、權重為 時,加權總和為 ,即兩向量的內積;偏置項則另行加上。
選項分析
第 32 題2 分
假設有兩個輸出輸入為主(I/O-bound)的非即時性工作,只會從硬碟讀取資料進行計算,算出結果後再寫回硬碟。如果在一部單處理器計算機上執行這兩項工作,可以選擇讓計算機使用不同的作業系統排程方式。下列哪一個排程演算法通常會最慢完成這兩件工作?
核心觀念
本題考排程方式對 I/O-bound 工作完成時間的影響。I/O-bound 工作大部分時間在等待硬碟讀寫,真正需要 CPU 計算的時間相對短。若一項工作等待 I/O,CPU 若能立刻改執行另一項工作,便能減少 CPU 閒置;反之,若工作等待 I/O 時 CPU 不能切換,就會有較多閒置時間,兩項工作通常也會較晚完成。
解題方法
比較各選項在工作等待 I/O 時,CPU 能否轉去執行另一項工作:
- 能切換:可利用一項工作的 I/O 等待時間處理另一項工作,提升 CPU 使用效率。
- 不能切換:即使另一項工作已可執行,CPU 仍須等待目前工作完成,造成閒置。
兩項工作都會先讀取硬碟、再計算、最後寫回硬碟。讓其中一項工作從頭執行到尾才換另一項,會使另一項工作無法與前者的 I/O 等待時間交錯,因此通常最慢完成兩項工作。
選項分析
第 33 題2 分
假設一台單 CPU 的電腦採用循環(round-robin)分時多工作業系統,而且每次進行上下文交換(context switch)所花的時間是 500 微秒(microseconds)。假設現在所有的工作都是純粹的計算行為,I/O 部分的量小到可以忽略,而且所有工作的優先權一樣高。如果要讓上下文交換的執行時間占 CPU 總時間的比例不大於 5%,那麼系統的時間片段(time slice)至少要定為多少毫秒(milliseconds)?
核心觀念
本題考循環分時系統中,時間片長度、上下文交換時間與 CPU 時間耗用比例的關係。每個工作執行一個時間片後,系統花費 微秒進行一次上下文交換;題目假設工作持續計算、沒有可忽略以外的 I/O,因此可視為每段工作時間後都會發生一次上下文交換。
解題方法
設時間片長度為 毫秒,上下文交換時間為 。每一輪 CPU 時間包含:
- 工作執行: 毫秒
- 上下文交換: 微秒 毫秒
所以,上下文交換占 CPU 總時間的比例為:
題目要求此比例不大於 :
解不等式:
第 34 題2 分
電腦開機後,下列何者是負責載入作業系統的程式?
核心觀念
本題考查電腦開機時的啟動流程。電腦啟動後,負責尋找並載入作業系統的程式稱為 Bootstrap loader(引導載入程式),常簡稱為 boot loader。
解題方法
辨認題目中的關鍵字「載入作業系統」。組譯器、編譯器與連結器都屬於程式開發工具;負責開機後引導系統進入作業環境的,則是 Bootstrap loader,因此選擇 B。
選項分析
第 35 題2 分
若光的三原色 RGB 分別表示為 、、,下列何者正確?
① = 黃色 ② = 白色 ③ = 灰色 ④ = 黑色
核心觀念
本題考查光的三原色 RGB 與加色混色。每個色彩通道的數值表示該色光的強度;在 8 位元 RGB 表示中,單一通道的範圍是 至 。
光的三原色採加色混色:紅、綠、藍光強度相加,三色全無為黑色,三色等量且亮度相同則呈灰色,三色全開則為白色。
解題方法
逐一判讀每個 RGB 數值:
- :紅光與綠光全開、藍光關閉,混合為黃色。
- :紅、綠、藍光全關,為黑色。
- :三色通道亮度相同,為灰色。
- :紅、綠、藍光全開,為白色。
因此,①與③正確,②與④錯誤。
第 36 題2 分
有關聲音取樣之敘述,下列何者錯誤?
核心觀念
本題考查數位聲音的兩項主要取樣參數:
- 取樣頻率:每秒鐘擷取聲音樣本的次數,單位為赫茲(Hz)。取樣頻率越高,越能記錄聲音隨時間變化的細節。
- 取樣解析度:每個樣本使用的位元數。位元數越高,可表示的振幅層次越多,振幅量化誤差通常越小。
一般而言,在其他條件相同時,提高取樣頻率或取樣解析度,都能提升數位聲音的重現品質。
解題方法
逐項核對選項中的定義與品質關係。取樣頻率描述「時間上的取樣密度」;取樣解析度描述「振幅的表示精細度」。若選項把參數與品質的關係說反,即為錯誤敘述。
選項分析
第 37 題2 分
二維座標上的 2 點 與 ,其歐幾里得距離(Euclidean distance)為何?
核心觀念
本題考二維平面上兩點的歐幾里得距離,也就是兩點之間的直線距離。若兩點為 與 ,距離公式為:
公式可由直角三角形的畢氏定理得到:兩點的水平距離是 ,垂直距離是 。
解題方法
題目給定 、,先分別計算兩座標的差:
代入歐幾里得距離公式:
第 38 題2 分
有關主開機記錄(master boot record, MBR)的敘述,下列何者正確?
核心觀念
本題考主開機記錄(Master Boot Record, MBR)的存放位置、內容與大小。傳統 MBR 位於整顆磁碟的第 0 磁區,通常為 512 位元組;其中包含一小段開機程式碼、分割區表,以及結尾的識別碼。分割區表會記錄磁碟分割區的位置與大小,並包含表示分割區是否為可開機分割區的旗標。
解題方法
先辨認題目描述的是傳統 MBR 磁碟分割方式,再逐項核對其存放位置、內容與容量。特別注意「整顆硬碟」和「每一個分割區」不同:MBR 是磁碟層級的記錄,不是每個分割區各有一份。
選項分析
第 39 題2 分
假設我們用霍夫曼編碼法(Huffman Coding)壓縮一個只包含四個符號的序列,下列何種符號分布(每個符號占的比例)之壓縮比最差?
核心觀念
霍夫曼編碼會讓出現頻率較高的符號使用較短的碼字,頻率較低的符號使用較長的碼字。若符號機率為 、碼字長度為 ,平均每個符號所需位元數為:
本題四種符號都需要編碼,因此最差的壓縮效果,是平均碼長最大、最接近固定長度編碼的情形。四個符號使用固定長度編碼時,每個符號需 位元。
解題方法
依霍夫曼演算法,每次合併目前機率最小的兩個節點,直到形成編碼樹;碼字長度由符號在樹中的深度決定。計算各選項的霍夫曼平均碼長:
- (A) 合併 ,再合併 ,最後合併 。碼長可為 ,所以 。
- (B) 合併 ,再合併 ,最後合併 。碼長為 ,所以 。
- (C) 合併 ,再合併 ,最後合併 。稀少符號的碼長為 ,頻率 的符號碼長為 ,所以:
第 40 題2 分
下列何者係以物件為基礎之編碼方式?
核心觀念
本題考查 MPEG 影音壓縮標準的發展,以及「以物件為基礎」的編碼方式。物件式編碼會把畫面中的人物、背景等視聽內容視為個別物件處理,除了壓縮影音資料,也支援物件的描述、組合與互動。
解題方法
辨認各標準的主要定位即可:MPEG-1、MPEG-2 著重一般影音壓縮與傳輸;MPEG-4 擴充至視聽物件的表示與編碼;HEVC 則是高效率視訊壓縮標準,著重提升壓縮效率。因此,符合題目所述「以物件為基礎」的是 MPEG-4。
選項分析