110 高普考普通考試 電子工程 計算機概要 考古題詳解

110 年・高普考・普通考試・電子工程
試題代碼 計算機概要

第 1 題2 分

現有一個循序程式(sequential program)於單一處理器執行時,需時 120 秒,其中有 20 秒的執行是無法平行化的(無法從多處理器平行執行時得到好處)。若將此程式平行化後,於 10 個處理器上執行時,最高可以得到多少倍的加速(speedup)?

這一題的完整詳解

核心觀念

本題考的是平行化程式的加速比,使用 Amdahl 定律。加速比定義為「單一處理器執行時間 ÷ 多處理器執行時間」。程式中無法平行化的部分必須依序執行;可平行化的部分則可由多個處理器分攤。

解題方法

單一處理器執行時間為 120120 秒,其中 2020 秒無法平行化,因此可平行化部分為:

120−20=100 秒120-20=100\text{ 秒}

使用 1010 個處理器時,假設可平行化部分能平均分配且不計額外負擔,執行時間為:

T10=20+10010=30 秒T_{10}=20+\frac{100}{10}=30\text{ 秒}

因此加速比為:

Speedup=12030=4\text{Speedup}=\frac{120}{30}=4

也可用 Amdahl 定律表示。不可平行化比例為 20120=16\frac{20}{120}=\frac{1}{6},可平行化比例為 56\frac{5}{6}:

🔒

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

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

免費註冊

第 2 題2 分

對於計算機設計而言,使用多處理器系統(multiprocessor system)相對於單處理器的主要優點中,不包含下列何者?

這一題的完整詳解

核心觀念

多處理器系統是指在同一個電腦系統中配置兩個以上的處理器,讓處理器協同執行工作。相較於單處理器,多處理器的典型優點包括提高整體吞吐量、共享系統資源以降低成本,以及在具備適當備援設計時提升可靠度。它的主要優點不包括直接提高處理器時脈。

解題方法

逐一辨認選項描述的是「多處理器系統的整體效益」,還是「單一處理器本身的效能規格」。多處理器增加的是可並行執行工作的處理資源;時脈則是處理器的運作頻率,兩者並非同一項效能指標。

選項分析

  • (A) 執行程式的吞吐量提升:正確,屬於多處理器的優點。 若工作可切分並平行執行,多個處理器能同時處理不同工作,因而提高單位時間內完成的工作量,即吞吐量。

  • (B) 相對於同樣工作處理能力的多台單處理器較具經濟效益:正確,屬於規模經濟。

🔒

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

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

免費註冊

第 3 題2 分

不同的計算機系列使用不同的指令集(Instruction Set),目前指令集設計有複雜指令集計算機(Complex Instruction Set Computer, CISC)與精簡指令集計算機(Reduced Instruction Set Computer, RISC)兩個主要趨勢。針對兩者的比較,一般而言,下列敘述何者正確?

這一題的完整詳解

核心觀念

本題考查複雜指令集計算機(CISC)與精簡指令集計算機(RISC)的設計取捨。一般而言,CISC 的指令種類較多、單一指令可執行較複雜的工作;RISC 則以較簡單、規則的指令為主,常搭配較精簡的硬體設計與管線化,讓指令較容易快速執行。

解題方法

比較兩者時,掌握以下典型差異:

  • CISC:指令功能較複雜,完成相同工作通常需要較少指令;指令解碼與控制較複雜。
  • RISC:指令功能較精簡,完成相同工作通常需要較多指令;指令格式較規則,硬體設計與管線化通常較容易。

因此,題目中「完成相同的工作,CISC 所需使用的指令數量較少」符合 CISC 的典型特性。

選項分析

🔒

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

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

免費註冊

第 4 題2 分

當程式被載入記憶體執行時,程式碼和資料會存放在下列四個區域:

① 文字部分(text segment) ② 靜態資料部分(static data segment) ③ 動態資料部分(dynamic data segment) ④ 堆疊部分(stack segment)

上列哪些區域的大小無法在編譯時期決定,會在執行時期由作業系統來管理?

這一題的完整詳解

核心觀念

本題考查程式在記憶體中的配置區域,以及各區域何時決定大小。依一般程式執行模型:

  • 文字部分(text segment):存放程式指令,大小通常由編譯後的程式決定。
  • 靜態資料部分(static data segment):存放全域變數、靜態變數等,其大小通常可由編譯時期決定。
  • 動態資料部分(dynamic data segment,也常稱 heap):供程式在執行時期動態配置與釋放記憶體,大小會隨執行需求變化。
  • 堆疊部分(stack segment):支援函式呼叫、區域變數與呼叫返回資訊等;執行時會因呼叫深度及區域資料需求而增減。

因此,③與④的大小會在執行期間變動,並由作業系統提供或管理相關記憶體資源。

解題方法

先判斷各區域的大小是在程式編譯時大致固定,還是會隨執行狀態改變:

區域大小決定時機與特性
① 文字部分程式碼完成編譯後,其大小通常已確定
🔒

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

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

免費註冊

第 5 題2 分

有關固態硬碟(solid-state disk, SSD)的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

本題考查 SSD 的儲存技術、用途,以及相較於傳統硬碟的存取特性。市售 SSD 主要以快閃記憶體作為儲存媒介;傳統硬碟則使用旋轉磁碟片和移動讀寫頭,因此兩者在機械結構與存取延遲上有所不同。

解題方法

逐一檢視選項是否符合 SSD 的用途與特性。判斷重點是:SSD 雖然使用快閃記憶體,但仍屬於儲存裝置;主記憶體通常由 DRAM 等記憶體構成,不能因為兩者都使用半導體元件,就把 SSD 視為主記憶體。

選項分析

  • **(A) 正確。**目前市售 SSD 的主要儲存媒介是快閃記憶體。快閃記憶體具有非揮發性,斷電後仍能保留資料,適合作為長期儲存媒介。
