計(jì)算機(jī)組成原理第4章_第1頁
計(jì)算機(jī)組成原理第4章_第2頁
計(jì)算機(jī)組成原理第4章_第3頁
計(jì)算機(jī)組成原理第4章_第4頁
計(jì)算機(jī)組成原理第4章_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1第四章第四章 指令系統(tǒng)指令系統(tǒng) 2 指令系統(tǒng)定義:指令系統(tǒng)定義: 機(jī)器指令機(jī)器指令要求要求某種運(yùn)算或操作的某種運(yùn)算或操作的命令命令; 指令系統(tǒng)指令系統(tǒng)所有機(jī)器指令的集合所有機(jī)器指令的集合。 指令系統(tǒng)與軟硬件關(guān)系:指令系統(tǒng)與軟硬件關(guān)系:4.1 4.1 指令系統(tǒng)組成指令系統(tǒng)組成指令系統(tǒng)指令系統(tǒng)按約定形成按約定形成按約定實(shí)現(xiàn)按約定實(shí)現(xiàn)計(jì)算機(jī)硬件計(jì)算機(jī)硬件計(jì)算機(jī)軟件計(jì)算機(jī)軟件應(yīng)用需求應(yīng)用需求相一致相一致執(zhí)行軟件執(zhí)行軟件應(yīng)用結(jié)果應(yīng)用結(jié)果 指令系統(tǒng)是指令系統(tǒng)是軟硬件交界面軟硬件交界面3一、指令功能一、指令功能1 1、指令的操作數(shù)、指令的操作數(shù) * *操作數(shù)類型:操作數(shù)類型:所有種類所有種類的的數(shù)據(jù)表示數(shù)

2、據(jù)表示, 通常有定點(diǎn)通常有定點(diǎn)/ /浮點(diǎn)數(shù)、邏輯數(shù)、字符、浮點(diǎn)數(shù)、邏輯數(shù)、字符、等;等; * *操作數(shù)長度:操作數(shù)長度:部分種類部分種類有有幾種長度幾種長度, 如定點(diǎn)如定點(diǎn)/ /浮點(diǎn)數(shù)及邏輯數(shù)等浮點(diǎn)數(shù)及邏輯數(shù)等42 2、指令的操作、指令的操作 * *指令操作類型指令操作類型軟件中軟件中使用頻率較高使用頻率較高的的基本操作基本操作; 如數(shù)據(jù)傳送、算邏運(yùn)算、轉(zhuǎn)移控制等種類如數(shù)據(jù)傳送、算邏運(yùn)算、轉(zhuǎn)移控制等種類 課件約定課件約定 第第A A個(gè)寄存器個(gè)寄存器的的地址地址用用RARA表示、表示、內(nèi)容內(nèi)容用用(RA)(RA)表示;表示; 第第A A個(gè)主存單元個(gè)主存單元的的地址地址用用AA表示、表示、內(nèi)容內(nèi)容

3、用用AA表示;表示; 操作操作的的源操作數(shù)源操作數(shù)用內(nèi)容表示、用內(nèi)容表示、目標(biāo)操作數(shù)目標(biāo)操作數(shù)用地址表示用地址表示(1)(1)數(shù)據(jù)傳送數(shù)據(jù)傳送 * *操作功能:操作功能:REGREG、主存、主存、I/OI/O設(shè)備間的數(shù)據(jù)傳送;設(shè)備間的數(shù)據(jù)傳送; 如如 R0(R1)R0(R1)、R00100HR00100H,各部件均可為目標(biāo)操作數(shù),各部件均可為目標(biāo)操作數(shù) * *操作數(shù):操作數(shù):8b/16b/8b/16b/的的信息信息( (數(shù)值數(shù)值/ /字符字符/ /地址等地址等) ); * *操作數(shù)個(gè)數(shù):操作數(shù)個(gè)數(shù):2 2個(gè)個(gè)無需區(qū)分?jǐn)?shù)據(jù)類型無需區(qū)分?jǐn)?shù)據(jù)類型( (無數(shù)據(jù)運(yùn)算無數(shù)據(jù)運(yùn)算) )5(2)(2)算術(shù)邏輯

