計算機組成原理chp4_第1頁
計算機組成原理chp4_第2頁
計算機組成原理chp4_第3頁
計算機組成原理chp4_第4頁
計算機組成原理chp4_第5頁
已閱讀5頁,還剩95頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、1 第四章第四章 指令系統(tǒng)指令系統(tǒng) 4.1 指令系統(tǒng)的發(fā)展與性能要求 4.2 指令格式與 4.3 操作數(shù)類型 4.4 指令和數(shù)據(jù)的尋址方式 4.5 典型指令 返回 2 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 1、指令在計算機系統(tǒng)中的地位 (1)是軟件和硬件分界面的一個主要標志 l硬件設(shè)計人員采用各種手段實現(xiàn)它; l軟件設(shè)計人員則利用它編制各種各樣的系統(tǒng)軟件和 應(yīng)用軟件 (2)是硬件設(shè)計人員和軟件設(shè)計人員之間的分 界面,也是他們之間溝通的橋梁。 3 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 2、指令系統(tǒng)基本概念 l指令:就是要計算機執(zhí)行某種操作的命令。從計算機組

2、成的層 次結(jié)構(gòu)來說,計算機的指令有微指令、機器指令和宏指令之分。 微指令是微程序級的命令,它屬于硬件; l宏指令:由若干條機器指令組成的軟件指令,它屬于軟件; l機器指令:介于微指令與宏指令之間,通常簡稱為指令,每一 條指令可完成一個獨立的算術(shù)運算或邏輯運算操作。 l本章所討論的指令,是機器指令。本章所討論的指令,是機器指令。 l一臺計算機中所有機器指令的集合,稱為這臺計算機的指令系 統(tǒng)。 l指令系統(tǒng)是表征一臺計算機性能的重要因素,它的格式與功能 不僅直接影響到機器的硬件結(jié)構(gòu),而且也直接影響到系統(tǒng)軟件, 影響到機器的適用范圍 4 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 3、發(fā)

3、展情況 l復(fù)雜指令系統(tǒng)計算機,簡稱CISC。但是如 此龐大的指令系統(tǒng)不但使計算機的研制周期 變長,難以保證正確性,不易調(diào)試維護,而 且由于采用了大量使用頻率很低的復(fù)雜指令 而造成硬件資源浪費。 l精簡指令系統(tǒng)計算機:簡稱RISC,人們又 提出了便于VLSI技術(shù)實現(xiàn)的精簡指令系統(tǒng)計 算機。 5 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 4、為什么會出現(xiàn)CISC到RISC的轉(zhuǎn)變 l2/8規(guī)則 l控制器設(shè)計難度下降 6 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 5、對指令系統(tǒng)的要求 l完備性:完備性:完備性是指用匯編語言編寫各種程序時,指令系統(tǒng)直接提供的 指令足夠使用

4、,而不必用軟件來實現(xiàn)。完備性要求指令系統(tǒng)豐富、功能 齊全、使用方便。一臺計算機中最基本、必不可少的指令是不多的。許 多指令可用最基本的指令編程來實現(xiàn)。例如,乘除運算指令、浮點運算 指令可直接用硬件來實現(xiàn),也可用基本指令編寫的程序來實現(xiàn)。采用硬 件指令的目的是提高程序執(zhí)行速度,便于用戶編寫程序。 l有效性:有效性:有效性是指利用該指令系統(tǒng)所編寫的程序能夠高效率地運行。 高效率主要表現(xiàn)在程序占據(jù)存儲空間小、執(zhí)行速度快。一般來說,一個 功能更強、更完善的指令系統(tǒng),必定有更好的有效性。 7 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 5、對指令系統(tǒng)的要求 l規(guī)整性:規(guī)整性:規(guī)整性包括指令

5、系統(tǒng)的對稱性、勻齊性、指令格式和數(shù)據(jù)格式 的一致性。對稱性是指:在指令系統(tǒng)中所有的寄存器和存儲器單元都可 同等對待,所有的指令都可使用各種尋址方式;勻齊性是指:一種操作 性質(zhì)的指令可以支持各種數(shù)據(jù)類型,如算術(shù)運算指令可支持字節(jié)、字、 雙字整數(shù)的運算,十進制數(shù)運算和單、雙精度浮點數(shù)運算等;指令格式 和數(shù)據(jù)格式的一致性是指:指令長度和數(shù)據(jù)長度有一定的關(guān)系,以方便 處理和存取。例如指令長度和數(shù)據(jù)長度通常是字節(jié)長度的整數(shù)倍。 l兼容性:兼容性:系列機各機種之間具有相同的基本結(jié)構(gòu)和共同的基本指令集, 因而指令系統(tǒng)是兼容的,即各機種上基本軟件可以通用。但由于不同機 種推出的時間不同,在結(jié)構(gòu)和性能上有差異,

6、做到所有軟件都完全兼容 是不可能的,只能做到“向上兼容”,即低檔機上運行的軟件可以在高 檔機上運行。 8 4.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求 6、低級語言與高級語言關(guān)系 比較內(nèi)容高級語言低級語言 1 對程序員的訓(xùn)練要求 (1)通用算法 (2)語言規(guī)則 (3)硬件知識 有 較少 不要 有 較多 要 2 對機器獨立的程度獨立不獨立 3 編制程序的難易程度 易難 4 編制程序所需時間短較長 5 程序執(zhí)行時間較長短 6 編譯過程中對計算機資 源的要求 多 少 9 4.2 指令格式指令格式 l影響計算機指令格式的因素 l機器的字長 l存儲器的容量 l指令的功能 l指令能反映以下信息

7、 l做什么操作 l如果需要操作數(shù),從哪里取 l結(jié)果送哪里 l下一條指令從哪里取 l所以指令格式包括兩個方面: 操作碼字段操作碼字段地址碼字段地址碼字段 10 4.2 指令格式指令格式 一、操作碼 l設(shè)計計算機時,對指令系統(tǒng)的每一條指令都要規(guī)定一個操作碼。 指令的操作碼OP表示該指令應(yīng)進行什么性質(zhì)的操作,如進行加 法、減法、乘法、除法、取數(shù)、存數(shù)等等。不同的指令用操作 碼字段的不同編碼來表示,每一種編碼代表一種指令。 l組成操作碼字段的位數(shù)一般取決于計算機指令系統(tǒng)的規(guī)模。較 大的指令系統(tǒng)就需要更多的位數(shù)來表示每條特定的指令。 l等長(指令規(guī)整,譯碼簡單) l例如IBM 370機,該機字長32位,

