指令系統(tǒng)市公開課一等獎省賽課獲獎課件_第1頁
指令系統(tǒng)市公開課一等獎省賽課獲獎課件_第2頁
指令系統(tǒng)市公開課一等獎省賽課獲獎課件_第3頁
指令系統(tǒng)市公開課一等獎省賽課獲獎課件_第4頁
指令系統(tǒng)市公開課一等獎省賽課獲獎課件_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

指令系統(tǒng)

指令是指計算機執(zhí)行一些操作命令,一臺計算機全部指令集合組成該機指令系統(tǒng)。指令系統(tǒng)第1頁從計算機組成層次結(jié)構(gòu)來說,計算機指令有微指令、機器指令和宏指令之分。

微指令:微程序級命令,它屬于硬件;

宏指令:由若干條機器指令組成軟件指令,它屬于軟件;

機器指令(指令):介于微指令與宏指令之間,每條指令可完成一個獨立算術(shù)運算或邏輯運算。指令系統(tǒng)第2頁指令系統(tǒng)發(fā)展

50年代:指令系統(tǒng)只有定點加減、邏輯運算、數(shù)據(jù)傳送、轉(zhuǎn)移等十幾至幾十條指令。60年代后期:增加了乘除運算、浮點運算、十進制運算、字符串處理等指令,指令數(shù)目多達一二百條,尋址方式也趨多樣化。60年代后期開始出現(xiàn)系列計算機(指基本指令系統(tǒng)相同、基本體系結(jié)構(gòu)相同一系列計算機)一個系列往往有各種型號,它們在結(jié)構(gòu)和性能上有所差異。同一系列各機種有共同指令集而且新推出機種指令系統(tǒng)一定包含全部舊機種全部指令,舊機種上運行各種軟件能夠不加任何修改便可在新機種上運行,大大降低了軟件開發(fā)費用。

70年代末期:大多數(shù)計算機指令系統(tǒng)多達幾百條。我們稱這些計算機為復雜指令系統(tǒng)計算機(CISC)。

不過如此龐大指令系統(tǒng)難以確保正確性,不易調(diào)試維護,造成硬件資源浪費。為此人們又提出了便于VLSI技術(shù)實現(xiàn)精簡指令系統(tǒng)計算機(RISC)。指令系統(tǒng)第3頁一個完善指令系統(tǒng)應滿足以下四方面要求:1.完備性

用匯編語言編寫各種程序時,指令系統(tǒng)直接提供指令足夠使用,而無須用軟件來實現(xiàn)。完備性要求指令系統(tǒng)豐富、功效齊全、使用方便。

2.有效性

利用該指令系統(tǒng)所編寫程序能夠高效率運行。高效率主要表現(xiàn)在程序占據(jù)存放空間小、執(zhí)行速度快。普通來說,一個功效更強、更完善指令系統(tǒng),必定有更加好有效性。3.規(guī)整性

規(guī)整性包含指令系統(tǒng)對稱性、勻齊性、指令格式和數(shù)據(jù)格式一致性。

對稱性指在指令系統(tǒng)中全部存放器和存放器單元都可同等對待,全部指令都可使用各種尋址方式;

勻齊性是指一個操作性質(zhì)指令能夠支持各種數(shù)據(jù)類型;

指令格式和數(shù)據(jù)格式一致性是指指令長度和數(shù)據(jù)長度有一定關(guān)系,以方便處理和存取。4.兼容性

系列機各機種之間含有相同基本結(jié)構(gòu)和共同基本指令集,因而指令系統(tǒng)是兼容,即各機種上基本軟件能夠通用。但因為不一樣機種推出時間不一樣,在結(jié)構(gòu)和性能上有差異,做到全部軟件都完全兼容是不可能,只能做到“向上兼容”,即低級機上運行軟件能夠在高檔機上運行。指令系統(tǒng)第4頁指令格式機器指令基本格式

