計(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è),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)1第四章第四章指令系統(tǒng)指令系統(tǒng) 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)24.1 4.1 指令系統(tǒng)的發(fā)展與性能指令系統(tǒng)的發(fā)展與性能計(jì)算機(jī)的性能與它所設(shè)置的指令系統(tǒng)計(jì)算機(jī)的性能與它所設(shè)置的指令系統(tǒng)有很密切的關(guān)系,而指令系統(tǒng)的設(shè)置有很密切的關(guān)系,而指令系統(tǒng)的設(shè)置又與機(jī)器的硬件結(jié)構(gòu)緊密相關(guān)。通常又與機(jī)器的硬件結(jié)構(gòu)緊密相關(guān)。通常性能好的計(jì)算機(jī)都要設(shè)置指令豐富、性能好的計(jì)算機(jī)都要設(shè)置指令豐富、功能齊全、通用性強(qiáng)、使用方便高效功能齊全、通用性強(qiáng)、使用方便高效的指令系統(tǒng),而這些需要復(fù)雜的硬件的指令系統(tǒng),而這些需要復(fù)雜的硬件結(jié)構(gòu)

2、來(lái)支持。結(jié)構(gòu)來(lái)支持。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)34.1.1 4.1.1 指令系統(tǒng)的發(fā)展指令系統(tǒng)的發(fā)展 指令就是指揮計(jì)算機(jī)執(zhí)行某種操作的命令。指令就是指揮計(jì)算機(jī)執(zhí)行某種操作的命令。 微指令是微程序級(jí)的命令,屬于硬件;微指令是微程序級(jí)的命令,屬于硬件; 宏指令是由若干條機(jī)器指令組成的軟件指令,屬宏指令是由若干條機(jī)器指令組成的軟件指令,屬于軟件;于軟件; 機(jī)器指令則介于微指令與宏指令之間,通常簡(jiǎn)稱機(jī)器指令則介于微指令與宏指令之間,通常簡(jiǎn)稱為指令。為指令。 一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合,稱為該計(jì)一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合,稱為該計(jì)算機(jī)的指令系統(tǒng)。算機(jī)的指令系統(tǒng)

3、。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)4 2020世紀(jì)世紀(jì)7070年代末期,隨著大規(guī)模集成電路年代末期,隨著大規(guī)模集成電路vlsivlsi技術(shù)的技術(shù)的飛速發(fā)展,硬件成本不斷下降,而軟件成本不斷上升。為飛速發(fā)展,硬件成本不斷下降,而軟件成本不斷上升。為增加計(jì)算機(jī)的功能,以及縮小指令系統(tǒng)與高級(jí)語(yǔ)言的差異,增加計(jì)算機(jī)的功能,以及縮小指令系統(tǒng)與高級(jí)語(yǔ)言的差異,以便于高級(jí)語(yǔ)言的編譯,降低軟件開(kāi)發(fā)成本,于是產(chǎn)生了以便于高級(jí)語(yǔ)言的編譯,降低軟件開(kāi)發(fā)成本,于是產(chǎn)生了以增加指令數(shù)和設(shè)計(jì)復(fù)雜指令為手段的計(jì)算機(jī),大多數(shù)計(jì)以增加指令數(shù)和設(shè)計(jì)復(fù)雜指令為手段的計(jì)算機(jī),大多數(shù)計(jì)算機(jī)的指令系統(tǒng)多達(dá)幾

4、百條,稱這些計(jì)算機(jī)為復(fù)雜指令系算機(jī)的指令系統(tǒng)多達(dá)幾百條,稱這些計(jì)算機(jī)為復(fù)雜指令系統(tǒng)計(jì)算機(jī),簡(jiǎn)稱統(tǒng)計(jì)算機(jī),簡(jiǎn)稱cisccisc(complex instruction set complex instruction set computer computer )。)。 ibmibm公司在公司在19751975年開(kāi)始探討指令系統(tǒng)的合理性問(wèn)題,年開(kāi)始探討指令系統(tǒng)的合理性問(wèn)題,john cockejohn cocke提出了精簡(jiǎn)指令系統(tǒng)的想法。提出了精簡(jiǎn)指令系統(tǒng)的想法。19821982年,美國(guó)加州年,美國(guó)加州伯克利大學(xué)、斯坦福大學(xué)、伯克利大學(xué)、斯坦福大學(xué)、ibmibm公司都先后研制出便于公司都先后研制出

5、便于vlsivlsi技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī),簡(jiǎn)稱技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī),簡(jiǎn)稱riscrisc(reduced reduced instruction set computerinstruction set computer)。)。19831983年后,年后,riscrisc計(jì)算機(jī)商品計(jì)算機(jī)商品化。化。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)54.1.2 4.1.2 指令系統(tǒng)的性能指令系統(tǒng)的性能 1. 完備性完備性 完備性是指用匯編語(yǔ)言編寫各種程序時(shí),指令系統(tǒng)直接提供完備性是指用匯編語(yǔ)言編寫各種程序時(shí),指令系統(tǒng)直接提供的指令足夠使用,而不必用軟件來(lái)實(shí)現(xiàn)。完備性要

6、求指令系統(tǒng)豐的指令足夠使用,而不必用軟件來(lái)實(shí)現(xiàn)。完備性要求指令系統(tǒng)豐富、功能齊全、使用方便高效。富、功能齊全、使用方便高效。2. 高效性高效性 高效性是指利用該指令系統(tǒng)所編寫的程序能夠高效率地運(yùn)行。高效性是指利用該指令系統(tǒng)所編寫的程序能夠高效率地運(yùn)行。高效率主要表現(xiàn)在程序占據(jù)存儲(chǔ)空間小,執(zhí)行速度快。高效率主要表現(xiàn)在程序占據(jù)存儲(chǔ)空間小,執(zhí)行速度快。3. 規(guī)整性規(guī)整性 規(guī)整性包括指令系統(tǒng)的對(duì)稱性、勻齊性、指令格式和數(shù)據(jù)格規(guī)整性包括指令系統(tǒng)的對(duì)稱性、勻齊性、指令格式和數(shù)據(jù)格式的一致性。式的一致性。 4. 兼容性兼容性 系列機(jī)各機(jī)種之間具有相同的基本結(jié)構(gòu)和共同的基本指令集,系列機(jī)各機(jī)種之間具有相同的基

