107 鐵路特考高員三級 電力工程 計算機概論 考古題詳解

107 年・鐵路特考・高員三級・電力工程
試題代碼 計算機概論

第 一 題

隨電腦運用的普及與網際網路的蓬勃發展,資訊安全已成為企業及個人不可忽視的重要課題。然而,安全的電腦系統需具備機密性(confidentiality)、完整性(integrity)、可用性(availability)、不可否認性(nonrepudiation)等特性。

常見的資訊安全措施包括備份與復原(backup/recover)、數位簽章(digital signature)、加密/解密(encryption/decryption)、防火牆(firewall)、入侵偵測系統(intrusion detection system)、代理人伺服器(proxy server)等。

試問:

(一) 請詳述下列各項:

  1. 何謂防火牆?(4 分)
  2. 何謂入侵偵測系統?(4 分)
  3. 何謂代理人伺服器?(4 分)
  4. 前述三類系統中,何者不是被動式的阻擋網路攻擊系統?(2 分)

(二) 判斷下列資訊安全措施是否滿足指定的安全特性:

  1. 備份與復原是否滿足機密性?(3 分)
  2. 加密/解密是否滿足可用性?(3 分)

答案為「否」者,須說明其滿足本題所提及之何種特性。

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

這一題的完整詳解

核心觀念

本題評量資訊安全管理與網路安全防護之基礎核心架構,主要涵蓋兩大面向:

  1. 資安四大特性(CIA Triad 延伸):
  • 機密性(Confidentiality):確保資訊僅能由獲得授權的人員、實體或程序存取,防止機密資料外洩。
  • 完整性(Integrity):確保資訊與系統在傳輸、儲存與處理過程中,未遭未授權的竄改、偽造、刪除或毀損。
  • 可用性(Availability):確保獲授權的實體在需要時,能隨時、即時且正常地存取資訊與系統資源。
  • 不可否認性(Non-repudiation):防止通訊或交易雙方事後否認其發送或接收過該訊息的行為,通常藉由數位簽章與公開金鑰基礎建設(PKI)達成。
  1. 網路周邊防護與縱深防禦設備:
  • 防火牆(Firewall)、入侵偵測系統(IDS)、代理人伺服器(Proxy Server)​在 OSI 參考模型所處的運作層級、防禦策略及動作模式(阻斷過濾 vs. 旁路監控告警 vs. 中介轉發)。

解題方法

  • 子題 (一):採「標準定義 →\to 核心運作機制 →\to 安全防護定位」三段式論述。第 4 小題則自「安全防禦行為(阻斷 Blocking vs. 偵測 Detection)」之本質切入,剖析系統是否具備主動介入並阻擋網路流量之能力。
  • 子題 (二):採「特性定義檢驗 →\to 目的檢核與反例論證 →\to 歸屬正確特性」之演繹流程。題目明確規定答案為「否」者須指出其滿足題幹所列之何種特性(機密性、完整性、可用性、不可否認性),作答時須直接點出對應特性並提供學理依據。

選項與子題逐一分析

(一) 名詞詳述與防禦模式判斷

1. 防火牆(Firewall)
  • 定義:防火牆是架設於受信任內部網路(Trusted Internal Network)與不受信任外部網路(如 Internet)交界處的安全閘道設備或軟體,依據預先定義的安全存取政策(Security Policies / Access Control Lists, ACL)監控並過濾雙向傳輸的網路流量。
  • 運作機制:檢查通過設備的每個封包之標頭資訊(如來源/目的 IP 位址、通訊協定類型、來源/目的 Port 埠號、連線狀態等),判定符合規則者予以「放行(Allow/Pass)」,違反規則者立即「阻擋(Drop/Reject)」。
  • 分類:涵蓋封包過濾型(Packet Filtering)、狀態檢視型(Stateful Inspection)、應用層閘道(Application-Level Gateway)及整合深度封包檢測(DPI)的次世代防火牆(NGFW)。