8、16個通用寄存器R0 R15,共有183條指令;指令的長度可以分為16位、32位 和48位等幾種,所有指令的操作碼都是8位固定長度。 l固定長度編碼的主要缺點是:信息的冗余極大,使程序的 總長度增加。 11 二、地址碼二、地址碼 l根據(jù)一條指令中有幾個操作數(shù)地址,可將該指 令稱為幾操作數(shù)指令或幾地址指令。 三地址指令 二地址指令 單地址指令 零地址指令 12 二、地址碼二、地址碼 l三地址指令 l指令格式如下: l操作碼 第一操作數(shù)A1 第二操作數(shù)A2 結(jié)果 A3 l功能描述: l(A1)(A2)A3 l(PC) +1PC l這種格式雖然省去了一個地址,但指令長度仍比較 長,所以只在字長較長的

9、大、中型機中使用,而小 型、微型機中很少使用。 13 二、地址碼二、地址碼 l二地址指令 l其格式如下: l操作碼第一操作數(shù)A1第二操作數(shù)A2 l 功能描述: l(A1)(A2)A1 l(PC)+1PC l二地址指令在計算機中得到了廣泛的應(yīng)用,但是在 使用時有一點必須注意:指令執(zhí)行之后,A1中原存 的內(nèi)容已經(jīng)被新的運算結(jié)果替換了。 14 二、地址碼二、地址碼 l二地址地址根據(jù)操作數(shù)的物理位置分為: lSS 存儲器-存儲器類型 lRS 寄存器-存儲器類型 lRR 寄存器-寄存器類型 慢 15 二、地址碼二、地址碼 l一地址指令 l指令格式為: l 操作碼 第一操作數(shù)A1 l功能描述: l(AC)

10、(A1) A1 l(PC)+1PC l單操作數(shù)運算指令,如“+1”、“-1”、“求反” l指令中給出一個源操作數(shù)的地址 16 二、地址碼二、地址碼 l零地址指令 l其格式為: l 操作碼 l“停機”、“空操作”、“清除”等控制類 指令。 17 三三、指令長度、指令長度 l概念 l指令字長度(一個指令字包含二進制代碼的位數(shù)) l機器字長:計算機能直接處理的二進制數(shù)據(jù)的位數(shù)。 l單字長指令 l半字長指令 l雙字長指令 l多字長指令多字長指令的優(yōu)缺點 l優(yōu)點提供足夠的地址位來解決訪問內(nèi)存任何單元的尋址問題 ; l缺點必須兩次或多次訪問內(nèi)存以取出一整條指令,降低了CPU的 運算速度,又占用了更多的存儲

11、空間。 l指令系統(tǒng)中指令采用等長指令等長指令的優(yōu)點:各種指令字長度是相等的, 指令字結(jié)構(gòu)簡單,且指令字長度是不變的 ; l采用非等長指令非等長指令的的優(yōu)點:各種指令字長度隨指令功能而異,結(jié) 構(gòu)靈活,能充分利用指令長度,但指令的控制較復(fù)雜 。 指令格式優(yōu)化指令格式優(yōu)化 l優(yōu)化原由: 指令字長要短,以得到時間和空間上的優(yōu)勢;而指令 字長必須有足夠的長度。(矛盾!) l原則: 在不減少指令數(shù)量的前提下,盡可能縮短指令字的長 度。 l指令字長一般應(yīng)是機器字符長度的整數(shù)倍以便存儲系統(tǒng)的 管理。若機器中字長是L位,則指令字長最好是0.5L,L, 2L,4L,8L等。 優(yōu)化方法:優(yōu)化方法: l1、盡可能減少

12、地址碼的個數(shù) 盡可能采用單地址指令格式;操作數(shù)和運算結(jié) 果盡可能存于CPU或通用寄存器中。 l 2、操作碼長度的縮短 操作碼有兩種編碼格式: 固定格式:操作碼長度固定,且集中放在指令 字的一個字段中; 可變格式:即操作碼長度可變,且分散地放在 指令字的不同字段中。 擴展操作碼(可變格式)擴展操作碼(可變格式) l1、要點: (1) 操作碼位數(shù)隨地址碼個數(shù)變化采取可 變長度的類型; (2) 各指令間指令碼一定不重復(fù); (3) 根據(jù)需要靈活變通。 l一個重要的原則是使用頻率高的指令應(yīng)分配較 短的操作碼,使用頻率低的指令分配較長的操 作碼。 l2、比較 假設(shè)一臺計算機指令字長12位,操作碼與 地址碼

13、都為3位,如圖所示。 (1) 方法一:固定格式,則最多可以設(shè)計8條 三地址指令。 A1操作碼操作碼OPA3A2 3位3位3位3位 A1操作碼操作碼OPA3A2 l2) 方法二:擴展操作碼 指令字長為12位,每個地址碼為3位,采用擴展操作碼 的方式,設(shè)計4條三地址指令、255條一地址指令和8條零地 址指令。 l4條三地址指令 000 * * *011 * * * l255條一地址指令 100 000 000 *111 111 110 * l8條零地址指令 111 111 111 000111 111 111 111 l操作碼平均長度為 (4*3+255*9+8*12)/(4+255+8)=9 例

14、:某指令系統(tǒng)指令長16位,每個操作數(shù)的地址碼長6位, 指令分為無操作數(shù)、單操作數(shù)和雙操作數(shù)三類。若雙操作 數(shù)指令有K條,無操作數(shù)指令有L條,問單操作數(shù)指令最多 可能有多少條? A1(6位)位) 操作碼(操作碼(4位)位) A2(6位)位) 解:設(shè)單操作數(shù)指令最多可以有解:設(shè)單操作數(shù)指令最多可以有x條,則:條,則: 無操作數(shù)指令無操作數(shù)指令L=( -K) - x 2 4 2 6 2 6 x=( - K) -L/ 2 4 2 6 2 6 24 五、指令助記符五、指令助記符 l由于硬件只能識別1和0,所以采用二進制操作 碼是必要的,但是我們用二進制來書寫程序卻 非常麻煩。 l為了便于書寫和閱讀程序,