4、運(yùn)算算術(shù)邏輯運(yùn)算 * *操作功能:操作功能:算術(shù)運(yùn)算算術(shù)運(yùn)算加、減、乘、除、加、減、乘、除、+1+1、-1-1、求補(bǔ)等;、求補(bǔ)等; 如:如:R0(R1)+0100HR0(R1)+0100H、R2(R2)+1R2(R2)+1 邏輯運(yùn)算邏輯運(yùn)算與、或、非等;與、或、非等; 如:如:R0(R0)&(R1)R0(R0)&(R1)、R0(R0)R0(R0) * *操作數(shù):操作數(shù):算術(shù)運(yùn)算算術(shù)運(yùn)算為為8b/16b/8b/16b/的有符號(hào)的有符號(hào)/ /無符號(hào)定點(diǎn)數(shù),無符號(hào)定點(diǎn)數(shù), 邏輯運(yùn)算邏輯運(yùn)算為為8b/16b/8b/16b/邏輯數(shù),邏輯數(shù), 源操作數(shù)、目標(biāo)操作數(shù)源操作數(shù)、目標(biāo)操作數(shù)的數(shù)據(jù)

5、類型應(yīng)相同;的數(shù)據(jù)類型應(yīng)相同; * *操作數(shù)個(gè)數(shù):操作數(shù)個(gè)數(shù):1 13 3個(gè)個(gè)( (如如+1+1、CA+BCA+B、AA+B)AA+B); * *操作結(jié)果狀態(tài):操作結(jié)果狀態(tài):Z(Z(是否為零是否為零) )、S(S(是否為負(fù)數(shù)是否為負(fù)數(shù)) )、 V(V(是否溢出是否溢出) )、C(C(是否有進(jìn)位是否有進(jìn)位/ /借位借位) )等等 狀態(tài)產(chǎn)生與保存狀態(tài)產(chǎn)生與保存由由ALUALU產(chǎn)生、用產(chǎn)生、用狀態(tài)寄存器狀態(tài)寄存器保存保存關(guān)系運(yùn)算關(guān)系運(yùn)算= =算術(shù)運(yùn)算算術(shù)運(yùn)算+ +結(jié)果狀態(tài)結(jié)果狀態(tài)+ +邏輯運(yùn)算邏輯運(yùn)算6(3)(3)轉(zhuǎn)移操作轉(zhuǎn)移操作 * *操作功能:操作功能:改變程序的邏輯順序改變程序的邏輯順序( (

6、即下條指令地址即下條指令地址PC)PC), 有條件轉(zhuǎn)移、無條件轉(zhuǎn)移、調(diào)用、返回等種類;有條件轉(zhuǎn)移、無條件轉(zhuǎn)移、調(diào)用、返回等種類; * *操作數(shù):操作數(shù):顯式顯式指令的指令的絕對(duì)地址絕對(duì)地址或或相對(duì)地址相對(duì)地址( (偏移量偏移量) ), 隱式隱式狀態(tài)寄存器的狀態(tài)寄存器的狀態(tài)狀態(tài)、堆棧的、堆棧的頂部?jī)?nèi)容頂部?jī)?nèi)容; * *顯式操作數(shù)個(gè)數(shù):顯式操作數(shù)個(gè)數(shù):1 1個(gè)或個(gè)或0 0個(gè)個(gè)7(4)(4)移位操作移位操作 * *操作功能:操作功能:邏輯左邏輯左/ /右移、算術(shù)左右移、算術(shù)左/ /右移、循環(huán)左右移、循環(huán)左/ /右移等;右移等; * *操作數(shù):操作數(shù):操作數(shù)據(jù)操作數(shù)據(jù)8b/16b/8b/16b/的定點(diǎn)

7、數(shù)或邏輯數(shù),的定點(diǎn)數(shù)或邏輯數(shù), 移動(dòng)位數(shù)移動(dòng)位數(shù)8b/16b/8b/16b/的無符號(hào)定點(diǎn)數(shù);的無符號(hào)定點(diǎn)數(shù); * *操作數(shù)個(gè)數(shù):操作數(shù)個(gè)數(shù):2 2個(gè)個(gè)(5)(5)其他類型操作其他類型操作 浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算、字符串處理等浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算、字符串處理等8二、指令格式二、指令格式 * *指令格式組成:指令格式組成:由操作碼、地址碼兩個(gè)字段組成由操作碼、地址碼兩個(gè)字段組成操作碼字段操作碼字段地址碼字段地址碼字段 * *指令格式的相關(guān)參數(shù):指令格式的相關(guān)參數(shù):即需約定的內(nèi)容即需約定的內(nèi)容OPOPA A1 1A A2 2目標(biāo)地址目標(biāo)地址(A(A1 1) OP (A) OP (A2 2) )操作數(shù)類