2. 入侵偵測系統(Intrusion Detection System, IDS)
  • 定義:IDS 是專門監控網路流量或主機系統活動,藉以偵測惡意活動、安全策略違規或未授權入侵行為的資安監控系統。
  • 運作機制:IDS 部署於網路側錄埠(SPAN/Mirror Port)或主機端,採旁路監聽(Sniffing)方式運作,主要偵測技術包括:
  • 特徵比對(Signature-based Detection):比對流量是否符合已知攻擊特徵碼。
  • 異常偵測(Anomaly-based Detection):建立正常行為基準線(Baseline),當流量統計顯著偏離時觸發異常通報。
  • 核心特性:IDS 扮演網路安全「監視器與警報器」角色,當偵測到攻擊跡象時,僅負責「發出告警(Alert)與記錄日誌(Log)」,本身不具備直接攔截或丟棄攻擊封包的連線阻斷功能(具備即時在線阻斷能力者為入侵防禦系統 IPS, Intrusion Prevention System)。
3. 代理人伺服器(Proxy Server)
  • 定義:位於用戶端(Client)與目標伺服器(Server)之間的中介通訊系統。用戶端對外部網路的請求不直接連線目標伺服器,而是委託 Proxy Server 代為發出請求與接收回應。
  • 運作機制與主要功能:
  • 快取機制(Caching):暫存經常存取的網頁與靜態資源,節省對外頻寬並加速存取。
  • 位址隱藏與隱私保護:以 Proxy 自身的 IP 位址代理對外連線,隱匿內部用戶端的真實 IP 位址。
  • 存取控制與內容過濾:於應用層(Application Layer)過濾不當 URL、阻擋惡意網站或限制內部員工連線特定外部服務。
4. 前述三類系統中,何者不是被動式的阻擋網路攻擊系統?
  • 判斷:入侵偵測系統(IDS)。
  • 分析:
  • 防火牆與具備過濾規則的代理人伺服器皆能依預設的安全存取政策,對不符合規則的攻擊或非法連線執行「阻擋(Block/Drop/Deny)」動作。
🔒

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

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

免費註冊

第 二 題

某電腦採八位元浮點數表示法(floating-point notation),其格式如下:

  • 符號位元(sign bit):1 個位元;00 表示正數,11 表示負數。
  • 指數部分(exponential):3 個位元,採超額/偏移 4 表示法(Excess/biased 4 notation)。
  • 假數部分(mantissa):4 個位元,採以二進位表示法中最左邊的一個 11 開始填入假數欄的正規化格式;亦即非零數值的假數欄第一位數必為 11。

指數位元圖樣與代表數值如下:

位元圖樣代表數值
11111133
11011022
10110111
10010000
011011−1-1
010010−2-2
001001−3-3
000000−4-4

試問:

(一) 下列實際數值(十進制)的浮點表示圖樣各為何?各有無捨棄誤差(round-off error)現象?(10 分)

  1. 3.53.5
  2. −514-5\frac{1}{4}

(二) 下列浮點表示圖樣(pattern)的實際數值(十進制)各為何?(5 分)

  1. 1101110011011100
  2. 0100101101001011

(三) 下列計算式由左向右運算,總和的結果(十進制)各為何?各有無捨棄誤差(round-off error)現象?(10 分)

  1. 0.125+0.125+0.125+6.50.125+0.125+0.125+6.5
  2. 6.5+0.125+0.125+0.1256.5+0.125+0.125+0.125

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

這一題的完整詳解

核心觀念

本題考查計算機組織與資料表示法中經典的 Brookshear 8 位元浮點數表示法(8-bit Floating-point Notation)之數值編解碼與運算誤差。

1. 浮點數格式規格

  • 符號位元(Sign Bit, SS):共 1 位元。S=0S = 0 表示正數,S=1S = 1 表示負數。
  • 指數部分(Exponent, EE):共 3 位元,採超額 4(Excess-4 / Biased-4)​表示法。 實際指數值 e=E二進位值−4e = E_{\text{二進位值}} - 4。 題目已附對照表:1112→3111_2 \to 3、1102→2110_2 \to 2、…\dots、0002→−4000_2 \to -4。
  • 假數部分(Mantissa, MM):共 4 位元,採純小數正規化格式。 數值以二進位表示時,小數點置於最左邊的第一個 11 之前,格式為 (0.1b2b3b4)2(0.1b_2b_3b_4)_2。