15、每條指令通常用3 個或4個英文縮寫字母來表示。這種縮寫碼叫 做指令助記符 用34個英文字母來表示操作碼,一般為英文縮寫 不同的計算機系統(tǒng),規(guī)定不一樣 必須用匯編語言翻譯成二進制代碼 25 六、指令格式舉例六、指令格式舉例 l8位微型計算機的指令格式 l如8088,字長8位,指令結(jié)構(gòu)可變 l包括單字長指令、雙字長指令和三字長指令 l操作碼長度固定 lPDP/11系列機的指令格式 l字長16位 l單字長指令 l操作碼字段不固定 26 七七、 Pentium指令格式指令格式 l指令長度可變,最短1個字節(jié),最長12個字節(jié),典型的CISC指 令系統(tǒng) l由可選前綴(04)、操作碼(12)、一個由mod-R

16、/M字節(jié) 和一個SIB(Scale Index Base)比例變址字節(jié)組成的地址指定 器、一個可選的位移量(04)和一個可選的立即數(shù)字段(04) 構(gòu)成。 指令前綴段取代操作數(shù)長度取代地址長度取代 操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 27 七七、 Pentium指令格式指令格式 l指令前綴中的重復(fù)前綴指定串的重復(fù)操作,這樣使 Pentium處理串比軟循環(huán)快得多。 lLOCK前綴用于多CPU環(huán)境中對共享存儲器的排他性 訪問 l段取代用于改變默認段寄存器的情況 l操作數(shù)長度取代和地址長度取代用于在保護模式下決 定操作數(shù)和指令的長度 l以下4個指令前綴都是可選的,分別為0或1個字節(jié) 指

17、令前綴段取代操作數(shù)長度取代地址長度取代 28 七七、 Pentium指令格式指令格式 l操作碼是必須的,12個字節(jié) lMod、Reg、R/M為共1個字節(jié),是可選的。 lmod-R/M指定的操作數(shù)是在R中還是在M中。 lmod(2位)R/M(3位)的32種值構(gòu)成了8種寄存 器方式和24種變址方式(參考匯編語言教材); lReg或OP(3位)指定另一個操作數(shù)(寄存器)或 用作OP的補充。 操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 1個字節(jié)1個字節(jié) 29 七七、 Pentium指令格式指令格式 lS、I、B共1個字節(jié),分別是比例系數(shù)、變址寄存器號、 基址寄存器號,可選。mod-R/M中的某

18、些編碼要求 SIB字節(jié)來完成尋址方式的指定; lSS(2)指定比例變換的因子, lIndex(2)指定變址寄存器, lBase(3)指定基址寄存器 l位移量:可以是0,1,2,4個字節(jié) l立即數(shù):可以是0,1,2,4個字節(jié) 操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 30 4.3 操作數(shù)類型操作數(shù)類型 l操作數(shù)類型 l地址數(shù)據(jù):地址實際上也是一種形式的數(shù)據(jù)。 l數(shù)值數(shù)據(jù):計算機中普遍使用的三種類型的數(shù)值數(shù)據(jù)。 l字符數(shù)據(jù):文本數(shù)據(jù)或字符串,目前廣泛使用ASCII碼。 l邏輯數(shù)據(jù):一個單元中有幾位二進制bit項組成,每個bit的值 可以是1或0。當數(shù)據(jù)以這種方式看待時,稱為邏輯性數(shù)據(jù)。

19、lPentium數(shù)據(jù)類型(見表4.4) l常規(guī)數(shù)據(jù)類型 l整數(shù)數(shù)據(jù)類型 l. 31 4.4 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式 l研究問題 l確定本條指令中各操作數(shù)的地址 l下一條指令的地址 l尋址方式是指CPU根據(jù)指令中給出的地址碼字 段尋找相應(yīng)的操作數(shù)的方式,它與計算機硬件 結(jié)構(gòu)緊密相關(guān),而且對指令的格式和功能有很 大的影響。 32 4.4 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式 l指令的尋址方式 l順序方式 lPC l跳躍方式 33 4.4 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式 l操作數(shù)的尋址方式 l形成操作數(shù)有效地址的方法,稱為尋址方 式。 l操作數(shù)通常放在哪兒呢? 34

20、4.4 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式 l操作數(shù)包含在指令中; l操作數(shù)包含在CPU的某一個內(nèi)部寄存器中; l操作數(shù)包含在主存儲器中; l操作數(shù)包含在I/O設(shè)備的端口中 l根據(jù)操作數(shù)放在不同的地方,從而派生各種不 同的尋址方式,往往不同的計算機具有不同的 尋址方式。 35 36 1、隱含尋址、隱含尋址 l指令中隱含著操作數(shù)的地址 l如某些運算,隱含了累加器AC作為源和目的寄存器 l如8086匯編中的STC指令,設(shè)置標志寄存器的C為1 37 2、立即尋址、立即尋址 l立即尋址是一種特殊的尋址方式,指令中在操作碼字 段后面的部分不是通常意義上的操作數(shù)地址,而是操 作數(shù)本身,也就是說數(shù)據(jù)就

21、包含在指令中,只要取出 指令,就取出了可以立即使用的操作數(shù),因此,這樣 的操作數(shù)被稱為立即數(shù)。 l指令格式:操作碼 操作數(shù)A 38 2、立即尋址、立即尋址 l特點:在取指令時,操作碼和操作數(shù)被同時取出,不 必再次訪問存儲器,從而提高了指令的執(zhí)行速度。 l但是,因為操作數(shù)是指令的一部分,不能被修改; l而且對于定 長指令格式,操作數(shù)的大小將受到指令長 度的限制,所以這種尋址方式靈活性最差 l通常用于給某一寄存器或主存單元賦初值,或者用于 提供一個常數(shù)。 39 3、直接尋址 l 指令中地址碼字段給出的地址A就是操作數(shù)的 有效地址EA(Effective Address),即EAA。 41 3、直接

22、尋址 l操作數(shù)地址是不能修改的,與程序本身所在的位置 無關(guān),所以又叫做絕對尋址方式 l在早期的計算機中,主存儲器的容量較小,指令中 地址碼的位數(shù)要求不長,采用直接尋址方式簡單快 速,也便于硬件實現(xiàn),因此,常被作為主要的尋址 方式。 l但在現(xiàn)代,隨著計算機主存容量的不斷擴大,所需 的地址碼將會越來越長。指令中地址碼的位數(shù)將不 能滿足整個主存空間尋址的要求,因此直接尋址方 式受到了很大的限制。另外,在指令的執(zhí)行過程中, 為了取得操作數(shù),必須進行訪存操作,降低了指令 的執(zhí)行速度。 42 4、間接尋址 l 間接尋址意味著指令的地址碼部分給出的 地址A不是操作數(shù)的地址,而是存放操作數(shù) 地址的主存單元的地