🔒

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

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

免費註冊

第 6 題2 分

某個中央處理單元(Central Processing Unit, CPU)的時脈速度(Clock Rate)為 1 GHz1\ \mathrm{GHz},假設一個時脈週期(Clock Cycle)可以執行一個指令,理想情況下該處理器一秒內可以執行多少指令?

這一題的完整詳解

核心觀念

時脈速度表示處理器每秒可產生的時脈週期數。1 GHz1\ \mathrm{GHz} 即每秒 10910^9 個時脈週期。題目假設每個時脈週期可執行一個指令,因此每秒指令數等於每秒時脈週期數。

解題方法

利用公式:

每秒可執行指令數=時脈速度(每秒週期數)×每週期可執行指令數\text{每秒可執行指令數} = \text{時脈速度(每秒週期數)} \times \text{每週期可執行指令數}

代入題目條件:

1 GHz=109 週期/秒1\ \mathrm{GHz} = 10^9\ \text{週期/秒} 109 週期/秒×1 指令/週期=109 指令/秒10^9\ \text{週期/秒} \times 1\ \text{指令/週期} = 10^9\ \text{指令/秒}

因此答案為 10910^9。

選項分析

🔒

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

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

免費註冊

第 7 題2 分

儲存在硬碟裡的資料,有可能會遭遇到硬性錯誤(hard error)與軟性錯誤(soft error)。有關錯誤類型的定義,下列何者正確?

這一題的完整詳解

核心觀念

本題考硬碟資料的硬性錯誤(hard error)與軟性錯誤(soft error)之區別。硬性錯誤通常源自儲存媒體或硬體的實體故障,造成資料無法正確讀取或遺失;軟性錯誤則是資料內容發生錯誤,但儲存媒體本身未必損壞,部分情況可透過錯誤更正碼(ECC)或其他復原機制修正。

解題方法

判斷關鍵在於區分「儲存媒體故障」與「資料內容錯誤」,再檢查選項是否把錯誤原因或結果一概而論。符合資料儲存錯誤的一般定義,且沒有把軟性錯誤誤認為程式錯誤的選項,就是正確答案。

選項分析

  • (A) 錯誤。 硬性錯誤不等於必然造成硬體損壞;它是硬體或媒體故障所導致的資料錯誤。軟性錯誤也不等於軟體強制終止,兩者描述的是資料錯誤類型,而非程式執行結果。
  • **(B) 錯誤。
🔒

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

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

免費註冊

第 8 題2 分

設以管道化(Pipelining)機制改善中央處理單元(Central Processing Unit, CPU)效能時,且管道中包含五個步驟:指令執行(Instruction Execute)、指令解碼(Instruction Decode)、記憶體存取(Memory Access)、結果寫回(Result Write Back)與指令擷取(Instruction Fetch)。通常處理器以何種步驟的順序完成一道指令的執行?

這一題的完整詳解

核心觀念

本題考的是 CPU 管線化中的指令處理階段順序。管線將一條指令的工作分成數個階段,讓不同指令能同時在不同階段中處理;但單一指令仍依序經過各階段。

解題方法

依一般五階段管線的流程,先從記憶體擷取指令,再解碼以判斷指令內容,接著執行運算或操作;若指令涉及資料存取,則進行記憶體存取,最後將結果寫回暫存器或目的位置:

指令擷取→指令解碼→指令執行→記憶體存取→結果寫回\text{指令擷取} \rightarrow \text{指令解碼} \rightarrow \text{指令執行} \rightarrow \text{記憶體存取} \rightarrow \text{結果寫回}

因此正確順序為選項 (C)。

🔒

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

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

免費註冊

第 9 題2 分

關於 SRAM 與 DRAM 的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

本題考 SRAM(靜態隨機存取記憶體)與 DRAM(動態隨機存取記憶體)的儲存結構,以及是否需要定期更新資料。

SRAM 通常以多個電晶體構成一個儲存單元,電路結構較複雜、速度較快,且只要持續供電就能維持資料,不需要 Refresh。DRAM 通常以電晶體搭配電容儲存一個位元,電容中的電荷會逐漸流失,因此必須定期 Refresh;其儲存單元較精簡,單位面積可容納較多位元。

解題方法

逐一比對選項所述的特性:SRAM 是否需要 Refresh、兩者的儲存密度差異,以及各自的典型用途與儲存方式。Refresh 是辨別兩者的關鍵:DRAM 需要,SRAM 不需要。

選項分析

🔒

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

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

免費註冊

第 10 題2 分

某處理器執行某程式時,平均每個指令耗時 5 ns5\ \mathrm{ns}。如果以百萬指令每秒(million instructions per second, MIPS)呈現該處理器對該程式的速度,則下列何者正確?

這一題的完整詳解

核心觀念

本題考查平均指令執行時間與 MIPS 的換算。MIPS 表示每秒執行的百萬條指令數:

MIPS=每秒執行的指令數106\mathrm{MIPS}=\frac{\text{每秒執行的指令數}}{10^6}

若平均每條指令耗時為 TT 秒,則每秒可執行的指令數為 1/T1/T。

解題方法

平均每個指令耗時 5 ns5\ \mathrm{ns},而 1 ns=10−9 s1\ \mathrm{ns}=10^{-9}\ \mathrm{s},所以:

T=5×10−9 sT=5\times10^{-9}\ \mathrm{s}

每秒執行的指令數為:

15×10−9=15×109=200×106 指令/秒\frac{1}{5\times10^{-9}} =\frac{1}{5}\times10^9 =200\times10^6\ \text{指令/秒}

換算成百萬指令每秒:

🔒

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

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

免費註冊

第 11 題2 分

有關虛擬記憶體(virtual memory)與實體記憶體(physical memory)的敘述,下列何者正確?

這一題的完整詳解

核心觀念

本題考查虛擬記憶體的位址轉換,以及分頁錯失(page fault)的意義。