重要觀念區別:此格式非 IEEE 754 標準(IEEE 754 假數隱含整數位 11,記為 1.M1.M);本題已明文規定「非零數值的假數欄第一位數必為 11」,代表假數欄前 4 位元完整儲存小數點後自第一個 11 起之位元,無隱藏位元(Hidden Bit)。

2. 數值還原公式

V=(−1)S×(0.M)2×2eV = (-1)^S \times (0.M)_2 \times 2^e

其中 (0.M)2=b1×2−1+b2×2−2+b3×2−3+b4×2−4(0.M)_2 = b_1 \times 2^{-1} + b_2 \times 2^{-2} + b_3 \times 2^{-3} + b_4 \times 2^{-4}。

3. 捨棄誤差(Round-off / Truncation Error)

  • 編碼時:若二進位正規化後的有效位元數超過 4 位元,因假數欄位長度限制,超出之低位元被截斷(Truncation)捨棄,產生捨棄誤差。
  • 運算時(對階誤差):浮點數加減法必須先「對階(Align Exponents)」,將指數較小者向指數較大者對齊,假數向右移位;若兩數指數差 Δe≥4\Delta e \ge 4,則較小數之假數右移超過 4 位元,有效位元將完全移出假數欄位而被捨棄,造成計算結果產生捨棄誤差。

解題方法

(一) 實際數值轉換為浮點表示圖樣

1. 數值 3.53.5
  1. 決定符號位元:3.5>03.5 > 0,故 S=0S = 0。
  2. 轉為二進位:

3.510=2+1+0.5=11.123.5_{10} = 2 + 1 + 0.5 = 11.1_2

  1. 正規化處理: 將小數點移至最左側 11 的左邊:

11.12=0.1112×2211.1_2 = 0.111_2 \times 2^2

假數欄需 4 位元,低位補 00 得:M=1110M = 1110。 4. 決定指數欄位: 實際指數 e=2e = 2,對照題目表格,指數編碼為 110110。 5. 組合位元圖樣:

S∣E∣M=0∣110∣1110  ⟹  01101110S \mid E \mid M = 0 \mid 110 \mid 1110 \implies 01101110

  1. 捨棄誤差檢驗: 二進位值 11.1211.1_2 轉換為 0.11102×220.1110_2 \times 2^2 恰為 4 位有效位元,完全放入假數欄內,未遺失任何位元,故無捨棄誤差。
2. 數值 −514-5\frac{1}{4}
  1. 決定符號位元:−5.25<0-5.25 < 0,故 S=1S = 1。
  2. 轉為二進位:

5.2510=4+1+0.25=101.0125.25_{10} = 4 + 1 + 0.25 = 101.01_2

  1. 正規化處理: 將小數點移至最左側 11 的左邊:

101.012=0.101012×23101.01_2 = 0.10101_2 \times 2^3

有效位元共有 5 位(1010110101),但假數欄位僅能容納 4 位元,故填入最左邊 4 位:M=1010M = 1010。 最低位元的 11(代表實際數值 0.000012×23=0.25100.00001_2 \times 2^3 = 0.25_{10})被截斷捨棄。 4. 決定指數欄位: 實際指數 e=3e = 3,對照題目表格,指數編碼為 111111。 5. 組合位元圖樣:

S∣E∣M=1∣111∣1010  ⟹  11111010S \mid E \mid M = 1 \mid 111 \mid 1010 \implies 11111010

  1. 捨棄誤差檢驗: 轉換過程因假數欄位不足而截斷最低位元 11,儲存後所代表數值僅為 −(0.10102×23)=−510-(0.1010_2 \times 2^3) = -5_{10},遺失了 0.250.25,故有捨棄誤差。

(二) 浮點表示圖樣還原為十進制數值