7、本結(jié)構(gòu)和共同的基本指令集,因而,指令系統(tǒng)是兼容的,即各機(jī)種上基本軟件可以通用。因而,指令系統(tǒng)是兼容的,即各機(jī)種上基本軟件可以通用。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)64.1.3 4.1.3 計(jì)算機(jī)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系計(jì)算機(jī)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系 一臺(tái)計(jì)算機(jī)能夠直接識(shí)別并執(zhí)行的語(yǔ)言并不是高級(jí)語(yǔ)言,一臺(tái)計(jì)算機(jī)能夠直接識(shí)別并執(zhí)行的語(yǔ)言并不是高級(jí)語(yǔ)言,而是一種用二進(jìn)制碼表示的、由一系列指令組成的機(jī)器語(yǔ)言。而是一種用二進(jìn)制碼表示的、由一系列指令組成的機(jī)器語(yǔ)言。因此,任何問(wèn)題不管使用那一種計(jì)算機(jī)語(yǔ)言(匯編語(yǔ)言或某種因此,任何問(wèn)題不管使用那一種計(jì)算機(jī)語(yǔ)言(匯編語(yǔ)言或某種高級(jí)語(yǔ)言高級(jí)

8、語(yǔ)言)描述,都必須通過(guò)翻譯程序轉(zhuǎn)換成相應(yīng)的機(jī)器語(yǔ)言后描述,都必須通過(guò)翻譯程序轉(zhuǎn)換成相應(yīng)的機(jī)器語(yǔ)言后才能執(zhí)行。才能執(zhí)行。 機(jī)器語(yǔ)言存在著可讀性差、不易編程、不易維護(hù)等許多缺機(jī)器語(yǔ)言存在著可讀性差、不易編程、不易維護(hù)等許多缺陷,這就給編寫程序帶來(lái)許多困難。但是,可以用預(yù)先規(guī)定的陷,這就給編寫程序帶來(lái)許多困難。但是,可以用預(yù)先規(guī)定的符號(hào)來(lái)分別替代用二進(jìn)制碼表示的操作碼、操作數(shù)或地址,這符號(hào)來(lái)分別替代用二進(jìn)制碼表示的操作碼、操作數(shù)或地址,這種用助記符來(lái)表示二進(jìn)制碼指令序列的語(yǔ)言,稱為匯編語(yǔ)言種用助記符來(lái)表示二進(jìn)制碼指令序列的語(yǔ)言,稱為匯編語(yǔ)言(assembly language),它基本上是與機(jī)器語(yǔ)言

9、一一對(duì)應(yīng)的。,它基本上是與機(jī)器語(yǔ)言一一對(duì)應(yīng)的。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)7 指令格式就是用二進(jìn)制代碼表示的一條指令的結(jié)構(gòu)形式,指令格式就是用二進(jìn)制代碼表示的一條指令的結(jié)構(gòu)形式,通常由操作碼和地址碼兩種字段組成。操作碼字段表征指令通常由操作碼和地址碼兩種字段組成。操作碼字段表征指令操作的性質(zhì)和功能,地址碼字段通常指定參與操作的操作數(shù)操作的性質(zhì)和功能,地址碼字段通常指定參與操作的操作數(shù)的地址。一條指令的指令格式形式為:的地址。一條指令的指令格式形式為: 計(jì)算機(jī)指令格式的設(shè)定一般與機(jī)器的字長(zhǎng)、存儲(chǔ)器的容計(jì)算機(jī)指令格式的設(shè)定一般與機(jī)器的字長(zhǎng)、存儲(chǔ)器的容量以及指令的功

10、能有關(guān)。量以及指令的功能有關(guān)。4 42 2 指令格式指令格式操作碼字段操作碼字段地址碼字段地址碼字段 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)84.2.1 4.2.1 指令操作碼與地址碼指令操作碼與地址碼1. 操作碼操作碼2. .地址碼地址碼 指令中參加運(yùn)算的操作數(shù)既可存放在主存儲(chǔ)器中,也指令中參加運(yùn)算的操作數(shù)既可存放在主存儲(chǔ)器中,也可存放在寄存器中,地址碼應(yīng)該指出該操作數(shù)所在的存儲(chǔ)可存放在寄存器中,地址碼應(yīng)該指出該操作數(shù)所在的存儲(chǔ)器地址或寄存器地址。器地址或寄存器地址。 根據(jù)指令的操作數(shù)地址碼的數(shù)目的不同,可將指令分根據(jù)指令的操作數(shù)地址碼的數(shù)目的不同,可將指令分成零地址指

11、令、一地址指令、二地址指令、三地址指令和成零地址指令、一地址指令、二地址指令、三地址指令和多地址指令等多種格式。多地址指令等多種格式。操作碼指出該指令應(yīng)該執(zhí)行什么性質(zhì)的操作和具有何種功操作碼指出該指令應(yīng)該執(zhí)行什么性質(zhì)的操作和具有何種功能。不同的指令用操作碼字段的不同編碼來(lái)表示,每一種能。不同的指令用操作碼字段的不同編碼來(lái)表示,每一種編碼代表一種指令。編碼代表一種指令。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)9(1) 三地址指令格式三地址指令格式 其格式為其格式為 opcode操作碼,操作碼, a1第一個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址,第一個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址,

12、 a2第二個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址,第二個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址, a3操作結(jié)果的存儲(chǔ)器地址或寄存器地址。操作結(jié)果的存儲(chǔ)器地址或寄存器地址。其數(shù)學(xué)形式描述為:其數(shù)學(xué)形式描述為:(a1) op (a2)a3 opcodea1a2a3 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)10(2) 二地址指令格式二地址指令格式 其格式為其格式為 opcode操作碼,操作碼, a1第一個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址,第一個(gè)源操作數(shù)存儲(chǔ)器地址或寄存器地址, a2第二個(gè)源操作數(shù)和存放操作結(jié)果的存儲(chǔ)器地址或第二個(gè)源操作數(shù)和存放操作結(jié)果的存儲(chǔ)器地址或寄存器地址。寄存器地址。 其數(shù)學(xué)

13、形式描述為:其數(shù)學(xué)形式描述為: (a1) op (a2)a1 或者或者 (a1) op (a2)a2 opcode a1 a2 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)11(3) 一地址指令格式一地址指令格式 其格式為其格式為 opcode操作碼,操作碼, a操作數(shù)的存儲(chǔ)器地址或寄存器地址。操作數(shù)的存儲(chǔ)器地址或寄存器地址。 其數(shù)學(xué)形式描述為:其數(shù)學(xué)形式描述為: op (a)a 或者或者 (ac) op (a)ac opcode a 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)12(4) 零地址指令格式零地址指令格式其格式為其格式為 opcode操作碼。操作碼