23、址,簡稱操作數(shù)地址的 地址。操作數(shù)的有效地址的計算公式為: EA(A) 44 4、間接尋址 l特點:因為操作數(shù)的有效地址在主存儲器中,可以 被靈活的修改而不必修改指令,從而使間接尋址要 比直接尋址靈活得多。但是,間接尋址在指令執(zhí)行 過程中至少需要兩次訪問主存儲器才能取出操作數(shù), 嚴重降低了指令執(zhí)行的速度。 45 5、寄存器尋址 l在指令的地址碼部分給出CPU內(nèi)某一通用寄存器的 編號,指令的操作數(shù)存放在相應(yīng)的寄存器中,即 EA=Ri 優(yōu)點: (1)由于寄存器在CPU的內(nèi)部,指令在執(zhí)行時從寄存 器中取操作數(shù)比訪問主存要快得多; (2)由于寄存器的數(shù)量較少,因此寄存器編號所占位數(shù) 也較少,從而可以有

24、效減少指令的地址碼字段的長 度。 46 6、寄存器間接尋址 l為了克服間接尋址中多次訪存的缺點,可采用寄存器間接尋址, 即將操作數(shù)放在主存儲器中,而操作數(shù)的地址放在某一通用寄 存器中,然后在指令的地址碼部分給出該通用寄存器的編號, 這時有EA=(Ri) l這種尋址方式的指令較短,并且在取指后只需一次訪存便可得到操作 數(shù),因此指令執(zhí)行速度較前述的間接尋址方式要快,也是目前在計算 機中使用較為廣泛的一種尋址方式。 47 7、相對尋址 l由程序計數(shù)器由程序計數(shù)器PC提供基準地址,而指令的地址碼提供基準地址,而指令的地址碼 部分給出相對的位移量部分給出相對的位移量D,兩者相加后作為操作數(shù),兩者相加后作

25、為操作數(shù) 的有效地址,即:的有效地址,即:EA(PC)D。 48 7、相對尋址 l對尋址方式使程序模塊可采用浮動地址,編程時 只要確定程序內(nèi)部操作數(shù)與指令之間的相對距離, 而無需確定操作數(shù)在主存儲器中的絕對地址,這 樣,將程序安排在主存儲器的任意位置都不會影 響程序執(zhí)行的正確性。 49 8、基址尋址 l在基址尋址方式中,指令的地址碼部分給出偏 移量D,而基準地址放在基址寄存器Rb中,最 后操作數(shù)的有效地址仍然是由基準地址A與偏 移量D相加而成,即:EA(Rb)D。用哪一 個寄存器作為基址寄存器也必須在硬件設(shè)計時 就事先規(guī)定,基址寄存器Rb中的內(nèi)容稱為基 準地址,該值可正可負。 50 8、基址尋

26、址 l基址寄存器的位數(shù)可以設(shè)置得很長,從而可以在較 大的存儲空間中尋址。 51 9、變址尋址 l變址尋址就是將指令的地址碼部分給出的基準 地址A與CPU內(nèi)某特定的變址寄存器Rx中的內(nèi) 容相加,以形成操作數(shù)的有效地址,即:EA A(Rx)。用哪一個寄存器作為變址寄存器 必須在硬件設(shè)計時就事先規(guī)定,變址寄存器 Rx中的內(nèi)容稱為變址值,該值可正可負。 52 9、變址尋址 53 9、變址尋址 l變址尋址方式是一種被廣泛采用的尋址方式,最典 型的應(yīng)用就是將指令的地址碼部分給出的地址A作 為基準地址,而將變址寄存器Rx中的內(nèi)容作為修改 量。在遇到需要頻繁修改操作數(shù)地址時,無須修改 指令,只要修改Rx中的變

27、址值就可以了,這對于數(shù) 組運算、字符串操作等一些進行成批數(shù)據(jù)處理的指 令是很有用的。 54 10、段尋址方式、段尋址方式 1111、堆棧結(jié)構(gòu)及其尋址方式、堆棧結(jié)構(gòu)及其尋址方式 1)堆棧是一種數(shù)據(jù)結(jié)構(gòu)。它是壓入和彈出都在棧頂?shù)囊?端進行的結(jié)構(gòu);特點:“后進先出”。 2)分類:1)硬堆棧:由CPU內(nèi)部設(shè)置的專用寄存器構(gòu)成; (速度快,容量小);2)軟堆棧:在主存儲器中劃 分的專門用于堆棧的一片區(qū)域。(容量大,速度慢) 3)堆棧結(jié)構(gòu)在計算機中的作用 (a) 具有堆棧結(jié)構(gòu)的機器使用零地址指令,這使得 指令長度短,指令結(jié)構(gòu)簡單,機器硬件簡化。 (b) 實現(xiàn)程序調(diào)用,子程序嵌套調(diào)用和遞歸調(diào)用。 (c) 對

28、于“中斷”技術(shù),堆棧更是不可缺少的,保 存“斷點”和“現(xiàn)場”。 4)軟堆棧的操作(SP始終指向棧頂) 設(shè)數(shù)據(jù)進棧方向為從高地址向低地址發(fā)展 (“向下生長),當向堆棧壓入數(shù)據(jù)時, SP的內(nèi)容先自動遞減而指向一個新的空棧 頂單元,再把數(shù)據(jù)寫入此棧頂單元;當數(shù)據(jù) 彈出堆棧時,立即讀出SP所指向的棧頂單 元內(nèi)容,再把SP內(nèi)容自動遞增而指向新的 棧頂位置。即 PUSH X;(SP)-1SP (X)(SP) POP X; (SP)X (SP)+1SP 堆棧寄存器SP 通用寄存器 100 101 102 103 104 105 106 A進棧 B進棧 B出棧 A出棧 軟堆棧過程 105 A A B B AA