1. 位元圖樣 1101110011011100
  1. 欄位拆解:
  • 符號位元:S=1S = 1(負數)
  • 指數位元:E=101E = 101,對照表格得實際指數 e=1e = 1
  • 假數位元:M=1100M = 1100,對應二進位純小數為 (0.1100)2(0.1100)_2
  1. 計算實際數值:

V=−(0.11002×21)=−(1.1002)=−(1+0.5)=−1.5V = - (0.1100_2 \times 2^1) = - (1.100_2) = - (1 + 0.5) = -1.5

2. 位元圖樣 0100101101001011
  1. 欄位拆解:
  • 符號位元:S=0S = 0(正數)
  • 指數位元:E=100E = 100,對照表格得實際指數 e=0e = 0
  • 假數位元:M=1011M = 1011,對應二進位純小數為 (0.1011)2(0.1011)_2
  1. 計算實際數值:

V=+(0.10112×20)=0.10112V = + (0.1011_2 \times 2^0) = 0.1011_2

展開為十進制分數與小數:

V=12+04+18+116=0.5+0.125+0.0625=0.6875(即 1116)V = \frac{1}{2} + \frac{0}{4} + \frac{1}{8} + \frac{1}{16} = 0.5 + 0.125 + 0.0625 = 0.6875 \quad \left(\text{即 } \frac{11}{16}\right)


(三) 循序浮點數加法運算及誤差分析

浮點數由左向右運算,每次相加皆需在該 8 位元系統內執行「對階 →\to 假數相加 →\to 正規化與捨棄」,並以該系統格式暫存中繼結果後,再與下一個數字進行運算。

🔒

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

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

免費註冊

第 三 題

由任務節點及線所構成的工作網路(task network)圖和關鍵路徑法(critical path method)常被用來規劃軟體專案行程。

假設某一軟體開發專案預計將於 2018/7/1 開始執行,下表為執行該專案之工作行程相關資訊。假設開發過程無任何休假日。

工作工作天數先行工作
A8無
B4無
C6A
D1A
E4C、D
F6B
G1E、F

試問:

(一) 請畫出該專案之工作網路圖。(4 分)

(二) 專案最早可完成之日期為何?(4 分)

(三) 任務 D 最晚需完成之日期為何?(4 分)

(四) 關鍵路徑之重要性為何?(4 分)

(五) 該專案之關鍵路徑為何?(4 分)

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

這一題的完整詳解

核心觀念

本題評量軟體工程與專案管理中之時程規劃(Project Scheduling)​核心技術,主要包含:

  1. 工作網路圖(Task Network / Activity Network Diagram):採用「活動在節點」(Activity-on-Node, AON)表示法,節點代表工作任務,有向邊代表任務間的相依限制(Precedence Constraints)。
  2. 關鍵路徑法(Critical Path Method, CPM):
  • 順推法(Forward Pass):計算各任務之最早開始日(Early Start, ESES)與最早完成日(Early Finish, EFEF)。若任務持續天數為 DD: EF=ES+D−1EF = ES + D - 1 ES=max⁡(所有先行任務之 EF)+1ES = \max(\text{所有先行任務之 } EF) + 1
  • 逆推法(Backward Pass):計算各任務之最晚完成日(Late Finish, LFLF)與最晚開始日(Late Start, LSLS): LS=LF−D+1LS = LF - D + 1 LF=min⁡(所有緊後任務之 LS)−1LF = \min(\text{所有緊後任務之 } LS) - 1
  • 總浮時(Total Float / Slack, TFTF):任務可容許延遲而不影響專案總工期的時間: TF=LS−ES=LF−EFTF = LS - ES = LF - EF
  • 關鍵路徑(Critical Path):從專案起點到終點耗時最長之路徑,其上所有任務之總浮時皆為零(TF=0TF = 0)。

解題方法與推導過程

步驟一:路徑枚舉與工期計算

