112 調查局特考三等 電子科學組 計算機概論 考古題詳解

112 年・調查局特考・三等・電子科學組
試題代碼 計算機概論

第 一 題20 分

有關 IP 位址與 MAC 位址,請回答下列問題:

(一) 請說明 IPv4 位址的設計方式。(10 分)

(二) IP 位址與 MAC 位址的差異為何?(5 分)

(三) IP 位址與 MAC 位址的對應問題可藉由哪些協定來處理?(5 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

IPv4 位址是網際網路層的邏輯位址,長度為 32 位元,用來識別網路上的介面,並支援封包跨越不同網路傳送。它採用階層式設計,概念上分為「網路部分」與「主機部分」:前者識別網路,後者識別該網路中的主機或介面。

解題方法

說明 IPv4 設計時,可依序交代位址長度與表示法、網路與主機部分的區分方式,以及傳統分類位址與現行無類別位址的差別:

  1. **位址長度與表示法:**IPv4 位址由 32 個二進位位元組成,分成 4 個 8 位元組(octet),以點分十進位表示。例如 192.168.1.10;每個十進位數值範圍為 0 至 255。
  2. **網路部分與主機部分:**以子網路遮罩(subnet mask)或前綴長度(prefix length)界定兩部分。例如 /24 表示前 24 位元是網路前綴,剩餘 8 位元用於該子網路中的主機位址。
  3. **傳統分類位址:**早期依位址前綴分為 A、B、C 類,並以固定界線區分網路與主機部分;D 類供多點傳送使用,E 類保留作特殊用途。這種固定分類不利於彈性分配位址。
  4. **無類別網域間路由(CIDR):**現行採用 CIDR,以可變長度前綴表示網路範圍,例如 192.168.1.0/24。前綴長度可依需求調整,改善位址分配彈性,也有助於路由彙總。
  5. **特殊位址:**網路位址(主機部分全為 0)用來識別網路;廣播位址(主機部分全為 1)用來向該子網路廣播。另有私有位址與迴路位址等特殊用途位址。

解題技巧

答題時應明確指出 IPv4 為 32 位元,並說明網路/主機部分由遮罩或前綴長度決定。若提及 A、B、C 類,應交代這是傳統分類方式,並補充現行以 CIDR 為主,避免把傳統分類誤寫成現行分配方式。

(二)IP 位址與 MAC 位址的差異(5 分)

核心觀念

IP 位址與 MAC 位址分屬不同網路層次,功能並不相同:IP 位址主要用於網際網路層的邏輯定址與跨網路路由;MAC 位址主要用於資料鏈結層,在同一個區域網路鏈結上識別網路介面。

比較項目IP 位址MAC 位址
所屬層級網際網路層(網路層)資料鏈結層
主要用途識別網路與主機,供路由器跨網路轉送封包在區域網路鏈結上識別介面,供資料框傳送
🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 二 題30 分

某十進位數字為 75.625(10)75.625_{(10)},其整數部位為 75,小數部位為 625。請回答下列問題,並列出算式或計算過程。(每小題 10 分,共 30 分)

(一) 將以上十進位數字 75.625(10)75.625_{(10)} 轉換為二進位數字後,其整數部位為 AA,小數部位為 BB。則 AA 為何?BB 為何?

(二) 若某二進位數字其整數部位為第(一)子題之 BB,小數部位為第(一)子題之 AA,則其轉換為八進位後的數字,整數部位為 CC,小數部位為 DD。則 CC 為何?DD 為何?

(三) 若某十六進位數字其整數部位為第(二)子題之 DD,小數部位為第(二)子題之 CC,則其轉換為十進位後的數字,整數部位為 EE,小數部位為 FF。則 EE 為何?FF 為何?

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

進位轉換時,整數部與小數部要分別處理:

  • 整數部:連續除以目標進位數,記下餘數,再由下往上排列。
  • 小數部:連續乘以目標進位數,每次取乘積的整數部分,依序排列。
  • 二進位與八進位可每三個位元分組轉換;十六進位與十進位則依位值展開計算。

題目後續使用前一小題的結果作為新數字的整數部或小數部,須注意該數字所在的位置及其進位制。

解題方法

(一)將 75.625(10)75.625_{(10)} 轉換為二進位

整數部 7575:連續除以 22,由下往上讀取餘數。

75÷2=37 餘 137÷2=18 餘 118÷2=9 餘 09÷2=4 餘 14÷2=2 餘 02÷2=1 餘 01÷2=0 餘 1\begin{aligned} 75\div 2&=37\text{ 餘 }1\\ 37\div 2&=18\text{ 餘 }1\\ 18\div 2&=9\text{ 餘 }0\\ 9\div 2&=4\text{ 餘 }1\\ 4\div 2&=2\text{ 餘 }0\\ 2\div 2&=1\text{ 餘 }0\\ 1\div 2&=0\text{ 餘 }1 \end{aligned}

由下往上讀取餘數,得 A=10010112A=1001011_2。

小數部 0.6250.625:連續乘以 22,依序記下整數部分。

0.625×2=1.25⇒10.25×2=0.5⇒00.5×2=1.0⇒1\begin{aligned} 0.625\times 2&=1.25 &&\Rightarrow 1\\ 0.25\times 2&=0.5 &&\Rightarrow 0\\ 0.5\times 2&=1.0 &&\Rightarrow 1 \end{aligned}

依序排列,得 B=0.1012B=0.101_2。因此 75.62510=1001011.101275.625_{10}=1001011.101_2。

(二)整數部為 BB、小數部為 AA,轉換為八進位

本題的二進位數字為 0.1012.100101120.101_2.1001011_2 的部位指定:整數部取第(一)題的 BB 中位於小數點後的數字 1012101_2,小數部取第(一)題的

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 三 題10 分

某一藏寶箱上有三個鎖,只有當半數以上的鎖同時開啟時,始能將藏寶箱打開。請為此藏寶箱設計一邏輯電路,以滿足「當半數以上的鎖同時開啟時,始能將藏寶箱打開」之需求。(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查組合邏輯電路與多數決函數。三個鎖中「半數以上」代表至少開啟兩個鎖,因此藏寶箱在恰有兩個鎖開啟或三個鎖全開時打開。

令 A、B、CA、B、C 分別表示三個鎖的狀態,開啟為 11,關閉為 00;令輸出 Y=1Y=1 表示藏寶箱打開。

解題方法

依照「至少兩個輸入為 1」列出會打開寶箱的情形:

AABBCCYY
0000
0010
0100
1000
0111
1011
1101
1111

由輸出為 11 的組合可得:

Y=A‾BC+AB‾C+ABC‾+ABCY=\overline{A}BC+A\overline{B}C+AB\overline{C}+ABC

整理後可得到較簡潔的多數決邏輯式:

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 四 題10 分

近來人工智慧盛行,而圖靈測試(Turing Test)則提供了一個判斷機器是否具備智慧的方式。何謂圖靈測試?(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

圖靈測試(Turing Test)是英國數學家艾倫・圖靈提出的機器智慧判斷方法。其核心不在於檢查機器內部如何運作,而是觀察機器能否在對話中展現出與人類難以區分的表現。

解題方法

測試通常由一位人類評審透過文字對話,分別與一名人類受試者及一台機器互動。評審不知道各自的身分,並根據對話內容判斷誰是機器。

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 五 題30 分

TT 為一二元樹(Binary Tree),可以是空的,或是每一個節點儲存著一個數值且與其他節點的數值不重複。假設 TT 起始為空的,即 T=nullT = null。樹中節點(node)的定義如下:

struct node {
    int data;
    struct node *l_link, *r_link;
}

其中,節點包含以下欄位:

  • data
  • l_link
  • r_link

(一) 插入一節點,其 data 欄位為 value 的演算法如下:

Procedure Insert(T, value)
Begin
    If (T == null)
        建立一個新節點,並將 data 欄位設為 value;
    Elseif (T->data > value)
        Insert(T->l_link, value);
    Else
        Insert(T->r_link, value);
    Endif
End

請根據以上插入節點的演算法,依序插入節點,其值分別為:

23,56,12,19,42,4,98,36。

請以圖示的方式呈現完整的插入過程。(10 分)

(二) 請設計一演算法,以在樹中搜尋一給定鍵值(key),如:Search(T, key)。若 key 存在 TT 中,回傳 found;若 key 不存在 TT 中,回傳 not found。(10 分)

(三) 若 TT 中有 nn 個節點,最糟的情況下,需要搜尋幾次?(5 分)

(四) 承第(三)子題,此最糟的情況是什麼?請舉例說明。(5 分)

🖼️ 本題原卷含圖表。基於試題來源之版權考量,本站不轉載原卷影像; 題目文字已完整轉錄,圖表請自行參閱考選部公告之試題原檔。

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查二元搜尋樹(Binary Search Tree, BST)的:

  • 插入規則
  • 搜尋規則
  • 樹高與搜尋時間複雜度
  • 最糟情況:二元搜尋樹退化成單鏈結串列

BST 的基本性質為:

  • 左子樹所有節點值小於根節點值。
  • 右子樹所有節點值大於根節點值。
  • 本題所有節點值均不重複,因此可直接依大小決定往左或往右。

(一)依序插入節點

插入規則:

  • 若目前位置為 null,建立新節點。
  • 若 value < T->data,插入左子樹。
  • 若 value > T->data,插入右子樹。

1. 插入 23

樹為空,因此 23 成為根節點。

23

2. 插入 56

56>2356 > 23,往右插入。

23
 \
 56

3. 插入 12

12<2312 < 23,往左插入。

 23
 / \
 12 56

4. 插入 19

比較路徑:

19<23⇒往左19 < 23 \Rightarrow 往左 19>12⇒往右19 > 12 \Rightarrow 往右

因此 19 插入於 12 的右子樹。

 23
 / \
 12 56
 \
 19

5. 插入 42

比較路徑:

42>23⇒往右42 > 23 \Rightarrow 往右 42<56⇒往左42 < 56 \Rightarrow 往左

因此 42 插入於 56 的左子樹。

 23
 / \
 12 56
 \ /
 19 42

6. 插入 4

比較路徑:

4<23⇒往左4 < 23 \Rightarrow 往左 4<12⇒往左4 < 12 \Rightarrow 往左

因此 4 插入於 12 的左子樹。

 23
 / \
 12 56
 / \ /
 4 19 42

7. 插入 98

比較路徑:

98>23⇒往右98 > 23 \Rightarrow 往右 98>56⇒往右98 > 56 \Rightarrow 往右

因此 98 插入於 56 的右子樹。

 23
 / \
 12 56
 / \ / \
 4 19 42 98

8. 插入 36

比較路徑:

36>23⇒往右36 > 23 \Rightarrow 往右 36<56⇒往左36 < 56 \Rightarrow 往左 36<42⇒往左36 < 42 \Rightarrow 往左

因此 36 插入於 42 的左子樹。

 23
 / \
 12 56
 / \ / \
 4 19 42 98
 /
 36

完整插入結果

 23
 / \
 12 56
 / \ / \
 4 19 42 98
 /
 36

(二)搜尋演算法

搜尋時,先比較目前節點的 data 與 key:

  • 相等:表示找到,回傳 found。
  • key 較小:依 BST 性質,只需搜尋左子樹。
  • key 較大:只需搜尋右子樹。
  • 遇到 null:表示樹中不存在此值,回傳 not found。
🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

其他考古題