8、型操作數(shù)類型( (長度長度)?)?操作類型?操作類型?A1/A2?A1/A2?地址個(gè)數(shù)地址個(gè)數(shù)? ?操作數(shù)對(duì)應(yīng)的操作數(shù)對(duì)應(yīng)的部件及地址部件及地址? ?下條指下條指令地址令地址? ? * *指令系統(tǒng)組成:指令系統(tǒng)組成:由若干種機(jī)器指令格式組成由若干種機(jī)器指令格式組成第第1 1種:種:第第2 2種:種:第第n n種:種:A A1 1 A A2 2OPOP1 1A AOPOP2 2A A1 1 A A2 2OPOPn n注:注:各種指令操作碼須各種指令操作碼須互不相同互不相同! 操作數(shù)類型為硬件操作數(shù)類型為硬件數(shù)據(jù)表示數(shù)據(jù)表示!91 1、操作碼字段、操作碼字段 * *功能:功能:用編碼指明用編碼指明

9、( (約定約定) )操作的性質(zhì)操作的性質(zhì), , 包括操作類型、操作數(shù)類型及長度包括操作類型、操作數(shù)類型及長度3 3個(gè)方面;個(gè)方面;102 2、地址碼字段、地址碼字段 * *功能:功能:用編碼指明用編碼指明各操作數(shù)的地址、源各操作數(shù)的地址、源/ /目標(biāo)屬性,目標(biāo)屬性, 指明指明下條指令地址;下條指令地址; * *地址碼個(gè)數(shù):地址碼個(gè)數(shù): 指令系統(tǒng)中指令系統(tǒng)中規(guī)定規(guī)定地址碼個(gè)數(shù)的最大值,地址碼個(gè)數(shù)的最大值, 不同指令中不同指令中用操作碼用操作碼約定約定地址碼地址碼個(gè)數(shù)個(gè)數(shù); * *地址碼源地址碼源/ /目標(biāo)屬性:目標(biāo)屬性: 隱含隱含約定第一個(gè)約定第一個(gè)( (或最后一個(gè)或最后一個(gè)) )地址碼,地址碼

10、, 顯式顯式指明;指明; * *操作數(shù)地址的表示:操作數(shù)地址的表示:下小節(jié)討論;下小節(jié)討論; * *下條指令地址的表示:下條指令地址的表示: 當(dāng)前指令為順序型當(dāng)前指令為順序型PC=(PC)+PC=(PC)+當(dāng)前指令長度當(dāng)前指令長度,可可隱含表示隱含表示 當(dāng)前指令為轉(zhuǎn)移型當(dāng)前指令為轉(zhuǎn)移型PC=IRPC=IR中的中的( (地址碼地址碼) ), 需需顯式表示;顯式表示;8113 3、指令字、指令字 * *組成:組成:由操作碼及地址碼組成,操作碼在指令字前部由操作碼及地址碼組成,操作碼在指令字前部;零地址指令:零地址指令:?jiǎn)蔚刂分噶睿簡(jiǎn)蔚刂分噶睿弘p地址指令:雙地址指令:三地址指令:三地址指令:OPOP

11、OPOPA AOPOPA A1 1A A2 2OPOPA A1 1A A2 2A A3 3 * *指令字類型:指令字類型: 按地址個(gè)數(shù)分按地址個(gè)數(shù)分 指令字長指令字長 機(jī)器字長機(jī)器字長 按指令字長分按指令字長分指與機(jī)器字長的關(guān)系指與機(jī)器字長的關(guān)系 單字長指令、半字長指令、雙字長指令等單字長指令、半字長指令、雙字長指令等 * *指令字結(jié)構(gòu):指令字結(jié)構(gòu): ( (指令系統(tǒng)特性指令系統(tǒng)特性) ) 定長指令字結(jié)構(gòu)定長指令字結(jié)構(gòu)不同指令的指令字長不同指令的指令字長完全相同完全相同, 變長指令字結(jié)構(gòu)變長指令字結(jié)構(gòu)不同指令的指令字長不同指令的指令字長不盡相同不盡相同11124.2 4.2 操作數(shù)存放與尋址方式