專案自起點至終點共存在 3 條路徑,各路徑工期總和如下:

  1. 路徑 1:A→C→E→GA \rightarrow C \rightarrow E \rightarrow G 總工期=8+6+4+1=19 天\text{總工期} = 8 + 6 + 4 + 1 = 19 \text{ 天}
  2. 路徑 2:A→D→E→GA \rightarrow D \rightarrow E \rightarrow G 總工期=8+1+4+1=14 天\text{總工期} = 8 + 1 + 4 + 1 = 14 \text{ 天}
  3. 路徑 3:B→F→GB \rightarrow F \rightarrow G 總工期=4+6+1=11 天\text{總工期} = 4 + 6 + 1 = 11 \text{ 天}

專案之最短完工所需總工期由最長路徑決定,即 19 天。


步驟二:各任務 CPM 參數推導(以專案第 1 天為基準)

設定專案開始日為第 1 天(Day 1,即 2018/7/1):

工作工期 (DD)先行工作最早開始 (ESES)最早完成 (EFEF)最晚開始 (LSLS)最晚完成 (LFLF)總浮時 (TFTF)關鍵任務
A8無Day 1Day 8Day 1Day 80是
B4無Day 1Day 4Day 9Day 128否
C6ADay 9Day 14Day 9Day 140是
D1ADay 9Day 9Day 14Day 145否
E4C、DDay 15Day 18Day 15Day 180是
F6BDay 5Day 10Day 13Day 188否
G1E、FDay 19Day 19Day 19Day 190是
  • 任務 D 之詳細參數計算:
  • 先行工作為 AA(EF=8EF = 8),故 ES(D)=8+1=9ES(D) = 8 + 1 = 9(第 9 天)。
  • 工期 1 天,故 EF(D)=9+1−1=9EF(D) = 9 + 1 - 1 = 9(第 9 天)。
  • 緊後工作為 EE,而 EE 之最晚開始日 LS(E)=15LS(E) = 15。
  • 因此 DD 之最晚完成日 LF(D)=LS(E)−1=15−1=14LF(D) = LS(E) - 1 = 15 - 1 = 14(第 14 天)。
  • DD 之總浮時 TF(D)=LF−EF=14−9=5TF(D) = LF - EF = 14 - 9 = 5 天。

子題詳解

(一) 工作網路圖(AON 網圖)

依據任務節點與相依關係繪製如下圖:

🔒

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

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

免費註冊

第 四 題

下列電路圖所示之邏輯閘(gate)分別為 OR(OR gate)、AND(AND gate)、XOR(exclusive OR gate)及一種未知邏輯閘(NOT_AND、NOT_OR 或 NOT_XOR)。

【電路圖(a)及電路圖(b)原卷圖示,文字擷取未包含完整圖形。】

試問:

(一) 請寫出所有能使電路圖(a)之輸出為 11(D=1D=1)之輸入組合(A=?A=?、B=?B=?、C=?C=?)。(10 分)

(二) 電路圖(b)之每個方塊代表同一類型之邏輯閘。請問每個方塊為何種邏輯閘(NOT_AND、NOT_OR 或 NOT_XOR)時,在下列兩種情況下,其輸出 EE 將為 11?(5 分)

  1. 所有輸入為 00:A=B=C=D=0A=B=C=D=0。
  2. 所有輸入為 11:A=B=C=D=1A=B=C=D=1。
🖼️ 本題原卷含圖表。基於試題來源之版權考量,本站不轉載原卷影像; 題目文字已完整轉錄,圖表請自行參閱考選部公告之試題原檔。

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

這一題的完整詳解

核心觀念

