指令集架構(ISA)

什麼是 ISA

指令集架構(Instruction Set Architecture)是 CPU 與軟體之間的介面定義,規定了指令集合、暫存器組織、記憶體模型和例外處理方式。ISA 是電腦系統中最關鍵的抽象層,決定了編譯器產生什麼樣的機器碼,以及作業系統如何與硬體互動。

主要 ISA 比較

ISA類型指令數長度應用
x86/x64CISC數百變長PC / 伺服器
ARMRISC~100固定 32 位元行動裝置
RISC-VRISC~40固定 32/64 位元嵌入式 / 學術
MIPSRISC~100固定 32 位元網路 / 嵌入式

CISC vs RISC

CISC(複雜指令集)提供豐富的指令,硬體複雜,如 x86 使用微碼實現。RISC(精簡指令集)指令簡單固定,硬體簡潔,適合低功耗和高頻率設計。現代 x86 處理器內部也使用 RISC 風格的微操作(μop)。

指令格式

RISC 指令通常使用固定長度格式(如 RISC-V 為 32 位元),分為 R 型(暫存器)、I 型(立即數)、S 型(儲存)、B 型(分支)、U 型(上位立即數)和 J 型(跳躍)。

# RISC-V R-type (ADD)
#  31:25 | 24:20 | 19:15 | 14:12 | 11:7 | 6:0
# funct7 |  rs2  |  rs1  | funct3 |  rd  | opcode
# 0000000 | 00001 | 00010 |  000   | 00110| 0110011
# ADD x6, x4, x5

相關連結