操作碼字段地址碼字段操作碼指明了指令操作性質(zhì)及功效,地址碼則給出了操作數(shù)地址。指令系統(tǒng)第5頁操作碼操作碼字段表征指令操作特征與功效;操作碼字段位數(shù)取決于指令系統(tǒng)規(guī)模,有固定位數(shù)和可變位數(shù);若操作碼字段位數(shù)固定為n位,則指令系統(tǒng)最多可表示2n條指令。指令系統(tǒng)第6頁操作碼指令系統(tǒng)每一條指令都有一個操作碼,它表示該指令應進行什么性質(zhì)操作。不一樣指令用操作碼字段不一樣編碼來表示,每一個編碼代表一個指令。組成操作碼字段位數(shù)普通取決于計算機指令系統(tǒng)規(guī)模。比如,一個指令系統(tǒng)只有8條指令,則有3位操作碼就夠;假如有32條指令,那么就需要5位操作碼。對于一個機器指令系統(tǒng),在指令字中操作碼字段和地址碼字段長度通常是固定。在單片機中,因為指令字較短,為了充分利用指令字長度,指令字操作碼字段和地址碼字段是不固定,即不一樣類型指令有不一樣劃分,方便盡可能用較短指令字長來表示越來越多操作種類,并在越來越大存放空間中尋址。指令系統(tǒng)第7頁地址碼地址碼字段通常指定參加操作操作數(shù)地址或操作數(shù)本身。

依據(jù)一條指令中有幾個操作數(shù)地址,可將該指令稱為幾操作數(shù)指令或幾地址指令。

普通操作數(shù)有被操作數(shù)、操作數(shù)及操作結(jié)果這三種數(shù),因而就形成了三地址指令格式。在此基礎上,以后又發(fā)展成四地址、二地址格式、一地址格式和零地址格式指令系統(tǒng)第8頁地址碼結(jié)構(gòu)

(1)、四地址指令(2)、三地址指令(3)、二地址指令(4)、一地址指令(5)、零地址指令指令系統(tǒng)第9頁

(1)四地址指令

OPA1A2A3A4指令含義(A1)OP(A2)A3A4表示下條要執(zhí)行指令地址。指令系統(tǒng)第10頁(2)三地址指令OPA1A2A3(A1)OP(A2)A3

隱含(PC)+1PC

A1為被操作數(shù)地址,也稱源操作數(shù)地址;A2為操作數(shù)地址,也稱終點操作數(shù)地址;A3為存放結(jié)果地址。一樣,A1,A2,A3能夠是內(nèi)存中單元地址,也能夠是運算器中通用存放器地址。指令系統(tǒng)第11頁(3)二地址指令OPA1A2(A1)OP(A2)A1隱含(PC)+1PC二地址指令常稱為雙操作數(shù)指令,它兩個地址碼字段分別指明參加操作兩個數(shù)在內(nèi)存中或運算器中通用存放器地址,A1作存放操作結(jié)果地址。指令系統(tǒng)第12頁(4)一地址指令OPA1(AC)OP(A1)AC隱含(PC)+1PC這種指令也有兩種情況:一是指令本身只需要一個操作數(shù),如求反指令NOT;二是即使需要兩個操作數(shù),但指令以運算器中累加存放器AC中數(shù)據(jù)為被操作數(shù),指令字地址碼字段所指明數(shù)為操作數(shù),操作結(jié)果又放回累加存放器AC中。指令系統(tǒng)第13頁

(5)零地址指令

OP這種指令有兩種情況:一是該指令不需要操作數(shù),如空操作指令NOP;二是該指令隱含一個操作數(shù)位于累加器AC中。如十進制修正指令DAA。指令系統(tǒng)第14頁指令字長度指令字長度:一個指令字中包含二進制代碼位數(shù)。有等長和變長兩種。等長指令處理結(jié)構(gòu)簡單,在對于操作碼字段位數(shù)可變情況下,利用地址碼個數(shù)不一樣,可將操作碼向地址碼部分延伸,從而增加指令條數(shù)。