14、。(5) 多地址指令格式多地址指令格式 性能較好的大、中型計(jì)算機(jī)甚至高檔小型計(jì)算機(jī)中,性能較好的大、中型計(jì)算機(jī)甚至高檔小型計(jì)算機(jī)中,往往設(shè)置一些功能很強(qiáng)的,用于處理成批數(shù)據(jù)的指令,例往往設(shè)置一些功能很強(qiáng)的,用于處理成批數(shù)據(jù)的指令,例如,字符串處理指令,向量、矩陣運(yùn)算等指令。為了描述如,字符串處理指令,向量、矩陣運(yùn)算等指令。為了描述一批數(shù)據(jù),指令中往往需要用多個(gè)地址來(lái)指出數(shù)據(jù)存放的一批數(shù)據(jù),指令中往往需要用多個(gè)地址來(lái)指出數(shù)據(jù)存放的首地址、長(zhǎng)度和下標(biāo)等信息。例如首地址、長(zhǎng)度和下標(biāo)等信息。例如 cdc star100矩陣矩陣運(yùn)算指令,就有七個(gè)地址碼段,用來(lái)指明兩個(gè)矩陣的存儲(chǔ)運(yùn)算指令,就有七個(gè)地址碼段

15、,用來(lái)指明兩個(gè)矩陣的存儲(chǔ)情況以及結(jié)果的存放情況。情況以及結(jié)果的存放情況。opcode 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)13 從存放操作數(shù)的物理位置來(lái)劃分,指令格式主要有三從存放操作數(shù)的物理位置來(lái)劃分,指令格式主要有三種類型。種類型。第一種為存儲(chǔ)器第一種為存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器(ss)型指令,即參與操作的數(shù)據(jù)型指令,即參與操作的數(shù)據(jù)都放在內(nèi)存里。都放在內(nèi)存里。第二種為寄存器第二種為寄存器寄存器寄存器(rr)型指令,執(zhí)行這類指令過(guò)型指令,執(zhí)行這類指令過(guò)程中,需要多個(gè)通用寄存器或?qū)S眉拇嫫?,從寄存器中取程中,需要多個(gè)通用寄存器或?qū)S眉拇嫫?,從寄存器中取操作?shù),把操作結(jié)果存放到

16、另一寄存器中。操作數(shù),把操作結(jié)果存放到另一寄存器中。第三種為寄存器第三種為寄存器存儲(chǔ)器存儲(chǔ)器(rs)型指令,執(zhí)行此類指令時(shí),型指令,執(zhí)行此類指令時(shí),既要訪問(wèn)內(nèi)存單元,又要訪問(wèn)寄存器。既要訪問(wèn)內(nèi)存單元,又要訪問(wèn)寄存器。目前在計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中,通常一個(gè)指令系統(tǒng)中指令字的目前在計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中,通常一個(gè)指令系統(tǒng)中指令字的長(zhǎng)度和指令中的地址結(jié)構(gòu)并不是單一的,往往采用多種格長(zhǎng)度和指令中的地址結(jié)構(gòu)并不是單一的,往往采用多種格式混合使用,這樣可以增強(qiáng)指令的功能。式混合使用,這樣可以增強(qiáng)指令的功能。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)144.2.2 指令字長(zhǎng)度與擴(kuò)展方法指令字長(zhǎng)度與擴(kuò)

17、展方法1. 指令字長(zhǎng)度指令字長(zhǎng)度 指令字中二進(jìn)制代碼的位數(shù),稱為指令字長(zhǎng)度。如上所指令字中二進(jìn)制代碼的位數(shù),稱為指令字長(zhǎng)度。如上所述,指令格式的設(shè)定一般與機(jī)器的字長(zhǎng)、存儲(chǔ)器的容量以述,指令格式的設(shè)定一般與機(jī)器的字長(zhǎng)、存儲(chǔ)器的容量以及指令的功能有關(guān)。機(jī)器字長(zhǎng)是指計(jì)算機(jī)能夠直接處理的及指令的功能有關(guān)。機(jī)器字長(zhǎng)是指計(jì)算機(jī)能夠直接處理的二進(jìn)制數(shù)據(jù)的位數(shù),是計(jì)算機(jī)的一個(gè)重要技術(shù)指標(biāo)。二進(jìn)制數(shù)據(jù)的位數(shù),是計(jì)算機(jī)的一個(gè)重要技術(shù)指標(biāo)。 指令字長(zhǎng)度等于機(jī)器字長(zhǎng)度的指令,稱為單字長(zhǎng)指令;指令字長(zhǎng)度等于機(jī)器字長(zhǎng)度的指令,稱為單字長(zhǎng)指令;指令字長(zhǎng)度等于半個(gè)機(jī)器字長(zhǎng)度的指令,稱為半字長(zhǎng)指令;指令字長(zhǎng)度等于半個(gè)機(jī)器字長(zhǎng)度

18、的指令,稱為半字長(zhǎng)指令;指令字長(zhǎng)度等于兩個(gè)機(jī)器字長(zhǎng)度的指令,稱為雙字長(zhǎng)指令;指令字長(zhǎng)度等于兩個(gè)機(jī)器字長(zhǎng)度的指令,稱為雙字長(zhǎng)指令;余下以此類推。例如余下以此類推。例如ibm 370系列的指令格式有系列的指令格式有16b(半字半字)的,有的,有32b(單字單字)的,還有的,還有48b(一個(gè)半字一個(gè)半字)的。的。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)152. 2. 指令操作碼擴(kuò)展方法指令操作碼擴(kuò)展方法 指令操作碼通常有兩種編碼格式,一種是固定格式,即指令操作碼通常有兩種編碼格式,一種是固定格式,即操作碼的長(zhǎng)度固定,且集中放在指令字的一個(gè)字段中。這種操作碼的長(zhǎng)度固定,且集中放在