本題評量數位邏輯電路之基本分析與推導能力,主要涵蓋以下核心觀念與定義:

  1. 基本邏輯閘與複合邏輯閘之運算定義:
  • OR 閘:f(x,y)=x+yf(x, y) = x + y(任一輸入為 11,輸出即為 11;全為 00 則輸出 00)。
  • AND 閘:f(x,y)=x⋅yf(x, y) = x \cdot y(兩輸入皆為 11,輸出方為 11;任一輸入為 00 則輸出 00)。
  • XOR 閘(互斥或閘):f(x,y)=x⊕y=xˉy+xyˉf(x, y) = x \oplus y = \bar{x}y + x\bar{y}(兩輸入相異時輸出為 11;相同時輸出為 00)。
  • NOT_AND 閘(NAND,反及閘):f(x,y)=x⋅y‾f(x, y) = \overline{x \cdot y}(全為 11 輸出 00;其餘輸出 11)。
  • NOT_OR 閘(NOR,反或閘):f(x,y)=x+y‾f(x, y) = \overline{x + y}(全為 00 輸出 11;其餘輸出 00)。
  • NOT_XOR 閘(XNOR,同或閘):f(x,y)=x⊕y‾=xy+xˉyˉf(x, y) = \overline{x \oplus y} = xy + \bar{x}\bar{y}(兩輸入相同時輸出為 11;相異時輸出為 00)。
  1. 多階組合邏輯電路推導:依據電路各節點之拓撲連接關係,逐階列出中介變數與輸出布林代數函數,並利用真值表完整列舉所有輸入組合。
  2. 電路圖結構之合理假設:本題考卷原頁文字擷取未包含完整圖形,依題意敘述與國家考試典型命題慣例:
  • 電路圖(a)為典型二層組合邏輯電路,第一層包含輸入為 A,BA, B 的 XOR 閘與輸入為 B,CB, C(或 A,CA, C)的 AND 閘,第二層為 OR 閘輸出 DD,輸出邏輯式為 D=(A⊕B)+(B⋅C)D = (A \oplus B) + (B \cdot C)。
  • 電路圖(b)為典型對稱二層樹狀結構,第一層兩個方塊分別接收 (A,B)(A, B) 與 (C,D)(C, D),第二層一個方塊接收第一層輸出產生最終輸出 EE。

解題方法

(一) 電路圖(a)之輸出推導(求使 D=1D=1 之輸入組合)

依據典型二層電路架構,令第一層 XOR 閘輸出為 X1=A⊕BX_1 = A \oplus B,AND 閘輸出為 X2=B⋅CX_2 = B \cdot C。 輸出端 OR 閘之輸出邏輯式為: D=X1+X2=(A⊕B)+(B⋅C)D = X_1 + X_2 = (A \oplus B) + (B \cdot C)

欲使 D=1D = 1,只要 A⊕B=1A \oplus B = 1 或 B⋅C=1B \cdot C = 1 成立即可:

  1. 當 A⊕B=1A \oplus B = 1 時:表示 A≠BA \neq B,共有 4 種組合:
  • (A,B,C)=(0,1,0)  ⟹  D=1+0=1(A, B, C) = (0, 1, 0) \implies D = 1 + 0 = 1
  • (A,B,C)=(0,1,1)  ⟹  D=1+1=1(A, B, C) = (0, 1, 1) \implies D = 1 + 1 = 1
  • (A,B,C)=(1,0,0)  ⟹  D=1+0=1(A, B, C) = (1, 0, 0) \implies D = 1 + 0 = 1
  • (A,B,C)=(1,0,1)  ⟹  D=1+0=1(A, B, C) = (1, 0, 1) \implies D = 1 + 0 = 1
  1. 當 A⊕B=0A \oplus B = 0 時:表示 A=BA = B,此時必須依賴 B⋅C=1B \cdot C = 1 使輸出為 11:
  • 若 A=B=0A = B = 0:B⋅C=0⋅C=0B \cdot C = 0 \cdot C = 0,輸出 D=0+0=0D = 0 + 0 = 0(無符合解)。
  • 若 A=B=1A = B = 1:B⋅C=1⋅C=CB \cdot C = 1 \cdot C = C,故需 C=1C = 1 才能使 D=1D = 1。
  • 此時產生解:(A,B,C)=(1,1,1)  ⟹  D=0+1=1(A, B, C) = (1, 1, 1) \implies D = 0 + 1 = 1。

列出完整 8 種輸入組合真值表檢驗:

AABBCCA⊕BA \oplus BB⋅CB \cdot CD=(A⊕B)+(B⋅C)D = (A \oplus B) + (B \cdot C)
000000
001000
010101
011111
100101
101101
110000
111011