機器字長:計算機能直接處理二進制數(shù)據(jù)位數(shù),它決定了計算機運算精度。指令系統(tǒng)第15頁其中:L為指令字長度,N為機器字長度指令系統(tǒng)第16頁使用多字長指令,目標在于提供足夠地址位來處理訪問內(nèi)存任何單元尋址問題。其主要缺點是必須兩次或?qū)掖卧L問內(nèi)存以取出一整條指令,降低了CPU運算速度,又占用了更多存放空間。等長指令字結(jié)構(gòu):各種指令字長度是相等。這種指令字結(jié)構(gòu)簡單,且指令字長度是不變。變長指令字結(jié)構(gòu):各種指令字長度隨指令功效而異。結(jié)構(gòu)靈活,能充分利用指令長度,但指令控制較復雜。指令系統(tǒng)第17頁指令助記符因為硬件只能識別1和0,所以采取二進制操作碼是必要,不過我們用二進制來書寫程序卻非常麻煩。為了便于書寫和閱讀程序,每條指令通慣用3個或4個英文縮寫字母來表示。這種縮寫碼叫做指令助記符。指令系統(tǒng)第18頁經(jīng)典指令助記符典型指令

指令助記符

二進制操作碼

加法

ADD001減法

SUB010傳送

MOV011跳轉(zhuǎn)

JMP100轉(zhuǎn)子

JSR101存儲

STR110讀數(shù)

LDA111指令系統(tǒng)第19頁如上表所表示,這里我們假定指令系統(tǒng)只有7條指令,所以操作碼只需3位二進制。因為指令助記符提醒了每條指令意義,所以比較輕易記憶,書寫起來比較方便,閱讀程序輕易了解。

需要注意是,在不一樣計算機中,指令助記符要求是不一樣。所以,指令助記符還必須轉(zhuǎn)換成與它們相對應二進制碼。這種轉(zhuǎn)換借助匯編程序能夠自動完成,匯編程序相當于一個“翻譯”。指令系統(tǒng)第20頁指令擴展技術(shù)

假如指令長度一定,則地址碼與操作碼字段長度是相互制約。為了處理這一矛盾,讓操作數(shù)地址個數(shù)多指令(三地址指令)地址碼字段短些,操作數(shù)地址個數(shù)少指令(一或零地址指令)操作碼字段長些,這么既能充分地利用指令各個字段,又能在不增加指令長度情況下擴展操作碼位數(shù),使它能表示更多指令.指令系統(tǒng)第21頁指令擴展技術(shù)

例:設某機指令長度為16位,操作碼字段為4位,有三個4位地址碼字段,其格式為:

OPA1A2A3指令系統(tǒng)第22頁尋址技術(shù)把指令中地址碼字段給出地址稱為形式地址(用字母A表示),這個地址有可能不能直接用來訪問內(nèi)存。形式地址經(jīng)過某種運算而得到能夠直接訪問內(nèi)存地址稱為有效地址(用字母EA表示)。從形式地址生成有效各種方式稱為尋址方式。指令系統(tǒng)第23頁尋址技術(shù)基本尋址方式(1)、馬上尋址指令地址字段指出不是操作數(shù)地址,而是操作數(shù)本身。這種方式特點是指令執(zhí)行時間很短,不需要訪問內(nèi)存取數(shù)。比如:單地址移位指令格式為

OP(移位)

F

D這里D不是地址,而是一個操作數(shù)。F為標志位,當F=1,操作數(shù)進行右移;當F=0時,操作數(shù)進行左移。指令系統(tǒng)第24頁(2)、直接尋址S=(A)指令中地址碼字段給出地址A就是操作數(shù)有效地址,即形式地址等于有效地址:EA=A。指令系統(tǒng)第25頁(3)存放器直接尋址S=(R1)存放器直接尋址指令地址碼部分給出某一個通用存放器編號,這個指定存放器中存放著操作數(shù)。指令系統(tǒng)第26頁尋址技術(shù)(4)間接尋址間接尋址意味著指令中給出地址A不是操作數(shù)地址;而是存放操作數(shù)地址內(nèi)存單元地址,簡稱操作數(shù)地址地址。通常在指令格式中劃出一位作為直接或間接尋址標志位。間接尋址方式是早期計算機中經(jīng)常采取方式,但因為兩次訪存,影響指令執(zhí)行速度,現(xiàn)在已不大使用。指令系統(tǒng)第27頁尋址技術(shù)(5)存放器間接尋址為了克服間接尋址中訪存次數(shù)多缺點,可采取存放器間接尋址,即指令中地址碼給出某一通用存放器編號,在被指定存放器存放操作數(shù)有效地址,而操作數(shù)則存放在內(nèi)存單元中,指令系統(tǒng)第28頁尋址技術(shù)(6)變址尋址S=(A+(Rx))但使用變址尋址方式目標不在于擴大尋址空間,而在于實現(xiàn)程序塊規(guī)律性改變。指令系統(tǒng)第29頁尋址技術(shù)(7)基址尋址S=((Rb)+D)基址尋址方式是將CPU中基址存放器內(nèi)容加上指令格式中形式地址而形成操作數(shù)有效地址。

