113 原住民特考四等 電子工程 計算機概要 考古題詳解
第 1 題2 分
一個 8-bit 加法器(adder)於進行加法運算時,亦會同時送出 overflow flag 訊號 :當相加的結果超過 8-bit 有號數(以 two’s complement 編碼)可表示的範圍時 ,否則 。下列的加法運算,何者會產生 的輸出?
核心觀念
8-bit 二補數(two’s complement)可表示的有號整數範圍為
加法結果超出此範圍時,會產生溢位,令 。計算時可先把數值相加,再檢查結果是否落在 內。
解題方法
逐一計算各選項的和,並與 8-bit 二補數的表示範圍比較:
- 若和在 至 之間,。
- 若和小於 或大於 ,。
選項分析
第 2 題2 分
某嵌入式微控制晶片上內建 16 KByte 的記憶體,用於儲存程式碼。在運作時,所有指令皆需儲存於此程式記憶體上執行。該晶片的處理器中,其 program counter 寬度至少為何?
核心觀念
程式計數器(Program Counter, PC)用來記錄下一個要執行的指令位址。其寬度需足以表示程式記憶體中的所有可定址位置。若以位元組為定址單位, 位元的 PC 可表示 個位址。
解題方法
程式記憶體容量為 ,且 ,因此:
每個位元組都有一個位址,共需 個位址,因此 PC 至少需要 位元,才能表示全部位址。
選項分析
第 3 題2 分
將含有小數點的 2 進位數字 轉換成 10 進位數字,其結果為:
核心觀念
二進位小數點後各位的位值,依序為 、、、⋯。將每一位數字乘上對應位值後加總,即可轉換為十進位。
解題方法
將 按位展開:
因此,。
選項分析
第 4 題2 分
某計算機系統以 paging 的方式實現 virtual memory,其 virtual memory 大小為 bytes,能支援的最大 physical memory 大小為 bytes,每個 page 的大小為 bytes。該系統的 page table 至少需有多大?
核心觀念
Paging 將虛擬記憶體切分為固定大小的 page,並將實體記憶體切分為相同大小的 frame。頁表至少要為每個虛擬頁面記錄一筆對應的實體 frame 編號。
解題方法
虛擬記憶體大小為 bytes,每個 page 大小為 bytes,因此虛擬頁面數為:
實體記憶體最大為 bytes,同樣以 bytes 為一個 frame,因此實體 frame 數為:
要表示 個 frame 編號,每筆頁表項目至少需要 bits。故頁表至少需要 筆、每筆 bits,總大小為:
選項分析
第 5 題2 分
二進制數值 轉換為十六進制時,其值為何?
核心觀念
二進位轉換為十六進位,可從右至左每四個位元分成一組;每組二進位數對應一個十六進位數字。若最左側不足四位,前面補 ,不會改變數值。
解題方法
將題目的二進位數由右至左分組:
分別換算每組:
因此:
選項分析
第 6 題2 分
假設 、、、 都是布林變數,,找出與 等效的布林運算式:
核心觀念
本題考查布林代數的德摩根定律:
布林變數只有 、 兩種值; 表示 AND, 表示 OR。
解題方法
原式為:
先將德摩根定律套用於最外層的 OR:
再對括號內的 AND 套用德摩根定律:
第 7 題2 分
當一個 process 包含多個 threads 時,下列資料何者不是多個 thread 共享?
① register values ② global variables ③ stack memory ④ heap memory
核心觀念
這題考多執行緒(multi-threading)中,哪些資源由同一個 process 的多個 thread 共同使用。每個 thread 有自己的執行狀態與執行堆疊;同一個 process 內的 threads 則共享程式碼、全域變數與動態配置的記憶體等資源。
| 資料 | 是否共享 | 說明 |
|---|---|---|
| Register values(暫存器值) | 否 | 每個 thread 各有自己的暫存器狀態,供作業系統切換與保存執行脈絡。 |
| Global variables(全域變數) | 是 | 位於 process 的共享記憶體區域,同一 process 內的 threads 可存取。 |
| Stack memory(堆疊記憶體) | 否 | 每個 thread 各有自己的 stack,用來保存函式呼叫、區域變數與返回位址。 |
| Heap memory(堆積記憶體) | 是 | 同一 process 的 threads 共用 heap,可存取在其中動態配置的資料。 |
解題方法
逐項判斷各資料屬於「thread 私有的執行狀態」還是「process 共享的記憶體資源」:
第 8 題2 分
印出品質為 300 dpi(每英吋的列印點數)、寬約 10 公分且高約 5 公分的圖片,該圖片至少應具有多少像素(Pixel)?
核心觀念
列印解析度以 dpi(dots per inch,每英吋的點數)表示。先把圖片的實際尺寸換算成英吋,再分別計算寬、高方向所需的像素數;圖片總像素數為寬像素乘以高像素。
換算關係為 。
解題方法
寬約 公分、高約 公分,換算成英吋:
以 dpi 列印時,寬、高方向所需的像素數分別約為:
因此總像素數約為:
約為 萬像素,選項中最接近的是 72 萬。
選項分析
第 9 題2 分
若某個程序(process)P1 剛剛完成 I/O 的動作,想要獲得再次使用 CPU 的機會,則作業系統會將程序 P1 改變成何種狀態?
核心觀念
這題考的是作業系統的程序狀態轉換。程序執行 I/O 時,通常會進入等待狀態;I/O 完成後,程序已具備繼續執行的條件,會回到就緒狀態,等待作業系統分配 CPU。
解題方法
題目問 P1「完成 I/O 後,想要再次使用 CPU」會轉成何種狀態。判斷關鍵是:I/O 完成只代表等待事件已結束,程序可以競爭 CPU,並不代表它已經取得 CPU。因此,狀態由 Waiting 轉為 Ready;等排程器選中它之後,才會進入 Running。
選項分析
第 10 題2 分
假設有三個行程,其完成工作需要的時間分別為 30、15 和 18 單位時間。若使用最短工作優先排班法(SJF),則平均等待時間為多少單位?
核心觀念
最短工作優先排班法(SJF)會先安排工作時間最短的行程執行。等待時間是行程開始執行前,在佇列中等待的時間。若所有行程同時到達,依工作時間由短至長排序後,平均等待時間為各行程等待時間的平均值。
解題方法
將三個行程的工作時間由短至長排列:。
- 工作時間為 的行程最先執行,等待 。
- 工作時間為 的行程須等待前一個行程完成,等待 。
- 工作時間為 的行程須等待前兩個行程完成,等待 。
因此平均等待時間為:
選項分析
第 11 題2 分
關於巨型開放式線上課程(Massive Open Online Courses,簡稱 MOOCs)的敘述,下列何者錯誤?
核心觀念
MOOCs 是「巨型開放式線上課程」(Massive Open Online Courses)的簡稱,特色是透過網路提供大量學習者參與的課程。課程常以影片、講義、測驗及討論等數位方式呈現,但課程是否收費、能否取得學分,則依平台與合作學校的規定而定。
解題方法
判斷各選項是否把 MOOCs 的一般特徵說得太絕對。線上教學是 MOOCs 的基本形式;數位多媒體教材很常見,但「教材就是多媒體教材」並非嚴謹的定義;免費與學分則都不能一概而論,須看平台及課程安排。
選項分析
第 12 題2 分
下列何者是關聯式資料庫中常見的二元運算子(binary operator),其運作需要二個關聯(relation)表?
核心觀念
關聯式代數的運算子會以一個或多個關聯(relation,也可理解為資料表)作為輸入。依所需輸入的關聯數量,可分為一元運算與二元運算:
- 一元運算:只需一個關聯,例如選擇(select)與投影(project)。
- 二元運算:需要兩個關聯,例如差集(difference)與聯集(union)。
差集 取出「屬於關聯 、但不屬於關聯 」的資料列,運算時須同時提供 和 。
解題方法
逐一判斷各運算子需要幾個關聯作為輸入。題目問的是常見的二元運算子,因此選出必須比較或合併兩個關聯才能得到結果的選項。差集的結果取決於兩個關聯的內容;選擇與投影則各自只對單一關聯進行運算。
選項分析
第 13 題2 分
有關 DBMS 是指:
核心觀念
DBMS 是 Database Management System 的縮寫,中文為「資料庫管理系統」。它是用來建立、管理及操作資料庫的軟體系統,常見功能包括資料新增、查詢、修改、刪除,以及權限與資料安全管理。
「資料庫」是資料的集合;「資料庫管理系統」則是管理這些資料的軟體,兩者不可混為一談。
解題方法
辨認英文縮寫的完整名稱即可:DBMS 中的「DB」代表 Database,「MS」代表 Management System,合起來是「資料庫管理系統」。因此,選出對應的中文名稱。
選項分析
第 14 題2 分
下列哪一個結構採取空間換取時間的策略,藉以提升在該結構中搜尋資料、新增、刪除的時間複雜度?
核心觀念
本題考查資料結構中的「空間換取時間」:多使用額外記憶體儲存索引或輔助資訊,讓資料的搜尋、插入及刪除更有效率。
雜湊表(Hash Table)利用雜湊函數,將鍵值映射到表中的位置,並以額外的表格空間儲存資料。若雜湊分布良好、碰撞處理成本有限,搜尋、新增與刪除的平均時間複雜度可達 。
解題方法
辨認各選項使用的核心機制:樹狀結構依排序關係縮小搜尋範圍,鏈結串列依序走訪;雜湊表則額外配置表格,直接計算資料應位於的位置。題幹描述以空間換取上述操作的時間,符合雜湊表。
選項分析
- (A) 二元搜尋樹(Binary Search Tree)錯誤。 利用節點間的大小關係搜尋,操作時間取決於樹高。平衡時約為 ,退化成鏈狀時可達 ;其主要特徵是依排序組織資料。
- **(B) 紅黑樹(Red-Black Tree)錯誤。
第 15 題2 分
在空的佇列(Queue)中依序插入(Enqueue)1、9、7、2、5 和 10 等數字,接著執行三次刪除(Dequeue),最後插入 15。完成上述運算後,該佇列的前端(Front)元素為何?
核心觀念
佇列(Queue)採「先進先出」(FIFO, First In First Out):先插入的元素會先被刪除。Enqueue 將元素加入佇列尾端;Dequeue 刪除佇列前端元素。
解題方法
依序列出每次操作後佇列由前端到尾端的內容:
- 依序插入 後:
- 執行三次刪除,依序移除前端的 :
- 再插入 至尾端:
第 16 題2 分
以中序式(Infix)表示的算術運算式 ,轉換成後序式(Postfix)的結果是:
核心觀念
後序式(Postfix)又稱逆波蘭式,運算子放在運算元之後。例如,中序式 的後序式為 。轉換時須保留原式的運算順序與優先級;括號內的運算先處理,乘法優先於加、減法,而加、減法同級時由左至右結合。
解題方法
原式為 。依優先級與結合方向,先計算括號內的乘法,再處理減法,最後處理加法:
- 轉成 。
- 轉成 :將 與 作減法,運算子「」置於兩個運算元之後。
- 再將前一步結果與 相加,得到 。
因此,正確的後序式為 *ABC-D+**。
選項分析
第 17 題2 分
若以廣度優先拜訪(Breadth-first traversal)走訪下圖的樹,拜訪順序應為下列何者?
核心觀念
廣度優先走訪(Breadth-first traversal, BFS)採用「逐層拜訪」原則:
- 先拜訪根節點。
- 再拜訪根節點的所有子節點。
- 接著依照由左至右順序,拜訪下一層節點。
- 通常以佇列(Queue)實作,先進入佇列的節點先被處理。
解題方法
依圖形由上而下、由左至右分層:
- 第 0 層:
- 第 1 層:
- 第 2 層:
- 第 3 層:
因此廣度優先走訪順序為:
合併後得到:
選項分析
第 18 題2 分
關於二元樹(Binary tree)、完整二元樹(Complete binary tree)、完滿二元樹(Full binary tree)的敘述,下列何者正確?
核心觀念
本題測驗資料結構(Data Structures)中**二元樹(Binary Tree)**的特定型態定義及其集合包容關係。在臺灣國家考試(公職專技與高普特考)及國內大學資訊學群中,二元樹的定義絕大多數以權威經典教科書 Horowitz 等人所著之《Fundamentals of Data Structures》為命題基準:
- 二元樹(Binary Tree):每個節點最多只能有 個子節點(分支度 degree )的多元集合。
- 完滿二元樹(Full Binary Tree,亦稱滿二元樹):若一棵二元樹的深度為 ,其總節點數恰好為 (各層節點數皆達到最大容量 ,無任何空缺)。
- 完整二元樹(Complete Binary Tree):深度為 且有 個節點的二元樹,其節點由上而下、由左至右依序編號為 至 時,每個節點的位置皆與深度為 的完滿二元樹中編號 至 的節點位置完全吻合。換言之,除最後一層外其餘各層均完全填滿,且最後一層的所有葉節點皆由左向右緊密排列。
解題方法
由定義切入分析兩者的集合關係:
- 深度為 的完滿二元樹擁有最大節點數 ,所有階層皆排滿,最後一層亦由左向右全部填滿。
- 依序將其節點由上至下、由左至右編號,其編號順序完全符合「完整二元樹」的節點連續排列規則。
第 19 題2 分
10 個城市之間彼此的距離如下圖所示。若您預計從 a 城市出發前往 z 城市,最短的路線長度為多少?
核心觀念
本題考加權圖的最短路徑。城市是頂點,道路是邊,邊上的數字代表距離;要找從 到 的總距離最小路徑。各邊距離皆為正,可用 Dijkstra 演算法逐步確定最短距離。
解題方法
從 出發,先將可直接到達的城市距離設為暫定值,再依序選取「目前暫定距離最小」的城市,更新其相鄰城市的距離。圖中的道路視為雙向。
Dijkstra 演算中,最短距離依序確定如下:
| 城市 | 最短距離 | 路徑 |
|---|---|---|
| 起點 | ||
第 20 題2 分
以快速排序法(Quick Sort)與堆積排序法(Heap Sort)來排序 筆資料,其最壞狀況(Worst case)的時間複雜度為:
核心觀念
本題考快速排序法(Quick Sort)與堆積排序法(Heap Sort)在最壞狀況下的時間複雜度。
快速排序法每次選擇樞紐值(pivot)後,將資料分成兩部分。若每次都分得極不平均,例如一邊有 筆、另一邊有 筆,遞迴深度會達到 ,最壞時間複雜度為 。
堆積排序法先建構堆積,再逐次取出堆頂並調整堆積。建堆為 ,之後約需進行 次調整,每次至多花費 ,因此整體最壞時間複雜度為 。
解題方法
快速排序最壞情況的遞迴式為:
每次分割都要掃描目前的資料,成本依序約為 ,所以:
第 21 題2 分
當輸入到陣列的資料本身就已排序好或幾乎排序好,至多只有 1 或 2 個資料次序不正確。以一般實作言,採用哪種排序法效率較佳?
核心觀念
本題考查排序法在「輸入資料原本已排序或接近排序」時的效率。插入排序會從左至右掃描資料,將每個元素插入前方已排序的部分;若資料本來就接近正確位置,每個元素需要移動的距離很短,因此通常很有效率。
解題方法
插入排序的時間複雜度取決於資料中需要搬移的次數。若資料已排序,每個元素只需與前一個元素比較,時間複雜度為 ;若只有少數元素次序錯置,所需搬移也通常很少,效率接近線性。
快速排序、堆積排序與合併排序的一般時間複雜度約為 ,不會像插入排序一樣直接受益於「資料幾乎已排序」的特性。
選項分析
- (A) 快速排序(Quick Sort)錯誤: 一般平均時間複雜度為 。標準快速排序通常不會因資料接近排序而大幅減少工作;
第 22 題2 分
關於搜尋的敘述,下列何者錯誤?
核心觀念
本題考查搜尋方法對資料排列狀態的要求。
- **二元搜尋(Binary search)**每次比較目標值與資料中間位置的值,再排除一半的搜尋範圍。要正確判斷應往左半部或右半部搜尋,資料必須先依值排序。
- **循序搜尋(Sequential search)**從資料起點逐筆比較,直到找到目標或檢查完所有資料;不要求資料排序。
解題方法
判斷各方法能否用於已排序與未排序資料:
| 搜尋方法 | 已排序資料 | 未排序資料 |
|---|---|---|
| 二元搜尋 | 可以 | 不可以 |
| 循序搜尋 | 可以 | 可以 |
第 23 題2 分
假設我們利用 BNF(Backus-Naur Form)定義一個程式的語法(grammar)如下:
此語法 會產生下列哪個語句(sentence)?
核心觀念
本題考查 BNF 文法的產生規則,以及如何判斷一個語句是否能由指定的非終結符號推導產生。
在 BNF 中,<statement>、<id>、<integer> 是非終結符號;:=、x、y、0、1、2 是終結符號。符號 → 表示「可展開為」,而 | 表示「或」。
解題方法
從起始符號 <statement> 依序套用文法:
第 24 題2 分
下列何者最能描述陣列(array)的特性?
核心觀念
陣列(array)是一種用來儲存多個資料的容器,通常要求元素具有相同或相容的資料型態,並以索引存取各元素。例如,整數陣列可依序存放多個整數,並透過索引取得指定位置的值。
解題方法
判斷選項是否描述陣列的典型特性。陣列的核心是以索引存取一組同型態或相似型態的元素;階層關係、不可變性及節省記憶體都不是陣列的一般定義特徵。
選項分析
- (A) 錯誤。 階層(hierarchical)行為常見於樹、檔案系統等階層式資料結構。陣列主要以連續位置與索引組織元素,並不以呈現階層關係為特徵。
第 25 題2 分
執行下列 C 程式後,產生的輸出為何?
#include <stdio.h>
int f(int n) { if (n == 1 || n == 2) { return 10; } else { return f(n-1) * f(n-2); } }
int main() { printf("%d\n", f(5)); return 0; }
核心觀念
本題考遞迴函式的呼叫與回傳值。函式 f(n) 遇到 或 時,會直接回傳 ;其他情況則回傳 。
解題方法
由基礎值開始逐步計算:
因此,printf 輸出:
第 26 題2 分
針對下列 C 遞迴函式:
int fn(int a, int b) { int c;
if (b == 0)
return 1;
else if (b % 2 == 0)
{
c = fn(a, b / 2);
return c * c;
}
else
return a * fn(a, b - 1);
}
若以下列方式呼叫,將產生何種輸出?
printf("%d", fn(10, 5))
核心觀念
本題考查遞迴函式的執行流程,以及以「平方乘冪」方式計算整數次方。
函式的終止條件是 時回傳 。當 為偶數時,先計算 ,再將結果平方;當 為奇數時,則先提出一個 ,再計算 。
解題方法
將 依照函式分支逐步展開:
由內向外代回:
第 27 題2 分
關於 C 語言中的 int(整數)型態資料,下列指令何者錯誤?
int i;
核心觀念
本題考查 C 語言整數常數的表示方式,以及字元常數可否指定給 int 型態變數。
int變數可以存放整數值。- C 語言的整數常數可用不同進位表示:一般數字為十進位、前置
0表示八進位、前置0x或0X表示十六進位。 - 字元常數以單引號括住,例如
'A'。在 C 語言中,字元常數具有整數值,因此可指定給int變數。 0b二進位前綴並非傳統 ISO C 標準的整數常數寫法;部分編譯器將它作為延伸功能支援,但不屬於標準 C 語法。
解題方法
逐一檢查指定給 int i 的右側是否為標準 C 語法可接受的整數值或字元常數:
- 字元常數
'A'可轉為整數值。 - 檢查
0b是否為標準 C 的二進位前綴。 - 前置
0的整數常數按八進位解讀。 0x開頭的整數常數按十六進位解讀。
選項分析
(A) i='A'; 正確。
'A' 是字元常數,在 C 語言中可用其整數值指定給 int 變數。
第 28 題2 分
考慮下列 C 語言結構變數(Structure variable)的宣告:
struct customer { int number; char name[20]; int age; char sex; };
struct customer John;
下列何者不是讀取一個 struct customer 欄位(Attribute)的位址(Address)?
核心觀念
結構(struct)以成員運算子 . 存取欄位,例如 John.number。在運算式中,陣列名稱通常會轉換為指向首元素的指標;因此,John.name 可表示字元陣列首元素的位置,也就是名稱欄位的起始位址。
取欄位位址的常見寫法是 &John.欄位名稱。& 是一元運算子,必須放在運算式前面;欄位存取則使用 .,不能把兩者寫成 John&age。
解題方法
逐一檢查選項是否能以合法的 C 語法表示欄位位址:
- 整數或字元欄位可用
&John.欄位取得位址。 - 字元陣列欄位
John.name在運算式中會轉換為指向首元素的指標,代表該陣列的起始位置。 - 不符合 C 語法的寫法,不能讀取任何欄位的位址。
選項分析
第 29 題2 分
下列所定義的 C 語言結構變數:
typedef struct { enum { A, B } kind; union { int i; short s; } u; } Number;
Number a; a.kind = A; a.u.i = 2;
執行以下的 printf 指令,將會產生何種輸出?
printf("%d %hd", a.kind, a.u.s);
核心觀念
本題考 C 語言列舉型別與聯合(union)的記憶體共用方式。列舉常數未另行指定值時,從 開始依序遞增,因此 A 的值是 、B 的值是 。聯合的各個成員共用同一塊記憶體,透過一個成員寫入的資料,也會影響其他成員所讀取的位元組。
解題方法
a.kind = A;將列舉值A存入kind,所以a.kind的值為 。a.u.i = 2;將整數 寫入聯合成員i。a.u.s與a.u.i共用聯合的記憶體。以一般採用 32 位元int、16 位元short的系統表示,整數 的低 16 位元為 ,讀取s得到 。%d輸出a.kind,%hd輸出a.u.s,因此輸出為0 2。
第 30 題2 分
假設一個文字檔案共有 3600 個字元,且檔案指標 fptr 指在該檔的第 400 個字元的位置。下列何種 C 語言的程式片段執行後,feof(fptr) 的值為 0?
核心觀念
feof(fptr) 用來檢查串流的「檔案結尾指示器」是否已被設定。讀取位置到達檔案結尾時,並不會立刻設定此指示器;通常要在讀取操作因已無資料可讀而失敗後,指示器才會被設定。因此,若最後一次讀取仍成功,feof(fptr) 的值為 0。
本題假設檔案有 3600 個字元,檔案指標起初位於第 400 個字元。依 C 語言檔案定位慣例,第 400 個字元後方的位置是讀取第 401 個字元的位置。
解題方法
逐一追蹤各選項執行後的讀取位置,並判斷讀取是否成功:
- 若讀取到檔案結尾前仍有字元可讀,
feof(fptr)為0。 - 若讀取操作嘗試取得超出檔案範圍的字元,便會遇到 EOF,設定結尾指示器,此時
feof(fptr)為非零值。
選項分析
(A) fread(buffer, 1, 3600, fptr);
從目前位置開始要求讀取 3600 個位元組,但檔案指標已在檔案中途,剩餘資料不足 3600 個位元組。讀取過程到達檔案結尾時,會設定結尾指示器,因此 feof(fptr) 不為 0。錯誤。
(B) fseek(fptr, 3200, SEEK_CUR); fgetc(fptr);
第 31 題2 分
執行下列 C 語言撰寫之程式,產生之輸出結果為何?
#include <stdio.h>
void subA(void);
int a = 0, b = 4;
int main() { printf("a = %d, b = %d, ", a, b); subA(); printf("a = %d, b = %d", a, b); return 0; }
void subA() { int a; a = 2; b = b + 1; printf("a = %d, b = %d, ", a, b); }
核心觀念
本題考查全域變數與區域變數的作用域,以及函式呼叫時變數的存取方式。
程式在函式外宣告全域變數 a、b:
int a = 0, b = 4;
subA 函式內又宣告區域變數 a。函式內的區域變數會遮蔽同名的全域變數,因此在 subA 中使用 a 時,指的是區域變數;全域變數 a 不會因此改變。b 則沒有區域宣告,所以 subA 使用的是全域變數 b。
解題方法
依照程式執行順序追蹤變數:
main一開始,印出全域變數的值:a = 0、b = 4。- 呼叫
subA,建立區域變數a,並設定a = 2。此處的a是區域變數。 - 執行
b = b + 1。b是全域變數,因此從 增加為 。 subA印出區域變數a = 2及全域變數b = 5。- 函式結束後,區域變數
a消失;全域變數a仍為 ,全域變數b保持為 。
第 32 題2 分
在下列 Java 程式中的兩個 method 方法運用到物件導向程式設計中的何種概念?
class Test { public int method(int a) { return a * a; } }
class Test2 extends Test { public int method(int a) { return a * a * a; } }
核心觀念
本題考查 Java 的方法覆寫(Overriding)。子類別繼承父類別的方法後,以相同的方法名稱與參數列重新定義方法,稱為方法覆寫。此例中,Test2 繼承 Test,並重新定義 method(int a)。
解題方法
比較兩個類別中的方法:
- 父類別
Test的method(int a)回傳 。 - 子類別
Test2的method(int a)也具有相同的方法名稱與參數型別,回傳 。
子類別重新定義繼承而來的方法,因此是覆寫;方法內容不同不影響判斷。
選項分析
第 33 題2 分
UDP 協定對應到 OSI 所定義之網路模型的哪一層?
核心觀念
本題考查 UDP(User Datagram Protocol,使用者資料包協定)在 OSI 七層網路模型中的位置。UDP 負責端點之間的資料傳送,並以連接埠號碼區分不同應用程式,因此屬於傳輸層(Transport Layer)。
解題方法
辨認協定功能即可判斷層級:IP 負責在網路間傳遞封包,屬於網路層;UDP 與 TCP 則利用 IP 傳送資料,負責端點間的傳輸與連接埠識別,因此位於網路層之上、應用程式之下的傳輸層。
選項分析
- (A) Data Link Layer:錯誤。 資料鏈結層負責同一鏈結上的訊框傳送,例如乙太網路;UDP 不處理訊框或媒體存取。
第 34 題2 分
有關區域網路使用 1000 Base Tx 乙太網路,其中 1000 代表的意義:
核心觀念
題目考查乙太網路規格名稱中的數字代表什麼。1000BASE-TX(題目寫作 1000 Base Tx)屬於傳輸速率為 1000 Mbps 的乙太網路規格,也就是每秒傳輸 1000 百萬位元,等於 。
解題方法
判讀規格名稱開頭的 1000,即可確認其傳輸速率為 1000 Mbps。題目詢問的是「1000 代表的意義」,因此選擇表示傳輸速率的選項;佈線距離則不是這個數字的意義。
選項分析
第 35 題2 分
封包經過下列何種網路設備後,可能會使得封包的接收端無法看到傳送端原本的 IP 位址?
核心觀念
本題考查各種網路設備對封包中來源 IP 位址的處理方式。路由器依據 IP 位址轉送封包;集線器與中繼器則處理實體層訊號,通常不會改寫封包的來源 IP 位址。網路位址轉換(Network Address Translation, NAT)會改寫 IP 標頭中的位址,讓接收端看到轉換後的位址,而非傳送端原本的 IP 位址。
解題方法
辨認哪種設備會修改 IP 標頭即可。NAT 會將內部主機的私有 IP 位址轉換為另一個 IP 位址;若使用連接埠位址轉換(PAT),也會一併轉換連接埠。封包抵達外部接收端時,來源 IP 欄位已是轉換後的位址,因此接收端看不到原始來源 IP。
選項分析
- (A) 路由器(Router):錯誤。 一般路由器依目的 IP 位址選擇轉送路徑,轉送時不會因此改寫封包的來源 IP 位址。
第 36 題2 分
當一台電腦剛開機後欲瀏覽網頁,最有可能先送出下列何種協定的封包?
核心觀念
本題考查電腦開機後瀏覽網頁時,網路通訊的基本順序,以及各協定的用途。
- ARP:在區域網路中,依據目的端的 IPv4 位址查詢對應的 MAC 位址,讓資料能透過乙太網路傳送。
- DNS:將網域名稱解析為 IP 位址,例如將網站名稱轉換成伺服器的 IP 位址。
- HTTP:瀏覽器與網站伺服器之間傳輸網頁內容的應用層協定。
- ICMP:用於網路錯誤回報與診斷,例如
ping使用的訊息。
解題方法
題目強調「剛開機後欲瀏覽網頁」,判斷重點是:在瀏覽器能向網站伺服器送出 HTTP 請求之前,電腦必須先知道目的伺服器的 IP 位址;若網站以網域名稱輸入,通常會先透過 DNS 查詢取得 IP 位址。
取得目的 IP 後,電腦還須將封包交給區域網路中的下一個傳送對象。若目的端在不同網路,這個對象通常是預設閘道器;電腦需透過 ARP 查出該閘道器的 MAC 位址,才能在區域網路上送出封包。因此,依照題目所問的「最有可能先送出」且選項提供的協定,答案為 ARP。
選項分析
第 37 題2 分
下列何種無線通訊協定的傳輸距離最短?
核心觀念
本題考查常見無線通訊技術的典型傳輸距離。不同協定的設計用途與涵蓋範圍不同:NFC 用於近距離感應,Bluetooth 用於短距離裝置連線,Wi‑Fi 用於區域網路,4G 則用於行動廣域網路。
解題方法
比較各技術的一般有效通訊範圍即可。NFC 的操作距離通常只有數公分,Bluetooth 通常為數公尺至數十公尺,Wi‑Fi 通常可涵蓋數十公尺以上,4G 則透過基地臺提供較大範圍的行動通訊。因此,傳輸距離最短的是 NFC。
選項分析
第 38 題2 分
透過網頁快取(Web Cache)的方式,儲存最近被請求的網頁物件的副本,以降低用戶請求網頁回應的時間,這樣的網頁服務設施稱為:
核心觀念
本題考查網頁快取與網頁服務設施的功能。**Proxy 伺服器(代理伺服器)**可代替用戶向網頁伺服器請求內容,並快取最近請求過的網頁物件。後續用戶再次請求相同物件時,Proxy 可直接提供快取副本,減少等待時間與對外網路流量。
解題方法
抓住題幹的關鍵描述:「儲存最近被請求的網頁物件副本」及「降低用戶請求網頁回應的時間」。這是 Proxy 伺服器的網頁快取功能,因此選 (B)。
選項分析
- (A) FTP 伺服器:錯誤。 FTP 伺服器提供檔案傳輸服務,功能重點是上傳、下載與管理檔案,不是替用戶快取網頁物件。
- **(B) Proxy 伺服器:正確。
第 39 題2 分
IPv6 是為了解決目前 IPv4 網際網路地址不足的問題而提出的新一代網際網路定址系統,一個 IPv6 的位址長度有幾個位元?
核心觀念
本題考查 IPv6 位址的長度。IPv6(Internet Protocol version 6)使用 128 位元位址,以提供遠多於 IPv4 的可用位址數量。IPv4 位址則長 32 位元。
解題方法
直接辨認兩代網際網路協定的位址長度即可:IPv4 為 32 位元,IPv6 為 128 位元。因此本題選擇標示 128 位元的選項。
選項分析
第 40 題2 分
當發現某公司產品有資安漏洞時,下列何者為負責任的披露方式(Responsible disclosure)?
核心觀念
本題考查資安漏洞的「負責任披露」(Responsible disclosure):發現漏洞後,研究者應先私下通知受影響公司,提供足以確認與修補漏洞的資訊,讓公司有合理時間處理;在漏洞修復前,避免公開足以讓他人利用漏洞的細節,以降低使用者遭受攻擊的風險。
解題方法
判斷各選項是否以降低風險、促成修補為原則。負責任披露的關鍵順序是「先通知、給予修補時間,再視情況披露」;牟利、搶先公開或擅自利用漏洞取得資料,都不符合這項原則。
選項分析
- (A) 將漏洞資訊賣給出價最高的人:錯誤。 這是以交易獲利為目的,無法確保漏洞資訊會交由公司修補,也可能讓漏洞被用於攻擊。