HKDSE · 答案詳解與評分準則

2021 DSE 資訊及通訊科技 答案詳解與評分準則

Thinka 2021 文憑試模擬試卷 — 資訊及通訊科技

90 120 分鐘2021
此為 Thinka 原創練習卷,按該年文憑試的結構與難度設計,並非香港考評局試卷,亦非其複製本。

甲部

回答全部 40 題多項選擇題。所有題目分數相同。
40 題目 · 40
題目 1 · MCQ
1
在8位有符號補碼(two's complement)系統中,進行加法 \(01011100_2 + 00111010_2\) 後,所得的8位二進制字串所代表的十進制數值是多少?
  1. A.150
  2. B.-106
  3. C.-105
  4. D.-92

答案

B

解題

1. 將二進制數轉換為十進制以檢查是否溢出:\(01011100_2 = 92_{10}\),\(00111010_2 = 58_{10}\)。其和為 \(92 + 58 = 150\)。由於8位有符號整數的最大值為 \(+127\),因此發生了溢出。\n2. 進行二進制加法:\(01011100_2 + 00111010_2 = 10010110_2\)。\n3. 在8位有符號補碼中,最高有效位(MSB)為 1,表示這是一個負數。\n4. 求其大小,取 \(10010110_2\) 的補碼:反轉所有位得到 \(01101001_2\),加 1 得到 \(01101010_2 = 64 + 32 + 8 + 2 = 106\)。因此,該數值為 \(-106\)。

評分準則

答對選項 (B) 獲 1 分。不設部分分數。
題目 2 · MCQ
1
考慮以下偽代碼算法:\n\n```\nA = 5\nB = 3\nC = 0\nWhile A > 0 do\n If A mod 2 == 1 then\n C = C + B\n B = B * 2\n A = A div 2\n```\n\n當算法結束時,`C` 的值是多少?
  1. A.3
  2. B.9
  3. C.15
  4. D.24

答案

C

解題

讓我們追踪循環的執行過程:\n- 初始狀態:`A = 5`, `B = 3`, `C = 0`。\n- 第一次迭代:`A = 5 > 0`。由於 `5 mod 2 == 1`,故 `C = 0 + 3 = 3`。然後 `B = 3 * 2 = 6`, `A = 5 div 2 = 2`。\n- 第二次迭代:`A = 2 > 0`。由於 `2 mod 2 == 0`,`C` 保持為 `3`。然後 `B = 6 * 2 = 12`, `A = 2 div 2 = 1`。\n- 第三次迭代:`A = 1 > 0`。由於 `1 mod 2 == 1`,故 `C = 3 + 12 = 15`。然後 `B = 12 * 2 = 24`, `A = 1 div 2 = 0`。\n- 由於 `A` 現在為 `0`,循環結束。`C` 的最終值為 `15`。

評分準則

答對選項 (C) 獲 1 分。
題目 3 · MCQ
1
關於電腦系統中的快取記憶體(Cache memory),下列哪些描述是正確的?\n\n(1) 快取記憶體的運算速度比隨機存取記憶體(RAM)快,但比 CPU 暫存器慢。\n(2) 快取記憶體是非易失性(non-volatile)的。\n(3) 快取記憶體儲存常用數據和指令,以加快 CPU 的處理速度。
  1. A.僅 (1) 及 (2)
  2. B.僅 (1) 及 (3)
  3. C.僅 (2) 及 (3)
  4. D.(1)、(2) 及 (3)

答案

B

解題

描述 (1) 是正確的:暫存器速度最快,其次是快取記憶體,再者是主記憶體(RAM)。\n描述 (2) 是錯誤的:快取記憶體由靜態隨機存取記憶體(SRAM)組成,屬於易失性(volatile)記憶體,斷電後數據會丟失。\n描述 (3) 是正確的:快取記憶體的作用是將最近或常用的指令/數據保存在靠近 CPU 的地方,以減少存取延遲。\n因此,(1) 及 (3) 是正確的。

評分準則

答對選項 (B) 獲 1 分。
題目 4 · MCQ
1
一個 IP 地址為 `192.168.10.45`,子網路遮罩為 `255.255.255.240`。下列哪一個 IP 地址與此 IP 地址處於同一個子網路中?
  1. A.192.168.10.28
  2. B.192.168.10.31
  3. C.192.168.10.42
  4. D.192.168.10.48

答案

C

解題

1. 子網路遮罩 `255.255.255.240` 的最後一個八位組是 `240`(二進制為 `11110000`)。\n2. 這意味著每個子網路的區段大小為 \(256 - 240 = 16\)。\n3. 子網路從 16 的倍數開始:`0`、`16`、`32`、`48`、`64` 等。\n4. 對於 `192.168.10.45`,最後一個八位組為 `45`。它屬於從 `32` 開始的子網路,範圍為 `192.168.10.32` 至 `192.168.10.47`。\n5. 檢查選項,只有 `192.168.10.42`(最後一個八位組為 `42`)位於 `32` 至 `47` 的範圍內。

評分準則

答對選項 (C) 獲 1 分。
題目 5 · MCQ
1
考慮以下學校註冊系統的數據庫模式(schema):\n\n`STUDENT(StudentID, StudentName, Class)`\n`COURSE(CourseID, CourseName, Teacher)`\n`ENROLLMENT(StudentID, CourseID, EnrollDate, Grade)`\n\n下列哪些描述是正確的?\n\n(1) `ENROLLMENT` 的主鍵(Primary key)應為複合鍵 `(StudentID, CourseID)`。\n(2) `ENROLLMENT` 中的 `StudentID` 是一個參照 `STUDENT` 的外鍵(Foreign key)。\n(3) `STUDENT` 中的 `StudentID` 必須是唯一的,且不能包含空值(null)。
  1. A.僅 (1) 及 (2)
  2. B.僅 (1) 及 (3)
  3. C.僅 (2) 及 (3)
  4. D.(1)、(2) 及 (3)

答案

D

解題

描述 (1) 正確:`ENROLLMENT` 表格表示 `STUDENT` 和 `COURSE` 之間的多對多關係。其複合主鍵由 `StudentID` 和 `CourseID` 組成,以唯一標識每條註冊記錄。\n描述 (2) 正確:`ENROLLMENT` 中的 `StudentID` 連結到 `STUDENT` 中的 `StudentID`,作為外鍵以維護參照完整性。\n描述 (3) 正確:由於 `StudentID` 是 `STUDENT` 表格的主鍵,根據實體完整性定義,主鍵必須唯一且不能為空值。\n因此,所有三個描述均正確。

評分準則

答對選項 (D) 獲 1 分。
題目 6 · MCQ
1
在試算表中,儲存格 `B2` 包含公式 `=$A$1 + B1`。如果將此公式複製並貼上到儲存格 `D4` 中,`D4` 中的公式將是什麼?
  1. A.=$A$1 + B1
  2. B.=$C$3 + D3
  3. C.=$A$1 + D3
  4. D.=$A$1 + C3

答案

C

解題

1. `$A$1` 是絕對引用(由 `$` 符號表示)。複製時它不會改變,依然是 `$A$1`。\n2. `B1` 是相對引用。公式從 `B2` 複製到 `D4`,這代表位移了:\n - 欄:`B` 到 `D`(向右移動 2 欄)\n - 列:`2` 到 `4`(向下移動 2 列)\n3. 將此位移應用到相對引用 `B1`:\n - 欄 `B` 向右移動 2 欄變為 `D`。\n - 列 `1` 向下移動 2 列變為 `3`。\n - 因此,`B1` 變為 `D3`。\n4. 最終在 `D4` 的公式為 `=$A$1 + D3`。

評分準則

答對選項 (C) 獲 1 分。
題目 7 · MCQ
1
如果愛麗絲(Alice)想使用公開金鑰加密技術(public key cryptography)向鮑勃(Bob)發送一條機密訊息,愛麗絲應該使用哪把金鑰來加密訊息?鮑勃應該使用哪把金鑰來解密它?
  1. A.愛麗絲用愛麗絲的公開金鑰加密;鮑勃用鮑勃的私有金鑰解密。
  2. B.愛麗絲用鮑勃的公開金鑰加密;鮑勃用鮑勃的私有金鑰解密。
  3. C.愛麗絲用鮑勃的私有金鑰加密;鮑勃用愛麗絲的公開金鑰解密。
  4. D.愛麗絲用愛麗絲的私有金鑰加密;鮑勃用愛麗絲的公開金鑰解密。

答案

B

解題

為了確保機密性,只有預期的接收者(鮑勃)才能解密該訊息。由於鮑勃是唯一擁有鮑勃私有金鑰的人,發送者(愛麗絲)必須使用鮑勃的公開金鑰(公開可得)來加密訊息。鮑勃隨後使用他自己的私有金鑰來解密。

評分準則

答對選項 (B) 獲 1 分。
題目 8 · MCQ
1
與傳統的光學條形碼相比,無線射頻識別(RFID)技術具有下列哪些優點?\n\n(1) 讀取 RFID 標籤時不需要直接的視線(line of sight)。\n(2) 可以同時掃描和識別多個 RFID 標籤。\n(3) RFID 標籤可以儲存較大量的數據,且許多標籤可以多次讀寫。
  1. A.僅 (1) 及 (2)
  2. B.僅 (1) 及 (3)
  3. C.僅 (2) 及 (3)
  4. D.(1)、(2) 及 (3)

答案

D

解題

這三個描述都是 RFID 比起傳統條形碼的主要優點:\n- (1) RFID 使用無線電波,因此即使被遮擋或放在箱子內也能讀取,而條形碼需要光學直接視線。\n- (2) RFID 閱讀器可以同時掃描數百個標籤,而條形碼必須逐個掃描。\n- (3) RFID 標籤包含微晶片,可儲存更多數據且可更新/重寫,而印刷的條形碼是靜態不可更改的。

評分準則

答對選項 (D) 獲 1 分。
題目 9 · MCQ
1
一名學生編寫了一個程序來計算三個正整數的平均值。該程序在沒有任何錯誤消息的情況下成功執行,但當輸入為 `3`、`5` 和 `7` 時,它打印出 `7` 而非 `5`。這是哪一類型的錯誤?
  1. A.語法錯誤 (Syntax error)
  2. B.運行時錯誤 (Runtime error)
  3. C.邏輯錯誤 (Logical error)
  4. D.編編錯誤 (Compilation error)

答案

C

解題

當程序成功編譯並運行,且沒有崩潰,但產生了錯誤的輸出結果時,就會發生邏輯錯誤。在此案例中,程序可能錯誤地實現了平均值公式(例如:用 `A + B + C / 3` 代替了 `(A + B + C) / 3`,或其它計算順序錯誤導致輸出為 `7`)。由於沒有語法錯誤且程序沒有崩潰(運行時錯誤),這是一個邏輯錯誤。

評分準則

答對選項 (C) 獲 1 分。
題目 10 · MCQ
1
錄製一條未壓縮的立體聲(2 聲道)音軌,其採樣率為 \(44.1 \text{ kHz}\),位元深度(bit depth)為 \(16 \text{ 位元}\)。一段 2 分鐘的錄音其檔案大小是多少百萬位元組(MB)?(假設 \(1 \text{ MB} = 10^6 \text{ 位元組}\))
  1. A.5.3 MB
  2. B.10.6 MB
  3. C.21.2 MB
  4. D.42.3 MB

答案

C

解題

1. 識別參數:\n - 採樣率 = \(44.1 \text{ kHz} = 44,100 \text{ Hz}\)\n - 位元深度 = \(16 \text{ 位元} = 2 \text{ 位元組}\)\n - 聲道 = 2(立體聲)\n - 時間 = \(2 \text{ 分鐘} = 120 \text{ 秒}\)\n2. 計算總檔案大小(位元組):\n \(\text{檔案大小} = 44,100 \times 2 \text{ 位元組} \times 2 \text{ 聲道} \times 120 \text{ 秒}\)\n \(\text{檔案大小} = 44,100 \times 4 \times 120 = 21,168,000 \text{ 位元組}\)\n3. 轉換為 MB:\n \(21,168,000 \text{ 位元組} \div 10^6 \approx 21.17 \text{ MB}\)\n4. 這與 21.2 MB 相符(四捨五入至小數點後一位)。

評分準則

答對選項 (C) 獲 1 分。
題目 11 · MCQ
1
一個 8 位元的暫存器使用二補碼表示法來表示有符號整數。二進制字串 \(11001011_2\) 所代表的十進制數值是多少?
  1. A.-53
  2. B.-52
  3. C.-75
  4. D.203

答案

A

解題

二進制字串為 \(11001011_2\)。由於最高有效位元(MSB)為 1,它代表一個負數。要找出其數值大小,我們需計算其二補碼:1. 將所有位元取反(反碼):\(00110100_2\);2. 在結果加 1:\(00110100_2 + 1_2 = 00110101_2\)。\(00110101_2\) 的十進制值為 \(32 + 16 + 4 + 1 = 53\)。因此,有符號十進制值為 \(-53\)。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 12 · MCQ
1
以下哪些關於 CPU 快取記憶體(Cache memory)的描述是正確的? (1) 它的速度比 DRAM 快,但比 CPU 暫存器慢。 (2) 它使用靜態隨機存取記憶體(SRAM)。 (3) 它儲存最常用的數據和指令,以減少從主記憶體存取數據的平均成本。
  1. A.僅限 (1) 及 (2)
  2. B.僅限 (1) 及 (3)
  3. C.僅限 (2) 及 (3)
  4. D.(1)、(2) 及 (3)

答案

D

解題

所有描述均正確。(1) 快取記憶體在速度上介於暫存器與主記憶體(DRAM)之間。(2) 快取記憶體使用靜態隨機存取記憶體(SRAM)來實現,因為它速度極快。(3) 快取記憶體的目的就是儲存經常使用的數據和指令,以減少從速度較慢的主記憶體中讀取所需的平均時間。

評分準則

答對 D 得 1 分。其他選項得 0 分。
題目 13 · MCQ
1
一部電腦的 IP 地址為 \(192.168.10.45\),子網路遮罩為 \(255.255.255.224\)。以下哪一個 IP 地址與該電腦處於同一個本地子網路?
  1. A.\(192.168.10.30\)
  2. B.\(192.168.10.50\)
  3. C.\(192.168.10.65\)
  4. D.\(192.168.10.128\)

答案

B

解題

子網路遮罩 \(255.255.255.224\) 將最後一個位元組分割成區塊大小為 \(32\) 的子網路(因 \(256 - 224 = 32\))。子網路範圍為:子網路 0:\(192.168.10.0\) 至 \(.31\);子網路 1:\(192.168.10.32\) 至 \(.63\);子網路 2:\(192.168.10.64\) 至 \(.95\) 等。由於電腦的 IP 是 \(192.168.10.45\),它屬於子網路 1(範圍為 \(.32\) 至 \(.63\))。在選項中,只有 \(192.168.10.50\) 落在子網路 1 的範圍內,其他選項則屬於不同的子網路。

評分準則

答對 B 得 1 分。其他選項得 0 分。
題目 14 · MCQ
1
考慮以下虛擬碼片段: `X = 7`、`Y = 3`、`result = 0`。 `當 X > 0 時執行:` `如果 X % 2 != 0 則 result = result + Y`、`X = X div 2`、`Y = Y * 2`。 執行後,`result` 的值是多少? (註:`div` 代表整數除法,`%` 代表取模運算。)
  1. A.9
  2. B.15
  3. C.21
  4. D.24

答案

C

解題

讓我們逐步追蹤循環:初始狀態:X = 7、Y = 3、result = 0。 第 1 次迭代:X > 0 (7 > 0) 為真。由於 7 % 2 != 0 為真,result = 0 + 3 = 3。X = 7 div 2 = 3。Y = 3 * 2 = 6。 第 2 次迭代:X > 0 (3 > 0) 為真。由於 3 % 2 != 0 為真,result = 3 + 6 = 9。X = 3 div 2 = 1。Y = 6 * 2 = 12。 第 3 次迭代:X > 0 (1 > 0) 為真。由於 1 % 2 != 0 為真,result = 9 + 12 = 21。X = 1 div 2 = 0。Y = 12 * 2 = 24。 第 4 次迭代:X > 0 (0 > 0) 為假。循環結束。最終 result 的值為 21。

評分準則

答對 C 得 1 分。其他選項得 0 分。
題目 15 · MCQ
1
在試算表中,儲存格 B2 包含公式 `=$A2 + B$1`。如果將儲存格 B2 複製並貼上到儲存格 D4 中,儲存格 D4 中將會顯示甚麼公式?
  1. A.`=$A4 + D$1`
  2. B.`=$C4 + D$1`
  3. C.`=$A4 + B$1`
  4. D.`=$A2 + D$3`

答案

A

解題

該公式包含混合單元格引用。當從 B2 複製到 D4 時,欄移動了 +2(B 到 D),列移動了 +2(2 到 4)。我們分析兩部分:1. `=$A2`:欄 A 是絕對引用(`$A`),因此保持 `$A`。列 2 是相對引用,增加 +2 變成 `4`。故變為 `=$A4`。 2. `+ B$1`:欄 B 是相對引用,向右移動兩欄變成 `D`。列 1 是絕對引用(`$1`),因此保持 `$1`。故變為 `+ D$1`。兩者結合得到 `=$A4 + D$1`。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 16 · MCQ
1
考慮兩個關聯資料庫數據表: `STUDENT`(`StudentID`, `Name`, `ClassID`),其中 `StudentID` 是主鍵,`ClassID` 是指向 `CLASS` 數據表的外鍵;以及 `CLASS`(`ClassID`, `ClassName`, `Teacher`),其中 `ClassID` 是主鍵。以下哪項操作會違反參照完整性(referential integrity)?
  1. A.在 `STUDENT` 中插入一條新記錄,其 `ClassID` 在 `CLASS` 數據表中並不存在。
  2. B.從 `STUDENT` 數據表中刪除一條記錄。
  3. C.在 `CLASS` 中插入一條具有新 `ClassID` 的新記錄。
  4. D.更新 `CLASS` 數據表中現有記錄的 `Teacher` 欄位。

答案

A

解題

參照完整性要求子數據表中的任何外鍵欄位(在此例中為 `STUDENT` 中的 `ClassID`)必須與父數據表(`CLASS`)中的主鍵值相匹配,或者為空值。在 `STUDENT` 中插入一條新記錄,且其 `ClassID` 在 `CLASS` 數據表中並不存在,這違反了參照完整性,因為找不到對應的班級。其他選項(如刪除學生記錄、插入班級記錄、更新非主鍵欄位)皆不會違反參照完整性。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 17 · MCQ
1
Alice 想要向 Bob 發送一條加密訊息以確保機密性,同時她也想附上電子簽名以保證訊息的真實性(防偽冒)。為了同時實現機密性和真實性,Alice 應該使用哪些密鑰來加密訊息和創建電子簽名?
  1. A.使用 Bob 的公鑰加密訊息,並使用 Alice 的私鑰進行簽名。
  2. B.使用 Alice 的公鑰加密訊息,並使用 Bob 的私鑰進行簽名。
  3. C.使用 Bob 的私鑰加密訊息,並使用 Alice 的公鑰進行簽名。
  4. D.使用 Alice 的私鑰加密訊息,並使用 Bob 的公鑰進行簽名。

答案

A

解題

為了確保機密性,必須只有 Bob 才能解密訊息,因此 Alice 必須使用 Bob 的公鑰來加密訊息。為了確保真實性(電子簽名),Alice 必須使用 Alice 的私鑰來對訊息進行簽名(加密哈希值),因為只有 Alice 擁有自己的私鑰,而任何人都可以用 Alice 的公鑰來驗證。因此,選項 A 正確。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 18 · MCQ
1
一個程式接受整數輸入 \(N\) 代表學生的分數(\(0 \le N \le 100\))。若 \(N \ge 50\) 則輸出「Pass」,否則輸出「Fail」。程式員希望進行邊界值分析(BVA)以設計測試個案。以下哪一組 \(N\) 的值最能代表邊界值測試個案?
  1. A.\(-1, 0, 49, 50, 100, 101\)
  2. B.\(0, 50, 100\)
  3. C.\(-10, 50, 150\)
  4. D.\(0, 1, 49, 50, 51, 99, 100\)

答案

A

解題

邊界值分析(BVA)著重於輸入域邊界及判定門檻。有效輸入範圍 \([0, 100]\) 的邊界值為 0 和 100,因此需測試 \(-1\)(無效邊界)、\(0\)(有效邊界)、\(100\)(有效邊界)和 \(101\)(無效邊界)。判定及格與否的決策邊界為 \(50\),因此需要測試 \(49\)(剛低於邊界,不合格)和 \(50\)(剛好在邊界,合格)。因此,\(\{-1, 0, 49, 50, 100, 101\}\) 是最全面、最合適的測試數據組。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 19 · MCQ
1
以下哪一項是數據校對(verification)方法而非數據驗證(validation)方法的例子?
  1. A.雙重輸入
  2. B.值域檢查
  3. C.格式檢查
  4. D.校驗數位

答案

A

解題

數據校對(Verification)是指檢查數據是否精確地從一個媒介複製或輸入到另一個媒介(例如將輸入的數據與原始來源文件進行比對)。雙重輸入(即同一份數據由兩個人或同一個人輸入兩次,並進行比對)是數據校對的主要方法。而值域檢查、格式檢查和校驗數位都是系統自動執行的數據驗證(Validation)方法,用以確認輸入的數據是否符合特定的系統限制或規則。

評分準則

答對 A 得 1 分。其他選項得 0 分。
題目 20 · MCQ
1
以下哪些是射頻識別(RFID)技術相比條碼(Barcode)技術的優點? (1) 讀取 RFID 標籤時不需要直接的視線接觸。 (2) 可以同時掃描多個 RFID 標籤。 (3) RFID 標籤可儲存可讀寫數據,而傳統條碼則是唯讀的。
  1. A.僅限 (1) 及 (2)
  2. B.僅限 (1) 及 (3)
  3. C.僅限 (2) 及 (3)
  4. D.(1)、(2) 及 (3)

答案

D

解題

所有描述均正確。(1) 與條碼需要光學視線對準掃描不同,RFID 標籤利用無線電波進行通訊,無需直接的視線接觸。(2) RFID 閱讀器可以同時辨識並讀取數百個標籤,而條碼必須逐個掃描。(3) 傳統的印刷條碼在印製後是唯讀且靜態的,而許多 RFID 標籤擁有可讀寫記憶體,允許對數據進行更新。

評分準則

答對 D 得 1 分。其他選項得 0 分。
題目 21 · MCQ
1
在8位元二補碼二進制系統中,十進制數值 \(-43\) 的表示方式是什麼?
  1. A.11010101
  2. B.10101011
  3. C.11010100
  4. D.00101011

答案

A

解題

1. 先將正數 \(+43\) 表示為 8 位元二進制:\(43 = 32 + 8 + 2 + 1 = 00101011_2\)。
2. 取一補碼(將所有位元反轉):\(11010100_2\)。
3. 加 1 以取得二補碼:\(11010100_2 + 1 = 11010101_2\)。因此,正確選項為 A。

評分準則

答對(A)得 1 分。答錯得 0 分。
題目 22 · MCQ
1
關於電腦系統中的快取記憶體(Cache memory),以下哪項/些敘述是正確的?
(1) 快取記憶體比隨機存取記憶體(RAM)快,因為它位於處理器(CPU)附近或內部。
(2) 快取記憶體的容量比隨機存取記憶體(RAM)大,以存儲更多執行中的程序指令。
(3) 快取記憶體是非揮發性的,即使電腦斷電後也能保留數據。
  1. A.只有 (1)
  2. B.只有 (2)
  3. C.只有 (1) 及 (3)
  4. D.只有 (2) 及 (3)

答案

A

解題

敘述 (1) 正確:快取記憶體使用高速的 SRAM,且物理位置更靠近或位於 CPU 內部,因此速度遠快於 RAM。
敘述 (2) 錯誤:快取記憶體造價昂貴且空間有限,其容量遠小於 RAM。
敘述 (3) 錯誤:快取記憶體是揮發性記憶體,斷電後數據會消失。因此,只有 (1) 正確。

評分準則

答對(A)得 1 分。答錯得 0 分。
題目 23 · MCQ
1
考慮以下以偽代碼編寫的算法:
```
X = 14
Y = 4
result = 0
while X >= Y do
X = X - Y
result = result + 1
endwhile
```
執行該算法後,`X` 和 `result` 的值分別是多少?
  1. A.X = 0, result = 3
  2. B.X = 2, result = 3
  3. C.X = 2, result = 4
  4. D.X = 14, result = 3

答案

B

解題

追蹤循環執行過程:
- 初始狀態:X = 14, Y = 4, result = 0
- 第 1 次迭代 (14 >= 4 為真):X = 14 - 4 = 10, result = 0 + 1 = 1
- 第 2 次迭代 (10 >= 4 為真):X = 10 - 4 = 6, result = 1 + 1 = 2
- 第 3 次迭代 (6 >= 4 為真):X = 6 - 4 = 2, result = 2 + 1 = 3
- 第 4 次檢查 (2 >= 4 為假):循環終止。
最後,X = 2 且 result = 3。

評分準則

答對(B)得 1 分。答錯得 0 分。
題目 24 · MCQ
1
一家公司希望為其主機電腦分配 IP 地址。以下哪個 IP 地址可以分配給私有區域網絡(LAN)中的主機電腦?
  1. A.127.0.0.1
  2. B.192.168.1.0
  3. C.172.16.10.25
  4. D.224.0.0.1

答案

C

解題

選項 A (127.0.0.1) 是本機環回(loopback)地址。
選項 B (192.168.1.0) 是網絡地址(主機位元全為 0),不能分配給主機。
選項 C (172.16.10.25) 位於 Class B 私有 IP 地址範圍內(172.16.0.0 至 172.31.255.255),是可分配給主機的有效地址。
選項 D (224.0.0.1) 是多播(multicast)地址。因此只有 C 正確。

評分準則

答對(C)得 1 分。答錯得 0 分。
題目 25 · MCQ
1
電子試算表包含以下數據:
- 儲存格 A1: 10,儲存格 B1: 2
- 儲存格 A2: 20,儲存格 B2: 4
- 儲存格 A3: 30,儲存格 B3: 5

在儲存格 C1 中輸入公式 `=$A1+B$1`,然後複製到儲存格 D3。儲存格 D3 中顯示的數值是多少?
  1. A.32
  2. B.35
  3. C.42
  4. D.15

答案

C

解題

1. 首先計算 C1 的值:`=$A1+B$1` 即為 `=A1 + B1` = 10 + 2 = 12。
2. 將公式從 C1 複製到 D3 時:
- 欄從 C 變為 D(向右移動 1 欄)。
- 列從 1 變為 3(向下移動 2 列)。
3. 在公式 `=$A1+B$1` 中:
- `$A` 為絕對欄引用,保持為 `$A`;列號 `1` 為相對引用,變為 `1 + 2 = 3`。因此 `$A1` 變為 `$A3`。
- `B` 為相對欄引用,向右移動 1 欄變為 `C`;`$1` 為絕對列引用,保持為 `$1`。因此 `B$1` 變為 `C$1`。
4. 儲存格 D3 中的公式變為 `=$A3+C$1`。
5. `$A3` 的值為 30,`C$1`(即儲存格 C1)的值為 12。因此,D3 = 30 + 12 = 42。

評分準則

答對(C)得 1 分。答錯得 0 分。
題目 26 · MCQ
1
一個音頻檔案以 44.1 kHz 的取樣率、16 位元的解像度及雙聲道(立體聲)進行錄製。一個 5 分鐘的未壓縮錄音之估計檔案大小(以 MB 為單位)是多少?
  1. A.\(\frac{44100 \times 16 \times 2 \times 300}{8 \times 1024 \times 1024}\)
  2. B.\(\frac{44100 \times 16 \times 300}{8 \times 1024 \times 1024}\)
  3. C.\(\frac{44100 \times 16 \times 2 \times 5}{8 \times 1024 \times 1024}\)
  4. D.\(\frac{44100 \times 16 \times 2 \times 300}{1024 \times 1024}\)

答案

A

解題

1. 取樣率 = 44,100 Hz。
2. 解像度 = 16 位元。
3. 聲道 = 2。
4. 時間 = 5 分鐘 = 300 秒。
5. 總位元數 = \(44100 \times 16 \times 2 \times 300\)。
6. 轉換為位元組(bytes):除以 8。
7. 轉換為 MB:除以 \(1024 \times 1024\)。
因此,表達式為 \(\frac{44100 \times 16 \times 2 \times 300}{8 \times 1024 \times 1024}\) MB。

評分準則

答對(A)得 1 分。答錯得 0 分。
題目 27 · MCQ
1
在機器週期的獲取(Fetch)階段,哪個暫存器存儲下一個要執行的指令之記憶體地址?
  1. A.程序計數器 (PC)
  2. B.指令暫存器 (IR)
  3. C.記憶體地址暫存器 (MAR)
  4. D.累加器 (ACC)

答案

A

解題

程序計數器 (PC) 用於記錄下一條將要執行指令的記憶體地址。指令暫存器 (IR) 保存當前正在執行的指令。記憶體地址暫存器 (MAR) 保存當前正被訪問的記憶體地址。累加器 (ACC) 則用作存放算術運算的中間結果。

評分準則

答對(A)得 1 分。答錯得 0 分。
題目 28 · MCQ
1
一個包含 1,000 個元素的陣列已按升序排序。如果我們使用二分搜尋(Binary Search)算法在該陣列中搜尋特定的目標值,最多需要進行多少次比較?
  1. A.10
  2. B.500
  3. C.1,000
  4. D.1,024

答案

A

解題

二分搜尋法每次將搜尋範圍折半。搜尋大小為 \(N\) 的有序列表,最大比較次數為 \(\lfloor\log_2(N)\rfloor + 1\)。對於 \(N = 1000\),由於 \(2^9 = 512 < 1000 \le 1024 = 2^{10}\),因此最壞情況下需要的比較次數為 10 次。

評分準則

答對(A)得 1 分。答錯得 0 分。
題目 29 · MCQ
1
當智能手機連接到公共 Wi-Fi 網絡時,哪個協定負責自動向該設備分配臨時 IP 地址、子網遮罩和預設閘道?
  1. A.DNS
  2. B.DHCP
  3. C.HTTP
  4. D.ARP

答案

B

解題

DHCP(動態主機配置協定)負責自動向客戶端設備分配 IP 地址、子網遮罩、預設閘道等網絡參數。DNS 用於解析網域名稱。HTTP 用於網頁傳輸。ARP 用於將 IP 地址映射到實體 MAC 地址。

評分準則

答對(B)得 1 分。答錯得 0 分。
題目 30 · MCQ
1
為確保數據庫中輸入數據的準確性,開發人員實施了以下兩項措施:
(1) 在註冊時輸入兩次密碼以確保它們一致。
(2) 檢查輸入的年齡是否為 0 至 150 之間的正整數。

請問 (1) 和 (2) 分別屬於哪種類型的數據檢查?
  1. A.(1) 數據校驗;(2) 數據校驗
  2. B.(1) 數據校驗;(2) 數據驗證
  3. C.(1) 數據驗證;(2) 數據校驗
  4. D.(1) 數據驗證;(2) 數據驗證

答案

C

解題

措施 (1) 涉及兩次輸入相同的數據以檢查人為輸入錯誤,這是數據驗證(雙重輸入檢查)的一種方法。
措施 (2) 涉及在系統中設置規則(範圍校驗和數據類型校驗)以確保輸入值在合理範圍內才被接受,這是數據校驗。
因此,(1) 是數據驗證,(2) 是數據校驗。

評分準則

答對(C)得 1 分。答錯得 0 分。
題目 31 · MCQ
1
一個 8 位元暫存器以二補碼表示法儲存整數。若將 \(-18\) 與 \(35\) 的二補碼表示進行按位元異或(XOR)運算,然後將結果解讀為有符號的 8 位元整數,其十進制數值是多少?
  1. A.-51
  2. B.-53
  3. C.51
  4. D.-17

答案

A

解題

首先,將 \(-18\) 和 \(35\) 轉換為 8 位元有符號二補碼表示:
\(-18\):\(+18\) 是 00010010。一補碼是 11101101。二補碼是 11101110。
\(35\):\(+35\) 是 00100011。
按位元 XOR 運算:
11101110 XOR 00100011 = 11001101。
將 11001101 解讀為有符號 8 位元整數:
由於最高有效位元(MSB)為 1,這是一個負數。通過求其二補碼來找出其絕對值:
11001101 -> 減去 1:11001100 -> 反轉位元:00110011(即十進制的 51)。
因此,十進制數值為 \(-51\)。

評分準則

答對 A 得 1 分。不設半分。
題目 32 · MCQ
1
考慮以下虛擬碼:

`X = 0`
`For I from 1 to 4:`
` For J from I to 4:`
` If (I + J) is even then:`
` X = X + I`
` Else:`
` X = X + J`

執行完上述算法後,`X` 的值是多少?
  1. A.20
  2. B.24
  3. C.26
  4. D.30

答案

C

解題

追蹤嵌套循環:
- I = 1:
- J = 1: I+J = 2 (偶數) -> X = 0 + 1 = 1
- J = 2: I+J = 3 (奇數) -> X = 1 + 2 = 3
- J = 3: I+J = 4 (偶數) -> X = 3 + 1 = 4
- J = 4: I+J = 5 (奇數) -> X = 4 + 4 = 8
- I = 2:
- J = 2: I+J = 4 (偶數) -> X = 8 + 2 = 10
- J = 3: I+J = 5 (奇數) -> X = 10 + 3 = 13
- J = 4: I+J = 6 (偶數) -> X = 13 + 2 = 15
- I = 3:
- J = 3: I+J = 6 (偶數) -> X = 15 + 3 = 18
- J = 4: I+J = 7 (奇數) -> X = 18 + 4 = 22
- I = 4:
- J = 4: I+J = 8 (偶數) -> X = 22 + 4 = 26
因此,X = 26。

評分準則

答對 C 得 1 分。不設半分。
題目 33 · MCQ
1
某電腦系統進行升級,其數據總線寬度從 32 位元增加到 64 位元,而時鐘頻率則從 \(3.2 \text{ GHz}\) 降低到 \(2.0 \text{ GHz}\)。假設 CPU 每個總線週期可讀取一個字(word),且所有其他因素保持不變。新系統數據總線的理論最大數據傳輸率與舊系統的比例是多少?
  1. A.0.625
  2. B.0.8
  3. C.1.25
  4. D.1.6

答案

C

解題

理論最大數據傳輸率 = 總線寬度(以字節為單位)* 時鐘頻率。
對於舊系統:
總線寬度 = 32 位元 = 4 字節。
傳輸率_舊 = 4 字節 * 3.2 GHz = 12.8 GB/s。
對於新系統:
總線寬度 = 64 位元 = 8 字節。
傳輸率_新 = 8 字節 * 2.0 GHz = 16.0 GB/s。
比例 = 16.0 / 12.8 = 1.25。

評分準則

答對 C 得 1 分。不設半分。
題目 34 · MCQ
1
一個機構獲分配了 IP 地址範圍 192.168.10.0/24。如果他們需要將該網絡劃分為 4 個大小相同的子網,以下哪項表示正確的子網掩碼以及每個子網中可用主機 IP 地址的最大數量?
  1. A.子網掩碼:255.255.255.192,可用主機:62
  2. B.子網掩碼:255.255.255.192,可用主機:64
  3. C.子網掩碼:255.255.255.224,可用主機:30
  4. D.子網掩碼:255.255.255.224,可用主機:32

答案

A

解題

若要將一個 C 類網絡 /24 劃分為 4 個大小相同的子網,我們需要從主機部分借用 2 位元(因為 2^2 = 4)。這使前綴從 /24 變為 /26。
- 子網掩碼:/26 對應於 255.255.255.192。
- 每個子網的總 IP 地址數 = 2^(32-26) = 2^6 = 64。
- 每個子網的最大可用主機 IP 地址數 = 64 - 2 = 62(因為網絡地址和廣播地址不能分配給主機)。

評分準則

答對 A 得 1 分。不設半分。
題目 35 · MCQ
1
在電子試算表中,單元格 A1 包含公式 `=$B1+C$2`。若將此公式複製並貼上到單元格 D3 中,D3 中的公式會是什麼?
  1. A.=$B3+F$2
  2. B.=$E3+F$2
  3. C.=$B3+C$2
  4. D.=$E1+C$2

答案

A

解題

將公式複製到新單元格時:
- 絕對引用(由 $ 指示)保持不變。
- 相對引用會根據源單元格與目標單元格之間的距離進行偏移。
從 A1 到 D3 的偏移為 +3 個欄(A 到 D)和 +2 個列(1 到 3)。
- `$B1`:欄 B 是絕對的 ($B),因此保持 $B。列 1 是相對的,因此偏移 +2 變為 3。因此,`$B1` 變為 `$B3`。
- `C$2`:欄 C 是相對的,因此偏移 +3 變為 F。列 2 是絕對的 ($2),因此保持 $2。因此,`C$2` 變為 `F$2`。
因此,D3 中的公式為 `=$B3+F$2`。

評分準則

答對 A 得 1 分。不設半分。
題目 36 · MCQ
1
愛麗絲(Alice)想使用非對稱密鑰加密技術向鮑勃(Bob)發送一份機密且附有數碼簽署的文件。愛麗絲應分別使用哪些密鑰來簽署文件和加密文件?
  1. A.愛麗絲的私鑰進行簽署,鮑勃的公鑰進行加密
  2. B.愛麗絲的公鑰進行簽署,鮑勃的私鑰進行加密
  3. C.鮑勃的私鑰進行簽署,愛麗絲的公鑰進行加密
  4. D.鮑勃的公鑰進行簽署,愛麗絲的私鑰進行加密

答案

A

解題

對於數碼簽署,發送方(Alice)使用其私鑰對文件進行簽署,以確保真實性和不可否認性,任何人都可以使用 Alice 的公鑰進行驗證。
對於機密性,發送方使用接收方(Bob)的公鑰對文件進行加密,以確保只有擁有相應私鑰的 Bob 才能解密和閱讀該文件。

評分準則

答對 A 得 1 分。不設半分。
題目 37 · MCQ
1
關於磁碟重組(disk defragmentation),以下哪些敘述是正確的?

(1) 它能減少固態硬碟(SSD)讀寫頭移動的物理距離,從而延長其壽命。
(2) 它將碎片化的檔案重新整理至連續的磁區,以提高硬碟(HDD)的檔案存取速度。
(3) 它透過壓縮系統檔案來增加磁碟未使用的總儲存容量。
  1. A.只有 (1)
  2. B.只有 (2)
  3. C.只有 (1) 和 (3)
  4. D.只有 (2) 和 (3)

答案

B

解題

(1) 是錯誤的,因為固態硬碟(SSD)沒有物理讀寫頭,對其進行磁碟重組會磨損快閃記憶體並縮短其壽命。
(2) 是正確的,因為當檔案碎片化分布在不連續的磁區時,硬碟(HDD)的尋道時間會變慢。將它們重組到連續磁區能提高效能。
(3) 是錯誤的,原因在於磁碟重組僅重新排列現有檔案的物理磁區使其連續,並不會壓縮檔案或增加總剩餘儲存空間。

評分準則

答對 B 得 1 分。不設半分。
題目 38 · MCQ
1
在關係數據庫中,有兩個數據表:`STUDENT`(學生)和 `CLASS`(班級)。`CLASS` 的主鍵是 `ClassID`。`STUDENT` 數據表有一個外鍵 `ClassID` 引用 `CLASS` 數據表。以下哪些操作會違反參照完整性(referential integrity)?

(1) 在 `STUDENT` 中插入一條新記錄,其 `ClassID` 在 `CLASS` 中並不存在。
(2) 當仍有學生記錄引用該 `ClassID` 時,從 `CLASS` 中刪除一條記錄。
(3) 將某個學生的 `ClassID` 更新為 `NULL`(假設可空約束允許這樣做)。
  1. A.只有 (1)
  2. B.只有 (1) 和 (2)
  3. C.只有 (2) 和 (3)
  4. D.(1)、(2) 及 (3)

答案

B

解題

(1) 違反參照完整性,因為外鍵值必須存在於被引用數據表的主鍵列中(或為 NULL)。
(2) 違反參照完整性,因為刪除父表(`CLASS`)中的記錄會使子表(`STUDENT`)中的匹配記錄變成孤兒記錄(沒有有效的引用主鍵值)。
(3) 沒有違反參照完整性,因為外鍵允許為 NULL(如果允許為空),這表示該學生不屬於任何班級。

評分準則

答對 B 得 1 分。不設半分。
題目 39 · MCQ
1
以下哪些任務應使用伺服器端腳本(server-side scripting)而非用戶端腳本(client-side scripting)來處理?

(1) 在提交表單前,驗證電子郵件輸入欄位中是否包含 '@' 符號。
(2) 比對安全數據庫中的用戶憑證以進行用戶身份驗證。
(3) 安全地連接到支付網關 API 以處理信用卡交易。
  1. A.只有 (1)
  2. B.只有 (1) 和 (2)
  3. C.只有 (2) 和 (3)
  4. D.(1)、(2) 及 (3)

答案

C

解題

(1) 可以很容易地在用戶端進行檢查,以提供即時回饋並改善用戶體驗,從而減輕伺服器負擔。
(2) 需要訪問包含安全雜湊密碼的數據庫。這必須在伺服器端進行,以防止未授權訪問數據庫憑證和客戶記錄。
(3) 涉及處理敏感憑證(API 金鑰)和處理金融交易。這必須在伺服器端進行,以保護 API 憑證並防止用戶端篡改。

評分準則

答對 C 得 1 分。不設半分。
題目 40 · MCQ
1
與解釋型程序(interpreted programs)相比,編譯型程序(compiled programs)有哪些優點?

(1) 它們通常執行得更快,因為源代碼已預先被翻譯成機器代碼。
(2) 它們在運行時更容易調試(debug),因為錯誤會逐行被捕獲並顯示。
(3) 不需要向終端用戶發送源代碼,從而保護了知識產權。
  1. A.只有 (1) 和 (2)
  2. B.只有 (1) 和 (3)
  3. C.只有 (2) 和 (3)
  4. D.(1)、(2) 及 (3)

答案

B

解題

(1) 是一個優點:編譯型代碼被翻譯成可由 CPU 直接執行的機器代碼,使其比運行時逐行解釋代碼快得多。
(2) 是一個缺點:解釋型程序可以逐行執行,當發生錯誤時,解釋器可以精確定位該行,使運行時調試更容易。
(3) 是一個優點:編譯型軟件是以二進制可執行文件形式分發的,這意味著開發人員不需要發布其原始源代碼,有助於保護知識產權。

評分準則

答對 B 得 1 分。不設半分。

乙部

回答全部 5 題結構性常規題。
5 題目 · 50
題目 1 · Structured
10
(a) 字符表示:

(i) 解釋什麼是「奇偶校驗位」(parity bit),以及奇校驗(odd parity)如何用於檢測傳輸錯誤。(2分)

(ii) 若字符 'A' 的 ASCII 碼為 65(十進制),寫出以奇校驗位作為最高有效位(MSB)的 8 位元二進制表示。(2分)

(b) 聲音表示:

一個連續的聲波被數字化。

(i) 若採樣率為 16 kHz,且每個樣本以 12 位元格式存儲。計算一段 10 秒、未經壓縮的單聲道(mono)錄音的數據大小,以千字節(KB)為單位。(須列出計算步驟,\(1 \text{ KB} = 1024 \text{ 字节}\))。(3分)

(ii) 列出兩種除了應用文件壓縮外,可減少錄音文件大小的方法,並描述每種方法對音質帶來的權衡(trade-off)。(3分)

答案

Refer to solution / 參見方案

解題

(a)(i) 奇偶校驗位是添加到二進制代碼中的一個額外位元(通常是最高有效位 MSB),使 1-位元的總數為偶數或奇數。在傳輸過程中,接收端檢查接收到的字節中 1-位元的數量。如果使用奇校驗而接收端發現偶數個 1-位元,則檢測到發生了單位元傳輸錯誤。

(ii) 65 的二進制為 1000001(7位元 ASCII),其中包含兩個 1-位元(偶數)。對於奇校驗,MSB 必須設為 1,使 1 的總數變為奇數(3)。因此,8位元表示為 11000001。

(b)(i) 總樣本數 = 16,000 Hz * 10 秒 = 160,000 個樣本。
總位元數 = 160,000 * 12 位元 = 1,920,000 位元。
總字節數 = 1,920,000 / 8 = 240,000 字節。
KB 大小 = 240,000 / 1024 = 234.375 KB。

(ii) 方法 1:降低採樣率(例如從 16 kHz 降至 8 kHz)。權衡:高頻細節丟失,導致音質變差、聲音低沉。

方法 2:降低位元深度 / 採樣精度(例如從 12位元降至 8位元)。權衡:減少音頻的動態範圍,引入更多量化噪聲。

評分準則

(a)(i) [1分] 定義奇偶校驗位為用於錯誤檢測的額外位元。
[1分] 解釋對於奇校驗,若接收到的字節中 1 的數量為偶數,則檢測到錯誤。

(a)(ii) [1分] 將 65 轉換為 7位元二進制 (1000001)。
[1分] 正確將奇校驗位作為 MSB,得出 11000001。

(b)(i) [1分] 正確計算總樣本數 (160,000) 或總位元數 (1,920,000)。
[1分] 顯示除以 8 轉換為字節,以及除以 1024 轉換為 KB 的步驟。
[1分] 正確的最終數值 (234.375 KB) 連單位。

(b)(ii) [1分] 指出方法一(降低採樣率或降低位元深度)及對應的音質權衡。
[1分] 指出方法二(另一種方法)及對應的音質權衡。
[1分] 兩者描述清晰且正確。
題目 2 · Structured
10
考慮以下偽代碼算法,該算法旨在處理表示學生測驗分數的整數數組,以找出最長連續合格分數(>= 50)序列的長度。

1 輸入:A,一個包含 N 個整數的數組,索引為 1 至 N
2 max_len = 0
3 current_len = 0
4 For i from 1 to N:
5 If A[i] >= 50 Then
6 current_len = current_len + 1
7 Else
8 If current_len > max_len Then
9 max_len = current_len
10 EndIf
11 current_len = 0
12 EndIf
13 EndFor
14 If current_len > max_len Then
15 [ 空白 X ]
16 EndIf
17 輸出 max_len

(a)(i) 填寫第 15 行中的 [ 空白 X ],使算法能正確輸出最長連續合格分數序列的長度。(1分)

(ii) 解釋為什麼第 14-16 行是必要的。舉出一個大小為 5 的示例數組,若省略第 14-16 行會導致錯誤的輸出。(2分)

(b) 使用大小為 8 的輸入數組 \(A = [45, 60, 75, 30, 80, 85, 90, 40]\) 追踪算法。提供一個追踪表,顯示在 For 循環每次迭代結束時變量 `i`、`A[i]`、`current_len` 和 `max_len` 的值。(4分)

(c) 有學生建議修改算法以找出最長連續序列的起始索引。描述所需的額外變量以及應如何在偽代碼中更新它們。(3分)

答案

Refer to solution / 參見方案

解題

(a)(i) max_len = current_len

(ii) 第 14-16 行是必要的,因為如果最長連續合格分數序列正好在數組的最後一個元素 (A[N]) 結束,For 循環將在不進入 Else 分支(第 7-12 行)的情況下結束,而最後的 current_len 將無法與 max_len 進行比較。示例:A = [30, 40, 60, 70, 80]。這裡最長合格序列長度為 3,但若省略第 14-16 行,輸出將為 0。

(b) 追踪表:
迭代結束 i | A[i] | current_len | max_len
1 | 45 | 0 | 0
2 | 60 | 1 | 0
3 | 75 | 2 | 0
4 | 30 | 0 | 2
5 | 80 | 1 | 2
6 | 85 | 2 | 2
7 | 90 | 3 | 2
8 | 40 | 0 | 3
最終輸出:3

(c) 1. 增加變量 'start_index' 和 'temp_start'。
2. 在 If 分支(第 5 行)中,檢查 current_len 是否變為 1(即新序列開始)。如果是,則設置 temp_start = i。
3. 在更新 max_len 的地方(第 9 行和第 15 行),同時設置 start_index = temp_start。

評分準則

(a)(i) [1分] 正確寫出:max_len = current_len
(a)(ii) [1分] 解釋在 A[N] 結束的序列不會觸發 Else 分支中的比較。
[1分] 提供一個有效的大小為 5 的反例數組(例如以合格分數結尾,並顯示在沒有該行時輸出為 0)。
(b) [4分] 追踪表每行正確得 0.5 分。
(c) [1分] 提出使用變量 start_index 和 temp_start。
[1分] 指出當 current_len 開始新序列時,temp_start 必須記錄索引 i。
[1分] 指出每當更新 max_len 時,應同時將 start_index 更新為 temp_start。
題目 3 · Structured
10
(a) 解釋以下暫存器在執行程序指令時的主要角色:

(i) 程序計數器 (PC)(2分)

(ii) 記憶體地址暫存器 (MAR)(2分)

(iii) 指令暫存器 (IR) / 當前指令暫存器 (CIR)(2分)

(b) 現代計算機系統在 CPU 和主記憶體 (RAM) 之間使用多級快取記憶體 (L1, L2, L3)。

(i) 解釋為什麼即使 RAM 的容量顯著增加,快取記憶體仍然是必要的。(2分)

(ii) 描述「局部性原理」(Principle of Locality,時間或空間局部性均可)如何合理化快取記憶體的使用。(2分)

答案

Refer to solution / 參見方案

解題

(a)(i) 程序計數器 (PC):存放下一個要從 RAM 中讀取的指令的內存地址。在讀取指令後,它會自動遞增,指向下一條指令。

(ii) 記憶體地址暫存器 (MAR):存放當前正在進行讀取或寫入操作的物理記憶體(RAM)地址。它直接與地址總線相連。

(iii) 指令暫存器 (IR/CIR):暫時存放剛剛從主記憶體中讀取的指令。它保存該指令,以便控制單元對其進行解碼和執行。

(b)(i) 雖然 RAM 的容量在增長,但其訪問速度遠慢於 CPU 的運行速度。快取記憶體(由高速 SRAM 製成)位於 CPU 和 RAM 之間,用於存儲頻繁使用的數據和指令,從而減少 CPU 等待 RAM 的時間。

(ii) 局部性原理指出程序運行傾向於重複使用數據和指令。「時間局部性」意味著如果某數據被訪問過一次,它很可能很快會再次被訪問(例如在循環中)。「空間局部性」意味著最近被訪問過的數據附近的數據很可能很快會被訪問(例如數組中的元素)。快取記憶體利用這一原理,通過保留最近訪問的數據並預先讀取相鄰的內存塊,顯著提高命中率和系統性能。

評分準則

(a)(i) [2分] 解釋 PC 存放下一條指令的地址並自動遞增。(下一條指令地址得 1 分,自動遞增得 1 分)。
(a)(ii) [2分] 解釋 MAR 存放當前正在讀取/寫入的內存地址,並連接到地址總線。
(a)(iii) [2分] 解釋 IR/CIR 存儲當前讀取的指令,供控制單元解碼/執行。
(b)(i) [2分] 解釋 CPU 與 RAM 之間的速度不匹配,以及快取如何作為高速緩衝區以減少等待狀態。
(b)(ii) [2分] 定義時間局部性或空間局部性,並解釋在快取中保留最近/鄰近訪問的數據如何提高內存訪問效率。
題目 4 · Structured
10
一家小公司正為其辦公室設置局域網 (LAN)。網絡圖顯示:

- 一台連接到互聯網的路由器。

- 一台網絡交換機。

- 十台連接到交換機的桌面電腦。

- 一個連接到交換機的無線接入點 (WAP)。

- 一台連接到交換機的網絡打印機。

(a) IP 地址與子網劃分:

(i) 解釋什麼是「私有 IP 地址」(private IP address),以及為什麼它不能直接在互聯網上使用。(2分)

(ii) 指出網絡地址轉換 (NAT) 在此辦公室網絡中的角色。(2分)

(iii) 網絡打印機被分配了一個靜態 IP 地址,而辦公室桌面電腦則被分配了動態 IP 地址。指出負責自動分配動態 IP 地址的協議,並解釋為什麼打印機應該使用靜態 IP 地址。(2分)

(b) 無線安全與連接:

(i) 辦公室在其無線網絡中使用 WPA3 而非 WEP。給出兩個不應使用 WEP 的安全原因。(2分)

(ii) 一位訪客嘗試將智能手機連接到辦公室 Wi-Fi 但失敗,即使輸入的密碼正確。提出兩個與網絡配置或安全設置(例如 MAC 地址過濾)相關的可能原因。(2分)

答案

Refer to solution / 參見方案

解題

(a)(i) 私有 IP 地址是保留給局域網(LAN)內部使用的 IP 地址,在公共互聯網上不被承認且無法路由。它不能直接在互聯網上使用,因為互聯網路由器會丟棄包含私有 IP 地址的數據包,以防止衝突並確保安全。

(ii) NAT 的角色是在 LAN 內部的設備訪問外部網絡時,將其私有 IP 地址轉換為公共 IP 地址。這允許多個內部設備共享一個公共 IP 地址。

(iii) DHCP(動態主機配置協議)自動分配動態 IP 地址。網絡打印機應使用靜態 IP 地址,以確保其地址保持不變,使電腦可以可靠地找到並發送打印任務,而無需頻繁重新配置連接。

(b)(i) 1. WEP 使用弱加密算法(帶有短初始化向量的 RC4),極易在幾分鐘內被破解。
2. WEP 缺乏強大的用戶身份驗證機制。

(ii) 1. 無線接入點/路由器上啟用了 MAC 地址過濾,且訪客的智能手機 MAC 地址未在白名單中。
2. 路由器中的 DHCP IP 地址池已耗盡(無法再分配新 IP 地址)。

評分準則

(a)(i) [1分] 將私有 IP 地址定義為保留給本地網絡使用的地址。
[1分] 解釋它們無法在公共互聯網上進行路由。
(a)(ii) [2分] 解釋 NAT 將局域網設備的私有 IP 地址轉換為公共 IP 地址以進行互聯網訪問(私有到公共轉換得 1 分,允許多個設備共享一個公共 IP 得 1 分)。
(a)(iii) [1分] 確定 DHCP 為動態 IP 分配的協議。
[1分] 解釋靜態 IP 可確保打印機地址保持不變,以便用戶能夠可靠地找到並連接到它。
(b)(i) [2分] 每指出一個 WEP 的安全漏洞得 1 分(例如:弱加密/易被破解密鑰、缺乏適當的身份驗證)。
(b)(ii) [2分] 每指出一個合理原因得 1 分(例如:啟用了 MAC 過濾、DHCP 地址池耗盡、無線標準不兼容)。
題目 5 · Structured
10
某學校使用電子表格來管理學生參與課外活動的情況。

電子表格包含以下列:

- A 列:學生 ID(例如 S101)

- B 列:姓名

- C 列:班別(例如 5A、5B、5C)

- D 列:活動代碼(例如 ACT01、ACT02)

- E 列:基本費用(港幣)

- F 列:資助率(例如 0.2 代表 20%)

- G 列:資助後費用(港幣)

- H 列:付款狀態(「Paid」或「Pending」)

(a) 公式:

(i) 寫出單元格 G2 的電子表格公式,以計算第 2 行學生的資助後費用。(資助後費用的計算方法為:基本費用 * (1 - 資助率))。(1分)

(ii) 單元格 I2 用於檢查學生是否有資格獲得特殊獎勵。若學生班別為「5A」且付款狀態為「Paid」,則 I2 中的公式應顯示「Yes」,否則應顯示「No」。寫出 I2 的公式。(2分)

(iii) 若學校希望計算第 2 行至第 100 行中已收取的總資助後費用(即僅針對付款狀態為「Paid」的學生),請寫出一個使用內置電子表格函數的公式來實現此目的。(2分)

(b) 數據驗證與格式化:

(i) F 列中的「資助率」必須是介於 0 與 0.5 之間(含)的小數。描述如何為 F 列設置數據驗證規則,包括驗證準則以及這樣做的好處。(3分)

(ii) 班主任希望快速識別未繳費的學生。建議一項電子表格功能,若 H 列中單元格的值為「Pending」,該功能可以自動將單元格高亮顯示為紅色填充色。(2分)

答案

Refer to solution / 參見方案

解題

(a)(i) =E2 * (1 - F2)

(ii) =IF(AND(C2="5A", H2="Paid"), "Yes", "No")

(iii) =SUMIF(H2:H100, "Paid", G2:G100)

(b)(i) 設置:轉到數據驗證設置。在驗證準則下,將「允許」設置為「小數」,將「數據」設置為「介於」,並輸入最小值為「0」,最大值為「0.5」。
好處:防止用戶不小心輸入無效值(例如負數或高於 50% 的比率),從而保持數據的準確性和一致性。

(ii) 功能:條件格式。
如何應用:選擇 H 列(特別是單元格 H2:H100),選擇「條件格式」,創建新規則「僅對包含以下內容的單元格設置格式」,設置單元格值等於「Pending」,並將單元格填充顏色設置為紅色。

評分準則

(a)(i) [1分] 正確公式:=E2 * (1 - F2)(接受大小寫變體,如 =e2*(1-f2))。
(a)(ii) [2分] 1 分用於正確使用 IF 和 AND;1 分用於正確的條件和字符串返回。
(a)(iii) [2分] 1 分用於正確的 SUMIF 函數和範圍參數;1 分用於條件和求和範圍。
(b)(i) [2分] 1 分用於選擇「小數」,1 分用於設置介於 0 與 0.5 之間。
[1分] 解釋好處(防止數據輸入錯誤/確保數據一致性)。
(b)(ii) [2分] 1 分用於指出「條件格式」;1 分用於描述設置(單元格值等於 'Pending' 並選擇紅色填充)。