它優(yōu)點是能夠擴大尋址能力。同形式地址相比,基址存放器位數(shù)能夠設置得很長,從而能夠在較大存放空間中尋址。指令系統(tǒng)第30頁尋址技術(shù)(8)相對尋址EA=(PC)+D相對尋址是基址尋址一個變通,由程序計數(shù)器PC提供基準地址,指令中地址碼字段作為位移量D,二者相加后得到操作數(shù)有效地址,即EA=(PC)+D。位移量指出是操作數(shù)和現(xiàn)行指令之間相對位置。指令系統(tǒng)第31頁[例]一個二地址RS型指令結(jié)構(gòu)以下所表示:

其中I為間接尋址標志位,X為尋址模式字段,D位偏移量字段。經(jīng)過I,X,D組合,可組成下表所表示尋址方式。請寫出六種尋址方式名稱。指令系統(tǒng)第32頁[解]:⑴直接尋址⑵相對尋址⑶變址尋址⑷存放器間接尋址⑸間接尋址⑹基址尋址指令系統(tǒng)第33頁指令類型1、數(shù)據(jù)傳送類指令數(shù)據(jù)傳送指令主要包含取數(shù)指令、存數(shù)指令、傳送指令、成組傳送指令、字節(jié)交換指令、清累加器指令、堆棧操作指令等等。這類指令主要用來實現(xiàn)主存和存放器之間,或存放器和存放器之間數(shù)據(jù)傳送。指令系統(tǒng)第34頁2.算術(shù)運算指令這類指令包含二進制訂點加、減、乘、除指令,浮點加、減、乘、除指令,求反、求補指令,算術(shù)移位指令,算術(shù)比較指令,十進制加、減運算指令等。這類指令主要用于定點或浮點算術(shù)運算,大型機中有向量運算指令,直接對整個向量或矩陣進行求和、求積運算。3.邏輯運算指令這類指令包含邏輯加、邏輯乘、按位加、邏輯移位等指令,主要用于無符號數(shù)位操作、代碼轉(zhuǎn)換、判斷及運算。移位指令用來對存放器內(nèi)容實現(xiàn)左移、右移或循環(huán)移位。指令系統(tǒng)第35頁4.程序控制指令程序控制指令也稱轉(zhuǎn)移指令。執(zhí)行程序時,有時機器執(zhí)行到某條指令時,出現(xiàn)了幾個不一樣結(jié)果,這時機器必須執(zhí)行一條轉(zhuǎn)移指令,依據(jù)不一樣結(jié)果進行轉(zhuǎn)移,從而改變程序原來執(zhí)行次序。這種轉(zhuǎn)移指令稱為條件轉(zhuǎn)移指令。除各種條件轉(zhuǎn)移指令外,還有沒有條件轉(zhuǎn)移指令、轉(zhuǎn)子程序指令、返回主程序指令、中止返回指令等。轉(zhuǎn)移指令轉(zhuǎn)移地址普通采取直接尋址和相對尋址方式來確定。5.輸入輸出指令輸入輸出指令主要用來開啟外圍設備,檢驗測試外圍設備工作狀態(tài),并實現(xiàn)外部設備和CPU之間,或外圍設備與外圍設備之間信息傳送。指令系

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論