12、操作數(shù)存放與尋址方式一、操作數(shù)的存放方式一、操作數(shù)的存放方式1 1、數(shù)據(jù)在、數(shù)據(jù)在REGREG中的存放方式中的存放方式 基礎(chǔ)基礎(chǔ)通常通常REGREG長度長度CPUCPU字長字長,REGREG按其數(shù)量進(jìn)行編址。按其數(shù)量進(jìn)行編址。132 2、數(shù)據(jù)在存儲(chǔ)器中的存放方式、數(shù)據(jù)在存儲(chǔ)器中的存放方式 基礎(chǔ)基礎(chǔ)存儲(chǔ)字長存儲(chǔ)字長最短的最短的數(shù)據(jù)長度數(shù)據(jù)長度; * *存放方式:存放方式:存放在存放在連續(xù)存儲(chǔ)單元連續(xù)存儲(chǔ)單元中,中, 用用最小單元地址最小單元地址表示數(shù)據(jù)地址;表示數(shù)據(jù)地址; 次序次序有有大端次序大端次序和和小端次序小端次序兩種方式,可任選一種兩種方式,可任選一種N+1N+1N+2N+2N+3N+3

13、B BB BB BB B數(shù)數(shù)據(jù)據(jù)長長度度邊界不對(duì)齊方式邊界不對(duì)齊方式多體存儲(chǔ)器多體存儲(chǔ)器地址地址 3 03 0 7 4 7 411 811 815121512C(N=3)C(N=3)A(N=0)A(N=0)B(N=1)B(N=1)C(C(續(xù)續(xù)) )D(N=7)D(N=7)D(D(續(xù)續(xù)) )E(N=9)E(N=9)數(shù)數(shù)F(N=10)F(N=10)邊界對(duì)齊方式邊界對(duì)齊方式A(N=0)A(N=0)B(N=2)B(N=2)C(N=4)C(N=4)D(N=8)D(N=8)E(N=10)E(N=10)F(N=12)F(N=12)多體存儲(chǔ)器多體存儲(chǔ)器 邊界邊界有有邊界不對(duì)齊邊界不對(duì)齊和和邊界對(duì)齊邊界對(duì)齊兩種

14、方式,常兩種方式,常選對(duì)齊方式選對(duì)齊方式143 3、數(shù)據(jù)、數(shù)據(jù)( (常數(shù)常數(shù)) )在指令中的存放方式在指令中的存放方式154 4、堆棧存取方式、堆棧存取方式 * *堆棧:堆棧:堆棧是一種堆棧是一種按按“后進(jìn)先出后進(jìn)先出”順序順序 存取存取的存儲(chǔ)區(qū);的存儲(chǔ)區(qū); * *堆棧存取方式:堆棧存取方式:類似于圓桶中放入類似于圓桶中放入/ /取出木板取出木板 操作步驟操作步驟入棧:入棧:先先移動(dòng)移動(dòng)棧頂棧頂,再,再在棧頂在棧頂寫入寫入數(shù)據(jù),數(shù)據(jù), 出棧:出棧:先先從棧頂從棧頂讀出讀出數(shù)據(jù),再數(shù)據(jù),再移動(dòng)移動(dòng)棧頂棧頂; 操作類型操作類型入棧入棧(PUSH/(PUSH/壓棧壓棧) )、出棧、出棧(POP/(P

15、OP/彈出彈出) );空堆棧空堆棧A AA A入棧入棧B B入棧入棧出棧出棧(B)(B)A AB BA A 存取特征存取特征后進(jìn)先出順序、不按地址訪問,后進(jìn)先出順序、不按地址訪問, 破壞性讀出破壞性讀出( (只對(duì)棧頂操作只對(duì)棧頂操作) );616二、尋址方式二、尋址方式 * *尋址方式:尋址方式:形成形成當(dāng)前指令操作數(shù)或操作數(shù)地址當(dāng)前指令操作數(shù)或操作數(shù)地址 及及下條指令地址下條指令地址的方式;的方式; * *存放數(shù)據(jù)的部件:存放數(shù)據(jù)的部件:寄存器、主存、寄存器、主存、I/OI/O設(shè)備,設(shè)備, 堆棧、堆棧、IR(IR(指令中指令中) ); * *存放指令的部件:存放指令的部件:主存;主存;常采用

