25.下列哪一個最能描述「指令集架構(ISA)」?
(A)CPU 的 物理硬體製造方式
(B)程式語言的語法與編譯器設計
(C)程式與硬體之間的抽象介面,定義可使用的指令
(D)控制作業系統排程的規範
統計: A(1), B(1), C(14), D(3), E(0) #3678256
詳解 (共 1 筆)
【解題思路】
解這題的關鍵字只有一句:
「ISA = 指令集架構 = 程式能使用哪些指令,由 CPU 能理解的一套語言」
也就是 CPU 與程式之間的「溝通規範」。
因此最符合描述的是:
(C) 程式與硬體之間的抽象介面,定義可使用的指令
【逐步解析觀念】
ISA(Instruction Set Architecture)
是一種「軟體(程式)如何跟 CPU 溝通」的規範。
例如:
-
x86(Intel CPU 族)
-
ARM(手機、平板、Apple M 系列 CPU)
-
RISC-V(開放指令集架構)
它們告訴程式:
-
你可以用哪些指令(Load、Store、Add、Sub、Jump…)
-
暫存器有哪些
-
記憶體存取模式是什麼
-
指令格式長怎樣
也就是「CPU 會聽得懂哪些指令」的完整規範。
更簡單的比喻:
ISA = CPU 的語言規則。程式語言最後會被編譯成 ISA 能理解的指令。
【選項逐一破題】
(A) CPU 的物理硬體製造方式
這是在講「微架構(Microarchitecture)」與晶片製程,不是 ISA。
(B) 程式語言的語法與編譯器設計
程式語言(如 Python、C、Java)是寫程式的語法;
ISA 是 CPU 的指令格式,兩者不同層級。
(C) 程式與硬體之間的抽象介面,定義可使用的指令
完全正確!
ISA 就是在定義「程式能下什麼指令給 CPU」。
(D) 控制作業系統排程的規範
這是 OS 的工作,與 ISA 無關。
【延伸知識】
ISA vs 微架構(Microarchitecture)
-
ISA(做什麼):定義 CPU 能執行哪些指令
-
Microarchitecture(怎麼做):CPU 內部怎麼實作(pipeline、cache、核心數)
例如:
-
x86 是 ISA
-
Intel i7、AMD Ryzen 是不同的微架構,但都跑同一套 ISA(x86-64)
RISC-V 很紅的原因:
-
ISA 開放、自由、可擴充
-
很多人用它設計自己的 CPU,不需授權費
【記憶技巧】
一句話就記住:
「ISA 是 CPU 的語言,決定程式能下什麼指令。」
或補教口訣:
「會什麼=ISA,怎麼做=微架構。」
【常見錯誤】
-
誤以為 ISA 是硬體製程
那是晶片製造(如 3nm、5nm),跟 ISA 無關。 -
把 ISA 當作程式語言
程式語言是寫給人讀的;
ISA 是 CPU 讀的。 -
以為 ISA 是作業系統的排程規範
OS 排程屬 CPU 使用策略,不是指令集內容。