




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1第四章 指令系統(tǒng)4.1 指令系統(tǒng)的發(fā)展與性能要求4.2 指令格式與4.3 操作數(shù)類型4.4 指令和數(shù)據(jù)的尋址方式4.5 典型指令返回24.1 指令系統(tǒng)的發(fā)展與性能要求1、指令在計算機系統(tǒng)中的地位(1)是軟件和硬件分界面的一個主要標志 硬件設計人員采用各種手段實現(xiàn)它; 軟件設計人員則利用它編制各種各樣的系統(tǒng)軟件和應用軟件(2)是硬件設計人員和軟件設計人員之間的分界面,也是他們之間溝通的橋梁。34.1 指令系統(tǒng)的發(fā)展與性能要求2、指令系統(tǒng)基本概念 指令:就是要計算機執(zhí)行某種操作的命令。從計算機組成的層次結構來說,計算機的指令有微指令、機器指令和宏指令之分。微指令是微程序級的命令,它屬于硬件; 宏
2、指令:由若干條機器指令組成的軟件指令,它屬于軟件; 機器指令:介于微指令與宏指令之間,通常簡稱為指令,每一條指令可完成一個獨立的算術運算或邏輯運算操作。 本章所討論的指令,是機器指令。本章所討論的指令,是機器指令。 一臺計算機中所有機器指令的集合,稱為這臺計算機的指令系統(tǒng)。 指令系統(tǒng)是表征一臺計算機性能的重要因素,它的格式與功能不僅直接影響到機器的硬件結構,而且也直接影響到系統(tǒng)軟件,影響到機器的適用范圍44.1 指令系統(tǒng)的發(fā)展與性能要求3、發(fā)展情況復雜指令系統(tǒng)計算機,簡稱CISC。但是如此龐大的指令系統(tǒng)不但使計算機的研制周期變長,難以保證正確性,不易調(diào)試維護,而且由于采用了大量使用頻率很低的復
3、雜指令而造成硬件資源浪費。精簡指令系統(tǒng)計算機:簡稱RISC,人們又提出了便于VLSI技術實現(xiàn)的精簡指令系統(tǒng)計算機。54.1 指令系統(tǒng)的發(fā)展與性能要求4、為什么會出現(xiàn)CISC到RISC的轉(zhuǎn)變 2/8規(guī)則 控制器設計難度下降64.1 指令系統(tǒng)的發(fā)展與性能要求5、對指令系統(tǒng)的要求完備性:完備性:完備性是指用匯編語言編寫各種程序時,指令系統(tǒng)直接提供的指令足夠使用,而不必用軟件來實現(xiàn)。完備性要求指令系統(tǒng)豐富、功能齊全、使用方便。一臺計算機中最基本、必不可少的指令是不多的。許多指令可用最基本的指令編程來實現(xiàn)。例如,乘除運算指令、浮點運算指令可直接用硬件來實現(xiàn),也可用基本指令編寫的程序來實現(xiàn)。采用硬件指令的
4、目的是提高程序執(zhí)行速度,便于用戶編寫程序。有效性:有效性:有效性是指利用該指令系統(tǒng)所編寫的程序能夠高效率地運行。高效率主要表現(xiàn)在程序占據(jù)存儲空間小、執(zhí)行速度快。一般來說,一個功能更強、更完善的指令系統(tǒng),必定有更好的有效性。規(guī)整性:規(guī)整性:規(guī)整性包括指令系統(tǒng)的對稱性、勻齊性、指令格式和數(shù)據(jù)格式的一致性。對稱性是指:在指令系統(tǒng)中所有的寄存器和存儲器單元都可同等對待,所有的指令都可使用各種尋址方式;勻齊性是指:一種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類型,如算術運算指令可支持字節(jié)、字、雙字整數(shù)的運算,十進制數(shù)運算和單、雙精度浮點數(shù)運算等;指令格式和數(shù)據(jù)格式的一致性是指:指令長度和數(shù)據(jù)長度有一定的關系,以方
5、便處理和存取。例如指令長度和數(shù)據(jù)長度通常是字節(jié)長度的整數(shù)倍。兼容性:兼容性:系列機各機種之間具有相同的基本結構和共同的基本指令集,因而指令系統(tǒng)是兼容的,即各機種上基本軟件可以通用。但由于不同機種推出的時間不同,在結構和性能上有差異,做到所有軟件都完全兼容是不可能的,只能做到“向上兼容”,即低檔機上運行的軟件可以在高檔機上運行。74.1 指令系統(tǒng)的發(fā)展與性能要求6、低級語言與高級語言關系比較內(nèi)容高級語言低級語言1對程序員的訓練要求(1)通用算法(2)語言規(guī)則(3)硬件知識有較少不要有較多要2對機器獨立的程度獨立不獨立3編制程序的難易程度易難4編制程序所需時間短較長5程序執(zhí)行時間較長短6編譯過程中
6、對計算機資源的要求多少84.2 指令格式 影響計算機指令格式的因素 機器的字長 存儲器的容量 指令的功能 指令能反映以下信息 做什么操作 如果需要操作數(shù),從哪里取 結果送哪里 下一條指令從哪里取 所以指令格式包括兩個方面:操作碼字段操作碼字段地址碼字段地址碼字段94.2 指令格式 一、操作碼 設計計算機時,對指令系統(tǒng)的每一條指令都要規(guī)定一個操作碼。指令的操作碼OP表示該指令應進行什么性質(zhì)的操作,如進行加法、減法、乘法、除法、取數(shù)、存數(shù)等等。不同的指令用操作碼字段的不同編碼來表示,每一種編碼代表一種指令。 組成操作碼字段的位數(shù)一般取決于計算機指令系統(tǒng)的規(guī)模。較大的指令系統(tǒng)就需要更多的位數(shù)來表示每
7、條特定的指令。 等長(指令規(guī)整,譯碼簡單) 例如IBM 370機,該機字長32位,16個通用寄存器R0R15,共有183條指令;指令的長度可以分為16位、32位和48位等幾種,所有指令的操作碼都是8位固定長度。 固定長度編碼的主要缺點是:信息的冗余極大,使程序的總長度增加。10二、地址碼 根據(jù)一條指令中有幾個操作數(shù)地址,可將該指令稱為幾操作數(shù)指令或幾地址指令。三地址指令二地址指令單地址指令零地址指令11二、地址碼 三地址指令 指令格式如下: 操作碼 第一操作數(shù)A1 第二操作數(shù)A2 結果A3 功能描述: (A1)(A2)A3 (PC) +1PC 這種格式雖然省去了一個地址,但指令長度仍比較長,所
8、以只在字長較長的大、中型機中使用,而小型、微型機中很少使用。12二、地址碼 二地址指令 其格式如下: 操作碼第一操作數(shù)A1第二操作數(shù)A2 功能描述: (A1)(A2)A1 (PC)+1PC 二地址指令在計算機中得到了廣泛的應用,但是在使用時有一點必須注意:指令執(zhí)行之后,A1中原存的內(nèi)容已經(jīng)被新的運算結果替換了。13二、地址碼 二地址地址根據(jù)操作數(shù)的物理位置分為: SS 存儲器-存儲器類型 RS 寄存器-存儲器類型 RR 寄存器-寄存器類型慢14二、地址碼 一地址指令 指令格式為: 操作碼 第一操作數(shù)A1 功能描述: (AC)(A1) A1 (PC)+1PC 單操作數(shù)運算指令,如“+1”、“-1
9、”、“求反” 指令中給出一個源操作數(shù)的地址15二、地址碼 零地址指令 其格式為: 操作碼“停機”、“空操作”、“清除”等控制類指令。16三、指令長度 概念 指令字長度(一個指令字包含二進制代碼的位數(shù)) 機器字長:計算機能直接處理的二進制數(shù)據(jù)的位數(shù)。 單字長指令 半字長指令 雙字長指令多字長指令多字長指令的優(yōu)缺點 優(yōu)點提供足夠的地址位來解決訪問內(nèi)存任何單元的尋址問題 ; 缺點必須兩次或多次訪問內(nèi)存以取出一整條指令,降低了CPU的運算速度,又占用了更多的存儲空間。 指令系統(tǒng)中指令采用等長指令等長指令的優(yōu)點:各種指令字長度是相等的,指令字結構簡單,且指令字長度是不變的 ; 采用非等長指令非等長指令的
10、的優(yōu)點:各種指令字長度隨指令功能而異,結構靈活,能充分利用指令長度,但指令的控制較復雜 。17五、指令助記符 由于硬件只能識別1和0,所以采用二進制操作碼是必要的,但是我們用二進制來書寫程序卻非常麻煩。 為了便于書寫和閱讀程序,每條指令通常用3個或4個英文縮寫字母來表示。這種縮寫碼叫做指令助記符用34個英文字母來表示操作碼,一般為英文縮寫不同的計算機系統(tǒng),規(guī)定不一樣必須用匯編語言翻譯成二進制代碼18六、指令格式舉例 8位微型計算機的指令格式 如8088,字長8位,指令結構可變 包括單字長指令、雙字長指令和三字長指令 操作碼長度固定 PDP/11系列機的指令格式 字長16位 單字長指令 操作碼字
11、段不固定19七、 Pentium指令格式 指令長度可變,最短1個字節(jié),最長12個字節(jié),典型的CISC指令系統(tǒng) 由可選前綴(04)、操作碼(12)、一個由mod-R/M字節(jié)和一個SIB(Scale Index Base)比例變址字節(jié)組成的地址指定器、一個可選的位移量(04)和一個可選的立即數(shù)字段(04)構成。指令前綴段取代操作數(shù)長度取代地址長度取代操作碼ModReg或操作碼R/MSIB位移量立即數(shù)20七、 Pentium指令格式 指令前綴中的重復前綴指定串的重復操作,這樣使Pentium處理串比軟循環(huán)快得多。 LOCK前綴用于多CPU環(huán)境中對共享存儲器的排他性訪問 段取代用于改變默認段寄存器的情
12、況 操作數(shù)長度取代和地址長度取代用于在保護模式下決定操作數(shù)和指令的長度 以下4個指令前綴都是可選的,分別為0或1個字節(jié)指令前綴段取代操作數(shù)長度取代地址長度取代21七、 Pentium指令格式 操作碼是必須的,12個字節(jié) Mod、Reg、R/M為共1個字節(jié),是可選的。 mod-R/M指定的操作數(shù)是在R中還是在M中。 mod(2位)R/M(3位)的32種值構成了8種寄存器方式和24種變址方式(參考匯編語言教材); Reg或OP(3位)指定另一個操作數(shù)(寄存器)或用作OP的補充。操作碼ModReg或操作碼R/MSIB位移量立即數(shù)1個字節(jié)1個字節(jié)22七、 Pentium指令格式 S、I、B共1個字節(jié),
13、分別是比例系數(shù)、變址寄存器號、基址寄存器號,可選。mod-R/M中的某些編碼要求SIB字節(jié)來完成尋址方式的指定; SS(2)指定比例變換的因子, Index(2)指定變址寄存器, Base(3)指定基址寄存器 位移量:可以是0,1,2,4個字節(jié) 立即數(shù):可以是0,1,2,4個字節(jié)操作碼ModReg或操作碼R/MSIB位移量立即數(shù)234.3 操作數(shù)類型 操作數(shù)類型 地址數(shù)據(jù):地址實際上也是一種形式的數(shù)據(jù)。 數(shù)值數(shù)據(jù):計算機中普遍使用的三種類型的數(shù)值數(shù)據(jù)。 字符數(shù)據(jù):文本數(shù)據(jù)或字符串,目前廣泛使用ASCII碼。 邏輯數(shù)據(jù):一個單元中有幾位二進制bit項組成,每個bit的值可以是1或0。當數(shù)據(jù)以這種
14、方式看待時,稱為邏輯性數(shù)據(jù)。 Pentium數(shù)據(jù)類型(見P111表4.4) 常規(guī)數(shù)據(jù)類型 整數(shù)數(shù)據(jù)類型 .244.4 指令和數(shù)據(jù)的尋址方式 研究問題 確定本條指令中各操作數(shù)的地址 下一條指令的地址 尋址方式是指CPU根據(jù)指令中給出的地址碼字段尋找相應的操作數(shù)的方式,它與計算機硬件結構緊密相關,而且對指令的格式和功能有很大的影響。254.4 指令和數(shù)據(jù)的尋址方式 指令的尋址方式 順序方式 PC 跳躍方式264.4 指令和數(shù)據(jù)的尋址方式 操作數(shù)的尋址方式 形成操作數(shù)有效地址的方法,稱為尋址方式。 操作數(shù)通常放在哪兒呢?274.4 指令和數(shù)據(jù)的尋址方式 操作數(shù)包含在指令中; 操作數(shù)包含在CPU的某一
15、個內(nèi)部寄存器中; 操作數(shù)包含在主存儲器中; 操作數(shù)包含在I/O設備的端口中 根據(jù)操作數(shù)放在不同的地方,從而派生各種不同的尋址方式,往往不同的計算機具有不同的尋址方式。28291、隱含尋址 指令中隱含著操作數(shù)的地址 如某些運算,隱含了累加器AC作為源和目的寄存器 如8086匯編中的STC指令,設置標志寄存器的C為1 302、立即尋址 立即尋址是一種特殊的尋址方式,指令中在操作碼字段后面的部分不是通常意義上的操作數(shù)地址,而是操作數(shù)本身,也就是說數(shù)據(jù)就包含在指令中,只要取出指令,就取出了可以立即使用的操作數(shù),因此,這樣的操作數(shù)被稱為立即數(shù)。 指令格式:操作碼 操作數(shù)A 312、立即尋址 特點:在取指
16、令時,操作碼和操作數(shù)被同時取出,不必再次訪問存儲器,從而提高了指令的執(zhí)行速度。 但是,因為操作數(shù)是指令的一部分,不能被修改; 而且對于定 長指令格式,操作數(shù)的大小將受到指令長度的限制,所以這種尋址方式靈活性最差 通常用于給某一寄存器或主存單元賦初值,或者用于提供一個常數(shù)。323、直接尋址直接尋址 指令中地址碼字段給出的地址A就是操作數(shù)的有效地址EA(Effective Address),即EAA。333、直接尋址直接尋址 操作數(shù)地址是不能修改的,與程序本身所在的位置無關,所以又叫做絕對尋址方式 在早期的計算機中,主存儲器的容量較小,指令中地址碼的位數(shù)要求不長,采用直接尋址方式簡單快速,也便于硬
17、件實現(xiàn),因此,常被作為主要的尋址方式。 但在現(xiàn)代,隨著計算機主存容量的不斷擴大,所需的地址碼將會越來越長。指令中地址碼的位數(shù)將不能滿足整個主存空間尋址的要求,因此直接尋址方式受到了很大的限制。另外,在指令的執(zhí)行過程中,為了取得操作數(shù),必須進行訪存操作,降低了指令的執(zhí)行速度。344、間接尋址間接尋址 間接尋址意味著指令的地址碼部分給出的地址A不是操作數(shù)的地址,而是存放操作數(shù)地址的主存單元的地址,簡稱操作數(shù)地址的地址。操作數(shù)的有效地址的計算公式為:EA(A)354、間接尋址間接尋址 特點:因為操作數(shù)的有效地址在主存儲器中,可以被靈活的修改而不必修改指令,從而使間接尋址要比直接尋址靈活得多。但是,間
18、接尋址在指令執(zhí)行過程中至少需要兩次訪問主存儲器才能取出操作數(shù),嚴重降低了指令執(zhí)行的速度。365、寄存器尋址、寄存器尋址 在指令的地址碼部分給出CPU內(nèi)某一通用寄存器的編號,指令的操作數(shù)存放在相應的寄存器中,即EA=Ri 優(yōu)點:(1)由于寄存器在CPU的內(nèi)部,指令在執(zhí)行時從寄存器中取操作數(shù)比訪問主存要快得多;(2)由于寄存器的數(shù)量較少,因此寄存器編號所占位數(shù)也較少,從而可以有效減少指令的地址碼字段的長度。376、寄存器間接尋址、寄存器間接尋址 為了克服間接尋址中多次訪存的缺點,可采用寄存器間接尋址,即將操作數(shù)放在主存儲器中,而操作數(shù)的地址放在某一通用寄存器中,然后在指令的地址碼部分給出該通用寄存
19、器的編號,這時有EA=(Ri)這種尋址方式的指令較短,并且在取指后只需一次訪存便可得到操作數(shù),因此指令執(zhí)行速度較前述的間接尋址方式要快,也是目前在計算機中使用較為廣泛的一種尋址方式。387、相對尋址、相對尋址 由程序計數(shù)器由程序計數(shù)器PC提供基準地址,而指令的地址提供基準地址,而指令的地址碼部分給出相對的位移量碼部分給出相對的位移量D,兩者相加后作為,兩者相加后作為操作數(shù)的有效地址,即:操作數(shù)的有效地址,即:EA(PC)D。397、相對尋址、相對尋址 對尋址方式使程序模塊可采用浮動地址,編程時只要確定程序內(nèi)部操作數(shù)與指令之間的相對距離,而無需確定操作數(shù)在主存儲器中的絕對地址,這樣,將程序安排在
20、主存儲器的任意位置都不會影響程序執(zhí)行的正確性。408、基址尋址、基址尋址 在基址尋址方式中,指令的地址碼部分給出偏移量D,而基準地址放在基址寄存器Rb中,最后操作數(shù)的有效地址仍然是由基準地址A與偏移量D相加而成,即:EA(Rb)D。用哪一個寄存器作為基址寄存器也必須在硬件設計時就事先規(guī)定,基址寄存器Rb中的內(nèi)容稱為基準地址,該值可正可負。418、基址尋址、基址尋址 基址寄存器的位數(shù)可以設置得很長,從而可以在較大的存儲空間中尋址。429、變址尋址、變址尋址 變址尋址就是將指令的地址碼部分給出的基準地址A與CPU內(nèi)某特定的變址寄存器Rx中的內(nèi)容相加,以形成操作數(shù)的有效地址,即:EAA(Rx)。用哪
21、一個寄存器作為變址寄存器必須在硬件設計時就事先規(guī)定,變址寄存器Rx中的內(nèi)容稱為變址值,該值可正可負。439、變址尋址、變址尋址449、變址尋址、變址尋址 變址尋址方式是一種被廣泛采用的尋址方式,最典型的應用就是將指令的地址碼部分給出的地址A作為基準地址,而將變址寄存器Rx中的內(nèi)容作為修改量。在遇到需要頻繁修改操作數(shù)地址時,無須修改指令,只要修改Rx中的變址值就可以了,這對于數(shù)組運算、字符串操作等一些進行成批數(shù)據(jù)處理的指令是很有用的。4510、段尋址方式46尋址方式舉例: Pentium47Pentium尋址方式方式算法立即作數(shù)=A寄存器LA=R偏移量LA=(SR)+A基址LA=(SR)+(B)
22、基址帶偏移量LA=(SR)+(B)+A比例變址帶偏移量LA=(SR)+(I)S+A基址帶變址和偏移量LA=(SR)+(B)+(I)+A基址帶比例變址和偏移量LA=(SR)+(B)+(I)S+A相對LA=(PC)+A48P118例4 某16位機器所使用的指令格式和尋址方式如下所示,該機有兩個20位基址寄存器,四個16位變址寄存器,十六個16位通用寄存器。指令匯編格式中的S(源),D(目標)都是通用寄存器,M是主存中的一個單元。三種指令的操作碼分別是MOV(OP)=(A)H,STO(OP)=(1B)H,LAD(OP)=(3C)H。MOV是傳送指令,STO為存數(shù)指令,LAD為取數(shù)指令。要求:(1)分
23、析三種指令的指令格式與尋址方式特點。(2)CPU完成哪一種操作所花時間最短?哪一種操作所花時間最長?第二種指令的執(zhí)行時間有時會等于第三種指令的執(zhí)行時間嗎?(3)下列情況下每個十六進制指令字分別代表什么操作?其中如果有編碼不正確,如何改正才能成為合法指令?49P118例4 F0F1 3CD21111 0000 1111 0001 0011 1100 1101 00103C15號寄存器13CD2把主存13CD2的內(nèi)存裝載到15號寄存器6FD60110111111010110由于是單字長指令,則一定是MOV指令。則OP錯誤,修改為001010001101011028D6504.5 典型指令 指令分類
24、與基本指令類型指令分類與基本指令類型 數(shù)據(jù)傳送類指令 一般傳送指令: MOV AX,BX 數(shù)據(jù)交換指令: XCHG 堆棧操作指令: PUSH,POP 運算類指令 算術運算指令: 加、減、乘、除以及加1、減1、比較 邏輯運算指令: 移位指令 程序控制類指令 程序控制類指令用于控制程序的執(zhí)行方向,并使程序具有測試、分析與判斷的能力。 輸入和輸出指令、字符串處理指令、特權指令、其他指令514.5 典型指令 基本指令系統(tǒng) P122表4.9介紹 20%和80%規(guī)律:CISC中大約有20%的指令使用頻率高,占據(jù)了80%的處理機時間,而有80%的不常用指令只占用處理機的20%時間。 VLSI技術發(fā)展引起的問題 VLSI工藝要求規(guī)整性,而大量復雜指令控制邏輯極其不規(guī)整,給VLSI工藝造成了很大的困難。 現(xiàn)在用微程序?qū)崿F(xiàn)復雜指令與用簡單指令組成的子程序相比,沒有多大的區(qū)別。因為現(xiàn)在控制存儲器和主存的速度差縮小。 CISC中,通過增強指令系統(tǒng)的功能,簡化了軟件,增加了硬件的復雜程度。然而指令復雜了,指令的執(zhí)行時間必然加長,從而使整個系統(tǒng)的執(zhí)行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 10的認識(教學設計)-2024-2025學年一年級上冊數(shù)學人教版
- 8《匆匆》教學設計-2023-2024學年統(tǒng)編版語文六年級下冊
- 電梯出租服務合同范本
- 鋼模板加工合同范本
- 人參買賣合同范本
- 6 傳統(tǒng)游戲我會玩2023-2024學年二年級下冊道德與法治同步教學設計(統(tǒng)編版)
- Module 5 Unit 2 Can I come in (教學設計)-2024-2025學年外研版(一起)英語三年級上冊
- 3《桂花雨》教學設計 第二課時(教學設計)2024-2025學年統(tǒng)編版語文五年級上冊
- 承裝合同范本
- 6《工具幫助我》 教學設計-2024-2025學年科學一年級上冊冀人版
- 滬科版(2024新版)數(shù)學七年級下冊第6章 實數(shù) 單元測試卷(含答案)
- 電子物料基礎知識
- 外科疝氣的個案護理
- 2025屆江蘇省南京市鹽城市高三一??荚囌Z文試題 課件
- 幼兒園保育教育質(zhì)量自評指導手冊(試行)
- 駕考科目一最完整考試題庫(完整版)包過關
- 青島版(六三制)小學數(shù)學二年級下冊全冊教學設計、教案
- 電力安全工作規(guī)程考試試題題庫
- 2024年糖尿病足診治指南解讀課件
- 兩個人合伙買攪拌車的合同
- 《商務溝通-策略、方法與案例》課件 第一章 商務溝通概論
評論
0/150
提交評論