16、獨(dú)立編址常采用獨(dú)立編址( (均從零開始均從零開始) )方式方式 * *數(shù)據(jù)數(shù)據(jù)/ /指令的指令的MEMMEM地址:地址: 有效地址有效地址(EA)(EA) 物理地址物理地址(PA)(PA) 按地址訪問按地址訪問不按地址訪問不按地址訪問8171 1、指令尋址方式、指令尋址方式 * *指令種類:指令種類:順序型指令、轉(zhuǎn)移型指令;順序型指令、轉(zhuǎn)移型指令; * *指令尋址方式:指令尋址方式: 順序?qū)ぶ讽樞驅(qū)ぶ酚糜陧樞蛐椭噶畹南聴l指令尋址用于順序型指令的下條指令尋址 隱含尋址隱含尋址,下條指令下條指令EA=(PC)+EA=(PC)+“1 1”; 跳躍尋址跳躍尋址用于轉(zhuǎn)移型指令的下條指令尋址用于轉(zhuǎn)移型指令

17、的下條指令尋址 直接尋址直接尋址,下條指令下條指令EA=(EA=(地址碼地址碼) ); 相對(duì)尋址相對(duì)尋址,下條指令下條指令EA=(PC)+EA=(PC)+偏移量;偏移量;顯式顯式 隱含尋址隱含尋址,下條指令下條指令EA=(EA=(棧頂棧頂) )或或( (特定部件特定部件) )6182 2、數(shù)據(jù)尋址方式、數(shù)據(jù)尋址方式 * *目標(biāo):目標(biāo):縮短縮短指令中地址碼長度,指令中地址碼長度,方便方便編譯程序生成代碼編譯程序生成代碼 * *地址碼:地址碼:由部件及地址形成方式類型、地址形成參數(shù)組成由部件及地址形成方式類型、地址形成參數(shù)組成(1)(1)立即尋址方式立即尋址方式 常數(shù)操作數(shù)常數(shù)操作數(shù)為為形式地址本

18、身形式地址本身,即操作數(shù)存放在指令中。,即操作數(shù)存放在指令中。(2)(2)寄存器尋址方式寄存器尋址方式 REGREG操作數(shù)地址操作數(shù)地址為為形式地址本身形式地址本身,即數(shù)據(jù),即數(shù)據(jù)REGREG編號(hào)。編號(hào)。操作數(shù)操作數(shù)數(shù)據(jù)寄存器數(shù)據(jù)寄存器數(shù)據(jù)數(shù)據(jù)REGREG號(hào)號(hào)操作碼操作碼 F2 AF2 A操作數(shù)操作數(shù)=(A)=(A)尋址方式位尋址方式位I I 形式地址形式地址A A地址碼組成:地址碼組成:操作數(shù)或地址:操作數(shù)或地址:= =函數(shù)函數(shù)( (尋址方式位尋址方式位I I,形式地址,形式地址A)A)21操作碼操作碼 F1 AF1 A操作數(shù)操作數(shù)=A=A操作數(shù)操作數(shù)19(3)(3)直接尋址方式直接尋址方式

19、 主存操作數(shù)主存操作數(shù)EAEA為為形式地址本身形式地址本身,即程序邏輯地址。,即程序邏輯地址。(4)(4)間接尋址方式間接尋址方式 主存操作數(shù)主存操作數(shù)EAEA為為形式地址對(duì)應(yīng)的形式地址對(duì)應(yīng)的MEMMEM內(nèi)容內(nèi)容。 程序段程序段主存主存 操作數(shù)操作數(shù)邏輯地址邏輯地址操作碼操作碼 F3 AF3 A操作數(shù)操作數(shù)EAEA=A=A主存主存邏輯地址邏輯地址操作數(shù)操作數(shù)A A操作數(shù)操作數(shù)EAEA=A=A=A=A操作碼操作碼 F4 AF4 A 注:注:主存操作數(shù)尋址方式主存操作數(shù)尋址方式多數(shù)可用作多數(shù)可用作指令尋址方式指令尋址方式 注:注:因需要因需要2 2次訪存次訪存,很少使用,很少使用( (適合于指向指

20、針的指針操作適合于指向指針的指針操作) )20(5)(5)寄存器間接尋址方式寄存器間接尋址方式 主存操作數(shù)主存操作數(shù)EAEA為形式地址對(duì)應(yīng)的為形式地址對(duì)應(yīng)的地址地址REGREG內(nèi)容內(nèi)容。 A A地址寄存器地址寄存器地址地址REGREG號(hào)號(hào)操作碼操作碼 F5 AF5 A操作數(shù)操作數(shù)EAEA=(A)=(A)程序段程序段主存主存 操作數(shù)操作數(shù)(6)(6)基址尋址方式基址尋址方式 主存操作數(shù)主存操作數(shù)EAEA為為基址基址REGREG內(nèi)容加上形式地址內(nèi)容加上形式地址的結(jié)果。的結(jié)果。 注:注:地址地址REGREG包含包含基址基址REGREG和和變址變址REGREG兩種類型;兩種類型; 基址尋址基址尋址對(duì)存