29、 104103104105 BA 常用尋址方式及有效地址的計算常用尋址方式及有效地址的計算 尋址方式尋址方式有效地址有效地址尋址方式尋址方式有效地址有效地址 立即尋址立即尋址Data=DData=D變址尋址變址尋址E=RE=Rx x+D+D 寄存器尋址寄存器尋址Data=RData=R變址間接尋址變址間接尋址E=(RE=(Rx x+D)+D) 寄存器直接尋址寄存器直接尋址 E=RE=R間接變址尋址間接變址尋址E=RE=Rx x+(D)+(D) 寄存器間接尋址寄存器間接尋址 E=(R)E=(R)基址尋址基址尋址E=RE=Rb b+D+D 直接尋址直接尋址E=DE=D基址間接尋址基址間接尋址E=(

30、RE=(Rb b+D)+D) 間接尋址間接尋址E=(D)E=(D)間接基址尋址間接基址尋址E=RE=Rb b+(D)+(D) 二次間接尋址二次間接尋址E=(D)E=(D)基址變址尋址基址變址尋址E=RE=Rx x+R+Rb b+D+D 相對尋址相對尋址E=PC+DE=PC+D 注:注:DataData操作數(shù)操作數(shù) E E有效地址有效地址 R Rx x變址寄存器變址寄存器 R Rb b基址寄存器基址寄存器 D D形式地址形式地址 R R寄存器寄存器 PCPC程序計數(shù)器程序計數(shù)器 ( )某單元的內(nèi)容某單元的內(nèi)容 尋址方式例題 例1:一條雙字長的LOAD指令存儲地址為200和201的存儲位置, 該指

31、令將地址碼指定的內(nèi)容裝入累加器AC中,指令的第一個 字指定操作碼和尋址方式,第二個字是地址部分。(PC) =200;(R1)=400;變址寄存器XR的內(nèi)容是100。 條件(201)=500;(309)=450;(400)=700;(500)=800; (600)=900;(702)=325;(800)=300 問:若尋址方式分別為以下的方式,那么裝入AC的值? 1)直接尋址;2)立即數(shù)尋址;3)間接尋址;4)相對尋址; 5)變址尋址;6)寄存器(R1)尋址;7)寄存器間接尋址 62 尋址方式舉例:尋址方式舉例: Pentium 63 Pentium尋址方式尋址方式 方式算法 立即作數(shù)=A 寄存

32、器LA=R 偏移量LA=(SR)+A 基址LA=(SR)+(B) 基址帶偏移量LA=(SR)+(B)+A 比例變址帶偏移量LA=(SR)+(I)S+A 基址帶變址和偏移量LA=(SR)+(B)+(I)+A 基址帶比例變址和偏移量 LA=(SR)+(B)+(I)S+A 相對LA=(PC)+A 64 例例4 l某16位機器所使用的指令格式和尋址方式如下所示,該機有兩個 20位基址寄存器,四個16位變址寄存器,十六個16位通用寄存器。 指令匯編格式中的S(源),D(目標)都是通用寄存器,M是主 存中的一個單元。三種指令的操作碼分別是MOV(OP)=(A)H, STO(OP)=(1B)H,LAD(OP

33、)=(3C)H。MOV是傳送指 令,STO為存數(shù)指令,LAD為取數(shù)指令。要求: (1)分析三種指令的指令格式與尋址方式特點。 (2)CPU完成哪一種操作所花時間最短?哪一種操作所花時間最長? 第二種指令的執(zhí)行時間有時會等于第三種指令的執(zhí)行時間嗎? (3)下列情況下每個十六進制指令字分別代表什么操作?其中如果有 編碼不正確,如何改正才能成為合法指令? 65 P118例例4 F0F1 3CD2 1111 0000 1111 0001 0011 1100 1101 0010 3C15號寄存器13CD2 把主存13CD2的內(nèi)存裝載到15號寄存器 6FD6 0110111111010110由于是單字長指

34、令,則一定是MOV指令。 則OP錯誤,修改為001010001101011028D6 66 4.5 典型指令典型指令 l指令分類與基本指令類型指令分類與基本指令類型 l數(shù)據(jù)傳送類指令 l一般傳送指令: MOV AX,BX l數(shù)據(jù)交換指令: XCHG l堆棧操作指令: PUSH,POP l運算類指令 l算術(shù)運算指令: 加、減、乘、除以及加1、減1、比較 l邏輯運算指令: l移位指令 l程序控制類指令 l程序控制類指令用于控制程序的執(zhí)行方向,并使程序具有測 試、分析與判斷的能力。 l 輸入和輸出指令、字符串處理指令、特權(quán)指令、其他指令 67 4.5 典型指令典型指令 l基本指令系統(tǒng) lP122表4

35、.9介紹 l20%和80%規(guī)律:CISC中大約有20%的指令使用頻率高,占據(jù)了 80%的處理機時間,而有80%的不常用指令只占用處理機的20% 時間。 lVLSI技術(shù)發(fā)展引起的問題 lVLSI工藝要求規(guī)整性,而大量復(fù)雜指令控制邏輯極其不規(guī)整,給VLSI 工藝造成了很大的困難。 l現(xiàn)在用微程序?qū)崿F(xiàn)復(fù)雜指令與用簡單指令組成的子程序相比,沒有多 大的區(qū)別。因為現(xiàn)在控制存儲器和主存的速度差縮小。 lCISC中,通過增強指令系統(tǒng)的功能,簡化了軟件,增加了硬件的 復(fù)雜程度。然而指令復(fù)雜了,指令的執(zhí)行時間必然加長,從而使 整個系統(tǒng)的執(zhí)行時間反而增加,因而在計算機體系結(jié)構(gòu)設(shè)計中, 軟硬件的功能分配必須恰當 6

36、8 4.5 典型指令典型指令 lRISC l特點(采用流水線技術(shù)) l簡單而統(tǒng)一格式的指令譯碼; l大部分指令可以單周期執(zhí)行 l只有LOAD/STORE可以訪問存儲器 l簡單的尋址方式 l采用延遲轉(zhuǎn)移技術(shù) l采用LOAD延遲技術(shù) l三地址指令格式 l較多的寄存器 l對稱的指令格式 返回 CISC和和RISC l復(fù)雜指令集計算機(CISC) 長期來,計算機性能的提高往往是通過增 加硬件的復(fù)雜性來獲得隨著集成電路技術(shù)、 超大規(guī)模集成電路技術(shù)的迅速發(fā)展,為了軟件 編程方便和提高程序的運行速度,硬件工程師 采用的辦法是不斷增加可實現(xiàn)復(fù)雜功能的指令 和多種靈活的編址方式甚至某些指令可支持 高級語言語句歸

