CISC和RISC看機制和策略

2021-05-21 19:34:55 字數 874 閱讀 4539

cisc和risc的區別我就不說了,很多地方都有的,cisc就是機制和策略沒有分離的例子,而risc是機制和策略分離的例子,在cisc的初期,人們感到很愜意,因為程式設計變得簡單了,畢竟很多策略性的人工指令在cisc機器中都有直接的實現,但是人們不可能一直從這當中受益,因為隨著指令的複雜,指令的增加,cpu的設計和實現難度也隨著增加,另外80/20原則還坦白了乙個值不值得的問題,就是我們有沒有必要為那只有百分之二十使用機率的複雜指令實現cpu的執行邏輯(微程式或者硬連線),如果指令少,那麼是值得的,但是指令多了的話,cpu內部的連線邏輯就顯得越來越寶貴了,於是就不值得為很少執行的但是很複雜的指令實現連線邏輯了。於是risc出生了,並且不知不覺走入了機制和策略相分離的設計模式。

在risc中,只是實現了簡單的指令,這些指令很少而且實現很簡單,這樣cpu的設計變得簡單了,複雜指令通過排列組合簡單指令來完成,但是排列組合簡單指令的任務卻不是cpu的工作,而是程式設計者的工作,其實就是編譯器的工作,這樣好像是事情變得複雜了,然而事實卻不是那麼不好,cpu就是為了執行指令的,重排組合指令並不占用cpu的執行時間,並且簡單的指令更容易被cpu實現,如此一來,cpu可以將閒置的其它硬體邏輯實現其別的特性,比如流水線,快取,預取等等,另外簡單的統一的指令會使得管理這些指令的發射變得簡單和高效,因為指令格式一致,這對於流水線也是好的,因為大部分指令的執行時間是一致的,簡單的機制性的東西很容易在一起協作。

從risc和cisc的對比可以看出,risc更適合實現大型的硬體,而cisc則不行,因為一旦cpu設計得超過一定的電晶體數量,那麼cpu會暴熱,看來機制和策略分離是好事啊,不會萬事沒有絕對,如果不需要很強很大的功能,僅僅為了滿足乙個簡單的需求,那麼使用cisc還是有優勢的,最起碼開發周期會短。這麼看來機制和策略分離適合大型並複雜的,統一的,靈活的東西,而機制和策略統一更適合小型的,簡單的單一功能的系統。

CISC和RISC看機制和策略

cisc和risc的區別我就不說了,很多地方都有的,cisc就是機制和策略沒有分離的例子,而risc是機制和策略分離的例子,在cisc的初期,人們感到很愜意,因為程式設計變得簡單了,畢竟很多策略性的人工指令在cisc機器中都有直接的實現,但是人們不可能一直從這當中受益,因為隨著指令的複雜,指令的增加...

CISC和RISC的區別

risc 精簡指令集計算機 和cisc 複雜指令集計算機 是當前cpu的兩種架構。它們的區別在於不同的cpu設計理念和方法。早期的cpu全部是cisc架構,它的設計目的是要用最少的機器語言指令來完成所需的計算任務。比如對於乘法運算,在cisc架構的cpu上,您可能需要這樣一條指令 mul addra...

RISC和CISC的區別

risc 和cisc 是目前設計製造微處理器的兩種典型技術,雖然它們都是試圖在體系結構 操作執行 軟體硬體 編譯時間和執行時間等諸多因素中做出某種平衡,以求達到高效的目的,但採用的方法不同,因此,在很多方面差異很大,它們主要有 1 指令系統 risc 設計者把主要精力放在那些經常使用的指令上,盡量使...