計(jì)算機(jī)組成原理_指令系統(tǒng)_第1頁(yè)
計(jì)算機(jī)組成原理_指令系統(tǒng)_第2頁(yè)
計(jì)算機(jī)組成原理_指令系統(tǒng)_第3頁(yè)
計(jì)算機(jī)組成原理_指令系統(tǒng)_第4頁(yè)
計(jì)算機(jī)組成原理_指令系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

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

2、指令是微程序級(jí)的命令,它屬于硬件; 宏指令:由若干條機(jī)器指令組成的軟件指令,它屬于軟 件; 機(jī)器指令:介于微指令與宏指令之間,通常簡(jiǎn)稱(chēng)為指令, 每一條指令可完成一個(gè)獨(dú)立的算術(shù)運(yùn)算或邏輯運(yùn)算操作。 本章所討論的指令,是機(jī)器指令。本章所討論的指令,是機(jī)器指令。 一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合,稱(chēng)為這臺(tái)計(jì)算機(jī)的 指令系統(tǒng)。 指令系統(tǒng)是表征一臺(tái)計(jì)算機(jī)性能的重要因素,它的格式 與功能不僅直接影響到機(jī)器的硬件結(jié)構(gòu),而且也直接影 響到系統(tǒng)軟件,影響到機(jī)器的適用范圍 4 4.1 指令系統(tǒng)的發(fā)展與性能要求 3、發(fā)展情況 復(fù)雜指令系統(tǒng)計(jì)算機(jī),簡(jiǎn)稱(chēng)CISC。但是如 此龐大的指令系統(tǒng)不但使計(jì)算機(jī)的研制 周期變長(zhǎng),難以

3、保證正確性,不易調(diào)試 維護(hù),而且由于采用了大量使用頻率很 低的復(fù)雜指令而造成硬件資源浪費(fèi)。 精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī):簡(jiǎn)稱(chēng)RISC,人們又 提出了便于VLSI技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng) 計(jì)算機(jī)。 5 4.1 指令系統(tǒng)的發(fā)展與性能要求 4、為什么會(huì)出現(xiàn)CISC到RISC的轉(zhuǎn)變 2/8規(guī)則 控制器設(shè)計(jì)難度下降 6 4.1 指令系統(tǒng)的發(fā)展與性能要求 5、對(duì)指令系統(tǒng)的要求 完備性:完備性:完備性是指用匯編語(yǔ)言編寫(xiě)各種程序時(shí),指令系統(tǒng)直接提供 的指令足夠使用,而不必用軟件來(lái)實(shí)現(xiàn)。完備性要求指令系統(tǒng)豐富、 功能齊全、使用方便。一臺(tái)計(jì)算機(jī)中最基本、必不可少的指令是不多 的。許多指令可用最基本的指令編程來(lái)實(shí)現(xiàn)。例如,乘

4、除運(yùn)算指令、 浮點(diǎn)運(yùn)算指令可直接用硬件來(lái)實(shí)現(xiàn),也可用基本指令編寫(xiě)的程序來(lái)實(shí) 現(xiàn)。采用硬件指令的目的是提高程序執(zhí)行速度,便于用戶(hù)編寫(xiě)程序。 有效性:有效性:有效性是指利用該指令系統(tǒng)所編寫(xiě)的程序能夠高效率地運(yùn)行。 高效率主要表現(xiàn)在程序占據(jù)存儲(chǔ)空間小、執(zhí)行速度快。一般來(lái)說(shuō),一 個(gè)功能更強(qiáng)、更完善的指令系統(tǒng),必定有更好的有效性。 規(guī)整性:規(guī)整性:規(guī)整性包括指令系統(tǒng)的對(duì)稱(chēng)性、勻齊性、指令格式和數(shù)據(jù)格 式的一致性。對(duì)稱(chēng)性是指:在指令系統(tǒng)中所有的寄存器和存儲(chǔ)器單元 都可同等對(duì)待,所有的指令都可使用各種尋址方式;勻齊性是指:一 種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類(lèi)型,如算術(shù)運(yùn)算指令可支持字 節(jié)、字、雙字整數(shù)的運(yùn)