37、類后的復(fù)雜操作至使硬件越 來越復(fù)雜,造價也相應(yīng)提高為實現(xiàn)復(fù)雜操作, 微處理器除向程序員提供類似各種寄存器和機 器指令功能外還通過存于只讀存貯器(ROM) 中的微程序來實現(xiàn)其極強的功能 ,CPU在分析 每一條指令之后執(zhí)行一系列初級指令運算來完 成所需的功能,這種設(shè)計的型式被稱為復(fù)雜指 令集計算機(Complex Instruction Set Computer-CISC)結(jié)構(gòu) l一般CISC計算機所含的指令數(shù)目至少 300條以上,有的甚至超過500條早 期的計算機使用匯編語言編程,由于 內(nèi)存速度慢且價格昂貴,使得CISC體 系得到了用武之地。在20世紀90年代 中期之前,大多數(shù)的微處理器都采用

38、CISC體系包括Intel的80 x86和 Motorola的68K系列等。 l1CISC體系的指令特征 使用微代碼。指令集可以直接在微代碼內(nèi) 存(比主內(nèi)存的速度快很多)里執(zhí)行,新設(shè)計 的處理器,只需增加較少的晶體管就可以執(zhí)行 同樣的指令集,也可以很快地編寫新的指令集 程序。 龐大的指令集??梢詼p少編程所需要的代 碼行數(shù),減輕程序員的負擔(dān)。 高級語言對應(yīng)的指令集。包括雙操作數(shù)格 式、寄存器到寄存器、寄存器到內(nèi)存以及內(nèi)存 到寄存器的指令。 l2CISC體系的優(yōu)缺點 優(yōu)點:能夠有效縮短新指令的微代碼設(shè)計 時間,允許設(shè)計師實現(xiàn)CISC體系機器的向上 兼容。新的系統(tǒng)可以使用一個包含早期系統(tǒng)的 指令超集

39、,也就可以使用較早電腦上使用的相 同軟件。另外微程序指令的格式與高級語言相 匹配,因而編譯器并不一定要重新編寫。 缺點:指令集以及芯片的設(shè)計比上一代產(chǎn) 品更復(fù)雜,不同的指令,需要不同的時鐘周期 來完成,執(zhí)行較慢的指令,將影響整臺機器的 執(zhí)行效率。 IBM POWER6 精簡指令集計算機精簡指令集計算機(RISC) (RISC) l精簡指令集計算機(RISC) 采用復(fù)雜指令系統(tǒng)的計算機有著較強的處 理高級語言的能力這對提高計算機的性能是 有益的當計算機的設(shè)計沿著這條道路發(fā)展 時有些人沒有隨波逐流他們回過頭去看一 看過去走過的道路,開始懷疑這種傳統(tǒng)的做法: IBM公司沒在紐約Yorktown的Jh

40、omasI.Wason 研究中心于1975年組織力量研究指令系統(tǒng)的 合理性問題因為當時已感到,日趨龐雜的指 令系統(tǒng)不但不易實現(xiàn)而且還可能降低系統(tǒng)性 能1979年以帕特遜教授為首的一批科學(xué)家 也開始在美國加冊大學(xué)伯克萊分校開展這一研 究 l結(jié)果表明,CISC存在許多缺點首先在這 種計算機中各種指令的使用率相差懸殊:事 實上最頻繁使用的指令是取、存和加這些最簡 單的指令這樣一來,長期致力于復(fù)雜指令系 統(tǒng)的設(shè)計,實際上是在設(shè)計一種難得在實踐中 用得上的指令系統(tǒng)的處理器同時復(fù)雜的指 令系統(tǒng)必然帶來結(jié)構(gòu)的復(fù)雜性這不但增加了 設(shè)計的時間與成本還容易造成設(shè)計失誤此 外盡管VLSI技術(shù)現(xiàn)在已達到很高的水平,但

41、 也很難把CISC的全部硬件做在一個芯片上, 這也妨礙單片計算機的發(fā)展 l在CISC中,許多復(fù)雜指令需要極復(fù)雜的操作, 這類指令多數(shù)是某種高級語言的直接翻版,因 而通用性差由于采用二級的微代碼執(zhí)行方式, 它也降低那些被頻繁調(diào)用的簡單指令系統(tǒng)的運 行速度因而針對CISC的這些弊病帕特 遜等人提出了精簡指令的設(shè)想,即指令系統(tǒng)應(yīng) 當只包含那些使用頻率很高的少量指令并提 供一些必要的指令以支持操作系統(tǒng)和高級語 言按照這個原則發(fā)展而成的計算機被稱為精 簡指令集計算機(Reduced Instruction Set Computer-RISC)結(jié)構(gòu)簡稱RISC l它的關(guān)鍵技術(shù)在于流水線操作(Pipelin

42、ing): 在一個時鐘周期里完成多條指令。而超流水線 以及超標量技術(shù)已普遍在芯片設(shè)計中使用。 RISC體系多用于非x86陣營高性能微處理器 CPU,廠商包括主要APPLE、SGI/MIPS、 IBM、SUN、Compaq/Digital(DEC)、 Motorola等。這些廠商設(shè)計的處理器在某種程 度上,代表了RISC CPU的發(fā)展趨勢。 RISC技術(shù)的類型技術(shù)的類型 l在眾多的RISC處理器中,如何了解它們的性 能和設(shè)計技術(shù)的差別,以便正確選擇和應(yīng)用它 們,這對系統(tǒng)設(shè)計者來講是至關(guān)重要的。由于 早期RISC的發(fā)展基本上起源于一些著名大學(xué) 和公司的研究計劃雖然RISC的處理器的品 種很多,制造

43、廠商也不相同但就其性能和設(shè) 計技術(shù)的差異可分四類:它們的典型代表是 IBM公司的810小型計算機;帕克萊分校的 RISC、RISC;斯坦福大學(xué)的MIPS R2000、R3000 和R4000以及克雷公司的 CRAY-1目前幾乎所有各大公司研制或生產(chǎn) 的RISC處理器產(chǎn)品部分別隸屬于這四種類型。 lIBM 801小型計算機 810小型計算機是IBM公司于70年代末期開始研制的32 位小型機,它排除了通常的兩級微碼控制方式,取而代之 的是在硬件中直接執(zhí)行一組精選的簡單指令和優(yōu)化的編譯 程序這種特殊的編譯程序通過對程序詳細執(zhí)行步驟進行 重新安派以便更有效地利用CPU資源來提高程序的運行 速度,因為它

