RISC和CISC的区别
文章目錄
- 復雜指令集計算機(CISC)
- 精簡指令集計算機(RISC)
- CISC與RISC的區別
- 參考文章
RISC(精簡指令集計算機)和CISC(復雜指令集計算機)是當前CPU的兩種架構。它們的區別在于不同的CPU設計理念和方法。
復雜指令集計算機(CISC)
長期來,計算機性能的提高往往是通過增加硬件的復雜性來獲得.隨著集成電路技術.特別是VLSI(超大規模集成電路)技術的迅速發展,為了軟件編程方便和提高程序的運行速度,硬件工程師采用的辦法是不斷增加可實現復雜功能的指令和多種靈活的編址方式.甚至某些指令可支持高級語言語句歸類后的復雜操作.至使硬件越來越復雜,造價也相應提高.為實現復雜操作,微處理器除向程序員提供類似各種寄存器和機器指令功能外.還通過存于只讀存貯器(ROM)中的微程序來實現其極強的功能 ,傲處理在分析每一條指令之后執行一系列初級指令運算來完成所需的功能,這種設計的型式被稱為復雜指令集計算機(Complex
Instruction Set Computer-CISC)結構.一般CISC計算機所含的指令數目至少300條以上,有的甚至超過500條.
精簡指令集計算機(RISC)
采用復雜指令系統的計算機有著較強的處理高級語言的能力.這對提高計算機的性能是有益的.當計算機的設計沿著這條道路發展時.有些人沒有隨波逐流.他們回過頭去看一看過去走過的道路,開始懷疑這種傳統的做法:IBM公司沒在紐約Yorktown的JhomasI.Wason研究中心于1975年組織力量研究指令系統的合理性問題.因為當時已感到,日趨龐雜的指令系統不但不易實現.而且還可能降低系統性能.1979年以帕特遜教授為首的一批科學家也開始在美國加冊大學伯克萊分校開展這一研究.結果表明,CISC存在許多缺點.首先.在這種計算機中.各種指令的使用率相差懸殊:一個典型程序的運算過程所使用的80%指令.只占一個處理器指令系統的20%.事實上最頻繁使用的指令是取、存和加這些最簡單的指令.這樣-來,長期致力于復雜指令系統的設計,實際上是在設計一種難得在實踐中用得上的指令系統的處理器.同時.復雜的指令系統必然帶來結構的復雜性.這不但增加了設計的時間與成本還容易造成設計失誤.此外.盡管VLSI技術現在已達到很高的水平,但也很難把CISC的全部硬件做在一個芯片上,這也妨礙單片計算機的發展.在CISC中,許多復雜指令需要極復雜的操作,這類指令多數是某種高級語言的直接翻版,因而通用性差.由于采用二級的微碼執行方式,它也降低那些被頻繁調用的簡單指令系統的運行速度.因而.針對CISC的這些弊病.帕特遜等人提出了精簡指令的設想即指令系統應當只包含那些使用頻率很高的少量指令.并提供一些必要的指令以支持操作系統和高級語言.按照這個原則發展而成的計算機被稱為精簡指令集計算機(Reduced Instruction Set Computer-RISC)結構.簡稱RISC.
CISC與RISC的區別
我們經常談論有關"PC"與"Macintosh"的話題,但是又有多少人知道以Intel公司X86為核心的PC系列正是基于CISC體系結構,而 Apple公司的Macintosh則是基于RISC體系結構,CISC與RISC到底有何區別?-
- 從硬件角度來看CISC處理的是不等長指令集,它必須對不等長指令進行分割,因此在執行單一指令的時候需要進行較多的處理工作。而RISC執行的是等長精簡指令集,CPU在執行指令的時候速度較快且性能穩定。因此在并行處理方面RISC明顯優于CISC,RISC可同時執行多條指令,它可將一條指令分割成若干個進程或線程,交由多個處理器同時執行。由于RISC執行的是精簡指令集,所以它的制造工藝簡單且成本低廉。
- 從軟件角度來看,CISC運行的則是我們所熟識的DOS、Windows操作系統。而且它擁有大量的應用程序。因為全世界有65%以上的軟件廠商都理為基于CISC體系結構的PC及其兼容機服務的,象赫赫有名的Microsoft就是其中的一家。而RISC在此方面卻顯得有些勢單力薄。雖然在RISC上也可運行DOS、Windows,但是需要一個翻譯過程,所以運行速度要慢許多。
- 目前CISC與RISC正在逐步走向融合,Pentium Pro、Nx586、K5就是一個最明顯的例子,它們的內核都是基于RISC體系結構的。他們接受CISC指令后將其分解分類成RISC指令以便在遇一時間內能夠執行多條指令。由此可見,下一代的CPU將融合CISC與RISC兩種技術,從軟件與硬件方面看二者會取長補短。
- 復雜指令集CPU內部為將較復雜的指令譯碼,也就是指令較長,分成幾個微指令去執行,正是如此開發程序比較容易(指令多的緣故),但是由于指令復雜,執行工作效率較差,處理數據速度較慢,PC 中 Pentium的結構都為CISC CPU。
- RISC是精簡指令集CPU,指令位數較短,內部還有快速處理指令的電路,使得指令的譯碼與數據的處理較快,所以執行效率比CISC高,不過,必須經過編譯程序的處理,才能發揮它的效率,我所知道的IBM的 Power PC為RISC CPU的結構,CISCO 的CPU也是RISC的結構。
- 咱們經常見到的PC中的CPU,Pentium-Pro(P6)、Pentium-II,Cyrix的M1、M2、AMD的K5、K6實際上是改進了的CISC,也可以說是結合了CISC和RISC的部分優點。
- RISC與CISC的主要特征對比
比較內容 CISC RISC
指令系統 復雜,龐大 簡單,精簡
指令數目 一般大于200 一般小于100
指令格式 一般大于4 一般小于4
尋址方式 一般大于4 一般小于4
指令字長 不固定 等長
可訪存指令 不加限制 只有LOAD/STORE指令
各種指令使用頻率 相差很大 相差不大
各種指令執行時間 相差很大 絕大多數在一個周期內完成
優化編譯實現 很難 較容易
程序源代碼長度 較短 較長
控制器實現方式 絕大多數為微程序控制 絕大多數為硬布線控制
軟件系統開發時間 較短 較長
參考文章
risc指令集是什么
百度百科
維基百科
總結
以上是生活随笔為你收集整理的RISC和CISC的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arduino nano 蓝牙_基于Ar
- 下一篇: 用C语言求三个数的最大值与排序