5、算,十進(jìn)制數(shù)運(yùn)算和單、雙精度浮點(diǎn)數(shù)運(yùn)算等; 指令格式和數(shù)據(jù)格式的一致性是指:指令長(zhǎng)度和數(shù)據(jù)長(zhǎng)度有一定的關(guān) 系,以方便處理和存取。例如指令長(zhǎng)度和數(shù)據(jù)長(zhǎng)度通常是字節(jié)長(zhǎng)度的 整數(shù)倍。 兼容性:兼容性:系列機(jī)各機(jī)種之間具有相同的基本結(jié)構(gòu)和共同的基本指令集, 因而指令系統(tǒng)是兼容的,即各機(jī)種上基本軟件可以通用。但由于不同 機(jī)種推出的時(shí)間不同,在結(jié)構(gòu)和性能上有差異,做到所有軟件都完全 兼容是不可能的,只能做到“向上兼容”,即低檔機(jī)上運(yùn)行的軟件可 以在高檔機(jī)上運(yùn)行。 7 4.1 指令系統(tǒng)的發(fā)展與性能要求 6、低級(jí)語(yǔ)言與高級(jí)語(yǔ)言關(guān)系 比較內(nèi)容高級(jí)語(yǔ)言低級(jí)語(yǔ)言 1 對(duì)程序員的訓(xùn)練要求 (1)通用算法 (2)語(yǔ)言規(guī)

6、則 (3)硬件知識(shí) 有 較少 不要 有 較多 要 2 對(duì)機(jī)器獨(dú)立的程度獨(dú)立不獨(dú)立 3 編制程序的難易程度 易難 4 編制程序所需時(shí)間短較長(zhǎng) 5 程序執(zhí)行時(shí)間較長(zhǎng)短 6 編譯過(guò)程中對(duì)計(jì)算機(jī)資 源的要求 多 少 8 4.2 指令格式 影響計(jì)算機(jī)指令格式的因素 機(jī)器的字長(zhǎng) 存儲(chǔ)器的容量 指令的功能 指令能反映以下信息 做什么操作 如果需要操作數(shù),從哪里取 結(jié)果送哪里 下一條指令從哪里取 所以指令格式包括兩個(gè)方面: 操作碼字段操作碼字段地址碼字段地址碼字段 9 4.2 指令格式 一、操作碼 設(shè)計(jì)計(jì)算機(jī)時(shí),對(duì)指令系統(tǒng)的每一條指令都要規(guī)定一個(gè) 操作碼。指令的操作碼OP表示該指令應(yīng)進(jìn)行什么性質(zhì)的 操作,如進(jìn)

7、行加法、減法、乘法、除法、取數(shù)、存數(shù)等 等。不同的指令用操作碼字段的不同編碼來(lái)表示,每一 種編碼代表一種指令。 組成操作碼字段的位數(shù)一般取決于計(jì)算機(jī)指令系統(tǒng)的規(guī) 模。較大的指令系統(tǒng)就需要更多的位數(shù)來(lái)表示每條特定 的指令。 等長(zhǎng)(指令規(guī)整,譯碼簡(jiǎn)單) 例如IBM 370機(jī),該機(jī)字長(zhǎng)32位,16個(gè)通用寄存器R0 R15,共有183條指令;指令的長(zhǎng)度可以分為16位、 32位和48位等幾種,所有指令的操作碼都是8位固定長(zhǎng) 度。 固定長(zhǎng)度編碼的主要缺點(diǎn)是:信息的冗余極大,使程 序的總長(zhǎng)度增加。 10 二、地址碼 根據(jù)一條指令中有幾個(gè)操作數(shù)地址,可將 該指令稱(chēng)為幾操作數(shù)指令或幾地址指令。 三地址指令 二地