44、放棄了對復(fù)雜指令系統(tǒng)執(zhí)行微碼的方式,這 就有利于用硬連線控制系統(tǒng)來執(zhí)行為數(shù)不多的簡單指 令為了達到單周期時間執(zhí)行一條指令的目的,存貯器結(jié) 構(gòu)使CPU不需等待訪問存貯器的時間提供指令和數(shù)據(jù)高 速緩存(CACHE),有32個32位寄存器所有指令在寄存器 中執(zhí)行,同時編譯器分寄存器和全局優(yōu)化及存取校驗部件, 還具有延遲轉(zhuǎn)移功能,是一臺采用緊藕合硬件和編譯技術(shù) 相結(jié)合的RISC計算機。 l柏克萊分校的RISCI、RISC型 RISCI、RISC是帕克萊分校分別于1982年和1984 年研制成功的32位微處理器,它們的設(shè)計專注于最有效地 利用大規(guī)模整合電路(VLSI)芯片的區(qū)域研究,因為RISC設(shè) 計的

45、有限個簡單指令只需要相對少量的芯片控制邏輯電路, 而芯片上更多的區(qū)域可以用作系統(tǒng)功能以加強處理器的 性能和使它的功能多樣化它們采用重疊窗口技術(shù)有多 達138*32位寄存器組成8個重疊窗口,在相鄰界面上有6 個寄存器以提供窗口間的運行參數(shù)和結(jié)果,它們是專為相 鄰兩個窗口共享的,在處理器中寄存器作為臨時數(shù)據(jù)存 貯的快速存取區(qū),通過這些寄存據(jù)保持信息參數(shù)在 CISC計算機中子程序調(diào)用之前,參數(shù)是存于系統(tǒng)內(nèi)存 中這樣非常浪費時間,而RISCI、RISC利用寄存器來 傳送參數(shù)很有效地降低了執(zhí)行子程序調(diào)用時所需要的時 間指令數(shù)為31個。 lMIPS R x 000系列型 斯坦福大學(xué)的MIPS計劃,它不采用

46、帕克萊分校的RISC 窗口技術(shù)而采用消除流水線各級互鎖的微處理器 MIPS(Microprosessor Without Interlocking Pipeline Stage)技術(shù)它將IBM公司對優(yōu)化編譯程序的研究和帕克 萊分校的大規(guī)模集成電路的思想結(jié)合起來流水線是現(xiàn)代 各類微處理器都采用的指令執(zhí)行技巧即將若干條指令的 取指令,譯碼和執(zhí)行過程部分重疊在流水線中同時執(zhí) 行但在 CISC計算機中,由于指令多而復(fù)雜處理每條 指令的所得時間不固定,當后面指令需要前條指令的結(jié) 果往往造成指令互鎖斯坦福大學(xué)的MIPS計劃就是在編 譯過程中,利用編譯程序優(yōu)化處理器的流水線,以求提高 處理器流水線的效率,由

47、于采用硬連續(xù)控制來執(zhí)行為數(shù)不 多的簡單指令,且能重組軟件流水線這樣就減少硬件復(fù) 雜性 lCRAY-I型 克雷(CRAY)公司的巨型機CRAY-I,它是70 年代中期開發(fā)成功的最先采用面向寄存器操作 的精簡指令的高速計算機,公司創(chuàng)始人 Seymvur CRAY一開始就反對過在他的巨型計算 機系列的設(shè)計中采用增加指令的建議因此 CRAY一1除大量采用標量、向量和地址寄存器 外還采用流水線技術(shù)以達到高速運算的能力, 做到了一個機器周期時間里執(zhí)行一條指令的目 標所以有人講CRAY一1是RISC技術(shù)的鼻祖 RISC技術(shù)的設(shè)計技巧技術(shù)的設(shè)計技巧 lRISC的設(shè)計原則是使系統(tǒng)設(shè)計達到最高的有效速 度,將那些

48、能對系統(tǒng)性能產(chǎn)生凈增益的功能用硬 件實現(xiàn)其余大部分都用軟件實現(xiàn)它排除了那 些實現(xiàn)復(fù)雜功能的復(fù)雜指令,所謂精簡并不是 簡單的減少而是保留經(jīng)驗證明的能提高機器性 能的指令,另外還將編譯器作為機器的功能而 且RISC微處理器使編譯器能夠直接訪問基本的硬 件功能,RISC設(shè)計的基本目的在于使計算機結(jié)構(gòu) 更加簡單、更加合理、更加有效指令經(jīng)過精簡 后計算機體系結(jié)構(gòu)自然趨于簡單在這個基礎(chǔ) 上,還必須克服CISC的許多缺點使得計算機速 度更快,程序運行時間縮短這樣RISC才能以 嶄新的面貌出現(xiàn) RISC技術(shù)的主要設(shè)計技巧及其特點技術(shù)的主要設(shè)計技巧及其特點 l1短周期時間 為了指令的快速執(zhí)行,就必須快速選擇譯

49、碼和減小寄存器存取時間,盡量采用先進工藝技術(shù)以縮短 機器周期時間,也即提高機器的工作頻率 2單周期執(zhí)行指令由于RISC微處理器的指令經(jīng)過精選, 所有指令長度都相同大多數(shù)指令都能在一個機器周期內(nèi) 執(zhí)行完實際上,大多數(shù)RISC微處理器在沒有增加并行 技術(shù)時,平均每條指令執(zhí)行時間為1.25-2個機器周期時間, 而CISC微處理器在相同工藝技術(shù)條件下平均執(zhí)行每條指 令需5-8個機器周期時間,RISC微處理器力求達到每一個 機器周期時間執(zhí)行一條指令單周期執(zhí)行指令是RISC 微 處理器性能增強的基礎(chǔ)必須簡化指令系統(tǒng)和采用流水線 技術(shù) l3 load(取)Store(存)結(jié)構(gòu) 每當一條指令得要訪問主存信息時

