




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
解5聿指令系統(tǒng)
徐愛萍
武漢大學(xué)計算機學(xué)院
酚?
第5章指令系統(tǒng)
VX\Tl.一
盥本章考研大綱
(一)指令格式
1.指令的基本格式
2.定長操作碼指令格式
3.擴展操作碼指令格式
(二)指令的尋址方式
1.有效地址的概念
2.數(shù)據(jù)尋址和指令尋址
3.常見尋址方式
(三)CISC和RISC的基本概念
■ijaWuhanUniversity
黑重點:
票指令格式;尋址方式、尋址范圍;
累擴展操作碼,哈夫曼編碼;
%CISC和RISC;指令系統(tǒng)設(shè)計
票學(xué)時:4
5.1基本概念
票指令就是要計算機執(zhí)行某種操作的命令。
率指令系統(tǒng)是一臺計算機中所有機器指令的集合。
京系列計算機是指基本指令系統(tǒng)相同,基本體系結(jié)構(gòu)
相同的一系列計算機。系列機能解決軟件兼容問題
的必要條件是該系列的各機種有共同的指令集,而
且新推出的機種的指令系統(tǒng)一定包含舊機種的所有
指令,因此在舊機種上運行的各種軟件可以不加任
何修改地在新機種上運行。
'41MC^WuhanUniversity
5.2指令格式
5.2.1指令格式
指令由表示操作性質(zhì)的操作碼和表示操作對象的地址碼兩
部分組成。即:
操作碼字段地址碼字段
票操作碼指出指令中該指令應(yīng)該執(zhí)行什么性質(zhì)的操作和具有
何種功能。
票地址碼指出該操作數(shù)所在的存儲器地址或寄存器地址。
架根據(jù)指令中的操作數(shù)地址碼的數(shù)目的不同,可將指令分成
零地址指令、一地址指令、二地址指令、三地址指令和多
地址指令等多種格式。
________4
*WuhanUniversity
(1)零地址指令格式
WKWl^MkVX\—ri.一\■
架IOPI
黑指令中只給出操作碼,沒有顯地址。
親這種指令有兩種可能:
①不需要操作數(shù)的指令。
②隱含對累加器AC內(nèi)容進行操作
松
再貼4lwWuhanUniversity
(2)一地址指令格式
OPA
柴其功能:OP(A)-A或(AC)OP(A)-AC
柴一地址指令有兩種常見的形態(tài),根據(jù)操作碼含義確定它
究竟是哪一種。
斃①只有目的操作數(shù)的單操作數(shù)指令
架②隱含約定目的地址雙操作數(shù)指令
票注意:采用隱地址(隱含約定)可以簡化指令地址結(jié)構(gòu),
即減少指令中的顯地址數(shù)Q
松
再貼WuhanUniversity
震(金二地亞指令格式L
其功能:(A1)OP(A2)->A1
黑(4)三地址指令格式:
pP|AC|A2|A3
其功能廠區(qū)1)OP(A2)-A3
空(5)多地址指令
在某些性能較好的大、中型機甚至高檔小型機中,往往設(shè)
置一些功能很強的,用于處理成批數(shù)據(jù)的指令,如字符串
處理指令,向量、矩陣運算指令等。為了描述一批數(shù)據(jù),
指令中需要多個地址來指出數(shù)據(jù)存放的首地址、長度和下
標(biāo)等信息。
=』至丈孝松園觀學(xué)
WuhanUniversity
架零地址、一地址和兩地址指令具有指令短,
執(zhí)行速度快,硬件實現(xiàn)簡單等特點,多為結(jié)
構(gòu)較簡單,字長較短的小型、微型機所采
用;
票兩地址、三地址和多地址指令具有功能強,
便于編程等特點,多為字長較長的大、中型
機所采用。
架指令的地址是由程序計數(shù)器(PC)規(guī)定的,而
數(shù)據(jù)的地址是由指令規(guī)定的。
松
WuhanUniversity
5.2.2指令操作碼的擴展技中
親通常在指令字中用一個固定長度的字段來表
示基本操作碼,而對于一部分不需要某個地
址碼的指令,把它們的操作碼擴充到該地址
字段,這樣既能充分地利用指令字的各個字
段,又能在不增加指令長度的情況下擴展操
作碼的長度,使它能表示更多的指令。
.大學(xué)
WuhanUniversity
梗直㈣皿鼻?例5」P130
1旨令字長為16位,每個地址碼為4?。居脭U展操
作碼的方式,設(shè)計15條三地址指令、15條二地址
指令、15條一地址指令和16條零地址指令。
①畫出擴展圖
②畫出指令譯碼邏輯。
【例題分析】
每個地址碼為4位:
三地址占12位,15條三地址指令的操作碼為4位;
二地址占8位,15條二地址指令的操作碼為8位;
一地址占4位,15條一地址指令的操作碼為12位;
16條零地址指令的操作碼為16位;
大
University
Hi①操作碼的擴展如下:
00:0oxxxxxxxL
15條三地山指令
1110xxxxxxxxxxxx
11,11000^0XXX、xxxx
15條二kfet摘令
11111110xxxxxxxx
11:11111;10000:xxxx
15條T地址指令
111111111110xxxx
11:1111L11111;0000
16條零地址指令
1111111111
uhanUniversity
②指令譯碼邏輯如圖所示
松園觀學(xué)
'41MC^WuhanUniversity
星鼠內(nèi)例5.3P131
法二二字一^?V
i'指令字長為16位,每個地址碼為4位。用擴施操
作碼的方式,設(shè)計15條三地址指令、14條二地址指
令、31條一地址指令和16條零地址指令。
①畫出擴展圖
②畫出指令譯碼邏輯。
【例題分析】
每個地址碼為4位:
荒三地址占12位,15條三地址指令的操作碼為4位;
黑二地址占8位,14條二地址指令的操作碼為8位;
柴一地址占4位,31條一地址指令的操作碼為12位;
架16條零地址指令的操作碼為16位;
'41MC^WuhanUniversity
xxxx0
IIIIIIIIIII
xxxx00000
IIIIIII
xxxxxxxxloll
wlw=-<寸I
xxxxkxxxoho0
xxxxxxxxxxxx。III
蠢AW^^OLI
00
。
xxxxxxxxxxxx,°
)-F.”將
嘴
上
球
用
條
咚
由
口
卜
一3
②指令譯碼邏輯如圖所示
'41MC^WuhanUniversity
例5.4
指令字長為12位,每個地址碼為3位,采用擴展操作碼
的方式,設(shè)計4條三地址指令、16條二地址指令、64
條一地址指令和16條零地址指令。
①畫出擴展圖
②畫出指令譯碼邏輯。
③計算操作碼平均長度
【例題分析】
每個地址碼為3位:
武三地址占9位,4條三地址指令的操作碼為3位;
交二地址占6位,16條二地址指令的操作碼為6位;
柴一地址占3位,64條一地址指令的操作碼為9位;
北16條零地址指令的操作碼為12位;
'41MC^WuhanUniversity
操作碼的擴展如下:
00:0'XXXi^XXXXX
4條三地址指令
011XXXXXXXXX
10:0000:XXXXXX
16條RW聆
101111XXXXXX
11:0000j000XXX
64條^^^聆
110111111XXX
11:1000:0000Q0
16條零地址指令
M。步ooi111
ff^rrWuhanUniversity
②指令譯碼邏輯如圖所示
XXXXXXXXXXXX
譯碼開
始曹JI
M4:16渤喘[~c|6:64譯喘
-C3:8譯碼器'工XX
nyiir
16地耐聆16條罩她指令
③操作碼平均長度
=(4X3+16X6+64X9+16X12)/(4+16+64+16)
=8.7
'41MC^WuhanUniversity
例5.4
指令字長為12k每個地址碼為3位二采用擴展操作碼
的方式,設(shè)計4條三地址指令、30二地址指令、15條一地
址指令和8條零地址指令。
①畫出擴展圖
②畫出指令譯碼邏輯。
③計算操作碼平均長度
【例題分析】
每個地址碼為3位:
會三地址占9位,4條三地址指令的操作碼為3位;
柴二地址占6位,16條二地址指令的操作碼為6位;
建一地址占3位,64條一地址指令的操作碼為9位;
北16條零地址指令的操作碼為12位;
造翥ty松導(dǎo)
操作碼的擴展如下:
00:0'XXXi^XXXXX
4條三地址指令
011XXXXXXXXX
10:0000:XXXXXX
16條RW聆
101111XXXXXX
11:0000j000XXX
64條^^^聆
110111111XXX
11:1000:0000Q0
16條零地址指令
M。步ooi111
ff^rrWuhanUniversity
直面運奇eAAAA例5.5
某計算機指令長度為32位,有3種指令:雙操作數(shù)指令、單操作數(shù)
指令、無操作數(shù)指令。今采用擴展操作碼的方式來設(shè)計指令,
假設(shè)操作數(shù)地址為12位,己知有雙操作數(shù)指令K條,單操作數(shù)
指令L條,問無操作數(shù)指令有多少條?
【例題分析】
黑對于雙操作數(shù)指令,操作碼長度為(32—12X2)=8位;最多有28
條,現(xiàn)已有K條,所以留有⑵一K)個編碼用于擴展到單操作數(shù)指
令;
案對于單操作數(shù)指令,可擴展位為20—8=12位;最多有⑵一
K)X212條,現(xiàn)已有L條,所以留有[⑵一K)X2i2—L]個編碼用于
擴展到無操作數(shù)指令;
震對于無操作數(shù)指令,可擴展位為32—20=12位,所以無操作數(shù)指
令條數(shù)=[(28—K)X212—L]X212
^WuhanUnive^rsity
?訃而離畫廊垣篤k例5.6
【;柴玉司機的指令系統(tǒng)字長定長為16位,采用擴展操作碼,
操作數(shù)地址需4位。該指令系統(tǒng)已有三地址指令M條,二地
址指令N條,沒有零地址指令。問:最多還有多少條一地址
指令?
票解:由于指令總長度為16位,操作數(shù)地址為4位,貝(J:
案對于三地址指令,操作碼長度為(16—4義3)=4位;
親對于二地址指令,操作碼長度為(16—4義2)=8位,可擴展
位為8—4=4位;
柴對于一地址指令,操作碼長度為(16—4)=12位,可擴展位
為12—8=4位。
親由于三地址指令有M條,而三地址指令最多有24條,所以
留有(24—M)個編碼用于擴展到兩地址指令;
北二地址指令N條,而二地址指令最多有Q4—M)X24條,所
以留有[Q4—M)X24—N]個編碼用于擴展到一地址指令;
柒根據(jù)以上分析:一地址指令條數(shù)=[(24-M)X24-N]X24O
IV履雌守蛇
例5.7
某計算機指令長度為32位,有3種指令:雙操作數(shù)指令、單操作數(shù)
指令、無操作數(shù)指令。今采用擴展操作碼的方式來設(shè)計指令,
假設(shè)操作數(shù)地址為12位,己知有雙操作數(shù)指令K條,無操作數(shù)
指令L條,問單操作數(shù)指令有多少條?
【例題分析】
票對于雙操作數(shù)指令,操作碼長度為(32—12X2)=8位;最多有28
條,現(xiàn)已有K條,所以留有⑵一K)個編碼用于擴展到單操作數(shù)指
令;
親對于單操作數(shù)指令,可擴展位為20—8=12位;最多有⑵一
K)X212條,現(xiàn)已有L條,所以留有[⑵一K)X2i2—L]個編碼用于
擴展到無操作數(shù)指令;
震對于無操作數(shù)指令,可擴展位為32—20=12位,所以無操作數(shù)指
令條數(shù)=[(28—K)X212—L]X212
WuhanUniversity
裝習(xí)題5.1
松蹣膘院
B^PBB^J^^^WuhanUniversity
展操作碼的編碼原則(哈夫曼編碼)
與CM員
票編碼的原則是:對使用頻度(指在程序中由現(xiàn)的概率)
較高的指令,分配較短的操作碼字段;對使用頻度
較低的指令,分配較長的操作碼字段。
例5.6
某計算機有io條指令,它們的使用頻率分別為:0.35>0.20>
0.11>0.09>0.08>0.07>0.04>0.03>0.02>0.01,用擴
展操作碼技術(shù)對它們的操作碼進行編碼,并計算平均代碼長度。
解:編碼方案見右表指令使用頻率操作碼
這種表示法的平均長度二T135%00
35%X2+20%X2+llT220%01
%X2+9%X4T311%10
+8%X4+7%X4T49%1100
+4%X6+3%X6T58%1101
+2%X6+1%X6T67%1110
=0.7+0.4+0.22T74%111100
+0.36+0.32+0.28T83%111101
+0.24+0.18+0.12T92%111110
T101%11on
University
編碼方案2
指令’’使用頻率操4作碼
這種表示法的平均
T135%000長度=35%*3+20
T220%001%X3+ll%X3+9
T311%010%X3+8%X3+7
T49%011%X3+4%X3+3
T58%100%X5+2%X5+1
%X5
T67%101
=1.05+0.6+0.33
T74%110
+0.27+0.24+0.21
T83%11100
T92%11101+0.12+0.15+0.10
T101%11110+0.05=3.12<4
這種編碼方案沒有上一種好
—坨得我孝moi
可''箭'WuhanUniversity
裝習(xí)題5.13
松蹣膘院
University
星威由5.2.3指令長度與字長的關(guān)系
,黑字長是指病機能著氤理的二進制數(shù)據(jù)的位或]
黑字長決定了計算機的運算精度,字長越長,計算機的運算精度
越高;
裝一般機器的字長都是字節(jié)長度(即8位)的L2,4或8倍,也就是
8,16,32或64位。
黑指令的長度主要取決于操作碼的長度、操作數(shù)地址的長度和操
作數(shù)地址的個數(shù)。
票由于操作碼的長度、操作數(shù)地址的長度及指令格式不同,各指
令的長度可以是固定的,也可以是不固定的,但也不是任意的。
宏為了充分地利用存儲空間,指令的長度通常為字節(jié)的整數(shù)倍。
黑指令的長度與機器的字長沒有固定的關(guān)系,它既可以小于或等
于機器的字長,也可以大于機器的字長。
'41MC^WuhanUniversity
數(shù)據(jù)表示見P132
——_~v?Bg,—
黑存儲器的地址,一般按字節(jié)表示。計算機的指令系統(tǒng)可支持對字節(jié)、
半字、字、雙字的運算;有些計算機有位處理指令。為便于硬件實
現(xiàn),一般要求多字節(jié)數(shù)據(jù)對準(zhǔn)邊界,如圖所示。
黑當(dāng)所存數(shù)據(jù)不能滿足此要求時,則填充一個至多個空白字節(jié)Q、
碘f的穗超輟對準(zhǔn)邊界,但可能增加訪問存儲器次數(shù)。;
黑假如存儲器與運算部件間數(shù)據(jù)通路的寬度為32位(一個
字),在不按邊界對準(zhǔn)的計算機中,訪存指令所要求存取的
數(shù)據(jù)(例如一個字),可能在兩個存儲單元中,因此需要訪
問兩次存儲器,而且還要對高低字節(jié)的位置進行調(diào)整,圖
5.2(b)的陰影部分即屬這種情況。在數(shù)據(jù)對準(zhǔn)邊界的計算
機中,當(dāng)以二進制來表示地址時,半字地址的最低位恒為
零,字地址的最低兩位為零,雙字地址的最低三位為零。
松園觀學(xué)
尾s5.4尋址方式
染所謂尋址方式,就是尋找指令或操作數(shù)的有效地址的方式。
黑1.指令的尋址方式
黑指令尋址的基本方式有兩種,一種是順序?qū)ぶ贩绞?,另?/p>
種是跳躍尋址方式
黑2.操作數(shù)尋址方式
黑操作數(shù)的尋址方式就是形成操作數(shù)有效地址的方法。
需設(shè)某計算機具有如下所示的單地址指令結(jié)構(gòu)。其中,OP為
操作碼;X為尋址特征碼;A為形式地址,或稱偏移量。尋址
過程就是把X和A的不同組合變換成有效地址的過程。
'41MC^WuhanUniversity
震例如,一種單地址指令的結(jié)構(gòu)如下所示,其中X,LA
組成該指令的操作數(shù)地址。
操作碼變址間址形式地址
OPXIA
柒其中:
黑A稱為形式地址,也稱位移量;
宏I為間址特征;
/X為尋址方式特征位;
北尋址過程就是把操作數(shù)的形式地址A變換為操作數(shù)
的有效地址的過程。
黑(1)隱含尋址
指令中隱含著操作數(shù)的地址,EA=(PC)o
斃⑵立即尋址
操作數(shù)在指令中,Data=A,EA=(PC),這種尋址方式
稱為立即尋址。立即尋址方式的特點是指令執(zhí)行時間很
短,因為它不需要訪問內(nèi)存取數(shù),從而節(jié)省了訪問內(nèi)存的
時間。
架(3)直接尋址
指令中的形式地址A就是操作數(shù)的有效地址EA,即EA=
A,Data=(A)o
松導(dǎo)
江指令地址字段中的形式地址A不是操作數(shù)的真正地址,而是
操作數(shù)地址的地址,或者說A單元的內(nèi)容才建操作數(shù)的有效
地址,即:EA=(A),Data=((A)),如圖所示
O:A
票采用間接尋址可擴大的尋址范圍。
黑設(shè)A為8位,存儲器字長為16位,貝U:
廉直接尋址:EA=A(8位),尋址范圍是28=256;
震間接尋址:EA=(A)(16位),尋址范圍是2i6=64K。
造翥ty松園觀學(xué)
裝(5)寄存器尋址
黑操作數(shù)在寄存器中。即:EA=R,Data=(R),此時指令中給出的
操作數(shù)地址不是內(nèi)存的地址單元號,而是通用寄存器的編號。
黑(6)寄存器間接尋址
瑞操作數(shù)地址在寄存器中。即:EA=(R),Data=((R))o
裝采用寄存器間接尋址可提高機器的尋址速度。
潴采用寄存器間接尋址也可擴大的尋址范圍,若寄存器長為16位,貝人
EA=(R)(16位),尋址范圍是2i6=64K。
盛(7)變址尋址
瑞操作數(shù)地址為變址寄存器中的內(nèi)容與位移量A之和,即:EA=(R)變址
+A,變址尋址一般用于數(shù)組的操作。
\^30/一■
(8)基址尋址
指令中給出一個形式地址(作為修改量),并給出基址寄存器號,基址
寄存器內(nèi)容(作為基址)與形式地址相加得到操作數(shù)有效地址。即:EA
=(R)基址+A
次基址尋址中如果用通用寄存器作為基址寄存器,與變址尋址沒有區(qū)
另IJ,變址寄存器與通用寄存器都可以變化;
非但如果用專用寄存器作為基址寄存器,它與變址尋址是有區(qū)別的,這
時基址寄存器提供基準(zhǔn)量,是不能變化的;
(9)相對尋址
EA=(PC)+Ao采用相對尋址方式的好處是程序員勿需用指令的絕
對地址編程,因而所編程序可以放在內(nèi)存任何地方,相對尋址一般用
于轉(zhuǎn)移指令中。
松
■tjgWuhanUniversity
r^雕國嬸爰?(10)復(fù)合尋址方式
法二二字一^?v
器復(fù)合尋址方式是把間接尋址方式同相對尋址方式或變址方式相結(jié)合而形成
的尋址方式。它分為先間接方式與后間接方式兩種。
累相對間接尋址
操作數(shù)的有效地址EA數(shù)學(xué)形式為:EA=((PC)+A)O
票間接相對尋址
操作數(shù)的有效地址EA數(shù)學(xué)形式為:EA=(PC)+(A)。
票變址間接尋址
操作數(shù)的有效地址EA數(shù)學(xué)形式為:EA=((R)+A)O
黑間接變址尋址
操作數(shù)的有效地址EA數(shù)學(xué)形式為:EA=(R)+(A)O
交基址+變址尋址:操作數(shù)的有效地址EA數(shù)學(xué)形式為:
EA=(R)基址+(R)變址+A
__4*
5卬4tw(WuhanUniversity
z事電向面畫唐庵鼠由(1
黑段寄存器中的16位數(shù)左移4位,然后與16位
偏移量相加,形成內(nèi)存所需的20位物理地
址。這種尋址方式的實質(zhì)還是基值尋址。
松
再貼WuhanUniversity
黑例1一種單地址指令格式如下所示,其中I為間接特征,X為尋址模式,D為
形式地址。I、X、D組成該指令的操作數(shù)有效地址EA。設(shè)R為變址寄存器,
(R)=1000H,PC為程序計數(shù)器,(PC)=2000H,D=100H,存儲器的有關(guān)數(shù)據(jù)
見表1,請將表2填寫完整。
指令格式0PIXD
11存儲拗帽關(guān)魏
地址0080H0100H0165H0181H1000H1100H2100H
轆40H80H66H100H256H181H165H
表72
尋址方式1X有效地址EA操作數(shù)
直接000
相對001
變址010
寄存器011
間接100
相對間接101
變址間接110
寄存器間接111
大字松瞬隔院
WuhanUniversity
黑解:填完整后的表7.2如下:
秘址方式有嬲址EA
靛000EA=D=100HSOH
椰t001EA二(PC)+D=2100H165H
變址010EA=(R)+D=1100H181H
寄赫011EA=R1000H
?100EA=(D)=80H40H
帆瞰101EA=((PC)+D)=165H66H
接
間A
一-
1
U
變沙1--EA=((R)+D)=181H100H
喘瞧111EA=(R)=1000H256H
松園觀學(xué)
例2
假設(shè)(R)=1000,(1000)=2000,(2000)=3000,(PC)=4000,
問在以下尋址方式下訪問到的操作數(shù)的值是什么?
⑴寄存器尋址R⑵寄存器間接尋址(R)
(3)直接尋址1000(4)存儲器間接尋址(1000)
(5)相對尋址一2000(PC)⑹立即數(shù)尋址#2000
【例題答案】
(1)EA=RData=(R)=1000
(2)EA=(R)=1000Data=(1000)=2000
(3)EA=1000Data=(1000)=2000
(4)EA=(1000)=2000Data=(2000)=3000
(5)EA=(PC)-2000=4000-2000=2000
Data=(EA)=(2000)=3000
(6)Data=2000
加—率大學(xué)
4等*WuhanUniversity
指令系統(tǒng)的分析舉例
指令格式如下所示,0P為操作碼字段,試分析指令格式的特
點。
3126252322181716150
OP源寄存器變址寄存器偏移量
解:(1)操作碼字段為6位,可指定26=64種操作,即64
條指令。
(2)單字長(32)二地址指令。
(3)一個操作數(shù)在源寄存器(共16個),另一個操作數(shù)
在存儲器中(由變址寄存器內(nèi)容+偏移量來決定),所以
是RS型指令。
(4)這種指令結(jié)構(gòu)用于訪問存儲器。
造翥ty
指令系統(tǒng)的設(shè)計舉例
案例4某機主存容量為64kxi6位,采用單字長、單地址指
令,共有60條。試采用立即、直接、寄存器、寄存器間接、
變址、變址間接、相對、相對間接這八種尋址方式設(shè)計指令
格式。并說明每一種尋址方式的尋址范圍及有效地址計算方
法。
票【例題分析】
柒60條指令操作碼字段(OP)至少需占用6位;尋址方式有八種,所以尋
址字段3位(其中I為間接特征,X為尋址模式);形式地址①)7位。
次其指令格式如下:
151098760
OPIXD
'41MC^WuhanUniversity
尋址方式的尋址范圍如下:
尋址楨名稱IXWWfctltE尋照豳
000E=(PC)Data二D1個面
方樹001E=(PC)+D(7位)PC附近用*共128個單兀
010E=(IX)+D(16位)64K個單兀
粉器011E=R(D部分為寄存整鵡)決定CPU中有多少個可用的寄存器
懿100E=D(7位)data=(D)128個#TU
本附'礁101E=((PC)+D)(16位)熊個單兀
110E=((IX)+D)(16位)64K個單兀
1U氏(R)(16位)粗K個單兀
其中寄存器R(16位),IX演址寄存器,PC為程序計數(shù)器(16位),
皿址和相對尋址時,位移量D可正可負。
松導(dǎo)
某機字長16位,直接尋址空間為128字,變址時的位移量是
—64?+63,16個通用寄存器都可以作為變址寄存器,設(shè)計一套指令系統(tǒng),滿足
下列尋址類型的要求:
①直接尋址的二地址指令3條;
②變址尋址的一地址指令6條;
③寄存器尋址的二地址指令8條;
④直接尋址的一地址指令12條;
⑤零地址指令32條。
【例題分析】由于題中給出了多種尋址方式,為了簡化指令設(shè)計,我們可選用
擴展操作碼方式來設(shè)計。因為所要求的指令數(shù)從①到⑤遞增,所以我們按從
①到⑤的順序來設(shè)計。
①因為直接尋址空間為128字,所以直接地址為2X7位,操作碼部分應(yīng)該為2位,
則操作碼耳L學(xué)01,10o
//uhanUniversity
次②因為變址時的位移量是一64?+63,所以位移量需用7位來表示;因
為16個通用寄存器都可以作為變址寄存器,所以變址寄存器需用4位進
行編碼;這樣一地址變址尋址指令的操作碼應(yīng)該為16—7—4=5位,從
11000開始,順序遞增到11101為止。
黑③因為有16個通用寄存器,所以寄存器需用4位進行編碼;二地址寄存
器尋址指令的操作碼位數(shù)=16-4-4=8位,從11110000開始,順序遞
增到11110111為止。
聯(lián)④因為直接尋址空間為128字,所以直接尋址的一地址為7位,操作碼部
分應(yīng)該為16—7=9位,從111110000開始,順序遞增至IJ1111U0U為止。
黑⑤零地址指令的操作碼為16位,從1111111000000000開始,遞增到
llllllllOOOOOllllo
此題的指令編碼格式如下
2bits7bits00
OP地址碼]地址碼2操作碼01總共三條
10
5bits4bits7bits11000
②OP器索引移量操作碼心、/
11101
8bits4bits4bits11110000
OP器索引1寄存器索引2操作碼,映8條
11110111
9bits7bits111110000
④OP地址碼操作碼—^總、共12條
111111011
16bits1111111000000000
⑤OP操作碼—,就32條
_________大學(xué)1111111000011111
fWuhanUniversity
訃事豆國畫通g庵嗎引例6
窠并算機字長16位,運算器16位,有16個通用寄存器,8和尋見方式,圭存客
量為64K字,指令中地址碼由尋址方式字段和寄存器字段組成,試問:
(1)雙操作數(shù)指令最多有多少條?
(2)單操作數(shù)指令最多有多少條?
(3)間接尋址的范圍有多大(單字長)?
(4)直接尋址的范圍有多大(雙字長)?
(5)變址尋址的范圍有多大(雙字長)?
解:(1)雙操作數(shù)指令格式如下:
V----源操作數(shù)—2<—目的操作數(shù)一A
151413111076430
0PMODSRsMODDRD
OP有2位,雙操作數(shù)指令最多有22—1=3條,留一個編碼用
(2)單操作數(shù)指令格式如下
'―2'Y-----目的W1-----
1576543210
OPMODDRD
奈OP有9位,可擴展位為9—2=7位,所以單操作
數(shù)指令最多有27=128條。
家(3)間接尋址時指令格式為單字長,EA=(R)
(16位),所以間接尋址的范圍為2i6=64K。
松導(dǎo)
'41MC^WuhanUniversity
直接尋址時指令格式為雙字長如下所示:
目的二操作教
1576543210
0PM0DDRD
D
或
《源操作數(shù)AY_________目口的3r操_LO作H數(shù)叱4________A
151413111076430
0PM0D
MODsRsDRD
D
EA=D(16位),所以直接尋址的范圍為216=64K。
(5)變址尋址時指令格式也為雙字長,如上所示。
EA=(R)+D(16位),所以變址尋址的范圍為2i6=64K。
松園觀學(xué)
造K>《我誕翥ty
5.7精簡指令系統(tǒng)計算機(RISC)和
復(fù)雜指令系統(tǒng)計算機(CISC)
濫5.7.1復(fù)雜指令系統(tǒng)計算機(CISC)
為了做到程序兼
容,同一系列計算機的新機器和高檔機的指令系統(tǒng)只能擴充而不能減去任意一條,因
此也促使指令系統(tǒng)越來越復(fù)雜,某些計算機的指令多達幾百條。我們稱這些計算機為
復(fù)雜指令系統(tǒng)計算機(ComplexInstructionSetComputer,簡稱CISC)。
CISC復(fù)雜指令系統(tǒng)計算機的其特點
①指令系統(tǒng)復(fù)雜龐大,指令數(shù)目一般多達2、3百條。
②尋址方式多③指令格式多
④指令字長不固定
⑤可訪存指令不加限制
⑥各種指令使用頻率相差很大
⑦各種指令執(zhí)行時間相差很大
⑧大多數(shù)采用微程序控制器
大
WuhanUniversity
Pentium微處理器指令系統(tǒng)
節(jié),1或20或fd?或i—FTi,2或2
OOPMMOD/RMSIBDispImm
ModReg/opR/MSSIndexBase
7654321076543210
指令包括以下字段:
⑴OP(操作碼)
每條指令都有操作碼,某些指令在操作碼中還包含有操作數(shù)長度W(8位,16位或32位)或立
即數(shù)是否需擴充符號位(S)等信息。
(2)MOD/RM
MOD/RM字節(jié)分成3個字段:
Mod=ll時,由RM字段(3位)指出操作數(shù)所在的寄存器;
ModW11時,與RM字段(3位)一起指出操作數(shù)的24種尋址方式。
Reg/op字段(3位)可以是寄存器號,或者作為3位附加的操作碼;
(3)SIB
當(dāng)MOD/RM的ModW11時,需要SIB參與決定尋址方式。SIB字節(jié)分成3個字段;SS字
段(2位)指出變址寄存器的放大因子;Index字段(3位)指出變址寄存器;Base字段(3位)指出基
鎏奧色f夠上翥ty
湎直離畫圜再庵嗎R例題
表列出TPentium機的9種尋址方式名稱及有關(guān)說明,請寫出對應(yīng)尋址方
式的有效地址E的計算方法。
序號尋址方式名稱說明
(1)立即操作數(shù)在指令中
(2)寄存器操作數(shù)在某寄存器中,指令給出寄存器號
(3)直接Disp為偏移量
(4)基值B為基值寄存器
(5)基值+偏移量
(6)比例變址+偏移量I為變址寄存器,S為比例因子
(7)基值+變址+偏移量
(8)基值+比例變址+偏移量
(9)相對PC為程序計算器
解(1)E=(PC)(6)E=(I)XS+Disp
(2)E=R⑺E=(B)+⑴+Disp
(3)E=Disp(8)E=(B)+(I)XS+Disp
(4)E=(B)⑼指令地址=(PC)+Disp
⑸及XB/Disp
WuhanUniversity
裝習(xí)題5.8
University
7.2精簡指令系統(tǒng)計算機(RISC)
盜⑴RISC的意義
襄CISC指令系統(tǒng)很復(fù)雜,功能很強,但不一定能提高機器的速度,原因
是:
/①CISC中采用很多復(fù)雜的尋址方式,為了計算有效地址,需花費一定
的時間,有的指令需要多次訪問主存器,所以執(zhí)行速度會降低。
聯(lián)②復(fù)雜指令系統(tǒng)的實現(xiàn)需要復(fù)雜的控制器來支持,且系列機為實現(xiàn)兼
容,其控制部件多用微程序控制方式來實現(xiàn),以便于指令系統(tǒng)的擴展。
但微程序控制部件執(zhí)行一條機器指令一般需要幾個微周期,因此嚴重降
低了指令的執(zhí)行速度。
整③為了提高指令的執(zhí)行速度,CISC中常采用流水線技術(shù),但由于很多問
題,例如指令系統(tǒng)采用變字長指令,不同指令爭用共同資源以及轉(zhuǎn)移指
令等,使流水線的效率不高。
'41MC^WuhanUniversity
譚所以,傳統(tǒng)的CISC設(shè)計思想并不利于提高計算機的速度。而且,復(fù)雜的指令系
統(tǒng)必然增加硬件實現(xiàn)的復(fù)雜性,從而使計算機的研制周期長,投資高。
黑(2)RISC的特點
黑精簡指令系統(tǒng)計算機的著眼點不是簡單地放在簡化指令系統(tǒng)上,而是通過簡
化指令使計算機的結(jié)構(gòu)更加簡單合理,從而提高處理速度,其主要途徑是減少
指令的執(zhí)行周期數(shù)。
*計算機執(zhí)行程序所需要的時間P可用下式表示:
濾P=IXCPIXT
黑其中I是高級語言程序編譯后在機器上運行的指令數(shù),CPI為執(zhí)行每條指令所需
的平均周期數(shù),T是每個機器周期的時間。
裝由于RISC指令比較簡單,原CISC機中比較復(fù)雜的指令在這里用子程序
來代替,因此RISC的I要比CISC多20%?40%。但是RISC的大多數(shù)指
令只用一個機器周期實現(xiàn),所以CPI的值要比CISC小得多。同時因為
RISC結(jié)構(gòu)簡單,所以完成一個操作所經(jīng)過的數(shù)據(jù)通路較短,使得T值大
為減少。后來,RISC的硬件結(jié)構(gòu)有很大改進,一個機器周期平均可完
成1條以上指令,甚至可達到幾條指令。
震RISC是在繼承CISC的成功技術(shù)并克服CISC的缺點的基礎(chǔ)上產(chǎn)生并發(fā)
展起來的,大部分RISC具有下述一些特點:
黑①優(yōu)先選取使用頻率最高的一些簡單指令,以及一些很有用但不復(fù)雜
的指令。避免復(fù)雜指令。
裝②大多數(shù)指令在一個機器周期內(nèi)完成
黑③采用LOAD/STORE結(jié)構(gòu)
大孝
University
LOAD(取數(shù))和STORE(存數(shù))兩種指令可以訪存;其余指令只能對存放
在寄存器中的操作數(shù)進行處理。
-④較少的指令數(shù)和尋址方式
黑⑤固定的指令格式
盆⑥面向寄存器的結(jié)構(gòu)
為減少訪問主存儲器,CPU內(nèi)應(yīng)設(shè)大量的通用寄存器。
黑⑦硬布線控制邏輯
由于指令系統(tǒng)的精簡,控制部件可由組合邏輯實現(xiàn),不用或少用微程序
控制,這樣可使控制部件的速度大大提高。
瑞⑧注重編譯的優(yōu)化
5.8指令系統(tǒng)舉例
裝一個較完整的指令系統(tǒng),應(yīng)包含傳送類指令、算術(shù)運算類指令、邏輯運
算類指令、移位指令、轉(zhuǎn)移指令、字符串指令和程序控制類指令。若統(tǒng)
一編址,則用傳送指令即可達到輸入輸出的目的;若單獨編址,則需要
專門的輸入輸出指令。
黑5.8.1SPARC的指令系統(tǒng)
黑SPARC指令系統(tǒng)是一RISC,字長32位,有三種指令格式、六種指令類
型。
/(l)SPARC的指令格式
SPARC的指令格式中OP,OP2,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人別墅銷售合同范例
- 勞務(wù)分包人工合同范例
- 二年級語文下冊 課文5 16 雷雨第1課時教學(xué)實錄 新人教版
- 合同范例中合同數(shù)大寫
- Unit 5 What color is it Part B(教學(xué)設(shè)計)-2024-2025學(xué)年接力版(2024)英語三年級上冊
- 發(fā)票協(xié)議合同范例
- 中藥產(chǎn)品購銷合同范例
- 1919加盟合同范例
- 加工安裝協(xié)議合同范本
- 二手房過戶評估合同范例
- 農(nóng)村商業(yè)銀行合規(guī)培訓(xùn)
- (高清版)TDT 1037-2013 土地整治重大項目可行性研究報告編制規(guī)程
- T-CEPPC 13-2023 電網(wǎng)區(qū)域電碳因子和電力碳排放量核算規(guī)范
- 商用航天行業(yè)分析
- 山東省濟寧市金鄉(xiāng)縣2023-2024學(xué)年八年級下學(xué)期3月月考歷史試題
- 律師事務(wù)所盡調(diào)清單
- 鋁加工(深井鑄造)企業(yè)重點事項解讀(米)
- 2024年湖南現(xiàn)代物流職業(yè)技術(shù)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 2016-2023年山東藥品食品職業(yè)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- JB T 10291-2013旱地栽植機械
- 蛋糕投標(biāo)書技術(shù)方案
評論
0/150
提交評論