19、指令字的一個(gè)字段中。這種格式可以簡(jiǎn)化硬件設(shè)計(jì),減少指令譯碼時(shí)間,一般用在字長(zhǎng)格式可以簡(jiǎn)化硬件設(shè)計(jì),減少指令譯碼時(shí)間,一般用在字長(zhǎng)較長(zhǎng)的大、中型機(jī)和超級(jí)小型機(jī)以及較長(zhǎng)的大、中型機(jī)和超級(jí)小型機(jī)以及 risc機(jī)上,如機(jī)上,如ibm 370和和vax 11系列機(jī),其操作碼長(zhǎng)度均為系列機(jī),其操作碼長(zhǎng)度均為8b,可表示,可表示256種指令。種指令。另一種是可變格式,即操作碼的長(zhǎng)度可變,且分散地放在指另一種是可變格式,即操作碼的長(zhǎng)度可變,且分散地放在指令字的不同字段中。這種格式能夠有效地壓縮程序中操作碼令字的不同字段中。這種格式能夠有效地壓縮程序中操作碼的平均長(zhǎng)度,在字長(zhǎng)較短的微型機(jī)上廣泛采用。如的平均長(zhǎng)度

20、,在字長(zhǎng)較短的微型機(jī)上廣泛采用。如 z80、intel 8086等,操作碼的長(zhǎng)度都是可變的。等,操作碼的長(zhǎng)度都是可變的。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)16例如,某機(jī)器的指令字長(zhǎng)度為例如,某機(jī)器的指令字長(zhǎng)度為16b,包括,包括4b基本操作碼字段基本操作碼字段和三個(gè)和三個(gè)4b地址字段,其指令格式為:地址字段,其指令格式為: 15 12 11 8 7 4 3 0 4b基本操作碼有基本操作碼有16種組合,若全部用于表示三地址指令,種組合,若全部用于表示三地址指令,則只有則只有16條。但是,如果三地址指令僅需條。但是,如果三地址指令僅需15條,兩地址指令條,兩地址指令需需

21、15條,一地址指令需條,一地址指令需15條,零地址指令需條,零地址指令需16條,共條,共61條指條指令,應(yīng)該如何安排操作碼?顯然,只有令,應(yīng)該如何安排操作碼?顯然,只有4b基本操作碼是不夠基本操作碼是不夠的,必須將操作碼的長(zhǎng)度向地址碼字段擴(kuò)展才行。這可采用的,必須將操作碼的長(zhǎng)度向地址碼字段擴(kuò)展才行。這可采用如下操作碼擴(kuò)展方法:如下操作碼擴(kuò)展方法: (1) 三地址指令僅需三地址指令僅需15條,由條,由4b基本操作碼的基本操作碼的00001110組合給出,剩下的一個(gè)組合組合給出,剩下的一個(gè)組合1111用于把操作碼長(zhǎng)度擴(kuò)展用于把操作碼長(zhǎng)度擴(kuò)展到到 a1,即,即4b擴(kuò)展到擴(kuò)展到8b; opcode a

22、1 a2 a3 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)17 (2) 二地址指令需二地址指令需15條,由條,由8b操作碼的操作碼的1111000011111110組合給出,剩下一個(gè)組合給出,剩下一個(gè)11111111用于把操作碼長(zhǎng)度擴(kuò)用于把操作碼長(zhǎng)度擴(kuò)展到展到 a2,即從,即從8b擴(kuò)展到擴(kuò)展到12b; (3) 一地址指令需一地址指令需15條,由條,由12b操作碼的操作碼的111111110000111111111110組合給出,剩下一個(gè)組合組合給出,剩下一個(gè)組合111111111111用于把操作碼長(zhǎng)度擴(kuò)展到用于把操作碼長(zhǎng)度擴(kuò)展到a3,即從,即從12b擴(kuò)展到擴(kuò)展到16b; (4

23、) 零地址指令需零地址指令需16條,由條,由16位操作碼的位操作碼的11111111111100001111111111111111組合給出。組合給出。采用上述指令操作碼擴(kuò)展方法后,三地址指令、二地址指采用上述指令操作碼擴(kuò)展方法后,三地址指令、二地址指令和一地址指令各令和一地址指令各15條,零地址指令條,零地址指令16條,共計(jì)條,共計(jì)61條指令。條指令。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)184.2.3 指令格式舉例指令格式舉例1. 1. 微型計(jì)算機(jī)微型計(jì)算機(jī)intel 8086/8088intel 8086/8088指令格式指令格式 intel 8086是是inte

24、l公司于公司于1978年推出的年推出的16b的微型計(jì)算機(jī),的微型計(jì)算機(jī),字長(zhǎng)字長(zhǎng)16b。intel 8088是在是在8086基礎(chǔ)之上推出的擴(kuò)展型準(zhǔn)基礎(chǔ)之上推出的擴(kuò)展型準(zhǔn)16b微型機(jī),字長(zhǎng)微型機(jī),字長(zhǎng)16b,但其外部數(shù)據(jù)總線,但其外部數(shù)據(jù)總線8b,這樣便于與眾,這樣便于與眾多的多的8b外部設(shè)備連接。由于外部設(shè)備連接。由于intel 8086/8088指令字較短,指令字較短,所以指令采用變長(zhǎng)指令字結(jié)構(gòu)。指令格式包含單字長(zhǎng)指令、所以指令采用變長(zhǎng)指令字結(jié)構(gòu)。指令格式包含單字長(zhǎng)指令、雙字長(zhǎng)指令、三字長(zhǎng)指令等多種。雙字長(zhǎng)指令、三字長(zhǎng)指令等多種。2. 2. 大型計(jì)算機(jī)大型計(jì)算機(jī)ibm 370ibm 370系

25、列指令格式系列指令格式 ibm 370系統(tǒng)是系統(tǒng)是ibm公司于公司于1970年推出的年推出的32b大型計(jì)算機(jī),大型計(jì)算機(jī),1983年年ibm又推出了又推出了370的擴(kuò)充結(jié)構(gòu):的擴(kuò)充結(jié)構(gòu):ibm 370xa(extended architecture),首次在,首次在3080系列上實(shí)現(xiàn),后系列上實(shí)現(xiàn),后來(lái)又有擴(kuò)充結(jié)構(gòu)來(lái)又有擴(kuò)充結(jié)構(gòu)esa370,于,于1986年推出年推出3090系列。系列。 esa370增加了指令格式,稱為擴(kuò)充格式,有增加了指令格式,稱為擴(kuò)充格式,有16b操作碼,操作碼,包括了向量運(yùn)算與包括了向量運(yùn)算與128b長(zhǎng)度的浮點(diǎn)運(yùn)算指令。長(zhǎng)度的浮點(diǎn)運(yùn)算指令。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理