使 D=1D = 1 的所有輸入組合 (A,B,C)(A, B, C) 共有 5 組。

(註:若原圖 AND 閘之輸入端為 A,CA, C,布林代數式為 D=(A⊕B)+(A⋅C)D = (A \oplus B) + (A \cdot C)。經由布林代數化簡 (A⊕B)+AC=AˉB+ABˉ+AC=AˉB+ABˉ+BC(A \oplus B) + AC = \bar{A}B + A\bar{B} + AC = \bar{A}B + A\bar{B} + BC,其真值表與上述完全同構,解完全相同。)


(二) 電路圖(b)之邏輯閘判定

電路圖(b)之每個方塊代表同種類型之邏輯閘,以二層對稱樹狀結構分析:

  • 第一層上方方塊輸出:X1=GATE(A,B)X_1 = \text{GATE}(A, B)
  • 第一層下方方塊輸出:X2=GATE(C,D)X_2 = \text{GATE}(C, D)
  • 第二層輸出端方塊:E=GATE(X1,X2)E = \text{GATE}(X_1, X_2)

針對題目給定的三種候選閘(NOT_AND、NOT_OR、NOT_XOR)在兩種輸入狀態下進行運算推導:

情況 1:所有輸入為 00(A=B=C=D=0A = B = C = D = 0)

  • 各方塊第一層之兩輸入均為 (0,0)(0, 0),令其輸出為 X=GATE(0,0)X = \text{GATE}(0, 0)。
  • 第二層之輸入則為 (X,X)(X, X),輸出為 E=GATE(X,X)E = \text{GATE}(X, X)。

情況 2:所有輸入為 11(A=B=C=D=1A = B = C = D = 1)

  • 各方塊第一層之兩輸入均為 (1,1)(1, 1),令其輸出為 Y=GATE(1,1)Y = \text{GATE}(1, 1)。
🔒

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

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

免費註冊

第 五 題

某精簡指令集電腦(RISC)的處理器時脈速度(clock rate)為 100 MHz100\ \mathrm{MHz},各類型指令(instruction)執行所需的時脈週期(clock cycles)如下:

指令形式時脈週期
資料轉換33
輸出入22
整數運算11
浮點運算22
流程控制22

若有一個 10,00010{,}000 行指令的程式將於該電腦上執行,該程式包含四類不同型態指令(資料轉換、整數運算、浮點運算、流程控制),各類指令行數比例依序分別為 20%20\%、38%38\%、25%25\%、17%17\%。

試問:

(一) 該程式之 CPI(Cycles Per Instruction)、MIPS(Million Instructions Per Second)及執行時間(execution time)各為何?(15 分)

(二) 請詳述何謂 RISC(Reduced Instruction Set Computing)?(5 分)

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

這一題的完整詳解

核心觀念

本題評量計算機組織與結構(Computer Organization and Architecture)中兩大核心主題:處理器效能評估方程式(CPU Performance Equation)​與精簡指令集電腦(RISC)架構特徵。

  1. 平均每指令週期數(Cycles Per Instruction, CPI): 程式由多種不同指令組成,各類指令執行所需週期數不同,整體程式的平均 CPI 採用加權平均計算: CPI=∑i=1n(Pi×CPIi)\text{CPI} = \sum_{i=1}^{n} (P_i \times \text{CPI}_i) 其中 PiP_i 為第 ii 類指令佔總指令數的百分比,CPIi\text{CPI}_i 為該類指令所需的時脈週期數。

  2. 每秒百萬百萬指令數(Million Instructions Per Second, MIPS): 衡量處理器每秒能執行多少百萬個指令的指標: MIPS=指令總數 (Instruction Count, IC)Texe×106=時脈頻率 (Clock Rate, f)CPI×106\text{MIPS} = \frac{\text{指令總數 (Instruction Count, } IC)}{T_{\text{exe}} \times 10^6} = \frac{\text{時脈頻率 (Clock Rate, } f)}{\text{CPI} \times 10^6} 若時脈速度單位為 MHz\mathrm{MHz},則公式簡化為: MIPS=f (以 MHz 為單位)CPI\text{MIPS} = \frac{f\ (\text{以 }\mathrm{MHz}\text{ 為單位})}{\text{CPI}}

  3. 程式執行時間(CPU Execution Time, TexeT_{\text{exe}}): 由經典的 CPU 效能方程式決定: Texe=IC×CPI×時脈週期時間 (Clock Cycle Time, τ)=IC×CPIfT_{\text{exe}} = IC \times \text{CPI} \times \text{時脈週期時間 (Clock Cycle Time, } \tau) = \frac{IC \times \text{CPI}}{f}

  4. RISC(Reduced Instruction Set Computing)設計哲學: 以簡化指令功能、固定指令長度、實施載入/儲存(Load/Store)架構為核心,目標在於讓多數指令能於單一時脈週期內透過硬線控制(Hardwired Control)與管線化(Pipelining)高效率完成。