21、儲(chǔ)管理特別有效對(duì)存儲(chǔ)管理特別有效( (基址基址REGREG不變不變) )F6 B F6 B A A操作數(shù)操作數(shù)EAEA=(B)+A=(B)+A操作碼操作碼程序段程序段主存主存操作數(shù)操作數(shù) 地址地址A A基址寄存器基址寄存器基址基址REGREG基址基址REGREG號(hào)號(hào)2421(8)(8)相對(duì)尋址方式相對(duì)尋址方式 主存中指令主存中指令EAEA為為PCPC內(nèi)容加上偏移量?jī)?nèi)容加上偏移量的結(jié)果。的結(jié)果。PCPC寄存器寄存器XXXX操作碼操作碼 F8 AF8 A指令指令EAEA=(PC)+A=(PC)+A程序段程序段主存主存下條指令下條指令(7)(7)變址尋址方式變址尋址方式 主存操作數(shù)主存操作數(shù)EAEA

22、為為變址變址REGREG內(nèi)容加上形式地址內(nèi)容加上形式地址的結(jié)果。的結(jié)果。F7 I AF7 I A操作數(shù)操作數(shù)EAEA=(I)+A=(I)+A操作碼操作碼數(shù)據(jù)段數(shù)據(jù)段主存主存操作數(shù)操作數(shù) 地址地址A A變址寄存器變址寄存器起址起址A A變址變址REGREG號(hào)號(hào)22(9)(9)隱含尋址方式隱含尋址方式 操作數(shù)地址操作數(shù)地址由由指令操作碼指令操作碼隱含約定隱含約定,與地址碼無關(guān)。,與地址碼無關(guān)。 * *隱含方式:隱含方式:操作數(shù)操作數(shù)隱含在某隱含在某REGREG中中; 如如:(a)(a)基于累加器基于累加器CPUCPU中,指令中,指令A(yù)C(AC)+MAC(AC)+M隱含隱含ACAC (b) (b)順

23、序型指令的下條指令順序型指令的下條指令EA=(PC)+1EA=(PC)+1隱含隱含PCPC 操作數(shù)操作數(shù)/ /操作數(shù)地址操作數(shù)地址/ /指令地址指令地址隱含為堆棧中隱含為堆棧中。 如如:(a)(a)常用堆棧傳遞過程調(diào)用的參數(shù),常用堆棧傳遞過程調(diào)用的參數(shù), (b)(b)調(diào)用調(diào)用/ /返回指令的下條指令地址返回指令的下條指令地址23 例例某計(jì)算機(jī)主存按字節(jié)編址、有符號(hào)定點(diǎn)數(shù)采用原碼編碼,某計(jì)算機(jī)主存按字節(jié)編址、有符號(hào)定點(diǎn)數(shù)采用原碼編碼,有基址有基址REGREG和變址和變址REGREG各各1 1個(gè)個(gè)( (分別記為分別記為RBRB和和RI)RI),單地址指令格式,單地址指令格式如右圖所示,設(shè)如右圖所示

24、,設(shè)(RB)=0037H(RB)=0037H、(RI)=1122H(RI)=1122H、(PC)=1234H(PC)=1234H,請(qǐng)計(jì)算,請(qǐng)計(jì)算MEMMEM中指令內(nèi)容為中指令內(nèi)容為4428H 4428H 2244H 2244H 1392H 1392H 3592H3592H的操作數(shù)或的操作數(shù)或EAEA。 解解指令字指令字= =01000100 01010000 00100010 1000B1000B, 指令字指令字= =00100010 00001010 01000100 0100B0100B,基址尋址,基址尋址(A=44H)(A=44H), 指令字指令字= =00010001 00001111

25、 1 1001001 0010B0010B,變址尋址,變址尋址(A=92H)(A=92H), 指令字指令字= =00110011 01010101 10011001 0010B0010B,相對(duì)尋址,相對(duì)尋址(A=92H)(A=92H),OPOP F A F A15 10 9 8 7 015 10 9 8 7 0F=00F=00為立即尋址,為立即尋址,0101為相對(duì)尋址為相對(duì)尋址 1010為基址尋址,為基址尋址,1111為變址尋址為變址尋址 操作數(shù)操作數(shù) 原原=A=28H=A=28H; 操作數(shù)操作數(shù)EA=(RB)+A=0037H+44H=007BHEA=(RB)+A=0037H+44H=007B