8、址指令 單地址指令 零地址指令 11 二、地址碼 三地址指令 指令格式如下: 操作碼 第一操作數(shù)A1 第二操作數(shù)A2 結(jié)果 A3 功能描述: (A1)(A2)A3 (PC) +1PC 這種格式雖然省去了一個(gè)地址,但指令長(zhǎng)度仍 比較長(zhǎng),所以只在字長(zhǎng)較長(zhǎng)的大、中型機(jī)中使 用,而小型、微型機(jī)中很少使用。 12 二、地址碼 二地址指令 其格式如下: 操作碼第一操作數(shù)A1第二操作數(shù)A2 功能描述: (A1)(A2)A1 (PC)+1PC 二地址指令在計(jì)算機(jī)中得到了廣泛的應(yīng)用,但 是在使用時(shí)有一點(diǎn)必須注意:指令執(zhí)行之后, A1中原存的內(nèi)容已經(jīng)被新的運(yùn)算結(jié)果替換了。 13 二、地址碼 二地址地址根據(jù)操作數(shù)的

9、物理位置分為: SS 存儲(chǔ)器-存儲(chǔ)器類(lèi)型 RS 寄存器-存儲(chǔ)器類(lèi)型 RR 寄存器-寄存器類(lèi)型 慢 14 二、地址碼 一地址指令 指令格式為: 操作碼 第一操作數(shù)A1 功能描述: (AC)(A1) A1 (PC)+1PC 單操作數(shù)運(yùn)算指令,如“+1”、“-1”、“求反” 指令中給出一個(gè)源操作數(shù)的地址 15 二、地址碼 零地址指令 其格式為: 操作碼 “停機(jī)”、“空操作”、“清除”等控制 類(lèi)指令。 16 三、指令長(zhǎng)度 概念 指令字長(zhǎng)度(一個(gè)指令字包含二進(jìn)制代碼的位數(shù)) 機(jī)器字長(zhǎng):計(jì)算機(jī)能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù)。 單字長(zhǎng)指令 半字長(zhǎng)指令 雙字長(zhǎng)指令 多字長(zhǎng)指令多字長(zhǎng)指令的優(yōu)缺點(diǎn) 優(yōu)點(diǎn)提供足夠的地

10、址位來(lái)解決訪(fǎng)問(wèn)內(nèi)存任何單元的尋址問(wèn) 題 ; 缺點(diǎn)必須兩次或多次訪(fǎng)問(wèn)內(nèi)存以取出一整條指令,降低了 CPU的運(yùn)算速度,又占用了更多的存儲(chǔ)空間。 指令系統(tǒng)中指令采用等長(zhǎng)指令等長(zhǎng)指令的優(yōu)點(diǎn):各種指令字長(zhǎng)度是 相等的,指令字結(jié)構(gòu)簡(jiǎn)單,且指令字長(zhǎng)度是不變的 ; 采用非等長(zhǎng)指令非等長(zhǎng)指令的的優(yōu)點(diǎn):各種指令字長(zhǎng)度隨指令功能而 異,結(jié)構(gòu)靈活,能充分利用指令長(zhǎng)度,但指令的控制較復(fù) 雜 。 17 五、指令助記符 由于硬件只能識(shí)別1和0,所以采用二進(jìn)制 操作碼是必要的,但是我們用二進(jìn)制來(lái)書(shū) 寫(xiě)程序卻非常麻煩。 為了便于書(shū)寫(xiě)和閱讀程序,每條指令通常 用3個(gè)或4個(gè)英文縮寫(xiě)字母來(lái)表示。這種縮 寫(xiě)碼叫做指令助記符 用34個(gè)英

