CISC和RISC的區別
CISC的英文全稱為“Complex Instruction Set Computer”,即“複雜指令系統計算機”,從計算機誕生以來,人們一直沿用CISC指令集方式。早期的桌面軟體是按CISC設計的,並一直沿續到現在。目前,桌面計算機流行的x86體系結構即使用CISC。微處理器(CPU)廠商一直在走CISC的發展道路,包括Intel、AMD,還有其他一些現在已經更名的廠商,如TI(德州儀器)、IBM以及VIA(威盛)等。在CISC微處理器中,程式的各條指令是按順序序列執行的,每條指令中的各個操作也是按順序序列執行的。順序執行的優點是控制簡單,但計算機各部分的利用率不高,執行速度慢。CISC架構的伺服器主要以IA-32架構(Intel Architecture,英特爾架構)為主,而且多數為中低檔伺服器所採用。
RISC的英文全稱為“Reduced Instruction Set Computer”,即“精簡指令集計算機”,是一種執行較少型別計算機指令的微處理器,起源於80年代的MIPS主機(即RISC機),RISC機中採用的微處理器統稱RISC處理器。這樣一來,它能夠以更快的速度執行操作(每秒執行更多百萬條指令,即MIPS)。因為計算機執行每個指令型別都需要額外的電晶體和電路元件,計算機指令集越大就會使微處理器更復雜,執行操作也會更慢。
特點區別各方面如下:
1、指令系統
CISC
計算機的指令系統比較豐富,有專用指令來完成特定的功能。因此,處理特殊任務效率較高。
RISC
設計者把主要精力放在那些經常使用的指令上,儘量使它們具有簡單高效的特色。對不常用的功能,常透過組合指令來完成。因此,在RISC 機器上實現特殊功能時,效率可能較低。但可以利用流水技術和超標量技術加以改進和彌補。
2、儲存器操作
CISC
機器的儲存器操作指令多,操作直接。
RISC
對儲存器操作有限制,使控制簡單化。
3、程式
CISC
組合語言程式程式設計相對簡單,科學計算及複雜操作的程式社設計相對容易,效率較高。
RISC
組合語言程式一般需要較大的記憶體空間,實現特殊功能時程式複雜,不易設計。
4、中斷
CISC
機器是在一條指令執行結束後響應中斷。
RISC
機器在一條指令執行的適當地方可以響應中斷。
5、CPU
CISC
CPU包含有豐富的電路單元,因而功能強、面積大、功耗大。
RISC
CPU包含有較少的單元電路,因而面積小、功耗低。
6、設計週期
CISC
微處理器結構複雜,設計週期長。
RISC
微處理器結構簡單,佈局緊湊,設計週期短,且易於採用技術。
7、使用者使用
CISC
微處理器結構複雜,功能強大,實現特殊功能容易。
RISC
微處理器結構簡單,指令規整,效能容易把握,易學易用。
8、應用範圍
CISC
機器則更適合於通用機。
RISC
由於RISC指令系統的確定與特定的應用領域有關,故RISC 機器更適合於專用機。
chibohandong
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026609/viewspace-2938265/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- CISC和RISC是什麼?它們的特點和區別?
- (計算機組成原理)RISC與CISC的區別計算機
- CISC(複雜指令集)與RISC(精簡指令集)的區別
- ARM(RISC)和x86(CISC)的技術差異
- 以下關於CISC和RISC的敘述中,錯誤的是()【最全!最詳細總結!】
- ../和./和/的區別
- 和 的區別
- as 和 with的區別
- ||和??的區別
- /*和/**的區別
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- http和https的區別/get和post的區別HTTP
- ./ 和sh 的區別
- JQuery this和$(this)的區別jQuery
- jquery $(this) 和this的區別jQuery
- T和?的區別
- ++a和a++的區別
- makefile =和:=的區別
- Mybatis中#{}和${}傳參的區別及#和$的區別小結MyBatis
- 和區別
- MYSQL和SQL的區別MySql
- varchar和char的區別
- &self 和 self 的區別
- var和public的區別
- filter和interceptor的區別Filter
- useEffect 和 useLayoutEffect 的區別
- SDK和API的區別?API
- var 和 let 的區別
- WebApi和MVC的區別WebAPIMVC
- service和systemctl的區別
- GET和POST的區別?
- GET和POST的區別
- button和submit的區別MIT
- GET 和 POST 的區別
- 【Java】equals 和 == 的區別Java
- django和flask的區別DjangoFlask
- promise 和 Observable 的區別Promise
- sass和less的區別