26、H; 操作數(shù)操作數(shù)EA=(RI)+A=1122H+92H=1110HEA=(RI)+A=1122H+92H=1110H; 轉(zhuǎn)移目標(biāo)指令轉(zhuǎn)移目標(biāo)指令EA=(PC)+DSP=(1234H+2)-12H=1224HEA=(PC)+DSP=(1234H+2)-12H=1224H。2627244.3 4.3 指令格式舉例指令格式舉例一、指令格式目標(biāo)一、指令格式目標(biāo)1 1、指令格式的目標(biāo)、指令格式的目標(biāo) * *對(duì)硬件有較好的支持:對(duì)硬件有較好的支持:有助于減少有助于減少譯碼時(shí)間譯碼時(shí)間 * *對(duì)軟件有較好的支持:對(duì)軟件有較好的支持:有助于減少有助于減少指令數(shù)指令數(shù)及及指令長度指令長度 減少指令數(shù)減少指令數(shù)

27、指令功能強(qiáng)、地址碼個(gè)數(shù)多,地址范圍大、指令功能強(qiáng)、地址碼個(gè)數(shù)多,地址范圍大、 尋址方式多、對(duì)稱性好等,尋址方式多、對(duì)稱性好等, 縮短指令長度縮短指令長度地址碼個(gè)數(shù)少、范圍小,冗余空間小等;地址碼個(gè)數(shù)少、范圍小,冗余空間小等; 減少譯碼時(shí)間減少譯碼時(shí)間指令格式規(guī)整、地址碼并行譯碼、指令格式規(guī)整、地址碼并行譯碼、 操作數(shù)地址形成簡(jiǎn)單等。操作數(shù)地址形成簡(jiǎn)單等。252 2、指令格式優(yōu)化方法、指令格式優(yōu)化方法 指令格式目標(biāo)的矛盾指令格式目標(biāo)的矛盾軟件目標(biāo)軟件目標(biāo)硬件目標(biāo)硬件目標(biāo) 減少指令數(shù)減少指令數(shù)縮短指令長度縮短指令長度 采用擴(kuò)展操作碼編碼方式;采用擴(kuò)展操作碼編碼方式; * *遵循大概率事件優(yōu)先原則:

28、遵循大概率事件優(yōu)先原則:利于提高性能利于提高性能/ /價(jià)格價(jià)格 可以減少指令數(shù)、縮短指令長度,減少譯碼時(shí)間可以減少指令數(shù)、縮短指令長度,減少譯碼時(shí)間 高頻率操作高頻率操作( (或數(shù)據(jù)類型等或數(shù)據(jù)類型等) )才采用硬件才采用硬件( (機(jī)器指令機(jī)器指令) )實(shí)現(xiàn);實(shí)現(xiàn); 根據(jù)每種操作相關(guān)參數(shù)的使用頻率,確定該操作的地址根據(jù)每種操作相關(guān)參數(shù)的使用頻率,確定該操作的地址碼個(gè)數(shù)、尋址方式、地址范圍等碼個(gè)數(shù)、尋址方式、地址范圍等26二、二、PentiumPentium指令系統(tǒng)指令系統(tǒng)1 1、尋址方式、尋址方式 共支持共支持9 9種種尋址方式尋址方式,多數(shù)指令,多數(shù)指令使用多種使用多種尋址方式。尋址方式。尋

29、址方式尋址方式操作數(shù)或地址操作數(shù)或地址操作數(shù)存放部件操作數(shù)存放部件立即尋址立即尋址操作數(shù)操作數(shù)= =指令中立即數(shù)指令中立即數(shù)IRIR中中寄存器尋址寄存器尋址操作數(shù)操作數(shù)=(R)=(R)寄存器中寄存器中直接尋址直接尋址EA=AEA=A存儲(chǔ)器中存儲(chǔ)器中基址尋址基址尋址( (含變址尋址含變址尋址) )EA=(B)EA=(B),或,或EA=(I)EA=(I)基址基址+ +偏移尋址偏移尋址EA=(B)+AEA=(B)+A,或,或EA=(I)+AEA=(I)+A基址基址+ +變址變址+ +偏移尋址偏移尋址EA=(B)+(I)+AEA=(B)+(I)+A比例變址比例變址+ +偏移尋址偏移尋址EA=(I)EA