程序使用虛擬位址;作業系統與硬體透過頁表,將虛擬頁面對應到實體記憶體中的頁框。若程序存取的虛擬頁面目前不在實體記憶體中,硬體會引發分頁錯失,由作業系統處理,例如從儲存裝置載入該頁面,或判定這是非法存取。

解題方法

逐項檢查敘述是否符合虛擬記憶體的基本特性:

  • 虛擬位址空間的大小由處理器架構與作業系統等因素決定,不必受限於實體記憶體大小。
  • 虛擬位址沒有對應的實體位址時,須進一步判斷該頁面是否尚未載入實體記憶體;若存取有效但頁面不在記憶體中,便會發生分頁錯失。
  • 虛擬記憶體不是由 SRAM 組成的另一塊主記憶體;一般實體主記憶體則主要使用 DRAM。

選項分析

(A) 錯誤。 虛擬記憶體空間不必小於或等於實體記憶體。虛擬記憶體可利用儲存裝置暫存未載入實體記憶體的頁面,因此單一程序的虛擬位址空間可以大於實體記憶體容量。

🔒

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

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

免費註冊

第 12 題2 分

對於處理器中暫存器(Register)的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

本題考查處理器內不同暫存器的用途,以及向量處理器與 MIMD 的差異。

暫存器是處理器內供快速存取的儲存空間,依用途可分為資料暫存器、位址暫存器、通用目的暫存器、向量暫存器等。向量暫存器通常用來存放向量資料,供向量或 SIMD(單一指令、多筆資料)運算使用;MIMD 則是多指令、多筆資料的平行處理架構。

解題方法

逐一核對各選項的功能描述,特別注意選項(D)把「向量處理器」和「MIMD 指令」連在一起。向量處理器的典型運算模式是以一個指令對多筆資料執行相同操作,屬於 SIMD 概念,並非執行 MIMD 指令。

選項分析

(A) 常數暫存器未必需要用到記憶體元件。—正確

常數暫存器用來提供固定值。實作上可由硬體電路直接產生或固定輸出常數,不一定需要由記憶體元件構成,因此「未必需要」的敘述成立。

(B) 索引(Index)暫存器是位址暫存器的一種。—正確

🔒

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

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

免費註冊

第 13 題2 分

若使用 IEEE-754 單精確度格式表示浮點數,則一浮點數使用幾個欄位來表示?

這一題的完整詳解

核心觀念

IEEE-754 單精確度浮點數以 3 個欄位表示:

  1. 符號位元(sign):1 位,表示正數或負數。
  2. 指數欄位(exponent):8 位,採偏移值表示。
  3. 尾數欄位(fraction,也稱小數欄位):23 位,表示有效數的部分。

三個欄位合計為 1+8+23=321+8+23=32 位元。

解題方法

題目問的是「使用幾個欄位」,應數表示格式的欄位種類,而不是位元總數。IEEE-754 單精確度格式分成符號、指數、尾數三欄,因此答案為 3 個欄位。

選項分析

🔒

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

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

免費註冊

第 14 題2 分