11、文字母來(lái)表示操作碼,一般為英文縮寫(xiě) 不同的計(jì)算機(jī)系統(tǒng),規(guī)定不一樣 必須用匯編語(yǔ)言翻譯成二進(jìn)制代碼 18 六、指令格式舉例 8位微型計(jì)算機(jī)的指令格式 如8088,字長(zhǎng)8位,指令結(jié)構(gòu)可變 包括單字長(zhǎng)指令、雙字長(zhǎng)指令和三字長(zhǎng)指令 操作碼長(zhǎng)度固定 PDP/11系列機(jī)的指令格式 字長(zhǎng)16位 單字長(zhǎng)指令 操作碼字段不固定 19 七、 Pentium指令格式 指令長(zhǎng)度可變,最短1個(gè)字節(jié),最長(zhǎng)12個(gè)字節(jié),典型的 CISC指令系統(tǒng) 由可選前綴(04)、操作碼(12)、一個(gè)由mod-R/M 字節(jié)和一個(gè)SIB(Scale Index Base)比例變址字節(jié)組成的 地址指定器、一個(gè)可選的位移量(04)和一個(gè)可選的 立

12、即數(shù)字段(04)構(gòu)成。 指令前綴段取代操作數(shù)長(zhǎng)度取代地址長(zhǎng)度取代 操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 20 七、 Pentium指令格式 指令前綴中的重復(fù)前綴指定串的重復(fù)操作,這樣 使Pentium處理串比軟循環(huán)快得多。 LOCK前綴用于多CPU環(huán)境中對(duì)共享存儲(chǔ)器的排他 性訪(fǎng)問(wèn) 段取代用于改變默認(rèn)段寄存器的情況 操作數(shù)長(zhǎng)度取代和地址長(zhǎng)度取代用于在保護(hù)模式 下決定操作數(shù)和指令的長(zhǎng)度 以下4個(gè)指令前綴都是可選的,分別為0或1個(gè)字節(jié) 指令前綴段取代操作數(shù)長(zhǎng)度取代地址長(zhǎng)度取代 21 七、 Pentium指令格式 操作碼是必須的,12個(gè)字節(jié) Mod、Reg、R/M為共1個(gè)字節(jié),是可選的。

13、 mod-R/M指定的操作數(shù)是在R中還是在M中。 mod(2位)R/M(3位)的32種值構(gòu)成了8種寄 存器方式和24種變址方式(參考匯編語(yǔ)言教 材); Reg或OP(3位)指定另一個(gè)操作數(shù)(寄存器) 或用作OP的補(bǔ)充。操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 1個(gè)字節(jié)1個(gè)字節(jié) 22 七、 Pentium指令格式 S、I、B共1個(gè)字節(jié),分別是比例系數(shù)、變址寄存 器號(hào)、基址寄存器號(hào),可選。mod-R/M中的某些 編碼要求SIB字節(jié)來(lái)完成尋址方式的指定; SS(2)指定比例變換的因子, Index(2)指定變址寄存器, Base(3)指定基址寄存器 位移量:可以是0,1,2,4個(gè)字節(jié) 立即

14、數(shù):可以是0,1,2,4個(gè)字節(jié) 操作碼ModReg或操作碼R/MSIB位移量立即數(shù) 23 4.3 操作數(shù)類(lèi)型 操作數(shù)類(lèi)型 地址數(shù)據(jù):地址實(shí)際上也是一種形式的數(shù)據(jù)。 數(shù)值數(shù)據(jù):計(jì)算機(jī)中普遍使用的三種類(lèi)型的數(shù)值數(shù)據(jù)。 字符數(shù)據(jù):文本數(shù)據(jù)或字符串,目前廣泛使用ASCII碼。 邏輯數(shù)據(jù):一個(gè)單元中有幾位二進(jìn)制bit項(xiàng)組成,每個(gè)bit 的值可以是1或0。當(dāng)數(shù)據(jù)以這種方式看待時(shí),稱(chēng)為邏 輯性數(shù)據(jù)。 Pentium數(shù)據(jù)類(lèi)型(見(jiàn)P111表4.4) 常規(guī)數(shù)據(jù)類(lèi)型 整數(shù)數(shù)據(jù)類(lèi)型 . 24 4.4 指令和數(shù)據(jù)的尋址方式 研究問(wèn)題 確定本條指令中各操作數(shù)的地址 下一條指令的地址 尋址方式是指CPU根據(jù)指令中給出的地址

