cisc(complex instruction set computers,複雜指令集計算集)和risc(reduced instruction set computers)是兩大類主流的cpu指令集型別,其中cisc以intel,amd的x86 cpu為代表,而risc以arm,ibm power為代表。risc的設計初衷針對cisc cpu複雜的弊端,選擇一些可以在單個cpu週期完成的指令,以降低cpu的複雜度,將複雜**給編譯器。舉乙個例子,cisc提供的乘法指令,呼叫時可完成記憶體a和記憶體b中的兩個數相乘,結果存入記憶體a,需要多個cpu週期才可以完成;而risc不提供「一站式」的乘法指令,需呼叫四條單cpu週期指令完成兩數相乘:記憶體a載入到暫存器,記憶體b載入到暫存器,兩個暫存器中數相乘,暫存器結果存入記憶體a。按照此思路,早期的設計出的risc指令集,指令數是比cisc少些,單後來,很多risc的指令集中指令數反超了cisc,因此,引用指令的複雜度而非數量來區分兩種指令集。
當然,cisc也是要通過操作記憶體、暫存器、運算器來完成複雜指令的。它在實現時,是將複雜指令轉換成了乙個微程式,微程式在製造cpu時就已儲存於微服務儲存器。乙個微程式包含若干條微指令(也稱微碼),執行複雜指令時,實際上是在執行乙個微程式。這也帶來兩種指令集的乙個差別,微程式的執行是不可被打斷的,而risc指令之間可以被打斷,所以理論上risc可更快響應中斷。
在此,總結一下cisc和risc的主要區別:
cisc的指令能力強,單多數指令使用率低卻增加了cpu的複雜度,指令是可變長格式;risc的指令大部分為單週期指令,指令長度固定,操作暫存器,只有load/store操作記憶體
cisc支援多種定址方式;risc支援方式少
cisc通過微程式控制技術實現;risc增加了通用暫存器,硬佈線邏輯控制為主,是和採用流水線
cisc的研製周期長
risc優化編譯,有效支援高階語言
參考文獻
1. 2.
CISC和RISC的區別
risc 精簡指令集計算機 和cisc 複雜指令集計算機 是當前cpu的兩種架構。它們的區別在於不同的cpu設計理念和方法。早期的cpu全部是cisc架構,它的設計目的是要用最少的機器語言指令來完成所需的計算任務。比如對於乘法運算,在cisc架構的cpu上,您可能需要這樣一條指令 mul addra...
RISC和CISC的區別
risc 和cisc 是目前設計製造微處理器的兩種典型技術,雖然它們都是試圖在體系結構 操作執行 軟體硬體 編譯時間和執行時間等諸多因素中做出某種平衡,以求達到高效的目的,但採用的方法不同,因此,在很多方面差異很大,它們主要有 1 指令系統 risc 設計者把主要精力放在那些經常使用的指令上,盡量使...
CISC和RISC的區別
於 risc reduced instruction set computer 和 cisc complex instruction set computer 是當前 cpu的兩種架構。它們的區別在於不同的 cpu設計理念和方法。早期的cpu 全部是cisc 架構,它的設計目的是要用最少的機器語言指...