




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1 第四章 指令系統(tǒng)4.1 指令系統(tǒng)的發(fā)展與性能要求 4.2 指令格式4.3 指令和數(shù)據(jù)的尋址方式4.4 堆棧尋址方式4.5 典型指令24.1 指令系統(tǒng)的發(fā)展與性能要求計算機指令的分類: 微指令、機器指令和宏指令機器指令指令系統(tǒng)系列計算機復(fù)雜指令系統(tǒng)計算機(CISC)精簡指令系統(tǒng)計算機(RISC)34.1.2 對指令系統(tǒng)性能的要求 完備性 有效性 規(guī)整性 兼容性44 41 13 3 低級語言與硬件結(jié)構(gòu)的關(guān)系低級語言與硬件結(jié)構(gòu)的關(guān)系高級語言( C、Fortran)低級語言: 機器語言(二進制語言) 匯編語言(符號語言)5比 較 內(nèi) 容 高級語言 低級語言 1 對程序員的訓(xùn)練要求(1) 通用算法(
2、2) 語言規(guī)則 (3) 硬件知識 有較少 不要 有較多 要 2對機器獨立的程度獨立 不獨立 3編制程序的難易程度 易 難 4編制程序所需時間 短 較長 5程序執(zhí)行時間 較長 短 6編譯過程中對計算機資源的要求多 少 表4.1 高級語言和低級語言的比較64. 2 指令格式指令字:表示一條指令的機器字指令格式:指令字用二進制代碼表示的結(jié)構(gòu)形式指令的結(jié)構(gòu)操作碼字段地址碼字段7指令系統(tǒng)的每一條指令都要規(guī)定一個操作碼。一個N位的操作碼最多能夠表示2 2N N條指令。具體機器的指令系統(tǒng),指令字中操作碼字段 和地址字碼段長度是固定長度是固定的。 4.2.1 操作碼84.2.2 地址碼(1 1)零地址指令:
3、指令字中只有操作碼,而沒有地址碼。操作碼 (2)一地址指令:又稱為操作數(shù)指令。 數(shù)學(xué)含義為:(AC) OP (A) AC(AC) OP (A) AC OP表示操作性質(zhì)(加、減、乘、除等) (AC)表示累加寄存器AC中的數(shù); (A)表示內(nèi)存中地址為A的存儲單元中的數(shù), 或是運算器中地址為A的通用寄存器中的數(shù)。 A操作碼9(4) 三地址指令字 數(shù)學(xué)含義為 (A1) OP (A2) A3 A1為被操作數(shù)地址被操作數(shù)地址,也稱為源操作數(shù)地址; A2為操作操作數(shù)地址操作操作數(shù)地址,也稱終點操作數(shù)地址; A3為存放操作結(jié)果的地址存放操作結(jié)果的地址。操作碼A1A2A3(3)二地址指令:常稱為雙操作數(shù)指令,
4、數(shù)學(xué)含義為 (A1) OP (A2) A1 A1 A2操作碼10從操作數(shù)的物理位置來說,二地址指令格式可歸結(jié)為: 存儲器存儲器(SS)型指令 寄存器寄存器(RR)型指令 寄存器存儲器(RS)型指令 CISC計算機中,一個指令系統(tǒng)中指令字的長度和指令中的地址結(jié)構(gòu)并不是并不是單一的單一的 。11指令字長度:一個指令字中包含二進制代碼的倍數(shù)。4.2.3 指令字長度機器字長: 計算機能直接處理的二進制數(shù)據(jù)的倍數(shù)。單字長指令 指令字長度等于機器字長度的指令。雙字長指令 指令字長度等于兩個機器字長度的指令。半字長指令 指令字長度等于半個機器字長度的指令。12指令助記符 為了便于書寫和閱讀程序,每條指令用3
5、個或4個英文縮寫字母來表示。4.2.4 指令助記符13 典 型 指 令 指 令 助 記 符 二 進 制 操 作 碼 加 法 ADD OOI 減 法 SUB OIO 傳 送 MOV OI I 跳 轉(zhuǎn) JMP IOO 轉(zhuǎn) 子 JSR I O I 存 儲 STR I IO 讀 數(shù) LDA I I I14l 八位微型計算機的指令格式 l PDP/11 系列機指令格式 l PENTIUM指令格式4.2.5 指令格式舉例15操作碼MODREGR /M比例S變址I基址B位移量立即數(shù)指令前綴段取代操 作 數(shù) 長度取代地址長度取代Pentium 指令格式16例例1 1 指令格式如下所示,其中OP為操作碼,試分析
6、指令格式的特點。OP -源寄存器目標(biāo)寄存器解:(1) 單字長二地址指令。 (2) 操作碼字段OP可以指定27=128條指令。 (3) 源寄存器和目標(biāo)寄存器都是通用寄存器(可 分別指定16個),所以是RR型指令,兩個操 作數(shù)均在寄存器中。 (4) 這種指令結(jié)構(gòu)常用于算術(shù)邏輯運算類指令。17例例2 2 指令格式如下所示,OP為操作碼字段,試分析指令格式特點。 OP -源寄存器變址寄存器 位移量 (16位)解:(1) 雙字長二地址指令,用于訪問存儲器。 (2) 操作碼字段OP為6位,可以指定26=64 種操作。 (3) 一個操作數(shù)在源寄存器(共16個),另 一個操作數(shù)在存儲器中(由變址寄存器 和位移
7、量決定),所以是RS型指令。18尋址方式:當(dāng)采用地址指定方式時,形成操作數(shù)或指令地址的方式。4.3 指令和數(shù)據(jù)的尋址方式尋址方式:指令尋址方式 數(shù)據(jù)尋址方式19指令的尋址方式:順序?qū)ぶ贩绞?跳躍尋址方式4.3.1 指令的尋址方式20順序?qū)ぶ贩绞?由于指令地址在內(nèi)存中按順序安排,執(zhí)行一段 程序時一條指令接一條指令的順序進行。跳躍尋址方式 跳躍跳躍指下條指令的地址碼不是由程序計數(shù)器給出,而 是由本條指令本條指令給出。 當(dāng)程序轉(zhuǎn)移執(zhí)行的順序轉(zhuǎn)移執(zhí)行的順序時,指令的尋址就采取跳躍 尋址方式。 214.3.2 操作數(shù)尋址方式操作數(shù)的尋址方式:形成操作數(shù)的有效地址的方法。尋址過程就是把操作數(shù)的形式地址,變
8、換為操作數(shù)的有效地址的過程。22操作數(shù)尋址方式隱含尋址立即尋址直接尋址間接尋址寄存器尋址方式和寄存器間接尋址相對尋址方式基址尋址方式變址尋址方式塊尋址方式231. 隱含尋址不明顯的給出操作數(shù)的地址,而是在指令中隱含著操作數(shù)的地址。2. 立即尋址指令的地址字段指出不是操作數(shù)的地址,而是操作數(shù)本身。3.直接尋址在指令格式的地址字段中直接直接指出操作數(shù)在內(nèi)存中的地址。24254.4.間接尋址間接尋址5.5.寄存器尋址方式和寄存器間接尋址方式寄存器尋址方式和寄存器間接尋址方式操作數(shù)放在CPUCPU的通用寄存器的通用寄存器中時,可采用寄存器尋址方式。指令地址字段中的形式地址D不是不是操作數(shù)的直接地址,而
9、是操作數(shù)的地址的指示器指示器26相對尋址是把程序計數(shù)器程序計數(shù)器PCPC的內(nèi)容的內(nèi)容加上指令格式中的形式地址形式地址而形成操作數(shù)的有效地址。6.相對尋址方式7.基址尋址方式 將CPU中基址寄存器的內(nèi)容基址寄存器的內(nèi)容加上指令格式中的形式地址形式地址而形成操作數(shù)的有效地址。把CPU中某個變值寄存器某個變值寄存器的內(nèi)容與偏移量偏移量相加來形成操作數(shù)有效地址。8.變址尋址方式2728用在輸入輸出指令輸入輸出指令中以實現(xiàn)外存儲器或外圍設(shè)備同內(nèi)存之間的數(shù)據(jù)塊傳送數(shù)據(jù)塊傳送。在內(nèi)存中還可用于數(shù)據(jù)塊搬家數(shù)據(jù)塊搬家。如果數(shù)據(jù)塊是定長的,只需要指令中指出數(shù)據(jù)數(shù)據(jù)塊的首地址塊的首地址;如數(shù)據(jù)塊為變長可用三種方法指
10、出其長度: (1)指令中劃出字段指出長度; (2)指令格式中指出數(shù)據(jù)塊的首、末地址; (3)由塊結(jié)束字符指出數(shù)據(jù)塊長度。9.塊尋址方式塊尋址方式2910.10.段尋址方式段尋址方式 形成20位物理地址時,段寄存器中的16位數(shù)會自動左移左移4 4位位,然后與16位偏移量相相加加。此尋址方式的實質(zhì)是基址尋址。304.3.3 尋址方式舉例1.PDP/11 系列機尋址方式2.2.Pentium 的尋址方式31 序號 尋址方式名稱 有效地址E算法 說 明 1 立 即操作數(shù)在指令中 2 寄存器操作數(shù)在某寄存器內(nèi),指令給出寄存器號 3 直接E=DispDisp為偏移量 4 基址E=(B)B為基址寄存器 5
11、基址+偏移量E=(B)+Disp 6 比例變址+偏移量E=(I)*S+DispI為變址寄存器,S為比例因子 7 基址+變址+偏移量 E=(B)+(I)+Disp 8 基址+比例變址+偏移量E=(B)+(I)*S+DiSPS+Disp 9 相對指令地址=(PC)+DispPC為程序計數(shù)器或當(dāng)前指令指針寄存器Pentium 的尋址方式32例3一種二地址RS型指令的結(jié)構(gòu)如下所示: 6位 4 位 1 位 2位 16位 OP- 通用寄存器 I X 偏移量D其中I為間接尋址標(biāo)志位,X為尋址模式字段,D為偏移量字段。通過I,X,D的組合,可構(gòu)成表4、6的尋址方式。請寫出6種尋址方式的名稱:33 解:(1)直
12、接尋址 (2) 相對地址(3)變址尋址 (4)寄存器間接尋址(5)間接尋址 (6)基址尋址表4.6 例3的尋址方式34例4某16位機器所使用的指令格式和尋址方式如下所示,該機有兩個20位基址值寄存器,四個16位變址寄存器,十六個16位通用寄存器。指令匯編格式中的S(源),D(目標(biāo))都是通用寄存器,M是主存中的一個單元。三種指令的操作碼分別是MOV(OP)=(A)H,STA(OP)=(1B)H,LDA(OP)=(3C)H。MOV 是傳送指令,STA為寫數(shù)指令,LDA為讀數(shù)指令。15 10 9 8 7 4 3 0 OP-目標(biāo) 源 MOV S,D35 15 10 9 8 7 4 3 0 OP 基址
13、源 變址 位移量 STA S,M15 10 9 8 3 0 OP -目標(biāo) 20位地址LDA S,M36要求:(1) 分析三種指令的指令格式與尋址方式特點。(2) CPU完成哪一種操作所花時間最短? 哪一種操作所花時間最長? 第二種指令的執(zhí)行時間有機會等于第三種指 令的執(zhí)行時間嗎?(3) 下列情況下每個十六進制指令字分別代表什么操作?其中如果有編碼不正確,如何改正才能成為合法指令? (F0F1)H (2856)H (6FD6)H (1C2)H37 解:(1) 第一種指令是單字長二地址指令,RR型;第二種指令是雙字長二地址指令,RS型,其中S采用基址尋址或變址尋址,R由源寄存器決定;第三種也是雙字
14、長二地址指令,RS型,其中R由目標(biāo)寄存器決定,S由20位地址(直接尋址)決定。 (2) 處理機完成第一種指令所花時間最短,因為是RR型指令,不需要訪問存儲器。第二種指令所花時間最長,因為是RS型指令,需要訪問存儲器,同時要進行尋址方式的變換運算(基值或變址),這也需要時間。第二種指令的執(zhí)行時間不會等于第三種指令,因為第三種指令雖然也訪問存儲器,但節(jié)省了求有效地址運算的時間開銷。38( 3 ) 根 據(jù) 已 知 條 件 : M O V ( O P ) = 0 0 1 0 1 0 ,STA(OP)=011011,LDA(OP)=111100,將指令的十六進制格式轉(zhuǎn)換成二進制代碼且比較后可知: (F0
15、F1)H (3CD2)H指令代表LDA指令,編碼正確,其含義是把主存(13CD2)H地址單元的內(nèi)容取到15號寄存器。 (2856)H代表MOV指令,編碼正確,含義是把5號源寄存器的內(nèi)容傳送至6號目標(biāo)寄存器。 (6FD6)H是單字長指令,一定是MOV指令,但編碼錯誤,可改正為(28D6)H。 (1C2)H是單字長指令,代表MOV指令,但編碼錯誤,可改正為(28C2)H。394.4 堆棧尋址方式堆棧堆棧: CPU中一組能存儲和取出數(shù)據(jù)的暫存儲單元。串聯(lián)堆棧:串聯(lián)堆棧:CPU中有一組專門的寄存器,通常有16個或更多,其中每一個寄存器能保存一個字的數(shù)據(jù),數(shù)據(jù)采用現(xiàn)今后出的方式存取。4.4.1 串聯(lián)堆棧
16、40壓數(shù)據(jù)進棧41特點:所有的數(shù)據(jù)傳送是在棧頂棧頂和某個通某個通用寄存器用寄存器之間進行的。即某個通用寄存器僅和堆棧的頂部單元相連系。424.4.2 存儲器堆棧串連堆棧的限制 寄存器數(shù)目有限 堆棧的讀出是破壞性的存儲器堆棧 由程序員設(shè)置一部分主存儲器一部分主存儲器作為堆棧43 存儲器堆棧的優(yōu)點 堆棧能夠具有程序員要求的任意長度任意長度; 程序員可以建立任意數(shù)目任意數(shù)目的堆棧; 可以用對存儲器尋址的任何一條指令任何一條指令來對堆棧中的數(shù)據(jù)進行尋址44454.5 典型指令4.5.1 指令的分類按功能分:數(shù)據(jù)傳送指令算術(shù)運算指令邏輯運算指令程序控制指令輸入輸出類指令字符串類指令系統(tǒng)控制類指令461.
17、 數(shù)據(jù)傳送指令分類: 取數(shù)指傳送指令 成組傳送指令 字節(jié)交換指令 清累加器指令 堆棧操作指令作用:實現(xiàn)主存和寄存器之間,或寄存器和寄存器之間的數(shù)據(jù)傳送。47分類: 二進制定點加、減、乘、除指令 求反、求補指令 算術(shù)移位指令 算術(shù)比較指令 十進制加、減運算2.算術(shù)運算指令作用:定點或浮點的算術(shù)運算483.邏輯運算指令分類: 邏輯加 邏輯乘 按位加 邏輯移位作用: 無符號數(shù)的位操作、代碼的轉(zhuǎn)換、判斷及運算。494.程序控制指令分類 條件轉(zhuǎn)移指令 無條件轉(zhuǎn)移指令 轉(zhuǎn)子程序指令 返回子程序指令 中斷返回指令作用:轉(zhuǎn)移指令506.字符串處理指令5. 輸入輸出指令作用: 啟動外圍設(shè)備與外圍設(shè)備之間的住處傳
18、送。分類字符串傳送、轉(zhuǎn)換、比較、查找、抽取、替換作用文字編輯中對大量字符串進行處理51特權(quán)指令:具有特殊權(quán)限的指令作用:用于操作系統(tǒng)或其他系統(tǒng)軟件,一般不直接提供給用戶使用。7. 特權(quán)指令528.其他指令狀態(tài)寄存器置位復(fù)位指令測試指令暫停指令空操作指令一些系統(tǒng)控制用的特殊指令。534.5.2 基本指令系統(tǒng)基本指令:CISC指令系統(tǒng)復(fù)雜,經(jīng)常使用的指令僅占20,但在程序中出現(xiàn)的頻率卻占80,此20%的指令成為基本指令?;局噶睢?44.5.3 精簡指令系統(tǒng)特點:(1)指令條數(shù)少; 選使用頻率最高的一些簡單指令.(2)指令長度固定,指令格式種類少, 尋址方式種類少;(3)只有取數(shù)/存數(shù)指令訪問存儲器, 其余指令的操作都在寄存器之間進行。55 典型典型RISC機指令系統(tǒng)的基本特征機指令系統(tǒng)的基本特征56例5在SPARC中,有一些指令沒有選入指令系統(tǒng),但很容易使用指令集中的另外一條指令來替代實現(xiàn)。表4
溫馨提示
- 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ù)合同范本模板
- 代理合同范本 日文
- 住房拆除合同范本
- 南京社保合同范本
- 占用綠地賠償合同范本
- 抵押個人汽車借款合同范本
- 勞務(wù)外協(xié)施工合同范本
- 廚房承包職務(wù)合同范本
- 吊裝費合同范本
- 貓砂購銷合同范本
- 鼎和財險附加意外傷害醫(yī)療保險A款(互聯(lián)網(wǎng)專屬)條款
- 中暑-紅十字應(yīng)急救護培訓(xùn)課件
- 聯(lián)儲共備實施方案
- 光伏工程 危害辨識風(fēng)險評價表(光伏)
- 高壓電動機試驗報告模板
- 醫(yī)學(xué)課件-主動脈夾層ppt
- 氫氧化鈣化學(xué)品安全技術(shù)說明書
- 大眾Polo 2014款說明書
- 船舶加油作業(yè)安全操作規(guī)程
- 員工排班表(標(biāo)準(zhǔn)模版)
- 大學(xué)英語精讀1-6冊課文
評論
0/150
提交評論