26、 第四章第四章 指令系統(tǒng)指令系統(tǒng)193. sparc3. sparc計(jì)算機(jī)的指令格式計(jì)算機(jī)的指令格式 sparc是是sun microsystem公司于公司于1987年推出的精簡(jiǎn)指年推出的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)(令系統(tǒng)計(jì)算機(jī)(risc),字長(zhǎng)),字長(zhǎng)32b。sparc共有三種指共有三種指令格式,格式令格式,格式1、格式、格式2和格式和格式3,如圖所示:,如圖所示:sun microsystem risc sparc指令格式指令格式 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)2043 尋址方式尋址方式 當(dāng)某個(gè)操作數(shù)或某條指令存放在某個(gè)存儲(chǔ)單元時(shí),其當(dāng)某個(gè)操作數(shù)或某條指令存放在某個(gè)存

27、儲(chǔ)單元時(shí),其存儲(chǔ)單元的編號(hào),就是該操作數(shù)或指令在存儲(chǔ)器中的地存儲(chǔ)單元的編號(hào),就是該操作數(shù)或指令在存儲(chǔ)器中的地址。尋找并確定本條指令的數(shù)據(jù)(操作數(shù))地址及下一址。尋找并確定本條指令的數(shù)據(jù)(操作數(shù))地址及下一條要執(zhí)行的指令地址的方法,稱為尋址方式。條要執(zhí)行的指令地址的方法,稱為尋址方式。 尋址方式分為兩大類:指令尋址方式和操作數(shù)尋址方尋址方式分為兩大類:指令尋址方式和操作數(shù)尋址方式。在主存中,指令尋址方式與操作數(shù)尋址方式交替進(jìn)式。在主存中,指令尋址方式與操作數(shù)尋址方式交替進(jìn)行,前者比較簡(jiǎn)單,后者比較復(fù)雜。行,前者比較簡(jiǎn)單,后者比較復(fù)雜。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)

28、214.3.1 指令的尋址方式指令的尋址方式 所謂指令尋址方式,就是確定下一條將要執(zhí)行的指令所謂指令尋址方式,就是確定下一條將要執(zhí)行的指令地址的方法。指令尋址有兩種基本方式:順序?qū)ぶ贩绞胶偷刂返姆椒?。指令尋址有兩種基本方式:順序?qū)ぶ贩绞胶吞S尋址方式。跳躍尋址方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)221. 1. 順序?qū)ぶ贩绞巾樞驅(qū)ぶ贩绞?指令在內(nèi)存中是按地址順序安排的,執(zhí)行程序時(shí),通常是一條指令接指令在內(nèi)存中是按地址順序安排的,執(zhí)行程序時(shí),通常是一條指令接一條指令順序進(jìn)行。即從存儲(chǔ)器取出第一條指令,然后執(zhí)行第一條指令;一條指令順序進(jìn)行。即從存儲(chǔ)器取出第一條指令,然

29、后執(zhí)行第一條指令;接著從存儲(chǔ)器取出第二條指令,再執(zhí)行第二條指令;接著再取出第三條接著從存儲(chǔ)器取出第二條指令,再執(zhí)行第二條指令;接著再取出第三條指令,執(zhí)行第三條指令指令,執(zhí)行第三條指令這種程序按指令地址順序執(zhí)行的過(guò)程,稱為這種程序按指令地址順序執(zhí)行的過(guò)程,稱為指令的順序?qū)ぶ贩绞?。指令的順序?qū)ぶ贩绞?。指令的順序?qū)ぶ贩绞街噶畹捻樞驅(qū)ぶ贩绞?計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)232. 2. 跳躍尋址方式跳躍尋址方式 當(dāng)程序要轉(zhuǎn)移執(zhí)行的順序時(shí),指令的尋址就采取跳躍尋址方式。當(dāng)程序要轉(zhuǎn)移執(zhí)行的順序時(shí),指令的尋址就采取跳躍尋址方式。所謂跳躍,又稱跳轉(zhuǎn),是指下一條指令的地址并不是由程

30、序計(jì)數(shù)器所謂跳躍,又稱跳轉(zhuǎn),是指下一條指令的地址并不是由程序計(jì)數(shù)器pc給出,而是由本條指令給出的。圖給出,而是由本條指令給出的。圖4.4 (b)所示的是指令跳躍尋址所示的是指令跳躍尋址方式的示意圖。注意,程序跳躍后,按新的指令地址開(kāi)始順序執(zhí)行。方式的示意圖。注意,程序跳躍后,按新的指令地址開(kāi)始順序執(zhí)行。因此,指令計(jì)數(shù)器的內(nèi)容也必須相應(yīng)改變,以便及時(shí)跟蹤新的指令地因此,指令計(jì)數(shù)器的內(nèi)容也必須相應(yīng)改變,以便及時(shí)跟蹤新的指令地址。址。指令的跳躍尋址方式指令的跳躍尋址方式 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)244.3.2 操作數(shù)的尋址方式操作數(shù)的尋址方式 所謂操作數(shù)尋址方式,

31、就是形成操作數(shù)的有效地址(所謂操作數(shù)尋址方式,就是形成操作數(shù)的有效地址(ea)的方法。指令字中的地址碼字段,通常是由形式地址和尋址的方法。指令字中的地址碼字段,通常是由形式地址和尋址方式特征位組成的,并不是操作數(shù)的有效地址。其表示形式方式特征位組成的,并不是操作數(shù)的有效地址。其表示形式為:為: 形式地址,是指令字結(jié)構(gòu)中給定的地址量。而尋址方式特形式地址,是指令字結(jié)構(gòu)中給定的地址量。而尋址方式特征位,通常由間址位征位,通常由間址位(i)和變址位和變址位(x)組成,若指令無(wú)間址和組成,若指令無(wú)間址和變址要求,則形式地址就是操作數(shù)的有效地址;若指令中指變址要求,則形式地址就是操作數(shù)的有效地址;若指令

32、中指明要進(jìn)行變址或間址變換,則形式地址就不是操作數(shù)的有效明要進(jìn)行變址或間址變換,則形式地址就不是操作數(shù)的有效地址,而必須按指定方式進(jìn)行變換,才能形成有效地址。地址,而必須按指定方式進(jìn)行變換,才能形成有效地址。 opcode尋址方式特征mod 形式地址a 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)251. 1. 隱含尋址方式隱含尋址方式 指令字中并不明顯指出操作數(shù)地址,而是將操作數(shù)的指令字中并不明顯指出操作數(shù)地址,而是將操作數(shù)的地址隱含在指令中。地址隱含在指令中。2. 2. 立即尋址方式立即尋址方式 指令字中的地址字段指出的不是操作數(shù)的地址,而是指令字中的地址字段指出的不是操作