將十進制數 (−2468)10(-2468)_{10} 以四個十六進制位數及 2 的補數(2's complement)表示時,其表示法為何?

這一題的完整詳解

核心觀念

四個十六進位位數共有 164=21616^4=2^{16} 種位元組合,因此是 16 位元表示法。16 位元二補數的範圍為 −215-2^{15} 至 215−12^{15}-1,即 −32768-32768 至 3276732767;−2468-2468 在此範圍內,可以表示。

二補數的求法是:先寫出正數的固定位元長度表示,再逐位反相並加 11;等價地,也可用 216−24682^{16}-2468 求得負數的位元表示。

解題方法

先將 24682468 轉成四位十六進位:

2468=9×256+10×16+42468=9\times256+10\times16+4

所以 (2468)10=(9A4)16(2468)_{10}=(9A4)_{16},補足四位為 (09A4)16(09A4)_{16}。

逐位元反相,再加 11:

(09A4)16⟶(F65B)16(逐位元反相)(F65B)16+1=(F65C)16\begin{aligned} (09A4)_{16} &\longrightarrow (F65B)_{16} \quad \text{(逐位元反相)}\\ (F65B)_{16}+1 &= (F65C)_{16} \end{aligned}

因此,(−2468)10(-2468)_{10} 的 16 位元二補數表示為 (F65C)16(F65C)_{16}。

也可直接驗算:

🔒

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

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

免費註冊

第 15 題2 分

下列運算式中,何者計算出的值最大?

這一題的完整詳解

核心觀念

本題考查不同進位制數值的換算與比較。比較大小前,須先把各選項換算成相同進位,最直接的方式是轉成十進位。進位制轉十進位時,每一位數字乘上該位的位權,再將結果相加。

解題方法

逐一將各選項換算成十進位:

  • (A)
(111)2×(101)2=7×5=35(111)_2 \times (101)_2 = 7 \times 5 = 35
  • (B)
(100)10−(60)10=100−60=40(100)_{10} - (60)_{10} = 100 - 60 = 40
  • (C)
(31)4+(33)4=(3×4+1)+(3×4+3)=13+15=28(31)_4 + (33)_4 = (3 \times 4 + 1) + (3 \times 4 + 3) = 13 + 15 = 28
  • (D)
🔒

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

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

免費註冊

第 16 題2 分

若 (213)x=(39)10(213)_x=(39)_{10},則 xx 之值為何?

這一題的完整詳解

核心觀念

數字在 xx 進位制下的值,等於各位數字乘上對應位權後相加。位數從右至左依序是 x0、x1、x2x^0、x^1、x^2。此外,進位制的底數必須大於該數字中最大的數字;(213)x(213)_x 含有數字 33,因此 x>3x>3。

解題方法

將 (213)x(213)_x 展開為十進位數值,並令其等於題目給定的 3939:

(213)x=2x2+1x+3=39(213)_x=2x^2+1x+3=39

整理得:

2x2+x−36=02x^2+x-36=0

因式分解:

(2x+9)(x−4)=0(2x+9)(x-4)=0
🔒

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

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

免費註冊

第 17 題2 分

布林函數 ABC+ABC+BCABC+ABC+BC 進行化簡後,其最簡式有幾個文字字元(literals)?

這一題的完整詳解

核心觀念

本題考布林代數化簡,以及「文字字元」(literal)的計數。文字字元是布林變數或其補數,例如 AA、A‾\overline{A} 各算一個文字字元;相乘代表 AND,相加代表 OR。

解題方法

題目中的 ABC+ABC+BCABC+ABC+BC 三項都包含 BCBC,提出公因式:

ABC+ABC+BC=BC(A+A+1)ABC+ABC+BC=BC(A+A+1)

布林代數中,A+A=AA+A=A,且 A+1=1A+1=1,因此:

BC(A+A+1)=BC(A+1)=BCBC(A+A+1)=BC(A+1)=BC

最簡式為 BCBC,包含 BB、CC 兩個文字字元,對應選項 (B)。但這與題目提供的官方答案 (A) 不一致;依題目目前的印刷式,化簡結果不是 1 個文字字元。

選項分析

🔒

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

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

免費註冊

第 18 題2 分

設計計數器(Counter)時,若某一級正反器(Flip-flop)的輸出接到其他任一級正反器的時脈(Clock)輸入,則這樣的計數器應稱之為:

這一題的完整詳解

核心觀念

本題考查計數器的分類,關鍵在於各級正反器(Flip-flop)的時脈輸入如何連接:

  • 漣波計數器(Ripple Counter):某一級正反器的輸出接到下一級正反器的時脈輸入。各級依序觸發,狀態變化會像漣波般逐級傳遞,因此也稱為非同步計數器。
  • 同步計數器(Synchronous Counter):所有正反器的時脈輸入接收同一個時脈訊號,各級同時受到觸發。

解題方法

直接依題幹描述判斷時脈連接方式:題目指出「某一級正反器的輸出接到其他任一級正反器的時脈輸入」,符合漣波計數器逐級以輸出觸發下一級的定義,因此選擇漣波計數器。

選項分析

🔒

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

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

免費註冊

第 19 題2 分

至少需要幾個 2-input NAND 閘,才能組成一個 3-input NAND 閘?

這一題的完整詳解

核心觀念

本題考查以 2-input NAND 閘組合出 3-input NAND 閘。NAND 閘的輸出為輸入 AND 後取反:

Y=A⋅B‾Y=\overline{A\cdot B}

題目要求實現的 3-input NAND 輸出為:

F=A⋅B⋅C‾F=\overline{A\cdot B\cdot C}

解題方法

先用一個 2-input NAND 閘計算 AA、BB 的 NAND:

X=A⋅B‾X=\overline{A\cdot B}

再將 XX 反相,得到 A⋅BA\cdot B。只要把同一訊號接到第二個 NAND 閘的兩個輸入,就能用 NAND 閘作反相器:

X′=X⋅X‾=X‾=A⋅BX'=\overline{X\cdot X}=\overline{X}=A\cdot B

接著用第三個 NAND 閘將 X′X' 與 CC 做 NAND:

F=X′⋅C‾=A⋅B⋅C‾F=\overline{X'\cdot C} =\overline{A\cdot B\cdot C}

因此,共需要 33 個 2-input NAND 閘,對應選項 B。

選項分析

🔒

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

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

免費註冊

第 20 題2 分

兩個等長字串 010101010101 與 111011111011 的漢明距離(Hamming distance)是:

這一題的完整詳解

核心觀念

漢明距離(Hamming distance)是兩個等長字串在相同位置上,符號不同的個數。逐位比較兩字串,將不同的位置計數即可。

解題方法

將兩字串對齊後逐位比較:

位置123456
010101010101010101
111011111011111011
是否不同是否是是是否

第 1、3、4、51、3、4、5 位不同,共 44 位,因此漢明距離為 44。

🔒

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

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

免費註冊

第 21 題2 分

軟體測試(software testing)中,下列何種方法是使用一組測試資料,讓軟體的每一條指令最少執行一次?

這一題的完整詳解

核心觀念

本題考查軟體測試中的白箱測試與程式碼涵蓋率。題幹的「每一條指令最少執行一次」描述的是敘述涵蓋率(statement coverage):設計測試資料,使程式中的每一個敘述至少執行一次。

基本路徑測試(Basis path testing)屬於白箱測試,依程式的控制流程圖找出一組線性獨立路徑,再為各路徑設計測試資料。執行這些路徑時,能達到敘述涵蓋;因此在本題選項中,基本路徑測試最符合題意。

解題方法

抓住題幹的關鍵詞「每一條指令最少執行一次」,判斷它問的是依程式內部結構設計測試的白箱測試方法,而非由使用者角度驗證功能,或在正式發布前由特定人員試用的測試。

嚴格來說,敘述涵蓋率是測試涵蓋準則,基本路徑測試則是測試設計方法;題目將兩者連結,答案依官方指定為 (B) 基本路徑測試。

選項分析

🔒

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

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

免費註冊

第 22 題2 分

下列 C++ 程式執行後的輸出為何?

#include <stdio.h>

int main(void) { int *p1, *p2;

p1 = new int;
p2 = new int;

*p1 = 1;
*p2 = 2;

p1 = p2;
*p1 = *p1 + 1;

printf("%d, %d", *p1, *p2);

return 0;

}

這一題的完整詳解

核心觀念

本題考查 C++ 的指標指向與指標賦值。p1、p2 是指向 int 的指標;*p 表示取得指標所指向的整數值。執行 p1 = p2 時,複製的是指標位址,因此兩個指標會指向同一個整數。

解題方法

逐行追蹤指標所指向的記憶體:

  1. p1 = new int; 與 p2 = new int; 分別配置兩個整數空間,兩個指標起初指向不同位置。
  2. *p1 = 1;、*p2 = 2;,因此兩個位置的值分別為 1 和 2。
  3. p1 = p2; 將 p2 的位址複製給 p1。此後 p1、p2 都指向原本由 p2 指向、值為 2 的位置。
  4. *p1 = *p1 + 1; 將該位置的值加 1,變成 3。由於兩個指標指向同一位置,*p1 和 *p2 都讀到 3。
🔒

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

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

免費註冊

第 23 題2 分

在物件導向程式設計中,下列特性何者可以達到資訊隱藏(Information Hiding)的目的?

這一題的完整詳解

核心觀念

本題考查物件導向程式設計的基本特性,以及哪一項能達到「資訊隱藏」(Information Hiding)。

資訊隱藏是將物件內部的資料與實作細節保護起來,只透過明確的介面提供外部使用。外部程式可操作物件,但不必知道其內部如何儲存資料或完成工作。**封裝(Encapsulation)**會把資料與操作資料的方法整合在物件中,並可配合存取控制限制外部直接存取,因此能達到資訊隱藏。

解題方法

辨認題目問的是「隱藏內部細節、透過介面提供功能」這項目的。接著對照物件導向特性:封裝負責保護內部狀態並界定對外介面;繼承著重類別間的重用與擴充;多型著重相同介面呈現不同實作;識別則用來區分物件。因此答案是封裝。

選項分析

🔒

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

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

免費註冊

第 24 題2 分

若一個以行為主(Column-Major)、5 列(Row)8 行(Column)的二維陣列 AA,每個陣列元素占用一個記憶體位址空間,已知 A[2][2]A[2][2] 的記憶體位址為 100010,則 A[4][7]A[4][7] 的記憶體位址為何?

這一題的完整詳解

核心觀念

本題考查二維陣列採 行為主(Column-Major) 儲存時,如何計算元素的記憶體位址。行為主表示:同一欄的元素在記憶體中連續排列。

已知每個元素占用一個記憶體位址空間,故元素之間的位址差等於兩元素在儲存順序中的位置差。

解題方法

陣列有 55 列、88 行。行為主儲存時,每往右移一欄,須跨過 55 個元素;每往下移一列,則前進 11 個元素。

從 A[2][2]A[2][2] 到 A[4][7]A[4][7]:

  • 列索引由 22 增至 44,位址增加 (4−2)×1=2(4-2)\times 1=2。
  • 行索引由 22 增至 77,位址增加 (7−2)×5=25(7-2)\times 5=25。

總位址差為 2+25=272+25=27,因此:

Addr⁡(A[4][7])=100010+27=100037\operatorname{Addr}(A[4][7]) =100010+27 =100037

然而,題目選項中沒有 100037100037;官方答案指定為 (C) 102710。依照一般以每個元素占一個位址空間的行為主公式推算,結果與官方答案不符。

選項分析

🔒

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

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

免費註冊

第 25 題2 分

關於 Kruskal 最小展開樹(minimum spanning tree)演算法,下列敘述何者錯誤?

這一題的完整詳解

核心觀念

Kruskal 演算法用來求連通、帶權無向圖的最小展開樹。最小展開樹需連接圖中所有頂點、不含環,且總權重最小;若圖有 nn 個頂點,展開樹恰有 n−1n-1 條邊。

演算法將邊依權重由小到大考慮,逐一加入「不會形成環」的邊,直到選出 n−1n-1 條邊。因此,Kruskal 屬於貪心演算法。若多條邊權重相同,演算法仍可繼續執行;相同權重可能讓最小展開樹不唯一,但不會使演算法無法找出最小展開樹。

解題方法

判斷各選項是否符合 Kruskal 的流程與最小展開樹性質。關鍵在於分清楚「最小展開樹可能不唯一」和「無法找出最小展開樹」:前者不代表演算法失效。

選項分析

(A) 屬於貪心演算法(greedy algorithm)。正確。 Kruskal 每一步都優先選擇目前權重最小、且不會形成環的邊,符合貪心策略。

🔒

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

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

免費註冊

第 26 題2 分

若使用選擇排序法(Selection Sort),對一個陣列 [43,74,36,65,22][43, 74, 36, 65, 22] 由小到大進行排序,則下列何者為進行完兩次交換後的陣列內容?

這一題的完整詳解

核心觀念

選擇排序法(Selection Sort)每一趟都在尚未排序的部分中,找出最小值,並與該部分的第一個元素交換。由小到大排序時,完成第一趟後,最小值會移至陣列最前方;完成第二趟後,次小值會移至第二個位置。

解題方法

初始陣列為 [43,74,36,65,22][43, 74, 36, 65, 22]。

  1. **第一趟:**在整個陣列中找最小值 2222,與第一個元素 4343 交換: [22,74,36,65,43][22, 74, 36, 65, 43]

  2. **第二趟:**在尚未排序的部分 [74,36,65,43][74, 36, 65, 43] 中找最小值 3636,與該部分第一個元素 7474 交換: [22,36,74,65,43][22, 36, 74, 65, 43]

因此,進行完兩次交換後,陣列內容為 [22,36,74,65,43][22, 36, 74, 65, 43]。

選項分析

🔒

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

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

免費註冊

第 27 題2 分

關於程序排程(Process Scheduling)演算法,下列敘述何者正確?

這一題的完整詳解

核心觀念

本題考程序排程的飢餓現象、護衛效應,以及不同排程演算法的目標。

  • 護衛效應(Convoy Effect):短工作被長工作阻擋,形成一批工作排隊等待的現象,常見於先到先服務(FCFS)。
  • 飢餓(Starvation):某程序長期無法取得 CPU。容易發生在優先權排程或短工作優先(SJF),不會是 FCFS 的典型問題。
  • 最短工作優先(SJF):每次優先選擇預估 CPU 執行時間最短的工作;在工作均已就緒且 CPU 執行時間已知的條件下,非搶奪式 SJF 可使平均等待時間最小。
  • 多層次回授佇列(Multilevel Feedback Queue, MLFQ):程序可依執行情形在不同優先權佇列間移動,藉由佇列優先權與時間片設計,近似達成短工作優先的效果。

解題方法

逐一比對各選項所描述的演算法特性。判斷重點是:護衛效應通常與 FCFS 相連;飢餓常見於短工作優先或優先權排程;MLFQ 可藉由程序移動規則偏重短工作;非搶奪式 SJF 的平均等待時間最小,則有「執行時間已知且工作均已就緒」的前提。

選項分析

🔒

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

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

免費註冊

第 28 題2 分

多執行序程式設計(multithreaded programming)的各項好處中,不包括下列何者?

這一題的完整詳解

核心觀念

本題考多執行序(multithreading)的典型優點。作業系統課程常將其歸納為四項:應答性、資源共享、經濟性、可擴大尺度性。題目中的「負載平衡」不屬於這組標準優點。

解題方法

辨認選項是否屬於多執行序的常見優點即可。多個執行序可在同一個行程內並行或交錯執行,改善程式回應、共享行程資源、降低建立與切換的成本,並在多處理器系統上提升平行處理能力。逐一比對後,選出不在此列的選項。

選項分析

  • (A) 應答性(Responsiveness)—正確的優點。 若某執行序因等待輸入輸出或其他工作而阻塞,程式中的其他執行序仍可繼續執行,因此使用者介面或服務較能維持回應。
🔒

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

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

免費註冊

第 29 題2 分

某電腦系統支援虛擬記憶體(Virtual Memory)管理(以下文字中的數字均以十進制表示):1 個分頁(Page)大小為 50 個位元組(Byte),亦即分頁 0 的位址範圍是 0–49,分頁 1 位址範圍是 50–99,以此類推。

若追蹤一程序的執行,其存取記憶體的位址順序如下:

0100, 0542, 0131, 0921, 0151, 0289, 0599, 0274, 0169, 0999, 0949, 0900, 02500100,\ 0542,\ 0131,\ 0921,\ 0151,\ 0289,\ 0599,\ 0274,\ 0169,\ 0999,\ 0949,\ 0900,\ 0250

分配給該程序的實體記憶體固定為 3 個框(Frame),且分別採取先進先出(First In First Out, FIFO)以及近來最沒有使用(Least Recently Used, LRU)兩個演算法來進行分頁置換(Page Replacement),則這二個演算法所產生之分頁錯誤(page fault)次數總和為何?

這一題的完整詳解

核心觀念

本題考分頁位址轉換,以及 FIFO 與 LRU 分頁置換演算法的分頁錯誤計數。

每頁大小為 50 位元組,因此位址 aa 所屬的分頁編號為:

⌊a50⌋\left\lfloor \frac{a}{50} \right\rfloor

存取位址若對應的分頁不在 3 個實體框中,就發生一次分頁錯誤;若已在框中,則為命中。FIFO 置換最早載入的分頁;LRU 置換最久未被使用的分頁。

解題方法

先將位址換成分頁編號:

位址0100054201310921015102890599027401690999094909000250
分頁2102183511531918185

例如,01000100 所屬分頁為 ⌊100/50⌋=2\lfloor 100/50 \rfloor=2;05420542 所屬分頁為 ⌊542/50⌋=10\lfloor 542/50 \rfloor=10。

下表以「框 1、框 2、框 3」記錄置換後的內容;「錯」表示發生分頁錯誤,「中」表示命中。初始框為空。

存取分頁FIFO 框內容FIFOLRU 框內容LRU
22、—、—錯2、—、—錯
102、10、—錯2、10、—錯
🔒

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

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

免費註冊

第 30 題2 分

假設使用相同數量與規格的硬碟,下列何種磁碟陣列(redundant array of inexpensive disks, RAID)可用來儲存資料的空間最大?

這一題的完整詳解

核心觀念

本題考 RAID(磁碟陣列)各層級的資料配置方式,以及在硬碟數量與規格相同時,可提供的可用儲存容量。假設每顆硬碟容量皆為 SS,共有 NN 顆硬碟,且不計檔案系統等額外耗用:

  • RAID 0:以區塊分散(striping)方式儲存,不使用備援容量,可用容量為 N×SN \times S。
  • RAID 1:以鏡像(mirroring)方式保存資料副本,需使用部分容量作為備援。
  • RAID 5:以分散式同位元(distributed parity)提供單顆硬碟故障容錯,容量相當於 N−1N-1 顆硬碟。
  • RAID 6:以雙重分散式同位元提供兩顆硬碟故障容錯,容量相當於 N−2N-2 顆硬碟。

解題方法

比較各 RAID 層級中,有多少硬碟容量用於保存原始資料、多少用於鏡像或同位元備援。RAID 0 不配置備援,所有硬碟空間都可用來儲存資料,因此可用容量最大。

以常見的等容量硬碟配置表示:

🔒

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

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

免費註冊

第 31 題2 分

美國國家標準局(NIST)所制定的雲端計算(cloud computing)的四個佈建模型(deployment models)中,有幾個公司想組成一個資源共享的雲,但又不希望參與的公司之外的單位使用到這個雲,應該要用下列哪一種模型?

這一題的完整詳解

核心觀念

本題考查 NIST 雲端計算的四種佈建模型,以及各模型的使用對象範圍:

  • 公有雲(Public cloud):提供給一般大眾或大型產業群體使用。
  • 私有雲(Private cloud):專供單一組織使用。
  • 社區雲(Community cloud):由具有共同需求的多個組織共同使用,例如共同的任務、安全要求或政策。
  • 混合雲(Hybrid cloud):由兩種以上不同佈建模型組成,彼此仍保有獨立性,並透過技術連結以利資料或應用程式移轉。

解題方法

先看題目的兩個關鍵條件:多家公司共同組成、共享資源,以及僅限參與公司使用。這表示使用者是多個具有共同利益的組織,雲端的使用範圍也限定在這些組織之內,符合社區雲的定義。

🔒

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

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

免費註冊

第 32 題2 分

關於加密虛擬貨幣的挖礦行為,下列何者錯誤?

這一題的完整詳解

核心觀念

本題考「挖礦」在區塊鏈中的作用,以及礦工的計算能力與獲利之間的關係。以採用工作量證明(Proof of Work, PoW)的加密貨幣為例,礦工透過大量計算競爭產生符合難度條件的區塊;成功挖出區塊者可獲得區塊獎勵及交易手續費。挖礦的計算能力通常以算力表示,算力越高,礦工取得區塊獎勵的機率通常越高,但這不代表獲利一定越高。

解題方法

判斷各選項是否符合挖礦網路的運作方式,尤其注意「一定」等絕對用語。挖礦獲利除了受個別礦工算力影響,也取決於全網總算力、獎勵與手續費、電價、設備成本及幣價等因素。因此,不能只憑電腦計算速度就斷定獲利。

選項分析

  • (A) 正確。 礦工透過網路互相傳遞交易資訊與新區塊,並共同參與區塊鏈的驗證與更新,形成同儕對同儕(peer-to-peer, P2P)網路。
  • **(B) 正確。
🔒

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

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

免費註冊

第 33 題2 分

下列哪一個軟體模組和作業系統核心的本文切換(context switch)行為並無直接關聯?

這一題的完整詳解

核心觀念

本文切換(context switch)是作業系統將 CPU 從一個執行緒或行程交給另一個執行緒或行程時,保存目前執行狀態,並載入下一個執行單位狀態的過程。需要保存或恢復的狀態通常包括程式計數器、暫存器及堆疊指標等。

中斷處理、排程器與調度器都可能參與本文切換流程;命令列殼層則是提供使用者輸入命令、啟動程式的介面,與核心切換執行本文沒有直接關聯。

解題方法

判斷各選項是否直接參與「決定切換、觸發切換或執行切換」:

  1. 中斷可能使 CPU 暫停目前工作,進入核心處理中斷。
  2. 排程器決定接下來由哪個行程或執行緒使用 CPU。
  3. 調度器負責將 CPU 控制權交給排定的執行單位,並完成必要的狀態切換。
  4. 命令列殼層負責接收與解譯命令,並非核心執行本文切換的機制。

因此,與本文切換無直接關聯者為命令列殼層。

選項分析

🔒

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

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

免費註冊

第 34 題2 分

在關聯式資料庫中,一個關係(relation)可以用一個二維表格代表,每一列代表某筆資料(a tuple),而每一欄代表資料的某種屬性(an attribute)。若設計以下的關聯式資料庫(表一)來記錄一個公司的員工資訊:

【表一】

員工 ID名字地址職稱部門離職日
25X15王小明中華路 17 號副理業務2-28-2003
25X15王小明中華路 17 號經理業務*
34Y70李大海忠孝路 573 號秘書人事*
23Y34陳立立大同路 65 號秘書會計*

為了避免同一個人的個人資訊重覆出現多次,可以把這個 relation 表格拆成如下的三個 relation 表格(表二~表四):

【表二】

員工 ID名字地址
25X15王小明中華路 17 號
34Y70李大海忠孝路 573 號
23Y34陳立立大同路 65 號

【表三】

員工 ID職稱離職日
25X15副理2-28-2003
25X15經理*
34Y70秘書*
23Y34秘書*

【表四】

職稱部門
副理業務
經理業務
秘書人事
秘書會計

不過這樣的拆法會失去某些資訊,有些資訊在原本單一 relation 表格可以查到的資訊就沒辦法查了。和原本資料庫相比,新資料庫有部分資訊消失了。下列敘述何者正確?

這一題的完整詳解

核心觀念

本題考查關聯式資料庫分解後是否能無損重建原資料。將一個關係拆成多個關係時,若只保留各表中的欄位與資料,重新連接後仍可能產生原表沒有的組合;這種情況稱為有損分解。

本題三張新表分別保存員工個人資料、員工職稱與離職日,以及職稱與部門,但表三沒有「部門」欄位,表四也沒有「員工 ID」欄位。職稱「秘書」同時對應人事與會計,因此只憑職稱無法確定員工所屬部門。

解題方法

逐一檢查原表中的資訊,能否僅由新表查出:

  • 表二可用員工 ID 查到名字與地址。
  • 表三可用員工 ID 查到曾任職稱及離職日。
  • 表四可由職稱查到可能對應的部門;但若同一職稱出現在多個部門,就無法判定特定員工屬於哪個部門。

例如,表三知道員工 34Y70 的職稱是「秘書」,表四卻有「秘書—人事」與「秘書—會計」兩筆資料。新表沒有保留「員工 ID—部門」的對應關係,因此不能確定 34Y70 的部門。原表則直接記錄了每筆員工資料的部門。

選項分析

🔒

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

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

免費註冊

第 35 題2 分

下列何者不適用於代表數位影像的色彩模型?

這一題的完整詳解

核心觀念

本題考「色彩模型」與其他數位影像相關表示方式的區別。色彩模型以數值表示顏色,可用於描述或處理數位影像中的色彩;RGB、HSV、YIQ 都屬於色彩模型。YPR(yaw、pitch、roll)則表示物體或座標系統的三個旋轉角度,不是色彩模型。

解題方法

判斷各選項代表的量:若是描述顏色的分量或屬性,即適用於代表數位影像的色彩模型;若描述的是物體的空間姿態,就不適用。

選項分析

  • (A) RGB:正確。 以紅、綠、藍三個色彩分量表示顏色,是常見的加色模型,也廣泛用於螢幕與數位影像。
  • **(B) HSV:正確。
🔒

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

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

免費註冊

第 36 題2 分

關於點陣圖的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

點陣圖(Bitmap 或 Raster Image)以像素(Pixel)組成的二維陣列表示影像。每個像素記錄顏色資訊;影像的色彩深度則表示每個像素可使用多少位元來編碼顏色。

24 位元 RGB 影像通常將 24 位元分成紅、綠、藍三個色彩通道,每個通道各 8 位元,因此每個通道有 28=2562^8=256 種亮度值。每個像素可表示的顏色總數為:

2563=(28)3=224=16,777,216256^3=(2^8)^3=2^{24}=16{,}777{,}216

解題方法

先辨認各選項描述的是點陣圖的表示方式、檔案格式、解析度影響,還是色彩深度。題目問「錯誤」的敘述;其中,最關鍵的是區分「24 位元」與「24 種顏色」:24 位元代表每個像素有 24 個位元可編碼顏色,不是只有 24 種顏色。

選項分析

🔒

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

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

免費註冊

第 37 題2 分

關於串流媒體(Streaming Media)的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

串流媒體是將音訊或影片分段傳送,接收端收到足以播放的資料後即可開始播放;播放期間,後續資料會持續傳送。串流資料仍會經過網路封包傳送,不會把整部影片壓縮成單一封包。

串流播放通常會在使用者端的緩衝區暫存一小段資料。因此,「不必等整部影片接收完畢即可觀看」是串流的特點;「不會儲存於使用者端」則把「不必完整下載」誤解成「完全不暫存」。

解題方法

逐一核對各選項是否符合串流的傳送與播放方式。關鍵在於分辨「整部影片不必先下載完」與「整部影片一次裝進一個封包傳送」:前者正是串流的特性,後者不符合網路傳輸的分段方式。

選項分析

  • (A) 正確。 網路頻寬若不足以支應影片的資料傳輸速率,接收速度可能跟不上播放速度,造成停頓或緩衝;因此需要足夠的頻寬才能流暢觀看。
  • (B) 正確。 串流採取邊接收、邊播放的方式,使用者不必等候整部影片下載完成。
🔒

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

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

免費註冊

第 38 題2 分

關於圖片壓縮,下列敘述何者錯誤?

這一題的完整詳解

核心觀念

本題考各種常見圖片格式的色彩能力、壓縮方式,以及是否支援動態影像:

  • BMP 通常以未壓縮方式儲存點陣圖,檔案較大。
  • PNG 是可攜式網路圖形格式,支援無失真壓縮與透明度,標準 PNG 用於靜態影像。
  • GIF 使用索引色,每一張影格最多表示 256 色,也支援動畫。
  • JPEG 常用於照片,以有失真(破壞性)壓縮降低檔案大小。

解題方法

逐一核對格式的代表特性,找出與格式規格不符的敘述。關鍵在於區分 PNG 與 GIF:兩者都常用於網路圖片,但動畫支援是 GIF 的典型特性;標準 PNG 本身用於靜態影像。

選項分析

  • (A) BMP 為無壓縮格式。正確。 BMP 常以未壓縮的點陣資料儲存影像,因此通常檔案較大。雖然 BMP 格式也存在壓縮方式,但本題所述為常見的 BMP 特性,符合一般命題用法。
🔒

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

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

免費註冊

第 39 題2 分

有關視訊傳輸介面的敘述,下列何者錯誤?

這一題的完整詳解

核心觀念

本題考視訊介面的訊號型態,以及介面能否傳送聲音。判斷重點是:VGA 傳送類比影像訊號;DVI 依規格可傳送數位訊號,部分規格也包含類比訊號;HDMI 則以數位方式傳送影像,並可同時傳送聲音。

解題方法

逐一核對各介面的訊號特性。只要找出與介面定義相反的敘述,即為題目所問的錯誤選項。尤其要注意,HDMI 名稱中的「數位」與其影音傳輸能力,不能和 VGA 的類比傳輸混淆。

選項分析

🔒

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

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

免費註冊

第 40 題2 分

假設一個數字序列包含 0、1、2、3 四個數字,若以兩個位元表達每一個數字,需要 2×2 \times 序列長度(數字的個數)的位元數來儲存這個數字序列。若已知 0、1、2、3 出現的比例分別是 10%、20%、30%、40%,則使用霍夫曼編碼法(Huffman Coding)重新編碼後,所需的位元數為原本的:

這一題的完整詳解

核心觀念

霍夫曼編碼(Huffman Coding)依符號出現機率配置不等長的前綴碼:出現頻率越高,編碼通常越短。已知各符號比例時,平均每個符號所需位元數為「各符號機率乘上其碼長,再加總」。

解題方法

原本每個數字固定使用 2 位元,因此序列長度為 NN 時,原始儲存量為 2N2N 位元。

依霍夫曼合併法,從機率最小的兩個符號開始合併:

  1. 合併 0.100.10 與 0.200.20,得到 0.300.30。
  2. 合併兩個 0.300.30,得到 0.600.60。
  3. 合併 0.400.40 與 0.600.60,得到根節點 1.001.00。

由此可得一組霍夫曼碼,其碼長為:機率 0.400.40 的符號長度為 1;機率 0.300.30 的符號長度為 2;機率 0.200.20 與 0.100.10 的符號長度均為 3。平均碼長為

L=0.40(1)+0.30(2)+0.20(3)+0.10(3)=2.10L=0.40(1)+0.30(2)+0.20(3)+0.10(3)=2.10

因此,長度為 NN 的序列經霍夫曼編碼後,約需 2.10N2.10N 位元。相較於原本的 2N2N 位元,比例為

2.10N2N×100%=105%\frac{2.10N}{2N}\times 100\%=105\%

爭議點與官方答案

🔒

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

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

免費註冊

其他考古題

110 年高普考普通考試・其他類科的《計算機概要》