15、碼 字段尋找相應(yīng)的操作數(shù)的方式,它與計(jì)算 機(jī)硬件結(jié)構(gòu)緊密相關(guān),而且對(duì)指令的格式 和功能有很大的影響。 25 4.4 指令和數(shù)據(jù)的尋址方式 指令的尋址方式 順序方式 PC 跳躍方式 26 4.4 指令和數(shù)據(jù)的尋址方式 操作數(shù)的尋址方式 形成操作數(shù)有效地址的方法,稱(chēng)為尋 址方式。 操作數(shù)通常放在哪兒呢? 27 4.4 指令和數(shù)據(jù)的尋址方式 操作數(shù)包含在指令中; 操作數(shù)包含在CPU的某一個(gè)內(nèi)部寄存器中; 操作數(shù)包含在主存儲(chǔ)器中; 操作數(shù)包含在I/O設(shè)備的端口中 根據(jù)操作數(shù)放在不同的地方,從而派生各 種不同的尋址方式,往往不同的計(jì)算機(jī)具 有不同的尋址方式。 28 29 1、隱含尋址 指令中隱含著操作數(shù)

16、的地址 如某些運(yùn)算,隱含了累加器AC作為源和目的寄存 器 如8086匯編中的STC指令,設(shè)置標(biāo)志寄存器的C為1 30 2、立即尋址 立即尋址是一種特殊的尋址方式,指令中在操作 碼字段后面的部分不是通常意義上的操作數(shù)地址, 而是操作數(shù)本身,也就是說(shuō)數(shù)據(jù)就包含在指令中, 只要取出指令,就取出了可以立即使用的操作數(shù), 因此,這樣的操作數(shù)被稱(chēng)為立即數(shù)。 指令格式:操作碼 操作數(shù)A 31 2、立即尋址 特點(diǎn):在取指令時(shí),操作碼和操作數(shù)被同時(shí)取出, 不必再次訪(fǎng)問(wèn)存儲(chǔ)器,從而提高了指令的執(zhí)行速 度。 但是,因?yàn)椴僮鲾?shù)是指令的一部分,不能被修改; 而且對(duì)于定 長(zhǎng)指令格式,操作數(shù)的大小將受到指 令長(zhǎng)度的限制,所

17、以這種尋址方式靈活性最差 通常用于給某一寄存器或主存單元賦初值,或者 用于提供一個(gè)常數(shù)。 32 3、直接尋址直接尋址 指令中地址碼字段給出的地址A就是操作數(shù) 的有效地址EA(Effective Address),即EAA。 33 3、直接尋址直接尋址 操作數(shù)地址是不能修改的,與程序本身所在的 位置無(wú)關(guān),所以又叫做絕對(duì)尋址方式 在早期的計(jì)算機(jī)中,主存儲(chǔ)器的容量較小,指 令中地址碼的位數(shù)要求不長(zhǎng),采用直接尋址方 式簡(jiǎn)單快速,也便于硬件實(shí)現(xiàn),因此,常被作 為主要的尋址方式。 但在現(xiàn)代,隨著計(jì)算機(jī)主存容量的不斷擴(kuò)大, 所需的地址碼將會(huì)越來(lái)越長(zhǎng)。指令中地址碼的 位數(shù)將不能滿(mǎn)足整個(gè)主存空間尋址的要求,因