33、數(shù)的地址,而是操作數(shù)本身。操作數(shù)本身。 立即尋址方式表示形式為:立即尋址方式表示形式為: opcode 立即尋址方式立即尋址方式 操作數(shù)操作數(shù)data3. 3. 寄存器尋址方式寄存器尋址方式 當(dāng)操作數(shù)不放在存儲(chǔ)器中,而是放在中央處理器的通當(dāng)操作數(shù)不放在存儲(chǔ)器中,而是放在中央處理器的通用寄存器中時(shí),存放操作數(shù)的寄存器,其地址編號(hào)便可用寄存器中時(shí),存放操作數(shù)的寄存器,其地址編號(hào)便可通過(guò)指令地址碼指出。這種所需要的操作數(shù)存放在某一通過(guò)指令地址碼指出。這種所需要的操作數(shù)存放在某一通用寄存器中,由指令地址碼的部分字段給出該通用寄通用寄存器中,由指令地址碼的部分字段給出該通用寄存器地址的方式,稱為寄存器尋

34、址方式。存器地址的方式,稱為寄存器尋址方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)264. 4. 直接尋址方式直接尋址方式 指令地址碼字段直接給出操作數(shù)的有效地址,由于操作指令地址碼字段直接給出操作數(shù)的有效地址,由于操作數(shù)的有效地址已由指令地址碼直接給出而不需要經(jīng)過(guò)某數(shù)的有效地址已由指令地址碼直接給出而不需要經(jīng)過(guò)某種變換或運(yùn)算,所以稱這種方式為直接尋址方式。種變換或運(yùn)算,所以稱這種方式為直接尋址方式。 直接尋址方式表示形式為:直接尋址方式表示形式為: 直接尋址方式又可分為寄存器直接尋址和存儲(chǔ)器直接尋直接尋址方式又可分為寄存器直接尋址和存儲(chǔ)器直接尋址兩種。址兩種。opco

35、de直接尋址方式直接尋址方式操作數(shù)直接地址操作數(shù)直接地址a 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)27 (1)寄存器直接尋址方式)寄存器直接尋址方式指令地址碼字段直接給出所需操作數(shù)在通用寄存器中指令地址碼字段直接給出所需操作數(shù)在通用寄存器中地址編號(hào)。其表示形式為:地址編號(hào)。其表示形式為: opcode 寄存器直接尋址寄存器直接尋址 寄存器地址編號(hào)寄存器地址編號(hào)ri有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:eari(2 2)存儲(chǔ)器直接)存儲(chǔ)器直接尋址方式尋址方式一般簡(jiǎn)稱直接尋址方式,其指令地址碼字段直接給出一般簡(jiǎn)稱直接尋址方式,其指令地址碼字段直接給出存放在存儲(chǔ)器中操作數(shù)

36、的存儲(chǔ)地址。其表示形式為:存放在存儲(chǔ)器中操作數(shù)的存儲(chǔ)地址。其表示形式為: 存儲(chǔ)器存儲(chǔ)器 op mod a a data有效地址有效地址ea數(shù)學(xué)數(shù)學(xué)形式為:形式為:eaa 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)285 5間接尋址方式間接尋址方式 間接尋址是相對(duì)于直接尋址而言的。間接尋址時(shí),指令地間接尋址是相對(duì)于直接尋址而言的。間接尋址時(shí),指令地址碼字段給出的不是操作數(shù)的真正地址,而是存放操作數(shù)地址址碼字段給出的不是操作數(shù)的真正地址,而是存放操作數(shù)地址的地址,換句話說(shuō)就是形式地址的地址,換句話說(shuō)就是形式地址a所指定單元中的內(nèi)容才是操所指定單元中的內(nèi)容才是操作數(shù)的有效地址。這種

37、操作數(shù)有效地址由指令地址碼所指示的作數(shù)的有效地址。這種操作數(shù)有效地址由指令地址碼所指示的單元內(nèi)容間接給出的方式,稱為間接尋址方式,簡(jiǎn)稱間址。單元內(nèi)容間接給出的方式,稱為間接尋址方式,簡(jiǎn)稱間址。 按尋址特征間址位按尋址特征間址位x的要求,根據(jù)地址碼指的是寄存器地址的要求,根據(jù)地址碼指的是寄存器地址還是存儲(chǔ)器地址,間接尋址又可分為寄存器間接尋址和存儲(chǔ)器還是存儲(chǔ)器地址,間接尋址又可分為寄存器間接尋址和存儲(chǔ)器間接尋址兩種方式。間接尋址兩種方式。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)29(1)寄存器間接尋址方式)寄存器間接尋址方式 寄存器間接尋址時(shí),需先訪問(wèn)寄存器,從寄存器讀出操

38、作數(shù)寄存器間接尋址時(shí),需先訪問(wèn)寄存器,從寄存器讀出操作數(shù)地址后,再訪問(wèn)存儲(chǔ)器才能取得操作數(shù)。地址后,再訪問(wèn)存儲(chǔ)器才能取得操作數(shù)。 有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(r),即,即data(ea)(r)寄存器間接尋址方式示意圖寄存器間接尋址方式示意圖 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)30(2 2)存儲(chǔ)器間接尋)存儲(chǔ)器間接尋址方式址方式 存儲(chǔ)器間接尋址時(shí),需訪問(wèn)兩次存儲(chǔ)器才能取得數(shù)據(jù),第存儲(chǔ)器間接尋址時(shí),需訪問(wèn)兩次存儲(chǔ)器才能取得數(shù)據(jù),第一次先從存儲(chǔ)器讀出操作數(shù)地址,第二次才能根據(jù)讀出的操作一次先從存儲(chǔ)器讀出操作數(shù)地址,第二次才能根據(jù)讀出的操作數(shù)地址再取出真

39、正的操作數(shù)。數(shù)地址再取出真正的操作數(shù)。有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(a),即,即data(ea)(a)存儲(chǔ)器存儲(chǔ)器間接尋址方式示意圖間接尋址方式示意圖 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)316. 6. 相對(duì)尋址方式相對(duì)尋址方式 所謂相對(duì)尋址方式,是指根據(jù)一個(gè)基準(zhǔn)地址及其相對(duì)量來(lái)尋找操作數(shù)地所謂相對(duì)尋址方式,是指根據(jù)一個(gè)基準(zhǔn)地址及其相對(duì)量來(lái)尋找操作數(shù)地址的方式。根據(jù)基準(zhǔn)地址的來(lái)源不同,它又分為基址方式和變址方式,以址的方式。根據(jù)基準(zhǔn)地址的來(lái)源不同,它又分為基址方式和變址方式,以及及pc相對(duì)尋址方式,這里主要指后者。相對(duì)尋址方式,這里主要指后者。 pc