50、機器的執(zhí)行速度 將會降低RISC的loadrestore指令只有在訪問內(nèi)存時 才使用,所有其它的指令都是在寄存器內(nèi)對數(shù)據(jù)進行運 算一條存取數(shù)指令(load)從內(nèi)存將數(shù)據(jù)取出放到寄存器 中,在那里可以對數(shù)據(jù)進行快速處理,并把它暫存在寄存 器里,以便將來還要使用在適當?shù)臅r候一條存數(shù)指令 (store)可將這個數(shù)據(jù)送回到它在內(nèi)存中的地址中 去CISC微處理器支持那些直接從內(nèi)存處理信息的指 令這些指令需要多個機器周期時間才能完成RISC的設(shè) 計技術(shù)與CISC的設(shè)計技術(shù)相比有大量寄存器由于允許 數(shù)據(jù)在寄存器中保留較長的時間這樣就減少了存取指 令對內(nèi)存訪問的需要在寄存器中每當再被使用時不必 再次訪問內(nèi)存這

51、種Loadrestore結(jié)構(gòu)通過寄存器對寄 存器進行操作的方式乃是獲得單周期執(zhí)行的關(guān)鍵 l4簡單固定格式的指令系統(tǒng)所有指令采用32位固定長 度,尋址方式不超過三種,簡化了邏輯和縮短譯碼時 間確保單周期執(zhí)行指令,同時也有利于流水線操作的執(zhí) 行這是由于指令的固定格式保證指令譯碼和取操作能同 時進行 5不用微碼技術(shù)由于RISC的設(shè)計采用簡單合理的指 令系統(tǒng)和簡化的尋址方式所以排除微代碼設(shè)計技術(shù),即 不采用微碼只讀存貯器(ROM),而是直接在硬件中執(zhí)行指 令,這意味著省去將機器指令轉(zhuǎn)換成原始微代碼這一中間 步驟,這也就減少了執(zhí)行一條指令所需要的機器周期個數(shù), 也就節(jié)省了芯片的空間,使得可以利用這些節(jié)省

52、下來的芯 片空間擴展微處理器功能 l6大寄存器堆 RISC微處理器中大量的計算都在ALU高速 寄存器中執(zhí)行由編譯器產(chǎn)生、分配和優(yōu)化寄存器的使 用從而簡化流水線結(jié)構(gòu)和使指令周期降到最小,同時又 不訪問內(nèi)存允許調(diào)用的嵌套執(zhí)行,但這也增加ALU周期 中的寄存器存取時間和一些選址機構(gòu)因此在任務(wù)變換中 需要較高的開銷 l7延遲轉(zhuǎn)移這可解決指令轉(zhuǎn)移相關(guān)問題,它把轉(zhuǎn)移指 令與前一條指令交換位置以避免浪費一個機器周期時間, 這不是靠程序員去完成,而是由RISC的編譯程序自動完 成這也是 RISC設(shè)計技術(shù)一個重要特性 l8高效的流水線操作 當前不論什么結(jié)構(gòu)的微處理器都毫無例外地采用流水 線技術(shù),以達到高速執(zhí)行指

53、令的能力,因為流水線的每一 級都負責(zé)執(zhí)行一個單個的操作段比如、指令譯碼或取操 作數(shù)。實際上一個流水線微處理器是在同一時刻對數(shù)條指 令進行操作CISC微處理器執(zhí)行指令時效率低,甚至有時 會使執(zhí)行過程處于短暫的停滯狀態(tài)例如,當處理器遇到 一條執(zhí)行時間比預(yù)定時間要長的指令,它必須延長這條指 令的操作這樣就要阻止其它指令在流水線中正常執(zhí)行流 水線操作,直到這條長指令的完成這種狀態(tài)除了降低了 執(zhí)行指令效率外還迫使設(shè)計者將處理器的微結(jié)構(gòu)在硬件 上設(shè)計得更加復(fù)雜,以便對付這些問題而在RISC微處理 器設(shè)計中,它具有對指令執(zhí)行時間的預(yù)測能力,因此它能 使流水線在高效率狀態(tài)下運行 l9硬連線控制采用少量、簡單、

54、固定的硬連線控制邏 輯替代微碼以實現(xiàn)減少指令系統(tǒng)保證短周期,單周期執(zhí) 行指令,但不能處理復(fù)雜指令,除在特定狀態(tài)機(state machine或使用垂直微碼外不能處理多個Load Restore指令。 l10重疊寄存器窗口技術(shù) 重疊寄存器窗口技術(shù):在處理機中設(shè)置一個數(shù)量比較 大的寄存器堆,并把它劃分成很多個窗口。每個過程使用 其中相鄰的三個窗口和一個公共的窗口,而在這些窗口中 有一個窗口是與前一個過程共用,還有一個窗口是與下一 個過程共用的。與前一過程共用的窗口可以用來存放前一 過程傳送給本過程的參數(shù),同時也存放本過程傳送給前一 過程的計算結(jié)果。同樣,與下一過程共用窗口可以用來存 放本過程傳送給

55、下一過程的參數(shù)和存放下一過程傳送給本 過程的計算結(jié)果。 l11優(yōu)化編譯程序 l12增強存貯管理功能 l13面向高級語言在R1SC設(shè)計中不用微碼高 級語言可直接由硬件實現(xiàn)通過-次編譯直接 生成由硬件執(zhí)行的機器代碼這樣可提高執(zhí)行 速度不過程序員沒有可讀的匯編語言,適合 人工編碼 l14哈佛(Harvard)總線結(jié)構(gòu) RISC體系的優(yōu)缺點體系的優(yōu)缺點 l優(yōu)點:在使用相同的晶片技術(shù)和相同運行時鐘下,RISC 系統(tǒng)的運行速度將是CISC的24倍。由于RISC處理器的 指令集是精簡的,它的內(nèi)存管理單元、浮點單元等都能設(shè) 計在同一塊芯片上。RISC處理器比相對應(yīng)的CISC處理器 設(shè)計更簡單,所需要的時間將變得更短,并可以比CISC 處理器應(yīng)用更多先進的技術(shù),開發(fā)更快的下一代處理器。 l缺點:多指令的操作使得程序開發(fā)者必須小心地選用合適 的編譯器,而且編寫的代碼量會變得非常大。另外就是 RISC體系的處理器需要更快內(nèi)存,這通常都集成于處理 器內(nèi)部,就是L1 Cache(一級緩存)。 CISC VS RISC l長期以來,由于英特爾的x86處理器可以執(zhí)行1到 87個字節(jié)長度的指令,人們都認為x86處理器是 典型的CISC處

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論