18、此直接尋址方式受到了很大的限制。另外,在 指令的執(zhí)行過(guò)程中,為了取得操作數(shù),必須進(jìn) 行訪(fǎng)存操作,降低了指令的執(zhí)行速度。 34 4、間接尋址間接尋址 間接尋址意味著指令的地址碼部分給出 的地址A不是操作數(shù)的地址,而是存放操 作數(shù)地址的主存單元的地址,簡(jiǎn)稱(chēng)操作數(shù) 地址的地址。操作數(shù)的有效地址的計(jì)算公 式為:EA(A) 35 4、間接尋址間接尋址 特點(diǎn):因?yàn)椴僮鲾?shù)的有效地址在主存儲(chǔ)器中, 可以被靈活的修改而不必修改指令,從而使間 接尋址要比直接尋址靈活得多。但是,間接尋 址在指令執(zhí)行過(guò)程中至少需要兩次訪(fǎng)問(wèn)主存儲(chǔ) 器才能取出操作數(shù),嚴(yán)重降低了指令執(zhí)行的速 度。 36 5、寄存器尋址、寄存器尋址 在指令

19、的地址碼部分給出CPU內(nèi)某一通用寄存 器的編號(hào),指令的操作數(shù)存放在相應(yīng)的寄存器 中,即EA=Ri 優(yōu)點(diǎn): (1)由于寄存器在CPU的內(nèi)部,指令在執(zhí)行時(shí)從寄 存器中取操作數(shù)比訪(fǎng)問(wèn)主存要快得多; (2)由于寄存器的數(shù)量較少,因此寄存器編號(hào)所占 位數(shù)也較少,從而可以有效減少指令的地址碼 字段的長(zhǎng)度。 37 6、寄存器間接尋址、寄存器間接尋址 為了克服間接尋址中多次訪(fǎng)存的缺點(diǎn),可采用寄存器間 接尋址,即將操作數(shù)放在主存儲(chǔ)器中,而操作數(shù)的地址 放在某一通用寄存器中,然后在指令的地址碼部分給出 該通用寄存器的編號(hào),這時(shí)有EA=(Ri) 這種尋址方式的指令較短,并且在取指后只需一次訪(fǎng)存便可得到 操作數(shù),因此

20、指令執(zhí)行速度較前述的間接尋址方式要快,也是目 前在計(jì)算機(jī)中使用較為廣泛的一種尋址方式。 38 7、相對(duì)尋址、相對(duì)尋址 由程序計(jì)數(shù)器由程序計(jì)數(shù)器PC提供基準(zhǔn)地址,而指令的地址提供基準(zhǔn)地址,而指令的地址 碼部分給出相對(duì)的位移量碼部分給出相對(duì)的位移量D,兩者相加后作為,兩者相加后作為 操作數(shù)的有效地址,即:操作數(shù)的有效地址,即:EA(PC)D。 39 7、相對(duì)尋址、相對(duì)尋址 對(duì)尋址方式使程序模塊可采用浮動(dòng)地址,編 程時(shí)只要確定程序內(nèi)部操作數(shù)與指令之間的 相對(duì)距離,而無(wú)需確定操作數(shù)在主存儲(chǔ)器中 的絕對(duì)地址,這樣,將程序安排在主存儲(chǔ)器 的任意位置都不會(huì)影響程序執(zhí)行的正確性。 40 8、基址尋址、基址尋址

21、 在基址尋址方式中,指令的地址碼部分給 出偏移量D,而基準(zhǔn)地址放在基址寄存器Rb 中,最后操作數(shù)的有效地址仍然是由基準(zhǔn) 地址A與偏移量D相加而成,即:EA(Rb) D。用哪一個(gè)寄存器作為基址寄存器也必須 在硬件設(shè)計(jì)時(shí)就事先規(guī)定,基址寄存器Rb 中的內(nèi)容稱(chēng)為基準(zhǔn)地址,該值可正可負(fù)。 41 8、基址尋址、基址尋址 基址寄存器的位數(shù)可以設(shè)置得很長(zhǎng),從而可以 在較大的存儲(chǔ)空間中尋址。 42 9、變址尋址、變址尋址 變址尋址就是將指令的地址碼部分給出的 基準(zhǔn)地址A與CPU內(nèi)某特定的變址寄存器Rx 中的內(nèi)容相加,以形成操作數(shù)的有效地址, 即:EAA(Rx)。用哪一個(gè)寄存器作為變 址寄存器必須在硬件設(shè)計(jì)時(shí)就