30、=(I)S+AS+A基址基址+ +比例變址比例變址+ +偏移尋址偏移尋址 EA=(B)+(I)EA=(B)+(I)S+AS+A相對(duì)尋址相對(duì)尋址EA=(EIP)+AEA=(EIP)+A說明:說明:通用寄存器通用寄存器RREAXEAX、EBXEBX、ECXECX、EDXEDX、ESPESP、EBPEBP、ESIESI、EDIEDI;基址寄存器基址寄存器BBEBXEBX、EBPEBP;變址寄存器變址寄存器IIESIESI、EDIEDI; AA偏移地址或偏移量;偏移地址或偏移量;EIPEIP程序計(jì)數(shù)器;程序計(jì)數(shù)器;SS比例因子比例因子27三、三、Power PCPower PC指令系統(tǒng)指令系統(tǒng)1 1、

31、尋址方式、尋址方式 共支持共支持6 6種尋址方式,多數(shù)指令種尋址方式,多數(shù)指令只使用只使用1 12 2種種。 可簡(jiǎn)化硬件設(shè)計(jì)可簡(jiǎn)化硬件設(shè)計(jì)尋址方式尋址方式操作數(shù)或地址操作數(shù)或地址應(yīng)用指令類型應(yīng)用指令類型存放部件存放部件立即尋址立即尋址操作數(shù)操作數(shù)= =指令中立即數(shù)指令中立即數(shù) 算邏指令算邏指令I(lǐng)RIR中中寄存器尋址寄存器尋址操作數(shù)操作數(shù)=(R)=(R)算邏指令算邏指令寄存器中寄存器中絕對(duì)尋址絕對(duì)尋址EA=AEA=A轉(zhuǎn)移指令轉(zhuǎn)移指令存儲(chǔ)器中存儲(chǔ)器中相對(duì)尋址相對(duì)尋址EA=(PC)+AEA=(PC)+A轉(zhuǎn)移指令轉(zhuǎn)移指令間接尋址間接尋址EA=(B)+AEA=(B)+A轉(zhuǎn)移指令、裝入指令轉(zhuǎn)移指令、裝入指

32、令間接變址尋址間接變址尋址 EA=(B)+(I)EA=(B)+(I)裝入指令裝入指令說明:說明:通用寄存器通用寄存器RR共共3232個(gè);個(gè); 基址寄存器基址寄存器BB3232個(gè)通用寄存器中任意一個(gè);個(gè)通用寄存器中任意一個(gè); 變址寄存器變址寄存器II3232個(gè)通用寄存器中任意一個(gè)。個(gè)通用寄存器中任意一個(gè)。284.4 4.4 指令系統(tǒng)發(fā)展指令系統(tǒng)發(fā)展 系統(tǒng)性能系統(tǒng)性能/ /價(jià)格與指令系統(tǒng):價(jià)格與指令系統(tǒng): 軟硬件與指令系統(tǒng):軟硬件與指令系統(tǒng):指令系統(tǒng)是軟硬件的主要交界面;指令系統(tǒng)是軟硬件的主要交界面;指令系統(tǒng)指令系統(tǒng)CISCCISCRISCRISC 降低價(jià)格降低價(jià)格減少減少程序中指令數(shù)量程序中指令

33、數(shù)量; 增加增加指令的功能及種類指令的功能及種類 提高性能提高性能提高提高指令的執(zhí)行速度指令的執(zhí)行速度。減少減少指令的功能及種類指令的功能及種類29一、一、CISCCISC的指令系統(tǒng)的指令系統(tǒng) (Complex Instruction Set Computer)(Complex Instruction Set Computer) * *CISCCISC指令系統(tǒng)的目標(biāo):指令系統(tǒng)的目標(biāo): 側(cè)重強(qiáng)化指令功能側(cè)重強(qiáng)化指令功能,以減少目標(biāo)代碼空間,以減少目標(biāo)代碼空間 * *CISCCISC指令系統(tǒng)的應(yīng)用特點(diǎn):指令系統(tǒng)的應(yīng)用特點(diǎn): 程序目標(biāo)代碼空間較?。痪幾g程序的設(shè)計(jì)復(fù)雜;程序目標(biāo)代碼空間較??;編譯程序的設(shè)計(jì)復(fù)雜; 指令的實(shí)現(xiàn)控制復(fù)雜,不利于指令的實(shí)現(xiàn)控制復(fù)雜,不

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論