40、相對(duì)尋址方式,一般簡(jiǎn)稱相對(duì)尋址方式,是指將程序計(jì)數(shù)器相對(duì)尋址方式,一般簡(jiǎn)稱相對(duì)尋址方式,是指將程序計(jì)數(shù)器 pc的內(nèi)的內(nèi)容容(即當(dāng)前執(zhí)行指令的地址即當(dāng)前執(zhí)行指令的地址)與地址碼部分給出的位移量與地址碼部分給出的位移量(disp) 通過(guò)加法器相通過(guò)加法器相加,所得之和作為操作數(shù)的有效地址的方式。加,所得之和作為操作數(shù)的有效地址的方式。相對(duì)尋址方式示意圖相對(duì)尋址方式示意圖有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(pc) + disp 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)327. 7. 基址尋址方式基址尋址方式 計(jì)算機(jī)設(shè)置一個(gè)寄存器,專門用來(lái)存放基準(zhǔn)地址,該寄存器就是基

41、址寄計(jì)算機(jī)設(shè)置一個(gè)寄存器,專門用來(lái)存放基準(zhǔn)地址,該寄存器就是基址寄存器存器(rb)。rb既可在既可在cpu中專設(shè),也可由指令指定某個(gè)通用寄存器擔(dān)任。中專設(shè),也可由指令指定某個(gè)通用寄存器擔(dān)任。指令地址碼給出的地址指令地址碼給出的地址a和基址寄存器和基址寄存器rb的內(nèi)容通過(guò)加法器相加,所得的內(nèi)容通過(guò)加法器相加,所得的和作為有效地址,再?gòu)拇鎯?chǔ)器中讀出所需的操作數(shù)。這種操作數(shù)的有的和作為有效地址,再?gòu)拇鎯?chǔ)器中讀出所需的操作數(shù)。這種操作數(shù)的有效地址由基址寄存器中的基準(zhǔn)地址和指令的地址碼效地址由基址寄存器中的基準(zhǔn)地址和指令的地址碼a相加得到的方式稱為相加得到的方式稱為基址尋址方式。地址碼基址尋址方式。地址

42、碼 a在這種方式下通常被稱為位移量在這種方式下通常被稱為位移量(disp)。有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(rb) + disp 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)33有效地址有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(ri) +disp8. 8. 變址尋址方式變址尋址方式 變址尋址方式在有效地址的求法上與基址尋址方式類似,變址尋址方式在有效地址的求法上與基址尋址方式類似,即把某個(gè)變址寄存器的內(nèi)容,加上指令格式中的形式地址而即把某個(gè)變址寄存器的內(nèi)容,加上指令格式中的形式地址而形成操作數(shù)的有效地址,如圖形成操作數(shù)的有效地址,如圖 (b)所示,其中所示,其

43、中xri指出變址尋指出變址尋址方式的特征。址方式的特征。變址尋址方式變址尋址方式 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)349. 9. 堆棧尋址方式堆棧尋址方式 堆棧對(duì)數(shù)據(jù)的存取方式和尋址方法與一般存儲(chǔ)器有所不堆棧對(duì)數(shù)據(jù)的存取方式和尋址方法與一般存儲(chǔ)器有所不同,一般存儲(chǔ)器是按指定的地址隨機(jī)讀同,一般存儲(chǔ)器是按指定的地址隨機(jī)讀/寫數(shù)據(jù);而堆棧寫數(shù)據(jù);而堆棧中數(shù)據(jù)的讀出和寫入是遵照一定的規(guī)律,按先進(jìn)后出原中數(shù)據(jù)的讀出和寫入是遵照一定的規(guī)律,按先進(jìn)后出原則存取的。下面以主存堆棧為例,說(shuō)明堆棧尋址過(guò)程。則存取的。下面以主存堆棧為例,說(shuō)明堆棧尋址過(guò)程。堆棧尋址方式堆棧尋址方式 計(jì)算

44、機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)3510. 10. 復(fù)合型尋址方式復(fù)合型尋址方式 (1) 相對(duì)間接尋址相對(duì)間接尋址 這種尋址方式先把程序計(jì)數(shù)器這種尋址方式先把程序計(jì)數(shù)器pc的內(nèi)容和形式地址的內(nèi)容和形式地址(通常通常為位移量為位移量)disp相加得相加得(pc) + disp,然后再間接尋址求得操作,然后再間接尋址求得操作數(shù)的有效地址,即先相對(duì)尋址再間接尋址。數(shù)的有效地址,即先相對(duì)尋址再間接尋址。 操作數(shù)的有效地址操作數(shù)的有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea( (pc) + disp) (2) 間接相對(duì)尋址間接相對(duì)尋址 這種尋址方式先將形式地址這種尋址方式先將形式地址

45、disp作間接變換作間接變換( disp ),然后,然后將間接變換值和程序計(jì)數(shù)器將間接變換值和程序計(jì)數(shù)器pc的內(nèi)容相加得到操作數(shù)的有的內(nèi)容相加得到操作數(shù)的有效地址,即先間接尋址再相對(duì)尋址。效地址,即先間接尋址再相對(duì)尋址。 操作數(shù)的有效地址操作數(shù)的有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(pc) + ( disp) 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)36 (3) 變址間接尋址變址間接尋址 這種尋址方式先把變址寄存器這種尋址方式先把變址寄存器ri的內(nèi)容和形式地址的內(nèi)容和形式地址disp相加得相加得(ri) + disp,然后再間接尋址求得操作數(shù)的有,然后再間接尋址求得操作

46、數(shù)的有效地址,即先變址再間址。效地址,即先變址再間址。 操作數(shù)的有效地址操作數(shù)的有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea( (ri) + disp) (4) 間接變址尋址間接變址尋址 這種尋址方式先將形式地址這種尋址方式先將形式地址disp作間接變換作間接變換( disp ),然后將間接變換值和變址寄存器然后將間接變換值和變址寄存器ri的內(nèi)容相加得到操作的內(nèi)容相加得到操作數(shù)的有效地址,即先間址再變址。數(shù)的有效地址,即先間址再變址。 操作數(shù)的有效地址操作數(shù)的有效地址ea數(shù)學(xué)形式為:數(shù)學(xué)形式為:ea(ri) + ( disp) 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)3744