22、事先規(guī)定, 變址寄存器Rx中的內(nèi)容稱(chēng)為變址值,該值 可正可負(fù)。 43 9、變址尋址、變址尋址 44 9、變址尋址、變址尋址 變址尋址方式是一種被廣泛采用的尋址方式, 最典型的應(yīng)用就是將指令的地址碼部分給出的 地址A作為基準(zhǔn)地址,而將變址寄存器Rx中的 內(nèi)容作為修改量。在遇到需要頻繁修改操作數(shù) 地址時(shí),無(wú)須修改指令,只要修改Rx中的變址 值就可以了,這對(duì)于數(shù)組運(yùn)算、字符串操作等 一些進(jìn)行成批數(shù)據(jù)處理的指令是很有用的。 45 10、段尋址方式 46 尋址方式舉例: Pentium 47 Pentium尋址方式 方式算法 立即作數(shù)=A 寄存器LA=R 偏移量LA=(SR)+A 基址LA=(SR)+(

23、B) 基址帶偏移量LA=(SR)+(B)+A 比例變址帶偏移量LA=(SR)+(I)S+A 基址帶變址和偏移量LA=(SR)+(B)+(I)+A 基址帶比例變址和偏移 量 LA=(SR)+(B)+(I)S+A 相對(duì)LA=(PC)+A 48 P118例4 某16位機(jī)器所使用的指令格式和尋址方式如下所示,該機(jī) 有兩個(gè)20位基址寄存器,四個(gè)16位變址寄存器,十六個(gè)16 位通用寄存器。指令匯編格式中的S(源),D(目標(biāo))都 是通用寄存器,M是主存中的一個(gè)單元。三種指令的操作 碼分別是MOV(OP)=(A)H,STO(OP)=(1B)H, LAD(OP)=(3C)H。MOV是傳送指令,STO為存數(shù)指令,

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

25、10001101011028D6 50 4.5 典型指令 指令分類(lèi)與基本指令類(lèi)型指令分類(lèi)與基本指令類(lèi)型 數(shù)據(jù)傳送類(lèi)指令 一般傳送指令: MOV AX,BX 數(shù)據(jù)交換指令: XCHG 堆棧操作指令: PUSH,POP 運(yùn)算類(lèi)指令 算術(shù)運(yùn)算指令: 加、減、乘、除以及加1、減1、比較 邏輯運(yùn)算指令: 移位指令 程序控制類(lèi)指令 程序控制類(lèi)指令用于控制程序的執(zhí)行方向,并使程序具 有測(cè)試、分析與判斷的能力。 輸入和輸出指令、字符串處理指令、特權(quán)指令、其他 指令 51 4.5 典型指令 基本指令系統(tǒng) P122表4.9介紹 20%和80%規(guī)律:CISC中大約有20%的指令使用頻率高,占據(jù) 了80%的處理機(jī)時(shí)間,而有80%的不常用指令只占用處理機(jī) 的20%時(shí)間。 VLSI技術(shù)發(fā)展引起的問(wèn)題 VLSI工藝要求規(guī)整性,而大量復(fù)雜指令控制邏輯極其不規(guī)整,給VLSI工藝 造成了很大的困難。 現(xiàn)在用微程序?qū)崿F(xiàn)復(fù)雜指令與用簡(jiǎn)單指令組成的子程序相比,沒(méi)有多大 的區(qū)別。因?yàn)楝F(xiàn)在控制存儲(chǔ)器和主存的速度差縮小。 CISC中,通過(guò)增強(qiáng)指令系統(tǒng)的功能,簡(jiǎn)化了軟件,增加了硬 件的復(fù)雜程度。然而指令復(fù)雜了,指令的執(zhí)行時(shí)間必然加長(zhǎng), 從而使整個(gè)系統(tǒng)的執(zhí)行時(shí)間反而增加,因而在

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論