版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)組成朦理
第七章播令案疣
7.1指令概述
?用計(jì)算機(jī)解題時(shí),一般都要編制程序,程序既可用高級(jí)語(yǔ)
言編寫(xiě),亦可用機(jī)器語(yǔ)言編寫(xiě);
?但計(jì)算機(jī)只能夠識(shí)別和執(zhí)行用機(jī)器語(yǔ)言編寫(xiě)的程序;
?各種高級(jí)語(yǔ)言編寫(xiě)的應(yīng)用程序,最終都要翻譯成機(jī)器語(yǔ)言
來(lái)執(zhí)行。
?機(jī)器語(yǔ)言是由一系列的指令(語(yǔ)句)組成的;
?指令的格式就是機(jī)器語(yǔ)言的語(yǔ)法;
?每條指令規(guī)定機(jī)器完成一定的功能。
?一臺(tái)計(jì)算機(jī)的所有的指令集合稱為該機(jī)的指令系統(tǒng)或指令
集。它是程序工作者編制程序的基本依據(jù),也是進(jìn)行計(jì)算機(jī)
邏輯設(shè)計(jì)的基本依據(jù)。
7.2指令系統(tǒng)的發(fā)展與性能要求
7.2.1指令系統(tǒng)的發(fā)展
計(jì)算機(jī)的程序是由一系列機(jī)器指令組成的。
本章所討論的指令,是機(jī)器指令。
1.指令系統(tǒng)
指令系統(tǒng)是表征一臺(tái)計(jì)算機(jī)性能的重要
因素,它的格式與功能不僅直接影響到機(jī)器
的硬件結(jié)構(gòu))而且也直接影響到系統(tǒng)軟件,
影響到機(jī)器的適用范圍。
2.指令系統(tǒng)的發(fā)展
(1)系列計(jì)算機(jī)同祖'“■件"‘貪用’一-
系列計(jì)算機(jī)是指基本指令系統(tǒng)相同、基本體系結(jié)構(gòu)相同的一
個(gè)系列的各種型號(hào)的計(jì)算機(jī)。其必要條件是同一系列的各機(jī)
種有共同的指令集.而且新推出機(jī)種的指令系統(tǒng)一定應(yīng)包含
所有舊機(jī)種的全部指令,即實(shí)現(xiàn)“向上兼容I這樣,舊機(jī)種
上運(yùn)行的各種軟件可以不加任何修改便可在新機(jī)種上運(yùn)行,
大大減少了軟件開(kāi)發(fā)費(fèi)用。系列機(jī)解決了各機(jī)種的軟件兼容
問(wèn)題。
(2)指令系統(tǒng)結(jié)構(gòu)
從計(jì)算機(jī)指令系統(tǒng)的角度看當(dāng)前的計(jì)算機(jī)指令系統(tǒng)結(jié)構(gòu)
分為兩大類(lèi):
?復(fù)雜指令集計(jì)算機(jī)(CISC)_____I;'泣巾I
?精簡(jiǎn)指令集計(jì)算機(jī)(RISC)
70年代末^^
大多數(shù)計(jì)算機(jī)的指令系統(tǒng)多達(dá)幾百
條。我們稱這些計(jì)算機(jī)為復(fù)雜指令系統(tǒng)
計(jì)算機(jī)(CISC)。
但是如此龐大的指令系統(tǒng)難以保證
正確性,不易調(diào)試維護(hù),造成硬件資源
浪費(fèi)。為此人們又提出了易于采用
VLSI技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)
(RISC)o
7.3指令格式
指令由操作碼和地址碼兩部分組成,它的基本格式如下:|
操作碼地址碼
1.操作碼
?操作碼是說(shuō)明指令操作性質(zhì)的二進(jìn)制數(shù)代碼。
?操作碼所占的二進(jìn)制位數(shù)決定了一臺(tái)計(jì)算機(jī)所能允許的指令
條數(shù)。
例如,操作碼占用六位二進(jìn)制碼時(shí),這臺(tái)計(jì)算機(jī)最多允許有:
26=64條指令
操作碼字段分兩種:
(1)固定長(zhǎng)度操作碼
固定長(zhǎng)度操作碼是指操作碼所占的二進(jìn)制位數(shù)固定不變,而
且集中放在指令字的一個(gè)字段中。
這種格式有利于簡(jiǎn)化硬件設(shè)計(jì),減少指令譯碼時(shí)間,廣泛
用于字長(zhǎng)較長(zhǎng)的大、中型計(jì)算機(jī)和超級(jí)小型計(jì)算機(jī)中。
例如IBM370和VAX-H系列機(jī)中,操作碼的長(zhǎng)度都是8位,
可表示256條指令。
⑵可變長(zhǎng)度操作碼
可變長(zhǎng)度操作碼是操作碼擴(kuò)展技術(shù)的應(yīng)用,即操作碼的
長(zhǎng)度是可變的,且分散地放在指令的不同字段中。這種格式有
利于壓縮程序中操作碼的平均長(zhǎng)度,在字長(zhǎng)較短的微型機(jī)中被
廣泛應(yīng)用。如:PDP-11,INTEL8086/80386等,其操作碼的
長(zhǎng)度均是可變的。
o2?Z>MLTil
Y單地址指令又稱為單操作數(shù)指令。通常這種指令通常
-以運(yùn)算器中累加寄存器AC中的數(shù)據(jù)為被操作數(shù),指令字的
地址碼字段所指明的數(shù)為操作數(shù),操作結(jié)果又放回累加寄
.“二地址指令常稱為雙操作數(shù)指令,它的兩個(gè)地址碼
j字段分別指明參與操作的兩個(gè)數(shù)在內(nèi)存中或運(yùn)算
器中通用寄存器的地址,A1作存放操作結(jié)果的地址。
〈士(A1)OP(A2)-A1
Ldk,J
//M|A2IA3|三地址指令
零地址指令的指令字中只有操作碼,而沒(méi)有地.
、址碼。
半地址)百步
零地址指令
③二地址指令。二地址指令常稱雙操作數(shù)指令,指令中給出
兩個(gè)地址碼字段A1和A2,分別指明參與操作的兩個(gè)數(shù)在內(nèi)存中
或運(yùn)算器通用寄存器的地址,其中地址A1兼作存放操作結(jié)果的
地址。(Al)OP(A2)-A1如:ADDRI,R2
④三地址指令
三地址指令字中有二個(gè)源操作數(shù)地址Al,A2和一個(gè)目的操
作數(shù)地址A3。
(Al)OP(A2)-A3如:ADDRI,R2,R3
?在二地址指令格式中,從操作數(shù)的物理位置來(lái)說(shuō),又可歸
結(jié)為三種類(lèi)型:
①(SS)型指令一存儲(chǔ)器-存儲(chǔ)器型指令,為訪問(wèn)存儲(chǔ)器
的指令格式;
②(RR)型指令一寄存器-寄存器型指令,為訪問(wèn)寄存器
的指令格式;
③(RS)型指令一寄存器-存儲(chǔ)器型指令,用于存儲(chǔ)器與
寄存器交換信息。
3.擴(kuò)展操作碼技術(shù)
操作碼的位數(shù)隨地址數(shù)的減少而增加
|OPA】A2A3
0000AlA2A3
0001A1A2A3
4位操作碼????15條三地址指令
liio'A、入2鼠
im_oooo_ZA?
11110001A;A;
8位操作碼????15條二地址指令
liuliio42鼠
mimiooooA,
111111110001A;
12位操作碼????15條一地址指令
liuliiiliio入a
1111111111110000
1111111111110001
????條零地址指令
16位操作碼????16
liiiliiiliiiliii
7.2.2指令長(zhǎng)度
例如,IBM370系列,它的指令格式有16位(半字)
的,有32位(單字)的,還有48位(一個(gè)半字)的。
在Pentium系列機(jī)中,指令格式也是可變的:有8位、
16位、32位、64位不等。
使用多字長(zhǎng)指令,目的在于提供足夠的地址位來(lái)
解決訪問(wèn)內(nèi)存任何單元的尋址問(wèn)題。其主要缺點(diǎn)是必
須兩次或多次訪問(wèn)內(nèi)存以取出一整條指令,降低了
CPU的運(yùn)算速度,又占用了更多的存儲(chǔ)空間。(當(dāng)然,
若采用指令流水線、多體交叉存儲(chǔ)等技術(shù),可以較好
地4牟決at匕問(wèn)題)
令。
[等長(zhǎng)指令字結(jié)構(gòu)]:各種指令字長(zhǎng)
度是相等的。這種指令字結(jié)構(gòu)簡(jiǎn)單,
且指令字長(zhǎng)度是不變的。
[變長(zhǎng)指令字結(jié)構(gòu)]:指令字的長(zhǎng)度
隨指令功能而變化。這種指令字結(jié)
構(gòu)靈活,能充分利用指令長(zhǎng)度,但
指令的譯碼及控制較復(fù)雜。
7.3指令和數(shù)據(jù)的尋址方式
尋址方式一當(dāng)采用地址指定方式時(shí),
形成操作數(shù)的地址或指令地址的方式)稱
為尋址方式。尋址方式分為兩類(lèi),即指
令尋址方式和數(shù)據(jù)尋址方式。
7.3.1指令尋址方式
.順序?qū)ぶ贩绞揭恢噶钪饤l順序執(zhí)行
,由PC+1-PC控制;
,跳躍尋址方式--程序執(zhí)行轉(zhuǎn)移指令)下
條指令的地址不再是由PC給出,而是由本
條指令給出。
尋址方式確定本條指令的操作數(shù)地址
下一條欲執(zhí)行指令的指令地址
T旨令尋址
尋址方式<
一數(shù)據(jù)尋址
內(nèi)存
/一,
程序計(jì)數(shù)器F
指令地址指令內(nèi)容
0LDA」00
1ADD201
2INC
3IMP6
4LDA206
5SVB207
6INC
,_____Z_________LDA___2QQ_7
(a)指令的順序?qū)ぶ贩绞?/p>
然后程序計(jì)數(shù)耀加1,執(zhí)行下1條指令;如此進(jìn)行循環(huán).
程序計(jì)數(shù)器(PC)
\PC=3
PC=6
⑹指令的跳躍尋址方式
7.3.2操作數(shù)類(lèi)型和操作種類(lèi)
1、操作數(shù)類(lèi)型
地址無(wú)符號(hào)整數(shù)
數(shù)字定點(diǎn)數(shù)、浮點(diǎn)數(shù)、十進(jìn)制數(shù)
字符ASCII
邏輯數(shù)邏輯運(yùn)算
2、數(shù)據(jù)在存儲(chǔ)器中的存放方式
字地址低字節(jié)字地址低字節(jié)
32100123
76544567
字地址為低字節(jié)地址_字成址為高字節(jié)地址
存儲(chǔ)器中的數(shù)據(jù)存放(存儲(chǔ)字長(zhǎng)為32位)
邊界對(duì)準(zhǔn)地址(十進(jìn)制)
字(地址0)0
字(地址4)4
字節(jié)(地址工工)字節(jié)(地址10)字節(jié)(地址9)字節(jié)(地址8)8
字節(jié)(地址15)字節(jié)(地址14)字節(jié)(地址13)字節(jié)(地址12)12
半字(地址18)/半字(地址16)/16
半字(地址22)/半字(地址20)/20J
241
雙字(地址24)上
雙字28
32
雙字(地址32)上
雙字36
|邊界未對(duì)準(zhǔn)地址(十進(jìn)制)
__________半字(地址0)|0
字節(jié)(地址7)字節(jié)(地址6)4
半字(地址10)半字(地址8)|8
7.3.3數(shù)據(jù)尋址
操作碼尋址特征形式地址A
形式地址指令字中的地址
有效地址操作數(shù)的真實(shí)地址
約定指令字長(zhǎng)=存儲(chǔ)字長(zhǎng)=機(jī)器字長(zhǎng)
所謂操作數(shù)尋址方式,就是形成操作數(shù)
有效地址的方法。
例如:某單地址指令的結(jié)構(gòu)如下所示,其中用
X,I,D各字段組成該指令的操作數(shù)地址。
一操作碼字段----------------操作數(shù)字段
即:指令中操作數(shù)字段的地址碼,是由形式地址
D和尋址方式特征位X、I等組合形成。
1.立即尋址
形式地址A就是操作數(shù)
立即尋址特征
-A_
OP#A
V
立即數(shù)可正可負(fù)補(bǔ)碼
?指令執(zhí)行階段不訪存
?A的位數(shù)限制了立即數(shù)的范圍
2.隱含尋址。在指令中并不直接給出操作數(shù)
的地址)而是隱含著操作數(shù)的地址。例:ADD
B;另一個(gè)操作數(shù)的地址即隱含為累加器AC
4.間接尋址
指令
OP
(b)間接尋址方式
它從指令地址字段中的形式地址D中獲得操作數(shù)地址.
網(wǎng)次歷行,彭啊福令雙仃逑皮,現(xiàn)在匕小太便用。
例如:
5寄存器尋址方式和寄存器間接尋址方式
①寄存器直接尋址
如果指令的地址碼部分給出的是某通用寄存器編號(hào)燈,1
寄存器中存放著操作數(shù),則稱為寄存器直接尋址。
例如:執(zhí)行ADD仆指令,
該指令說(shuō)明N是操作數(shù)的有效地址,從1中取出操作數(shù)
與累加器的內(nèi)容相加,其結(jié)果放在累加器中。
尋址特征寄存器號(hào)
ADDRi
ARi操作數(shù)
②寄存器間接尋址
寄存器間接尋址,是指令中地址字段所指的寄存器中存放
的是操作數(shù)的地址。
例如:執(zhí)行ADDQRj指令時(shí),說(shuō)明%不是操作數(shù)的有效地址,而
是存放操作有效地址的寄存器號(hào)。
操作碼尋址特勺寄存器號(hào)內(nèi)存
ADD@[
R.操作數(shù)地址
'--------A操作數(shù)
6.相對(duì)尋址
把程序計(jì)數(shù)器PC的內(nèi)容加上指令格式中的形式地址D而形成
操作數(shù)的有效地址。
E=(PC)±D
優(yōu)點(diǎn):相對(duì)于當(dāng)前指令地址進(jìn)行浮動(dòng)。
傷I:INC[PC+200H]
這是一條加1指令,指令有效地址E=(PC)+200H=2200H
相對(duì)地址為1035。這個(gè)地址是不固定的,隨PC的值變化而變
化,并且相對(duì)地差一個(gè)固定值。因此,無(wú)論程序裝入存儲(chǔ)器
的任何區(qū)域,只要這個(gè)差值不變,程序均能正確運(yùn)行。由于
程序在內(nèi)存空間里是浮動(dòng)的,又稱浮動(dòng)尋址。
7.基址尋址方式
修CPU中基址寄存器Bx的內(nèi)容加上指令格式中的形式地址而
形成操作數(shù)的有效地址。
E=(Bx)±D如:INC[Bx+300H]
這是一條加1指令,指令有效地址E=(Bx)+300H=0380H
指令
操作碼X2300H
存儲(chǔ)器
基址寄存器Hx
80H0380H操作數(shù)
8.變址尋址方式
把CPU中某個(gè)變值寄存器Rx的內(nèi)容與偏移量D相加來(lái)形成操
作數(shù)的有效地址。
E=(Rx)±D如:INC[Rx+300H]
這是一條加1指令,指令有效地址E=(Rx)+300H=0380H
指令
操作碼|X3|SOPH
存儲(chǔ)騫
變址寄存春1
AAH[------08AAH
操作教
☆變址尋址和基址尋址尋址方法十分類(lèi)似,但用途不同:
?變址尋址:主要便于數(shù)組訪問(wèn)
?基址尋址:可擴(kuò)大尋址范圍,可實(shí)現(xiàn)程序浮動(dòng)。
例2:間址、變址尋址方式
INC[(Rx)+(100H)]
這是一條加1指令,指令有效地址:E=(Rx)+(100H)=1260H
9.段尋址方式
150
邏輯地址
存儲(chǔ)器物理地址
故物理地川可表示的空間為1M單位.
PDP/11計(jì)算機(jī)CPU中有8個(gè)程序可訪問(wèn)的寄:
向器,其編號(hào)為REU卜7乍為程序計(jì)數(shù)器0-
廠指令中有3位用于尋址方式選擇,可指示8
種尋址方式。此外還有4種指令計(jì)數(shù)器型尋址方
作式屬于隱含尋址方式,它們以訪問(wèn)R7(程序計(jì)
乜口數(shù)器)為標(biāo)志。
151211109876543210
源地址--------------目標(biāo)地址
各種操作數(shù)尋址方式及尋址特征位的編號(hào),
見(jiàn)表:
尋址名尋址匯編
有效地址E說(shuō)明
稱特征值格式
寄存器寄存器Rn的內(nèi)容是操作數(shù),
000E=RRn
型相當(dāng)于直接地址
寄存器的內(nèi)容是操作數(shù)
E=(R);Rn
直自增型010(Rn)+地址,然后遞增寄存器內(nèi)
(R)+2-R容
接
(R)-2-R;先遞減寄存器Rn的內(nèi)容,
自減型100-(Rn)
E=(R)然后作為操作數(shù)的地址
型
寄存器Rn的內(nèi)容與本指令
(PC)+2-PC;
變址型110X(Rn)下一單元所存的數(shù)相加,
E=((PC))+(R)
作為操作數(shù)的地址
各種操作數(shù)尋址方式及尋址特征位的編號(hào),
見(jiàn)表:
尋址名尋址匯編格
有效地址E說(shuō)明
稱特征值式
寄存器Rn的內(nèi)容作為操
寄存器QRn或
001E=(R)作數(shù)地址,相當(dāng)于寄存
(Rn)
間接器間接地址
寄存器Rn的內(nèi)容作為操
自增間E=((R));
間011o)(Rn)+作數(shù)地址的地址,然后
接(R)+2-R
寄存器Rn的內(nèi)容遞減
接寄存器Rn的內(nèi)容先遞減,
自減間(R)-2-R;
101o)-(Rn)然后作為操作數(shù)地址的
接E=((R))
型地址
指令下一個(gè)單元的內(nèi)容
(PC)+2-PC;E
變址間與變址寄存器Rn所指示
111=((R))+((PC)o)X(Rn)
接的單元內(nèi)容相加是操作
)
數(shù)的地址
序號(hào)尋址方式名稱有效地址E算法說(shuō)明
(1)立即操作數(shù)在指令中
操作數(shù)在寄存器中,
(2)寄存器
指令給出寄存器號(hào)
(3)直接E=DispDisp為偏移量
(4)基址E=(RB)RB為基址寄存器
(5)基址+偏移量E=(RB)+Disp
力為變址寄存器,S為
(6)比例變址+偏移量E=(R[)xS+Disp
比例因子
(7)基址+變址+偏移E=(I<B)+(R[)+Disp
基址+比例變址+
(8)E=(RB)+(R1)xS+Disp
偏移量
PC為程序計(jì)數(shù)器或當(dāng)
(9)相對(duì)E=(PC)+Disp前指令指針寄存器
7.5典型指令
7.5.1指令的分類(lèi)
一個(gè)較完善的指令系統(tǒng)應(yīng)當(dāng)包括:
?數(shù)據(jù)傳送類(lèi)指令:例)move、load、store等
?算術(shù)運(yùn)算類(lèi)指令:例)add、sub、mult、div、comp等
.移位操作類(lèi)型
?邏輯運(yùn)算類(lèi)指令:例)and、or、xor、not等
?程序控制類(lèi)指令:例)jump、branch、jsr、ret、int等
?輸入輸出指令:例)in、out等
-字符串類(lèi)指令:例)如alpha中cmpbge、inswh、extbl等
?系統(tǒng)控制類(lèi)指令:例)push、pop、test等
1.數(shù)據(jù)傳送類(lèi)指令
這類(lèi)指令的功能是實(shí)現(xiàn)寄存器與寄存器,寄存器與存
儲(chǔ)單元以及存儲(chǔ)單元與存儲(chǔ)單元之間的數(shù)據(jù)傳送。
數(shù)據(jù)傳送指令主要包括取數(shù)指令、存數(shù)指令、傳送指令、
成組傳送指令、字節(jié)交換指令、清累加器指令、堆棧操作
指令等等。
2.算術(shù)運(yùn)算指令
這類(lèi)指令包括二進(jìn)制定點(diǎn)加、減、乘、除指令,浮點(diǎn)加、
減、乘、除指令,求反、求補(bǔ)指令,算術(shù)移位指令,算術(shù)比較
指令,十進(jìn)制加、減運(yùn)算指令等。這類(lèi)指令主要用于定點(diǎn)或浮
點(diǎn)的算術(shù)運(yùn)算。大型機(jī)(如IBM370機(jī)、國(guó)產(chǎn)銀河機(jī)、CRAY-1
機(jī)、CDC的STAR-100機(jī)等)中還設(shè)置有向量運(yùn)算指令,可直
接對(duì)整個(gè)向量或矩陣進(jìn)行求和、求積運(yùn)算。
3.邏輯運(yùn)算指令
這類(lèi)指令包括邏輯加、邏輯乘、邏輯比較、測(cè)等指令、
按位加、邏輯移位等指令,主要用于無(wú)符號(hào)數(shù)的位操作、代
碼的轉(zhuǎn)換、判斷及運(yùn)算。移位指令用來(lái)對(duì)寄存器的內(nèi)容實(shí)現(xiàn)
左移、右移或循環(huán)移位。
4.程序控制指令
程序控制指令也稱轉(zhuǎn)移指令。執(zhí)行程序時(shí),有時(shí)機(jī)器執(zhí)行
到某條指令時(shí),出現(xiàn)了幾種不同結(jié)果,這時(shí)機(jī)器必須執(zhí)行一條
轉(zhuǎn)移指令,根據(jù)不同結(jié)果進(jìn)行轉(zhuǎn)移,從而改變程序原來(lái)執(zhí)行的
順序。這種轉(zhuǎn)移指令稱為條件轉(zhuǎn)移指令。除各種條件轉(zhuǎn)移指令
外,還有無(wú)條件轉(zhuǎn)移指令、轉(zhuǎn)子程序指令、返回主程序指令、
中斷返回指令等。轉(zhuǎn)移指令的轉(zhuǎn)移地址一般采用直接尋址和
相對(duì)尋址方式去確定。
轉(zhuǎn)子指令是轉(zhuǎn)向本指令操作地址所指出的子程序入口,并將原
程序中下一條指令地址存入內(nèi)存某單元(或指定的某個(gè)寄存器)
中,以便為返回主程序時(shí)提供返回地址。
5.輸入輸出指令
輸入輸出指令主要用來(lái)啟動(dòng)外圍設(shè)備,檢查測(cè)試外圍設(shè)備
的工作狀態(tài),并實(shí)現(xiàn)外部設(shè)備和CPU之間,或外圍設(shè)備與外圍設(shè)
備之間的信息傳送。
6.字符串處理指令
字符串處理指令是一種非數(shù)值處理指令,一般包括字符串
傳送、字符串轉(zhuǎn)換(把一種編碼的字符串轉(zhuǎn)換成另一種編碼的
字符串)、字符串替換(把某一字符串用另一字符串替換)等。
這類(lèi)指令在文字編輯中對(duì)大量字符串進(jìn)行處理。
7.特權(quán)指令
特權(quán)指令是指具有特殊權(quán)限的指令。這類(lèi)指令只用于操作
系統(tǒng)或其他系統(tǒng)軟件,一般不直接提供給用戶使用。在多用
戶、多任務(wù)的計(jì)算機(jī)系統(tǒng)中特權(quán)指令必不可少。它主要用于系
統(tǒng)資源的分配和管理。
8.其他指令
除以上各類(lèi)指令外,還有狀態(tài)寄存器置位、復(fù)位指令、測(cè)
試指令、暫停指令,空操作指令,以及其他一些系統(tǒng)控制用的
特殊指令。
例題1.某機(jī)指令格式如下
OPXD
151O987O
其中X為尋址特征位,且X=0時(shí)不變址;X=1時(shí)用變
址寄存器X1進(jìn)行變址;X=2時(shí)用變址寄存器X2進(jìn)行
變址;X=3時(shí)相對(duì)尋址。設(shè)(PC)=1234H,(Xi)
=1122H,請(qǐng)確定下列指令的有效地址(均用十六
進(jìn)制表示)H表示十六進(jìn)制);
(l)4420H(2)2244H(3)1322H(4)3521H
(5)6723H
解:⑴指令4420H展開(kāi)為:O1OOO1O000100000B
X=00不變址,有效地址=口=002011
(2)指令2244H展開(kāi)為:即10叫以01000100B
X=10用變址寄存器X2匪石陵耳青凝面t=(X2)
+D=1122H+44H=1166H
⑶指令1322H展開(kāi)為:財(cái)]叫口00100010B
X=ll為相對(duì)尋址,有效地址=(PC)+D=1234H+
22H=1256H
(4)指令3521H展開(kāi)為:則101?00100001B
X=01用變址寄存器X1迸石變£有雙而i=(Xi)
+D=0037H+21H=OO58H
(5)指令6723H展開(kāi)為:里則」100100011B
X=ll為相對(duì)尋址,有效忠句二"c麗=而411+23H
=1257H
例題2:假設(shè)機(jī)器字長(zhǎng)16位,主存容量為
128K字節(jié),指令字長(zhǎng)度為16位或32位,共
有128條指令,設(shè)計(jì)計(jì)算機(jī)指令格式,要求
有直接、立即數(shù)、相對(duì)、基值、間接、變
址六種尋址方式。
解:由已知條件,機(jī)器字長(zhǎng)16位,主存容量(
128KB/16=64K字,因止匕MAR=16位,共128條才旨
令,故0P字段占7位。采用單字長(zhǎng)和雙字長(zhǎng)
兩種指令格式,其中單字長(zhǎng)指令用于算術(shù)邏
輯和I/O類(lèi)指令,雙字長(zhǎng)用于訪問(wèn)主存的指
令。
159:86543210
OPRi
159865320
OP
D
尋址方式由尋址模式X定義如下:
X=000直接尋址E=D(64K)
X=001立即數(shù)D=操作數(shù)
X=010相對(duì)尋址E=PC+D,PC=16位
X=011基值尋址E=Rb+D,Rb=16位
X=100間接尋址E=(D)
X=101變址尋址E=+D,=16位
RAYARY
7.5.2指令格式舉例
1、設(shè)計(jì)指令格式時(shí)應(yīng)考慮的各種因素
(1).指令系統(tǒng)的兼容性(向上兼容)
(2).其他因素
操作類(lèi)型包括指令個(gè)數(shù)及操作的難易程度
數(shù)據(jù)類(lèi)型
指令格式指令字長(zhǎng)、操作碼位數(shù)
尋址方式、是否采用擴(kuò)展操作碼
地址碼位數(shù)、地址個(gè)數(shù)
尋址方式
寄存器個(gè)數(shù)
2、指令格式舉例
(1)PDP-8指令字長(zhǎng)固定12位
訪存類(lèi)指令操作碼間頁(yè)地址碼
0234511
I/O類(lèi)指令110設(shè)備操作碼
0238911
寄存器類(lèi)指令HI輔助操作碼
02311
(2)PDP-11
指令字長(zhǎng)有16位、32位、48位三種
OP-CODE零地址(16位)
16擴(kuò)展操作碼技術(shù)
OP-CODE目的地址一地址(16位)
106
OP源地址目的地址二地址R-R(16位)
466
OP目的地址存儲(chǔ)器地址二地址R-M(32位
二地址M—M(48位)
OP源地址目的地址存儲(chǔ)器地址1存儲(chǔ)器地址2
4661616
(3)IBM360
RR
OPR二地址R一R
格式Ri2
844
IX二地址R一M
OPRiXBD
,式基址加變址尋址
844412
RS三地址R一M
OPBD
珞式RiR3
844412基址尋址
SIOPIBD立即數(shù)一M
格式
88412基址尋址
SS
OPLBiDiBD
格式22
88412412
^—TVT
(4)Intel8086
(1)指令字長(zhǎng)1?6個(gè)字節(jié)
INCAX1字節(jié)
MOVWORDPTR[0204],0138H6字節(jié)
⑵地址格式
零地址NOP1字節(jié)
一地址CALL段間調(diào)用5字節(jié)
CALL段內(nèi)調(diào)用3字節(jié)
二地址ADDAX,BX2字節(jié)寄存器一寄存器
ADDAX,3048H3字節(jié)寄存器一立即數(shù)
ADDAX,[3048H]4字節(jié)寄存器一存儲(chǔ)器
7.5.3精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)
1.RISC產(chǎn)生的時(shí)代背景
從計(jì)算機(jī)的發(fā)展過(guò)程來(lái)看,指令系統(tǒng)是隨著計(jì)算機(jī)體系結(jié)
構(gòu)的完善聯(lián)系起來(lái)的。
?早期的計(jì)算機(jī)結(jié)構(gòu)簡(jiǎn)單,指令條數(shù)少,指令系統(tǒng)功能弱,
計(jì)算機(jī)的性能較差。
?隨著VLSI技術(shù)的迅速發(fā)展,硬件成本不斷下降,軟件成
本不斷上升,促進(jìn)人們?cè)谥噶钕到y(tǒng)中增加更多的指令和更
復(fù)雜的指令,以適應(yīng)不同應(yīng)用領(lǐng)域的需要。
?特別是系列機(jī)問(wèn)世之后,為了能做到程序兼容,新設(shè)機(jī)
型或高檔機(jī)除了要繼承老機(jī)器的指令系統(tǒng)中的全部指令外,
還要增加若干新的指令,從而導(dǎo)致同一系列計(jì)算機(jī)的指令
系統(tǒng)越來(lái)越復(fù)雜,機(jī)器結(jié)構(gòu)也越來(lái)越復(fù)雜。
對(duì)CIsc指令系統(tǒng)所作的運(yùn)行統(tǒng)計(jì)分析表明,各種指令使
用頻率相差懸殊,常用的較為簡(jiǎn)單的指令,僅占指令總數(shù)的
20%,但在程序中使用的頻率卻占80%。下表是HP公司研究
了IBM370計(jì)算機(jī)的高級(jí)語(yǔ)言運(yùn)行情況后所得到的統(tǒng)計(jì)數(shù)據(jù)。
指令類(lèi)別COBOLFORTRANPASCAL
轉(zhuǎn)移24.2%18.0%18.4%
1邏輯操作14.6%8.1%9.9%
存數(shù)取數(shù)40.2%48.7%54.0%
存儲(chǔ)單元送存儲(chǔ)單元12.4%2.1%3.8%
整數(shù)運(yùn)算6.4%11.0%7.0%
浮點(diǎn)運(yùn)算0.0%11.9%6.8%
十進(jìn)制運(yùn)算1.6%0.0%0.0%
其它0.6%0.2%0.1%
根據(jù)上述分析情況,國(guó)外一些計(jì)算機(jī)公司和大學(xué)開(kāi)展了
對(duì)指令系統(tǒng)合理性的研究,1975年IBM公司的JohnCocke提出
了精簡(jiǎn)指令系統(tǒng)的想法,后來(lái)
溫馨提示
- 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án)水職業(yè)技術(shù)學(xué)院《典型零件的工藝設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 金肯職業(yè)技術(shù)學(xué)院《微機(jī)原理含實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 新蘇教版一年級(jí)下冊(cè)數(shù)學(xué)第1單元第3課時(shí)《8、7加幾》作業(yè)
- 懷化學(xué)院《影視創(chuàng)作前沿技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 湖北理工學(xué)院《人力資源管理咨詢與診斷》2023-2024學(xué)年第一學(xué)期期末試卷
- 資陽(yáng)口腔職業(yè)學(xué)院《測(cè)試與傳感器技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)黨員聯(lián)系群眾、服務(wù)群眾制度
- 長(zhǎng)沙學(xué)院《材料加工過(guò)程多尺度模擬》2023-2024學(xué)年第一學(xué)期期末試卷
- 寒露節(jié)氣策劃講座模板
- 職業(yè)導(dǎo)論-房地產(chǎn)經(jīng)紀(jì)人《職業(yè)導(dǎo)論》名師預(yù)測(cè)卷3
- 礦工睡崗檢查書(shū)
- 仁恒江灣城修建幕墻工程監(jiān)理實(shí)施細(xì)則
- 廣東省佛山南海區(qū)四校聯(lián)考2023屆中考試題猜想數(shù)學(xué)試卷含解析
- 2023年江蘇蘇州工業(yè)園區(qū)管委會(huì)招聘筆試參考題庫(kù)附帶答案詳解
- GB/T 10752-2005船用鋼管對(duì)焊接頭
- 酒店婚宴銷(xiāo)售年度工作計(jì)劃4篇
- 健康教育工作考核記錄表
- 裝飾工程施工技術(shù)ppt課件(完整版)
- SJG 05-2020 基坑支護(hù)技術(shù)標(biāo)準(zhǔn)-高清現(xiàn)行
- 汽車(chē)維修價(jià)格表
-
評(píng)論
0/150
提交評(píng)論