47、指令系統(tǒng)的要求與指令分類指令系統(tǒng)的要求與指令分類4.4.1 指令系統(tǒng)的要求指令系統(tǒng)的要求4.4.2 指令的分類指令的分類 1.數(shù)據(jù)傳送指令數(shù)據(jù)傳送指令 這類指令用以實(shí)現(xiàn)寄存器與寄存器,寄存器與主存儲(chǔ)器,這類指令用以實(shí)現(xiàn)寄存器與寄存器,寄存器與主存儲(chǔ)器,主存儲(chǔ)器與主存儲(chǔ)器之間的數(shù)據(jù)傳送,主要包括取數(shù)指令、主存儲(chǔ)器與主存儲(chǔ)器之間的數(shù)據(jù)傳送,主要包括取數(shù)指令、存數(shù)指令、傳送指令、成批傳送指令、字節(jié)交換指令、清累存數(shù)指令、傳送指令、成批傳送指令、字節(jié)交換指令、清累加器指令等。加器指令等。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)382.算術(shù)邏輯運(yùn)算指令算術(shù)邏輯運(yùn)算指令 (1) 算術(shù)

48、運(yùn)算指令算術(shù)運(yùn)算指令 這類指令用以實(shí)現(xiàn)二進(jìn)制或十進(jìn)制的定點(diǎn)算術(shù)運(yùn)算這類指令用以實(shí)現(xiàn)二進(jìn)制或十進(jìn)制的定點(diǎn)算術(shù)運(yùn)算和浮點(diǎn)運(yùn)算功能。和浮點(diǎn)運(yùn)算功能。 (2) 邏輯運(yùn)算指令邏輯運(yùn)算指令 這類指令用以實(shí)現(xiàn)對(duì)兩個(gè)數(shù)的邏輯運(yùn)算和位操作功這類指令用以實(shí)現(xiàn)對(duì)兩個(gè)數(shù)的邏輯運(yùn)算和位操作功能,主要包括邏輯與(邏輯乘)、或(邏輯加)、非能,主要包括邏輯與(邏輯乘)、或(邏輯加)、非(求反)、異或(按位加)等邏輯操作指令,以及位(求反)、異或(按位加)等邏輯操作指令,以及位測(cè)試、位清除、位求反等位操作指令。測(cè)試、位清除、位求反等位操作指令。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)39 3.移位操作指

49、令移位操作指令 移位操作指令用以實(shí)現(xiàn)將操作數(shù)向左移動(dòng)或向右移動(dòng)移位操作指令用以實(shí)現(xiàn)將操作數(shù)向左移動(dòng)或向右移動(dòng)若干位的功能,包括算術(shù)移位、邏輯移位和循環(huán)移位三若干位的功能,包括算術(shù)移位、邏輯移位和循環(huán)移位三種指令。左移時(shí),若寄存器中的數(shù)為算術(shù)操作數(shù),則符種指令。左移時(shí),若寄存器中的數(shù)為算術(shù)操作數(shù),則符號(hào)位不動(dòng),其它位左移,最低位補(bǔ)零。右移時(shí),其它位號(hào)位不動(dòng),其它位左移,最低位補(bǔ)零。右移時(shí),其它位右移,最高位補(bǔ)符號(hào)位,這種移位稱作算術(shù)移位。移位右移,最高位補(bǔ)符號(hào)位,這種移位稱作算術(shù)移位。移位時(shí),若寄存器中的操作數(shù)為邏輯數(shù),則左移或右移時(shí),時(shí),若寄存器中的操作數(shù)為邏輯數(shù),則左移或右移時(shí),所有位一起移

50、位,最低位或最高位補(bǔ)零,這種移位稱作所有位一起移位,最低位或最高位補(bǔ)零,這種移位稱作邏輯移位。循環(huán)移位按是否與邏輯移位。循環(huán)移位按是否與“進(jìn)位進(jìn)位”位位c一起循環(huán)分一起循環(huán)分為小循環(huán)為小循環(huán)(即自身循環(huán)即自身循環(huán))和大循環(huán)和大循環(huán)(即和進(jìn)位位即和進(jìn)位位 c一起循環(huán)一起循環(huán))兩種,用于實(shí)現(xiàn)循環(huán)式控制、高低字節(jié)互換或與算術(shù)、兩種,用于實(shí)現(xiàn)循環(huán)式控制、高低字節(jié)互換或與算術(shù)、邏輯移位指令一起實(shí)現(xiàn)雙倍字長(zhǎng)或多倍字長(zhǎng)的移位。邏輯移位指令一起實(shí)現(xiàn)雙倍字長(zhǎng)或多倍字長(zhǎng)的移位。 計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理 第四章第四章 指令系統(tǒng)指令系統(tǒng)404.4.轉(zhuǎn)移控制指令轉(zhuǎn)移控制指令(1 1) 無(wú)條件轉(zhuǎn)移指令與條件轉(zhuǎn)移指令無(wú)條件轉(zhuǎn)移指令與條件轉(zhuǎn)移指令 無(wú)條件轉(zhuǎn)移指令不受任何條件限制,直接把程序轉(zhuǎn)移到指無(wú)條件轉(zhuǎn)移指令不受任何條件限制,直接把程序轉(zhuǎn)移到指令所規(guī)定的目的地,從那里開(kāi)始繼續(xù)執(zhí)行程序。令所規(guī)定的目的地,從那里開(kāi)始繼續(xù)執(zhí)行程序。 條件轉(zhuǎn)移指令則根據(jù)計(jì)算機(jī)處理結(jié)果來(lái)控制程序的執(zhí)行方條件轉(zhuǎn)移指令則根據(jù)計(jì)算機(jī)處理結(jié)果來(lái)控制程序的執(zhí)行方向,實(shí)現(xiàn)程序的分支。首先測(cè)試根據(jù)處理結(jié)果設(shè)置的條件碼,向,實(shí)現(xiàn)程序的分支。首先測(cè)試根據(jù)處理結(jié)果設(shè)置的條件碼,然后判斷所測(cè)試的條件是否滿足,從而決定是否轉(zhuǎn)移。然后判斷所測(cè)試的條件是否滿足,從而決定是否轉(zhuǎn)移。(2 2) 調(diào)用指令與返回指令調(diào)用指令與返回指令 編寫程序時(shí),

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論