解題方法

(一) 計算 CPI、MIPS 及執行時間

已知條件:

  • 時脈頻率 f=100 MHz=100×106 Hz=108 Hzf = 100\ \mathrm{MHz} = 100 \times 10^6\ \mathrm{Hz} = 10^8\ \mathrm{Hz}
  • 時脈週期時間 τ=1f=1108=10−8 s=10 ns\tau = \frac{1}{f} = \frac{1}{10^8} = 10^{-8}\ \mathrm{s} = 10\ \mathrm{ns}
  • 程式指令總數 IC=10,000IC = 10{,}000 行
  • 各類指令佔比與個別時脈週期:
  • 資料轉換:佔比 20%20\%,週期數 33
  • 整數運算:佔比 38%38\%,週期數 11
  • 浮點運算:佔比 25%25\%,週期數 22
  • 流程控制:佔比 17%17\%,週期數 22
  • (註:題目表格所列之「輸出入」指令於本程式中佔比為 0%0\%)

Step 1:計算程式之平均 CPI 利用加權平均公式: CPI=(20%×3)+(38%×1)+(25%×2)+(17%×2)\text{CPI} = (20\% \times 3) + (38\% \times 1) + (25\% \times 2) + (17\% \times 2) CPI=(0.20×3)+(0.38×1)+(0.25×2)+(0.17×2)\text{CPI} = (0.20 \times 3) + (0.38 \times 1) + (0.25 \times 2) + (0.17 \times 2) CPI=0.60+0.38+0.50+0.34=1.82 cycles/instruction\text{CPI} = 0.60 + 0.38 + 0.50 + 0.34 = 1.82\ \text{cycles/instruction}

Step 2:計算處理器執行該程式之 MIPS 將時脈速度 f=100 MHzf = 100\ \mathrm{MHz} 與算得之 CPI=1.82\text{CPI} = 1.82 代入公式: MIPS=1001.82=10000182=500091≈54.95\text{MIPS} = \frac{100}{1.82} = \frac{10000}{182} = \frac{5000}{91} \approx 54.95

Step 3:計算該程式之執行時間(Execution Time, TexeT_{\text{exe}}) 程式執行總週期數(Total Cycles): Total Cycles=IC×CPI=10,000×1.82=18,200 cycles\text{Total Cycles} = IC \times \text{CPI} = 10{,}000 \times 1.82 = 18{,}200\ \text{cycles} 執行時間為總週期數乘上單一週期時間: Texe=Total Cyclesf=18,200100×106 Hz=1.82×10−4 s=0.182 ms=182 μsT_{\text{exe}} = \frac{\text{Total Cycles}}{f} = \frac{18{,}200}{100 \times 10^6\ \mathrm{Hz}} = 1.82 \times 10^{-4}\ \mathrm{s} = 0.182\ \mathrm{ms} = 182\ \mu\mathrm{s}


(二) 詳述 RISC(精簡指令集電腦)

🔒

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

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

免費註冊

其他考古題

107 年鐵路特考高員三級・其他類科的《計算機概論》