![計(jì)算機(jī)組成原理 指令系統(tǒng)_第1頁](http://file4.renrendoc.com/view/10b97c37dab4051951cde14b015a5e5b/10b97c37dab4051951cde14b015a5e5b1.gif)
![計(jì)算機(jī)組成原理 指令系統(tǒng)_第2頁](http://file4.renrendoc.com/view/10b97c37dab4051951cde14b015a5e5b/10b97c37dab4051951cde14b015a5e5b2.gif)
![計(jì)算機(jī)組成原理 指令系統(tǒng)_第3頁](http://file4.renrendoc.com/view/10b97c37dab4051951cde14b015a5e5b/10b97c37dab4051951cde14b015a5e5b3.gif)
![計(jì)算機(jī)組成原理 指令系統(tǒng)_第4頁](http://file4.renrendoc.com/view/10b97c37dab4051951cde14b015a5e5b/10b97c37dab4051951cde14b015a5e5b4.gif)
![計(jì)算機(jī)組成原理 指令系統(tǒng)_第5頁](http://file4.renrendoc.com/view/10b97c37dab4051951cde14b015a5e5b/10b97c37dab4051951cde14b015a5e5b5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)組成原理指令系統(tǒng)第一頁,共一百頁,2022年,8月28日指令系統(tǒng):一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合。-----表征一臺(tái)計(jì)算機(jī)性能的重要因素,其格式與功能不僅直接影響到機(jī)器的硬件結(jié)構(gòu),也直接影響到系統(tǒng)軟件,影響到機(jī)器的適用范圍。系列計(jì)算機(jī):指基本指令系統(tǒng)相同、基本體系結(jié)構(gòu)相同的一系列計(jì)算機(jī)2§7.1指令系統(tǒng)概述第二頁,共一百頁,2022年,8月28日RISC與CISCCISC:復(fù)雜指令系統(tǒng)計(jì)算機(jī)(ComplexInstructionSetComputer)增強(qiáng)指令功能,設(shè)置功能復(fù)雜的指令面向目標(biāo)代碼,面向高級(jí)語言、面向操作系統(tǒng)用一條指令代替一串指令RISC:簡(jiǎn)單指令系統(tǒng)計(jì)算機(jī)(ReducedInstructionSetComputer)只保留功能簡(jiǎn)單的指令功能較復(fù)雜的指令用子程序來實(shí)現(xiàn)第三頁,共一百頁,2022年,8月28日指令系統(tǒng)的分類
不同的計(jì)算機(jī),其用途不同,系統(tǒng)結(jié)構(gòu)不同,采用的硬軟件技術(shù)不同,其指令系統(tǒng)的功能也不同,有的強(qiáng)大,有的弱小,但其指令不外乎以下幾類:
算邏運(yùn)算類
數(shù)據(jù)傳送類
指令控制類
I/O類
其它:停機(jī)4第四頁,共一百頁,2022年,8月28日5一、對(duì)指令系統(tǒng)的基本要求
完備性
系統(tǒng)中能提供足夠的指令用于編程如:加、減、乘、除都有,若只有加法、移位指令,乘法:只能用用加法、移位實(shí)現(xiàn),速度慢2.有效性
采用該指令系統(tǒng)編的程序能高效地運(yùn)行:速度快、占內(nèi)存少。即:指令格式要短,多用寄存器尋址,少訪內(nèi)指令系統(tǒng)的發(fā)展
第五頁,共一百頁,2022年,8月28日63、規(guī)整性
指令對(duì)稱:寄存器,內(nèi)存單元被同待,用多種尋址方式均勻整齊:指令支特各種數(shù)據(jù)格式:8、16、32、64等與數(shù)據(jù)格式一致:指令字長(zhǎng)與數(shù)據(jù)字長(zhǎng)有一定關(guān)系(字節(jié)的倍數(shù))4、兼容性
向上兼容——系列機(jī)新機(jī)種要包含舊機(jī)種的所有指令系統(tǒng),低檔機(jī)上的軟件可以到高檔機(jī)上運(yùn)行,但反之不行。指令系統(tǒng)的發(fā)展
第六頁,共一百頁,2022年,8月28日7系列機(jī):基本指令系統(tǒng)相同,基本結(jié)構(gòu)相同的一系列計(jì)算機(jī)。VAX--11,PDP--11,IBM-PC,DJS--130,長(zhǎng)城0520等。
說明:一個(gè)系列有多種型號(hào),各型號(hào)的結(jié)構(gòu)基本相同,由于推出的時(shí)間不同,所采用的器件不同,故結(jié)構(gòu)、性能有差異,但系列機(jī)必須做到一點(diǎn):軟件兼容(向上)要求:⑴各機(jī)種有相同的指令集。⑵新機(jī)種的指令系統(tǒng)一定包含所有舊機(jī)種的所有指令系統(tǒng),以保證在舊機(jī)種上運(yùn)行的各種軟件,可以不加修改地在所機(jī)種上運(yùn)行指令系統(tǒng)的發(fā)展
第七頁,共一百頁,2022年,8月28日8二、從CISC到RISCCISC思想:機(jī)器功能強(qiáng),指令條數(shù)多,指令系統(tǒng)龐大,研制周期長(zhǎng),系統(tǒng)效率低。RISC思想:指令系統(tǒng)盡可能簡(jiǎn)單,盡是減少指令的執(zhí)行時(shí)間以提高效率(多用寄存器指令,少用訪內(nèi)指令,指令格式一致,尋址方式簡(jiǎn)單)指令系統(tǒng)的發(fā)展
第八頁,共一百頁,2022年,8月28日機(jī)器語言:0、1代碼,機(jī)器可直接識(shí)別;匯編語言:符號(hào)化、需匯編程序翻譯;高級(jí)語言:B、F、C、P…需翻譯(編譯或解釋)機(jī)器語言是以機(jī)器指令的形式書寫的語言,其它類型的語言,只有變成機(jī)器指令的形式,機(jī)器才能直接執(zhí)行。高級(jí)語言與計(jì)算機(jī)的硬件結(jié)構(gòu)及指令系統(tǒng)無關(guān),匯編語言依賴于計(jì)算機(jī)的硬件結(jié)構(gòu)和指令系統(tǒng)。不同的機(jī)器有不同的指令,所以用匯編語言編寫的程序不能在其他類型的機(jī)器上運(yùn)行。
低級(jí)語言與硬件結(jié)構(gòu)的關(guān)系
第九頁,共一百頁,2022年,8月28日指令系統(tǒng)的設(shè)計(jì)指令系統(tǒng)是從程序設(shè)計(jì)者看到的機(jī)器的主要屬性,是軟、硬件的主要界面指令系統(tǒng)的設(shè)計(jì)主要包括指令的功能(操作類型、具體操作內(nèi)容)和指令格式的設(shè)計(jì).第十頁,共一百頁,2022年,8月28日內(nèi)容指令系統(tǒng)設(shè)計(jì)的基本原則指令操作碼的優(yōu)化指令字格式的優(yōu)化
第十一頁,共一百頁,2022年,8月28日指令設(shè)計(jì)的步驟根據(jù)應(yīng)用,初擬出指令的分類和具體的指令;試編出用該指令系統(tǒng)設(shè)計(jì)的各種高級(jí)語言的編譯程序;對(duì)各種算法白那些大量測(cè)試程序進(jìn)行模擬測(cè)試,看指令系統(tǒng)的操作碼和尋址方式效能是否都比較高;將程序中高頻出現(xiàn)的指令串復(fù)合改成一條強(qiáng)攻能新指令,即改用硬件方式實(shí)現(xiàn);而將頻度很低的指令的操作改成基本的指令組成的指令串來完成,即用軟件方式實(shí)現(xiàn);第十二頁,共一百頁,2022年,8月28日指令類型非特權(quán)型:主要供應(yīng)應(yīng)用程序員使用,也可供系統(tǒng)程序員使用,包括算術(shù)邏輯運(yùn)算、數(shù)據(jù)傳送、浮點(diǎn)運(yùn)算、字符串、十進(jìn)制運(yùn)算、控制轉(zhuǎn)移及系統(tǒng)控制等;特權(quán)型:系統(tǒng)程序員使用,用戶無權(quán)使用,有啟動(dòng)I/O(多用戶環(huán)境下)、停機(jī)等待、存儲(chǔ)管理保護(hù)、控制系統(tǒng)狀態(tài)、診斷等;第十三頁,共一百頁,2022年,8月28日指令系統(tǒng)的設(shè)計(jì)設(shè)計(jì)的原則:如何支持編譯系統(tǒng)能高效、簡(jiǎn)易地將源程序翻譯成目標(biāo)代碼。規(guī)整性對(duì)稱性獨(dú)立性和全能性正交性可組合性可擴(kuò)充性第十四頁,共一百頁,2022年,8月28日系統(tǒng)設(shè)計(jì)人員希望指令碼密度適中高密度指令:強(qiáng)功能符合指令優(yōu)點(diǎn):減少程序長(zhǎng)度、訪存次數(shù)、Cache、虛存訪問調(diào)度次數(shù)、程序運(yùn)行時(shí)間;缺點(diǎn):指令系統(tǒng)復(fù)雜,硬件實(shí)現(xiàn)困難;兼容性適應(yīng)性第十五頁,共一百頁,2022年,8月28日指令系統(tǒng)的設(shè)計(jì)包含的內(nèi)容指令的類型操作功能指令的格式操作數(shù)的訪問方式---尋址方式第十六頁,共一百頁,2022年,8月28日7.3指令格式指令格式:由操作碼和地址碼兩部分組成。操作碼:指明本條指令的操作功能。如算術(shù)運(yùn)算、邏輯運(yùn)算、存數(shù)、取數(shù)、轉(zhuǎn)移等。每條指令分配一個(gè)確定的操作碼。操作數(shù)地址碼:指出該條指令涉及的操作數(shù)的地址。第十七頁,共一百頁,2022年,8月28日18指令字長(zhǎng):一個(gè)指令字中包含二進(jìn)制的位數(shù)機(jī)器字長(zhǎng):指計(jì)算機(jī)能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù),它決定了計(jì)算機(jī)的運(yùn)算精度。機(jī)器字長(zhǎng)通常與主存單元的位數(shù)一致單字長(zhǎng)指令:指令字長(zhǎng)=機(jī)器字長(zhǎng)
半字長(zhǎng)指令:指令字長(zhǎng)=1/2機(jī)器字長(zhǎng)
雙字長(zhǎng)指令:指令字長(zhǎng)=2倍機(jī)器字長(zhǎng)
4.3指令格式第十八頁,共一百頁,2022年,8月28日19§指令格式的設(shè)計(jì)
一條指令由操作碼和操作數(shù)地址碼兩部分組成。指令格式與機(jī)器字長(zhǎng),存貯器容量及指令功能都有很大關(guān)系從便于程序設(shè)計(jì),增加基本操作的并行性,提高指令功能的角度看,指令中所包含的信息越多越好,但這將導(dǎo)改指令所占存貯空間的浪費(fèi),增加訪存決數(shù),從而影響速度。因此,如何合理地、設(shè)計(jì)指令格式,使指令既能給出足夠的信息,又便于節(jié)省存貯空間,從而提高機(jī)器性能,是指令格式設(shè)計(jì)中的一個(gè)重要的問題。第十九頁,共一百頁,2022年,8月28日指令主要由兩部分組成:操作碼和地址碼操作碼主要包括兩部分內(nèi)容:操作種類:加、減、乘、除、數(shù)據(jù)傳送、移位、轉(zhuǎn)移、輸入輸出操作數(shù)描述數(shù)據(jù)的類型:定點(diǎn)數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)、字符、字符串、邏輯數(shù)、向量進(jìn)位制:2進(jìn)制、10進(jìn)制、16進(jìn)制數(shù)據(jù)字長(zhǎng):字、半字、雙字、字節(jié)地址碼通常包括三部分內(nèi)容:地址:直接地址、間接地址、立即數(shù)、寄存器編號(hào)、變址寄存器編號(hào)地址的附加信息:偏移量、塊長(zhǎng)度、跳距尋址方式:直接尋址、間接尋址、立即數(shù)尋址、變址尋址、相對(duì)尋址、寄存器尋址第二十頁,共一百頁,2022年,8月28日指令設(shè)計(jì)要考慮的問題操作數(shù)的存儲(chǔ)形式存儲(chǔ)器CPU內(nèi)什么地方每條指令中顯式說明的操作數(shù)個(gè)數(shù)操作數(shù)的位置操作類型操作數(shù)的類型和長(zhǎng)短第二十一頁,共一百頁,2022年,8月28日指令的分類第二十二頁,共一百頁,2022年,8月28日指令格式的優(yōu)化
指令=操作碼+地址碼指令格式的優(yōu)化:如何用最短的位數(shù)來表示指令的操作信息和地址信息,使程序中指令的平均字長(zhǎng)最短。主要目標(biāo):節(jié)省程序的存儲(chǔ)空間指令格式盡量規(guī)整,便于譯碼第二十三頁,共一百頁,2022年,8月28日操作碼的編碼
操作碼的三種編碼方法:固定長(zhǎng)度:
規(guī)整性好,解碼簡(jiǎn)單,空間大。IBM公司的大中型機(jī):最左邊8位為操作碼Intel公司的Intanium處理機(jī):14位定長(zhǎng)操作碼許多RISC處理機(jī)采用定長(zhǎng)操作碼Huffman編碼:空間小,規(guī)整性不好,解碼復(fù)雜。擴(kuò)展編碼:折衷方案。固定長(zhǎng)度4Huffman編碼2.12擴(kuò)展編碼3.12信息源熵2.09第二十四頁,共一百頁,2022年,8月28日改進(jìn)操作碼編碼方式能夠節(jié)省程序存儲(chǔ)空間例如:Burroughs公司的B-1700機(jī)操作碼編碼方式整個(gè)操作系統(tǒng)所用指令的操作碼總位數(shù)改進(jìn)的百分比8位定長(zhǎng)編碼4-6-10擴(kuò)展編碼Huffman編碼301,248184,966172,346039%43%第二十五頁,共一百頁,2022年,8月28日哈夫曼(Huffman)壓縮當(dāng)各種事件發(fā)生的概率不均等時(shí),采用優(yōu)化技術(shù)對(duì)發(fā)生概率最高的事件用最短的位數(shù)(時(shí)間)來表示(處理),而對(duì)出現(xiàn)概率較低的允許用較長(zhǎng)的位數(shù)(時(shí)間)來表示(處理),以達(dá)到平均位數(shù)減少的目的。用于代碼壓縮、程序壓縮、空間壓縮和時(shí)間壓縮
第二十六頁,共一百頁,2022年,8月28日操作碼的優(yōu)化表示
信息源熵:信息源包含的平均信息量。信息冗余量:第二十七頁,共一百頁,2022年,8月28日舉例七條指令,頻度如下
I1I2I3I4I5I6I70.40.30.150.050.040.030.03
信息源熵H=2.17
信息冗余量=0.28=28%第二十八頁,共一百頁,2022年,8月28日1.000.600.300.150.060.030.030.040.050.150.300.400.0911111100000(11111)(11110)(11101)(11100)(110)(10)(0)I7I6I1I2I3I4I50第二十九頁,共一百頁,2022年,8月28日擴(kuò)展編碼
Huffman操作碼的主要缺點(diǎn):操作碼長(zhǎng)度很不規(guī)整,硬件譯碼困難與地址碼共同組成固定長(zhǎng)的指令比較困難擴(kuò)展編碼法:由固定長(zhǎng)操作碼與Huffman編碼法相結(jié)合形成減少平均長(zhǎng)度方便譯碼第三十頁,共一百頁,2022年,8月28日上例:Huffman用四種長(zhǎng)度
0,10,110,11100,11101,11110,11111I1、I2、I3用兩位:00、01、10I4、I5、I6、I7用四位:
1100、1101、1110、1111
平均碼長(zhǎng)=2.30
信息冗余量=0.0565=5.65%第三十一頁,共一百頁,2022年,8月28日Huffman編碼方法
寫出每個(gè)事件出現(xiàn)頻度找出兩個(gè)時(shí)間出現(xiàn)頻度最低的數(shù)字,相加形成新的頻度重復(fù)(2),直到出現(xiàn)頻度為1,建立Huffman樹確定Huffman代碼表第三十二頁,共一百頁,2022年,8月28日說明
目的:平均碼長(zhǎng)減少。Huffma代碼不唯一0,1對(duì)換合并次序第三十三頁,共一百頁,2022年,8月28日
假設(shè)一臺(tái)模型計(jì)算機(jī)共有7種不同的操作碼,如果采用固定長(zhǎng)操作碼需要3位。已知各種操作碼在程序中出現(xiàn)的概率如下表,計(jì)算采用Huffman編碼法的操作碼平均長(zhǎng)度,并計(jì)算固定長(zhǎng)操作碼和Huffman操作碼的信息冗余量。
利用Huffman樹進(jìn)行操作碼編碼的方法,又稱為最小概率合并法。指令I(lǐng)1概率0.45I20.30I30.15I40.05I50.03I60.01I70.01舉例1第三十四頁,共一百頁,2022年,8月28日把所有指令按照操作碼在程序中出現(xiàn)的概率,自左向右從排列好。選取兩個(gè)概率最小的結(jié)點(diǎn)合并成一個(gè)概率值是二者之和的新結(jié)點(diǎn),并把這個(gè)新結(jié)點(diǎn)與其它還沒有合并的結(jié)點(diǎn)一起形成新結(jié)點(diǎn)集合。在新結(jié)點(diǎn)集合中選取兩個(gè)概率最小的結(jié)點(diǎn)進(jìn)行合并,如此繼續(xù)進(jìn)行下去,直至全部結(jié)點(diǎn)合并完畢。最后得到的根結(jié)點(diǎn)的概率值為1。每個(gè)結(jié)點(diǎn)都有兩個(gè)分支,分別用一位代碼“0”和“1”表示。第三十五頁,共一百頁,2022年,8月28日從根結(jié)點(diǎn)開始,沿尖頭所指方向,到達(dá)屬于該指令的概率結(jié)點(diǎn),把沿線所經(jīng)過的代碼組合起來得到這條指令的操作碼編碼。解:采用Huffman編碼法所得到的操作碼的平均長(zhǎng)度
=0.45×1+0.30×2+0.15×3+0.05×4
+0.03×5+0.01×6+0.01×6=1.97(位)熵H=0.45×1.152+0.30×1.737+0.15×2.737
+0.05×4.322+0.03×5.059+0.01×6.644
+0.01×6.644=1.95(位)第三十六頁,共一百頁,2022年,8月28日0.450.300.150.050.030.010.011.000.550.250.100.050.02010101010101第三十七頁,共一百頁,2022年,8月28日指令序號(hào)概率Huffman編碼法操作碼長(zhǎng)度I10.4501位I20.30102位I30.151103位I40.0511104位I50.03111105位I60.011111106位I70.0111111116位采用3位固定長(zhǎng)操作碼的信息冗余量為:第三十八頁,共一百頁,2022年,8月28日
例如:把上例改為1-2-3-5擴(kuò)展編碼法,其操作碼最短平均長(zhǎng)度為:
H = 0.45×1+0.30×2+0.15×3+
(0.05+0.03+0.01+0.01)×5
= 2.00
信息冗余量為:
又例如:把上例改為2-4等長(zhǎng)擴(kuò)展編碼法,其操作碼最短平均長(zhǎng)度為:
H = (0.45+0.30+0.15)×2+
(0.05+0.03+0.01+0.01)×4
= 2.20
信息冗余量為:第三十九頁,共一百頁,2022年,8月28日序號(hào)概率1-2-3-5擴(kuò)展編碼I10.450I20.3010I30.15110I40.0511100I50.0311101I60.0111110I70.01111112-4等長(zhǎng)擴(kuò)展編碼0001101100110111101111平均長(zhǎng)度2.02.2信息冗余量2.5%11.4%7條指令的操作碼擴(kuò)展編碼法第四十頁,共一百頁,2022年,8月28日操作碼等長(zhǎng)擴(kuò)展編碼法
第四十一頁,共一百頁,2022年,8月28日第四十二頁,共一百頁,2022年,8月28日43地址碼指出參與操作的數(shù)據(jù)(存貯位置)計(jì)算機(jī)操作數(shù)的來源、去處:
1、CPU內(nèi)部的通用寄存器:最快,與運(yùn)算器速度匹配,例如MOVER2,R12、內(nèi)存的一個(gè)單元:
次之,與運(yùn)算器速度不匹配,盡量少訪內(nèi),例如MOVE[R12],R13、外設(shè)接口中的寄存器:最慢,較少使用例如INPORT據(jù)指令中地址碼部分地址的個(gè)數(shù),指令格式可分為以下幾種:地址碼的設(shè)計(jì)安排
第四十三頁,共一百頁,2022年,8月28日44四地址指令
特點(diǎn):⑴直觀,明了⑵地址碼太長(zhǎng),指令字太長(zhǎng),信息利用率低⑶訪內(nèi)次數(shù)太多,執(zhí)行速度慢⑷下一條指令地址在指令中給出,程序轉(zhuǎn)移不方便,現(xiàn)已淘汰,只有早期的機(jī)器使用。
OPA1A2A3A4
第一操作數(shù)地址第二結(jié)果下一條指令地址設(shè)字長(zhǎng)42位OP6位每個(gè)D為9位尋址空間:29§指令格式的設(shè)計(jì)
第四十四頁,共一百頁,2022年,8月28日452.三地址指令
PC--下一條指令地址特點(diǎn):指令字仍較長(zhǎng),訪內(nèi)次數(shù)較多,一般大型機(jī)中用設(shè)字長(zhǎng)42位OP6位每個(gè)D為12位尋址空間:212OPA1A2A3
結(jié)果§指令格式的設(shè)計(jì)
第四十五頁,共一百頁,2022年,8月28日463.二地址指令
A1OPA2→A2
PC---下一條指令地址特點(diǎn):指令字較短,訪內(nèi)次數(shù)較少,較常使用設(shè)字長(zhǎng)42位OP6位每個(gè)D為18位尋址空間:218OPA1A2
§指令格式的設(shè)計(jì)
第四十六頁,共一百頁,2022年,8月28日474.單地址指令
ACCOPA1→ACC(累加器)ACC中既放操作數(shù),又放操作結(jié)果,如:加1、減1、移位等指令
PC---下一條指令地址特點(diǎn):指令字長(zhǎng)短、執(zhí)行時(shí)間快,在微型機(jī)中被廣泛使用。設(shè)字長(zhǎng)42位OP6位每個(gè)D為36位尋址空間:236OPA1
§指令格式的設(shè)計(jì)
第四十七頁,共一百頁,2022年,8月28日485.零地址指令
無需任何操作數(shù)如HALT、NOP(空轉(zhuǎn))等
所需操作數(shù)由堆棧提供OP§指令格式的設(shè)計(jì)
第四十八頁,共一百頁,2022年,8月28日49堆棧:一個(gè)特殊的存貯區(qū)域,數(shù)據(jù)存取時(shí),按照“先進(jìn)后出”的規(guī)律進(jìn)行
硬堆棧:寄存器堆。
軟堆棧:內(nèi)存中的指定區(qū)域。
堆棧兩端:固定:棧底
活動(dòng):棧頂,SP指針指示,一般棧底地址大于棧頂?shù)刂奉愋停鹤缘紫蛏稀⒆皂斚蛳?/p>
堆棧操作(自底向上):
壓棧:先修改SP,后存數(shù)據(jù)
出棧:先取出數(shù)據(jù),后修改SPSP總是指向棧頂單元第四十九頁,共一百頁,2022年,8月28日506.寄存型地址格式指令寄存器類型地址格式的指令中,操作數(shù)均放在寄存器中,也有單地址、二地址、三地址之分。
特點(diǎn):執(zhí)行指令時(shí)不用訪內(nèi),速度快
受寄存器個(gè)數(shù)的限制。OPR1R1OPACC→ACCR1OPR2→ACCOPR1R2OPR1R2R3R1OPR2→R3§指令格式的設(shè)計(jì)
第五十頁,共一百頁,2022年,8月28日51說明:上述六種指令格式,并非所有計(jì)算機(jī)都有零地址,單地址,二地址指令,具有指令短,執(zhí)行速度快,硬件實(shí)現(xiàn)簡(jiǎn)單等特點(diǎn),多為結(jié)構(gòu)較簡(jiǎn)單、字長(zhǎng)較短的小型機(jī)、微機(jī)所采用。二地址,三地址、四地址指令,具有功能強(qiáng),編程方便等特點(diǎn),多為字長(zhǎng)較長(zhǎng)的大、中型機(jī)所采用。但不能一概而論,因還與指令本身的功能有關(guān)。如停機(jī)指令,不管什么類型的計(jì)算機(jī),都有。§指令格式的設(shè)計(jì)
第五十一頁,共一百頁,2022年,8月28日52指令字長(zhǎng)三、指令字長(zhǎng)指令字長(zhǎng)是一條指令中所包含的二進(jìn)制位數(shù),等于操作碼長(zhǎng)度與地址碼長(zhǎng)度之和。
指令字長(zhǎng)與機(jī)器字長(zhǎng)有何關(guān)系?
無固定關(guān)系,指令字長(zhǎng)可以大于、等于、小于機(jī)器字長(zhǎng)。
一般來講:微、小型機(jī)中,指令字長(zhǎng)>機(jī)器字長(zhǎng)
大、中型機(jī)中,指令字長(zhǎng)≤機(jī)器字長(zhǎng)第五十二頁,共一百頁,2022年,8月28日53確定指令字長(zhǎng)的原則:
①
指令字長(zhǎng)盡可能短:節(jié)省內(nèi)存空間,提高執(zhí)行速度,提高代碼利用率;②
指令字長(zhǎng)等于字節(jié)的整數(shù)倍許多機(jī)器采用變字長(zhǎng)指令,但長(zhǎng)度取為字節(jié)的整數(shù)倍,以避免存貯空間的浪費(fèi)。指令字長(zhǎng)第五十三頁,共一百頁,2022年,8月28日指令字格式的優(yōu)化
為了不降低訪存取指令的速度,按整數(shù)邊界存儲(chǔ)。操作數(shù)地址的位數(shù)從尋址范圍看:越大越好用各種方法,壓縮操作碼的位數(shù)通過采用多種不同的尋址方式、地址制、地址形式和地址碼長(zhǎng)度以及多種指令字長(zhǎng),將它們與可變長(zhǎng)操作碼的優(yōu)化表示相結(jié)合,可構(gòu)成冗余度盡可能少的指令字?!熘噶罡袷降脑O(shè)計(jì)–地址碼第五十四頁,共一百頁,2022年,8月28日等長(zhǎng)地址碼發(fā)揮不出操作碼優(yōu)化表示的作用limax地址碼地址碼地址碼空白浪費(fèi)空白浪費(fèi)liminli第五十五頁,共一百頁,2022年,8月28日在定長(zhǎng)指令字內(nèi)實(shí)現(xiàn)多種地址制地址碼地址碼地址碼地址碼地址碼地址碼操作碼操作碼操作碼第五十六頁,共一百頁,2022年,8月28日基礎(chǔ):初步設(shè)計(jì)的指令集。目標(biāo):減少指令長(zhǎng)度,提高指令性能。優(yōu)化原則:采用高概率優(yōu)先思想,對(duì)高頻率指令,縮短指令長(zhǎng)度,提高效率,對(duì)低頻率指令,主要滿足功能要求;地址碼長(zhǎng)度富裕時(shí),采用不同的尋址方式或不同的地址制,增加功能;地址碼長(zhǎng)度緊張時(shí),采用特定的尋址方式或增加指令字長(zhǎng),滿足功能。尋址方式中必須支持使用頻率較高的尋址方式,相關(guān)參數(shù)必須滿足90%以上的使用頻率。第五十七頁,共一百頁,2022年,8月28日58指令尋址:如何找指令(PC)操作數(shù)尋址:如何找操作數(shù)本節(jié)的尋址:尋找操作數(shù)的地址地址分為形式地址:指令中給出的地址
有效地址:操作數(shù)的真正地址(物理地址)
尋址方式,與計(jì)算機(jī)硬件結(jié)構(gòu)密切相關(guān),對(duì)指令格式,功能也有很大影響。從程序關(guān)角度看,尋址方式與匯編程序設(shè)計(jì),高級(jí)語言的編譯程序設(shè)計(jì)的關(guān)系都極為密切?!?.4尋址方式
第五十八頁,共一百頁,2022年,8月28日591、立即尋址
指令的地址碼就是操作數(shù)。
特點(diǎn):
執(zhí)行指令時(shí)不訪內(nèi),速度快立即數(shù)的位數(shù)受字長(zhǎng)的限制OPD操作數(shù)尋址方式
第五十九頁,共一百頁,2022年,8月28日602、寄存器尋址
主機(jī)中設(shè)置了許多個(gè)寄存器,以存放操作數(shù)、中間運(yùn)算結(jié)果和最終結(jié)果。目的是為了提高運(yùn)算速度,因?qū)拇嫫鞯牟僮鞅葘?duì)內(nèi)存的操作快得多⑴寄存器直接尋址:Rn中放操作數(shù)
⑵寄存器間接尋址:Rn中放操作數(shù)地址
OPRi寄存器編號(hào)OPRn
OPRn
尋址方式
第六十頁,共一百頁,2022年,8月28日613、直接尋址
指令中的形式地址就是操作數(shù)的有效地址。
特點(diǎn):直觀尋址空間受限區(qū)分:指令的地址、指令中的地址OPD操作數(shù)地址尋址方式
第六十一頁,共一百頁,2022年,8月28日624、存儲(chǔ)器間接尋址
指令中的形式地址是操作數(shù)有效地址的地址。
OPD操作數(shù)地址的地址尋址方式
第六十二頁,共一百頁,2022年,8月28日63一次間址:形式地址是操作數(shù)地址的地址多次間址:指令中設(shè)間址特征位,此位為1,繼續(xù)間址,直至此位為0。特點(diǎn):執(zhí)行速度比直接尋址慢可擴(kuò)大尋址空間便于編程:改變操作數(shù),不用改指令,只改存貯單元內(nèi)容即可尋址方式
第六十三頁,共一百頁,2022年,8月28日64OP@D
…
有效地址…
操作數(shù)100100200400OP@D
…
一次間址二次間址12000400操作數(shù)尋址方式
第六十四頁,共一百頁,2022年,8月28日655、隱含尋址
ACCOP(D)→ACC,一操作數(shù)隱含在累加器ACC中6、變址尋址(IndexAddressing)
(IR)+D=有效地址EA
OPD操作數(shù)地址尋址方式
第六十五頁,共一百頁,2022年,8月28日667、基址尋址(BaseAddressing)
(BR)+D=有效地址EA
基址尋址與變址尋址的比較:相同:有效地址的形成方式同,都能擴(kuò)大尋址空間不同:尋址方式
第六十六頁,共一百頁,2022年,8月28日67OS定OPD小
大
BR+
操作數(shù)基址寄存器BR偏移量偏移量用戶定OPD大
小
IR+操作數(shù)變址寄存器IR第六十七頁,共一百頁,2022年,8月28日68不同:基址尋址中,基址寄存器BX提供基準(zhǔn)量,形式地址提供偏移量,這個(gè)偏移量位數(shù)較短,而變址尋址中,變址寄存器提供變址量,形式地址提供基準(zhǔn)量,這個(gè)基準(zhǔn)量位數(shù)較長(zhǎng),足以表示整個(gè)存貯空間。
變址:變址值(?。?形式地址(大)=有效地址
基址:基址值(大)+形式地址(?。?有效地址基址寄存器的內(nèi)容不由用戶確定,而由操作系統(tǒng)確定,一般是在把用戶程序的邏輯地址轉(zhuǎn)變?yōu)榇尜A器的物理地址時(shí)用,而變址寄存器的值由用戶確定,且可隨意改變。尋址方式
第六十八頁,共一百頁,2022年,8月28日698、復(fù)合尋址
變址與間址的復(fù)合先變址后間址:((IX)+D)——有效地址先間后變:(D)+(IX)——有效地址例如:IX先變址后間址:
000010+100000=100010
有效地址:000011
操作數(shù):
000001
先間址后變址:(D)+(IX)=100100+000010=100110
000010OP100000000011100000100010100110000001100100000011000111尋址方式
第六十九頁,共一百頁,2022年,8月28日709、相對(duì)尋址有效地址EA=(PC)+D
主要用于轉(zhuǎn)移指令
與變址尋址的區(qū)別:變址寄存器(用戶定)可以是多個(gè)寄存器中的一個(gè),而相對(duì)尋址中的寄存器已確定為PC,故無須在指令中指定。尋址方式
第七十頁,共一百頁,2022年,8月28日7110、頁面尋址(擴(kuò)充尋址)擴(kuò)充地址寄存器內(nèi)容作高位---頁面地址形式地址作低位---頁內(nèi)地址二者聯(lián)合---有效地址頁面地址:
全0:零、基頁尋地
當(dāng)前頁:PC高位
頁寄存器:
擴(kuò)充地址寄存器OPD頁面地址
頁內(nèi)地址操作數(shù)有效地址尋址方式
第七十一頁,共一百頁,2022年,8月28日72自增型寄存器間址
EA=(Ri),Ri=(Ri)+1(或2)
先操作,后修改自減型寄存器間址
Ri=(Ri)-1(或2),EA=(Ri)
先修改,后操作OPRi寄存器編號(hào)尋址方式
第七十二頁,共一百頁,2022年,8月28日7311、堆棧尋址
通過堆棧指針SP來指示操作數(shù)地址堆棧操作:
入棧操作:
指令:PUSHA
操作:SP-1→SP,(A)→SP
出棧操作:
指令:
POPA
操作:
SP+1→SP
尋址方式
第七十三頁,共一百頁,2022年,8月28日74說明:1、
一臺(tái)機(jī)器,可能只用其中幾種尋址方式;2、機(jī)器不同,即使尋址方式相同,其表達(dá)方式和含義也可不同。如:頁面尋址:
頁面地址:擴(kuò)充地址寄存器的內(nèi)容;
PC的高位。頁面地址
頁內(nèi)地址尋址方式
第七十四頁,共一百頁,2022年,8月28日75思考:在設(shè)計(jì)機(jī)器時(shí),一般追求指令格式可變:指令長(zhǎng)度可變,操作碼長(zhǎng)度可變,地址碼長(zhǎng)度可變,要使這三個(gè)都可變,有什么利與弊?指令字長(zhǎng)固定:控制簡(jiǎn)單,浪費(fèi)存貯空間指令字長(zhǎng)可變:節(jié)約存貯空間,提高機(jī)器效率,但控制復(fù)雜,成本高。第七十五頁,共一百頁,2022年,8月28日7.5精簡(jiǎn)指令集計(jì)算機(jī)CISC指令系統(tǒng)存在的主要問題RISC的定義與特點(diǎn)RISC思想的精華RISC采用的基本技術(shù)RISC技術(shù)存在的不足和未來的發(fā)展趨勢(shì)CISC和RISC指令風(fēng)格-比較第七十六頁,共一百頁,2022年,8月28日7.5精簡(jiǎn)指令集計(jì)算機(jī)早期的計(jì)算機(jī)指令集的發(fā)展趨勢(shì)–改進(jìn)計(jì)算機(jī)的系統(tǒng)結(jié)構(gòu),增強(qiáng)指令系統(tǒng)的功能。幾種典型CISC機(jī)的指令系統(tǒng)特征如表所示第七十七頁,共一百頁,2022年,8月28日CISC的特點(diǎn)為節(jié)省存儲(chǔ)空間,強(qiáng)調(diào)高代碼密度;
指令格式不固定,指令可長(zhǎng)可短,操作數(shù)可多可少;
尋址方式復(fù)雜多樣,操作數(shù)可來自寄存器也可來自存儲(chǔ)器;采用微程序控制,執(zhí)行每條指令均需完成一個(gè)微指令序列;CPI>5,指令越復(fù)雜,CPI越大。第七十八頁,共一百頁,2022年,8月28日重要的少數(shù)和瑣碎的多數(shù)
—80/20原理意大利經(jīng)濟(jì)學(xué)家菲爾弗雷多·帕累托提出:–80%的價(jià)值來自20%的因子,20%的價(jià)值來自80%的因子。80%的銷售額來自于20%的客戶80%的電話來自于20%的發(fā)話人80%的看電視時(shí)間花在20%的節(jié)目上80%的菜是重復(fù)20%的菜色80%的教師輔導(dǎo)時(shí)間花費(fèi)在20%的學(xué)生上80%的閱報(bào)時(shí)間花費(fèi)在20%的版面上80%的財(cái)富掌握在20%人的手中80%的地球資源被20%的人消費(fèi)第七十九頁,共一百頁,2022年,8月28日復(fù)雜指令集計(jì)算機(jī)它的指令系統(tǒng)真的合理嗎?IBM公司率先組織力量研究指令系統(tǒng)的合理性問題,并于1979年研制出世界上第一臺(tái)RISC計(jì)算機(jī)IBM801。第八十頁,共一百頁,2022年,8月28日CISC指令系統(tǒng)存在的主要問題20%與80%規(guī)律在CISC中,大約20%的指令占據(jù)了80%的處理機(jī)執(zhí)行時(shí)間。8088處理機(jī)的指令種類大約100種前11種(11%)指令的使用頻度已經(jīng)超過80%前8種(8%)指令的運(yùn)行時(shí)間已經(jīng)超過80%前20種(20%)指令:使用頻度達(dá)到91.1%運(yùn)行時(shí)間達(dá)到97.72%其余80%的指令:使用頻度只有8.9%2.28%的處理機(jī)運(yùn)行時(shí)間第八十一頁,共一百頁,2022年,8月28日第八十二頁,共一百頁,2022年,8月28日CISC指令系統(tǒng)存在的主要問題2.VLSI技術(shù)的發(fā)展引起的問題VLSI工藝要求規(guī)整性,RISC正好適應(yīng)了VLSI工藝的要求主存與控存的速度相當(dāng)簡(jiǎn)單指令沒有必要用微程序?qū)崿F(xiàn),復(fù)雜指令用微程序?qū)崿F(xiàn)與用簡(jiǎn)單指令組成的子程序?qū)崿F(xiàn)沒有多大區(qū)別由于VLSI的集成度迅速提高,使得生產(chǎn)單芯片處理機(jī)成為可能。第八十三頁,共一百頁,2022年,8月28日3.軟硬件的功能分配問題復(fù)雜的指令使指令的執(zhí)行周期大大加長(zhǎng),CISC處理機(jī)的指令平均執(zhí)行周期都在4以上。在CISC中,增強(qiáng)指令系統(tǒng)功能,簡(jiǎn)化了軟件,硬件復(fù)雜了。CISC指令系統(tǒng)存在的主要問題例如,1981年,Patterson等人研制了32位的RISCI微處理器,總共31種指令,3種數(shù)據(jù)類型,兩種尋址方式,研制周期10個(gè)月,比當(dāng)時(shí)最先進(jìn)的MC68000和Z8002快3至4倍。1983年,又研制了RISCII,指令種類擴(kuò)充到39種,單一變址尋址方式,通用寄存器138個(gè)。第八十四頁,共一百頁,2022年,8月28日4.編譯上造成的問題
由于指令系統(tǒng)龐大,高級(jí)語言編譯程序選擇目標(biāo)指令的范圍比較大,難以優(yōu)化編譯、生成高效率的機(jī)器語言程序,而且,會(huì)使編譯程序復(fù)雜化
5.不利于先進(jìn)指令級(jí)并行技術(shù)的采用CISC指令系統(tǒng)存在的主要問題第八十五頁,共一百頁,2022年,8月28日7.5.1RISC卡內(nèi)基梅隆(CarnegieMellon)大學(xué):–1.大多數(shù)指令在單周期內(nèi)完成;–2.采用LOAD/STORE;–3.硬布線控制邏輯;–4.減少指令和尋址方式的種類;–5.固定的指令格式;–6.注重編譯的優(yōu)化。一、RISC的定義第八十六頁,共一百頁,2022年,8月28日90年代初,IEEE的MichaelSlater對(duì)RISC描述:(1)RISC為提高流水線效率,應(yīng)具有下述特征:簡(jiǎn)單而統(tǒng)一格式的指令譯碼大部分指令可以單周期執(zhí)行完成只有LOAD和STORE指令可以訪問存儲(chǔ)器簡(jiǎn)單的尋址方式采用延遲轉(zhuǎn)移技術(shù)采用LOAD延遲技術(shù)(2)為使編譯器便于生成優(yōu)化代碼,應(yīng)具有:三地址指令格式,較多的寄存器,對(duì)稱的指令格式。一、RISC的定義第八十七頁,共一百頁,2022年,8月28日二、RISC思想的精華CISC中的一條指令,在RISC中要用多條指令來實(shí)現(xiàn),為什么RISC執(zhí)行程序的速度比CISC還要快呢?減少CPI是RISC思想的精華。第八十八頁,共一百頁,2022年,8月28日程序在計(jì)算機(jī)上的執(zhí)行時(shí)間可用如下公式來計(jì)算:P=I·CPI·T其中:P是執(zhí)行這個(gè)程序所使用的總的時(shí)間;I是這個(gè)程序所需執(zhí)行的總的指令條數(shù);CPI(CyclesPerInstruction)是每條指令執(zhí)行的平均周期數(shù)T是一個(gè)周期的時(shí)間長(zhǎng)度。二、RISC思想的精華第八十九頁,共一百頁,2022年,8月28日結(jié)論1:對(duì)于程序所執(zhí)行的總的指令的條數(shù)I,RISC的指令的長(zhǎng)度I只比CISC的長(zhǎng)30%~40%結(jié)論2:指令的平均執(zhí)行周期數(shù)CPI:RISC比CISC少2倍~10結(jié)論3:對(duì)于一個(gè)周期的時(shí)間長(zhǎng)度T由于采用硬連技術(shù),RISC比CISC要快。*CISC用微程序?qū)崿F(xiàn),一條指令,多個(gè)周期完成,平均4-6之間;*RISC大多數(shù)指令能夠都是單周期完成的,SPARC處理器的CPI在之間。第九十頁,共一百頁,2022年,8月28日綜上: RISC的速度要比CISC快3倍左右。關(guān)鍵是RISC的CPI減小了。硬件方面:采用硬布線控制邏輯;減少指令和尋址方式的種類;使用固定的指令格式;采用LOAD/STORE結(jié)構(gòu);指令執(zhí)行過程中設(shè)置多級(jí)流水線等;軟件方面:十分強(qiáng)調(diào)優(yōu)化編譯技術(shù)的作用。第九十一頁,共一百頁,2022年,8月28日RISC設(shè)計(jì)思想也可以用于CISC中:x86處理機(jī)的CPI在不斷縮小,8088的CPI大于20,80286的CPI大約是5.5,80386的CPI進(jìn)一步減小到4左右,80486的CPI已
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店廚房承包合同范文
- 銷售總監(jiān)聘用合同
- 小型建筑承包合同模板
- 金融期貨合同年
- 酒店用品采購合同
- 抗轉(zhuǎn)發(fā)式干擾雷達(dá)信號(hào)設(shè)計(jì)與處理方法研究
- 勞動(dòng)合同終止通知書三篇
- 隱蔽通信中視覺內(nèi)容隱私保護(hù)方法研究
- 2025年北京貨運(yùn)從業(yè)資格證考試試題及答案
- 《股票投資培訓(xùn)提綱》課件
- 高考語文閱讀兒童視角的作用專項(xiàng)訓(xùn)練(含答案)
- 保障性住房配套公建工程項(xiàng)目可研報(bào)告
- 服務(wù)人員隊(duì)伍穩(wěn)定措施
- 支氣管鏡護(hù)理測(cè)試題
- 大連理工大學(xué)信封紙
- 圖形創(chuàng)意(高職藝術(shù)設(shè)計(jì))PPT完整全套教學(xué)課件
- 北京版小學(xué)英語必背單詞
- 藝術(shù)課程標(biāo)準(zhǔn)(2022年版)
- 2023年全國4月高等教育自學(xué)考試管理學(xué)原理00054試題及答案新編
- 稀土配合物和量子點(diǎn)共摻雜構(gòu)筑發(fā)光軟材料及其熒光性能研究
- JJG 921-2021環(huán)境振動(dòng)分析儀
評(píng)論
0/150
提交評(píng)論