




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
5.1指令系統(tǒng)的發(fā)展與性能要求5.2指令格式5.3指令和數(shù)據(jù)的尋址方式5.4堆棧尋址方式5.5典型指令第5章指令系統(tǒng)5.1指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)決定了計算機的基本功能,指令系統(tǒng)的設(shè)計是計算機系統(tǒng)設(shè)計的一個核心問題。它不僅與計算機的硬件設(shè)計緊密相關(guān),而且直接影響到系統(tǒng)軟件設(shè)計的難易程度。完善的計算機的指令系統(tǒng)應(yīng)具備:1、完備性:一臺計算機中最基本的、必不可少的指令構(gòu)成了指令系統(tǒng)的完備性。2、有效性:指利用該指令系統(tǒng)所提供的指令編制的程序能夠產(chǎn)生高效率。高效率主要表現(xiàn)在空間和時間方面,即占用存儲空間小、執(zhí)行速度快。3、規(guī)整性:指令操作的對稱性和勻齊性,指令格式與數(shù)據(jù)格式的一致性。(1)對稱性:在指令系統(tǒng)中,所有寄存器和存儲單元都可同等對待,這對簡化程序設(shè)計,提高程序的可讀性非常有用。(2)勻齊性:是指一種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類型。(3)指令的格式與數(shù)據(jù)格式的一致性:指令長度與數(shù)據(jù)長度有一定關(guān)系,以方便存取和處理。4、兼容性:兼容性一般是指計算機的體系結(jié)構(gòu)設(shè)計基本相同,機器之間具有相同的基本結(jié)構(gòu)、數(shù)據(jù)表示和共同的基本指令集合。程序、指令、指令系統(tǒng)、指令格式計算機的程序是由一系列的指令組成指令是要計算機執(zhí)行某種操作的命令指令系統(tǒng)是一臺計算機中所有指令的集合決定計算機的基本功能,軟件與硬件的界面是計算機系統(tǒng)設(shè)計的一個核心問題指令格式是用二進(jìn)制代碼表示的指令形式由操作碼字段和地址碼字段組成操作碼:表示指令進(jìn)行什么性質(zhì)的操作地址碼:指定參與操作的操作數(shù)地址4.2指令格式計算機的指令格式與機器的字長、存儲器的容量及指令的功能密切相關(guān)。指令操作碼與地址碼兩個字段:操作碼字段+操作數(shù)地址字段:1.操作碼 操作碼是指明指令操作性質(zhì)的命令碼。它提供指令的操作控制信息。(1)每條指令都要求它的操作碼必須是獨一無二的位組合。(2)指令系統(tǒng)中指令的個數(shù)N與操作碼的位數(shù)n,必須滿足關(guān)系式:
N≤2n2.操作數(shù)地址碼(1)地址碼:用來描述該指令的操作對象。(2)指令字長=操作碼的位數(shù)+(操作數(shù)地址個數(shù))*(操作數(shù)地址碼位數(shù))
地址碼字段AC操作碼字段OC地址碼操作碼A1A2A3操作碼A1A2操作碼A操作碼三地址指令
二地址指令
單地址指令
零地址指令
指令操作碼與地址碼一、指令格式1.零地址指令格式這是一種沒有操作數(shù)地址部分的指令格式。這種指令有兩種可能:(1)無需任何操作數(shù)。如空操作指令,停機指令等。(2)所需的操作數(shù)是默認(rèn)的:堆棧。操作碼OC指令操作碼與地址碼A、堆棧的概念(a)是若干個存儲單元(或寄存器)的有序集合,它順序地存放一組元素。(b)數(shù)據(jù)的存取都只能在棧頂單元內(nèi)進(jìn)行,即數(shù)據(jù)的進(jìn)棧與出棧都只能經(jīng)過棧頂單元這個“出入口”。(c)堆棧中的數(shù)據(jù)采用“先進(jìn)后出”或“后進(jìn)先出”的存取工作方式。B、
堆棧結(jié)構(gòu)在計算機中的作用(a)具有堆棧結(jié)構(gòu)的機器使用零地址指令,這不僅合指令長度短,指令結(jié)構(gòu)簡單,機器硬件簡化。(b)實現(xiàn)程序調(diào)用,子程序嵌套調(diào)用和遞歸調(diào)用。(c)對于“中斷”技術(shù),堆棧更是不可缺少的,保存“斷點”和“現(xiàn)場”。指令操作碼與地址碼C、堆棧的操作 設(shè)數(shù)據(jù)進(jìn)棧方向為從高地址向低地址發(fā)展,當(dāng)向堆棧壓入數(shù)據(jù)時,SP的內(nèi)容先自動遞減而指向一個新的空棧頂單元,再把數(shù)據(jù)寫入此棧頂單元;當(dāng)數(shù)據(jù)彈出堆棧時,立即讀出SP所指向的棧頂單元內(nèi)容,再把SP內(nèi)容自動遞增而指向新的棧頂位置。即
PUSHX;(SP)-1SP (X)(SP)POPX;((SP))X (SP)+1SP指令操作碼與地址碼2.一地址指令格式(1)指令中給出的一個地址即是操作數(shù)的地址,又是操作結(jié)果的存儲地址。如加1、減1、移位等單操作數(shù)指令。(2)在某些計算機中,指令中提供的一個地址提供一個操作數(shù),另一個操作數(shù)是由機內(nèi)硬件寄存器“隱含”地自動提供的。所謂“隱含”是指此操作數(shù)在指令中不出現(xiàn),而是按照事先約定由寄存器默認(rèn)提供,運算結(jié)果仍送到寄存器中。因為這個寄存器在連續(xù)運算時,保存著多條指令連續(xù)操作的累計結(jié)果,故稱為累加器(AC)。AC1操作碼OC指令操作碼與地址碼3.二地址指令格式(1)把保存操作前原來操作數(shù)的地址稱為源點地址(SS),把保存指令執(zhí)行結(jié)果的地址稱為終點地址或目的地址(DD)。(2)將源點與終點操作數(shù)進(jìn)行操作碼規(guī)定的操作后,將結(jié)果存入終點地址。通常二地址指令又稱為雙操作數(shù)指令。 例如,雙操作數(shù)加法指令:
ADDR0,R1表示將R0寄存器的內(nèi)容和R1寄存器的內(nèi)容相加以后,將結(jié)果存入R1寄存器中。 又如ADD(R0),R1表示將R0寄存器的內(nèi)容作為地址,到內(nèi)存中取出該地址所指向的單元內(nèi)容作為源點操作數(shù),和作為終點操作數(shù)的R1寄存器的內(nèi)容相加以后,將結(jié)果存入R1寄存器中。AC1操作碼OCAC2指令操作碼與地址碼4.三地址指令格式 其操作是對AC1、AC2指出的兩個操作數(shù)進(jìn)行操作碼所規(guī)定的操作,并將結(jié)果存入AC3中。例如:
ADDXYZ含義為(X)+(Y)Z即X單元內(nèi)容加上Y單元內(nèi)容,結(jié)果送Z單元中。AC1操作碼OCAC3AC2指令操作碼與地址碼5.多地址指令格式例如四地址指令格式。(1)含義:ADDXYZW A、(X)+(Y)→Z B、(W)→下一條指令地址(2)特點:
A、直觀明了;
B、程序執(zhí)行的流向明確;
C、操作數(shù)和結(jié)果可以分散在內(nèi)存各處。
D、但是指令字長度太長。AC1操作碼OCAC4AC3AC2指令操作碼與地址碼指令格式設(shè)計準(zhǔn)則
1、指令字長要短,以得到時間和空間上的優(yōu)勢。
2、指令字長必須有足夠的長度。
3、指令字長一般應(yīng)是機器字符長度的整數(shù)倍以便存儲系統(tǒng)的管理。若機器中字符碼長是L位,則機器字長最好是L,2L,4L,8L等。
4、指令格式的設(shè)計還與如何選定指令中操作數(shù)地址的位數(shù)有關(guān)。例如,對同一容量(如64KB)的存儲器(1)若取存儲單元為一字節(jié)長,則需要16位地址碼,(2)若存儲單元長度為32位,則只需14位地址碼。 方案(1)對字符操作方便,但地址碼位數(shù)多, 方案(2)地址碼位數(shù)少,很有利,但字符操作困難,分辯率低。(存儲器分辯率:指存儲器能被區(qū)分、識別與操作的精細(xì)程度)指令字長與擴展方法一、操作碼和地址碼間的權(quán)衡(操作碼有兩種編碼格式)
1、固定格式:操作碼長度固定,且集中放在指令字的一個字段中。
2、可變格式:即操作碼長度可變,且分散地放在指令字的不同字段中。二、擴展操作碼
1、要點:(1)操作碼位數(shù)隨地址碼個數(shù)變化采取可變長度的類型;(2)指令間指令碼一定不重復(fù);(3)根據(jù)需要靈活變通。指令字長與擴展方法2、比較 假設(shè)一臺計算機指令字長16位,操作碼與地址碼都為4位,如圖所示。
(1)方法一:固定格式,則最多可以設(shè)計16條三地址指令A(yù)C1操作碼OCAC3AC2指令字長與擴展方法(2)方法二:擴展操作碼,具體方法如下:
A、4位OC中用0000-1110定義15條三地址指令,留編碼1111作為擴展標(biāo)志與下一個4位組成一個8位操作碼,引出二地址指令,則:
B、(a)若將AC1全部用作2地址指令的OC,能再定義16條2地址指令; (b)8位OC中用11110000-11111110定義15條二地址指令,剩下的一個編碼11111111與下一個4位組成一個12位的操作碼,引出一地址指令; (c)選11110000—11111101共14條2地址指令,留11111110,11111111為擴展標(biāo)志,再與AC2組合,以此類推。
C、若選B(c),則可定義31條1地址指令,留一個編碼111111111111為擴展標(biāo)志,與下一個4位組成16位操作碼,引出16條零地址指令;3、擴展操作碼的另一個演變是用操作碼中的某一位或幾位來說明指令的格式與長度,或是說明操作數(shù)的特征。 例如:小型機PDP-11是用操作碼最左邊一位(最高位15位)來指明指令操作處理的數(shù)據(jù)字長度,當(dāng)?shù)?5位=0,是字指令,操作數(shù)是16位長的字;當(dāng)15位=1,是字節(jié)指令,操作數(shù)是8位長的字節(jié)。指令集結(jié)構(gòu)ISA堆棧型操作數(shù)默認(rèn)在處理器內(nèi)置的堆棧,不需指明如Intel80x87浮點處理器結(jié)構(gòu)累加器型其中一個操作數(shù)默認(rèn)在累加器,不需指明寄存器-存儲器型(RS型)一個操作數(shù)在寄存器,另一個在主存例如Intel80x86整數(shù)處理器結(jié)構(gòu)寄存器-寄存器型(RR型)讀取存儲器操作數(shù)只有LOAD指令,存儲存儲器操作數(shù)只有STORE指令,算術(shù)運算ALU等操作均在寄存器之間進(jìn)行例如大多數(shù)RISC處理器通用寄存器GPR結(jié)構(gòu)通用寄存器GPR(General-PurposeRegister)比存儲器快,是主要的應(yīng)用類型寄存器-寄存器結(jié)構(gòu)具有簡單、定長的指令編碼,采用簡單的代碼生成模式,每條指令執(zhí)行的時鐘周期相近。但其程序的指令條數(shù)多,目標(biāo)代碼較大寄存器-存儲器結(jié)構(gòu)可以直接訪問存儲器,容易對指令進(jìn)行編碼,生成的目標(biāo)代碼較小。但其操作數(shù)類型不同,需同時對存儲器和寄存器進(jìn)行編碼,指令執(zhí)行的時鐘周期數(shù)也不盡相同Pentium指令格式Pentium機的指令字長度可變:從1字節(jié)到12字節(jié),還可以帶前綴非固定長度的指令格式是典型的CICS結(jié)構(gòu)特征為了與它的前身80486保持兼容希望能給編譯程序的編制以更多靈活的編程支持前綴操作碼Mod-R/MSIB位移量立即數(shù)0~4B1~2B0~1B0~1B0~4B0~4B[例1]分析指令格式的特點
單字長二地址指令操作碼字段OP長度為7位,可指定128條指令源寄存器和目標(biāo)寄存器都是通用寄存器(可分別指定16個)。兩個操作數(shù)均在寄存器中,所以是寄存器-寄存器型指令這種指令結(jié)構(gòu)常用于算術(shù)邏輯運算類指令1597430OP
--------源寄存器目標(biāo)寄存器[例2]分析指令格式的特點
雙字長二地址指令,用于訪問存儲器操作碼字段OP為6位,可以指定64種操作一個操作數(shù)在源寄存器(共16個),另一個操作數(shù)在存儲器中(由變址寄存器和位移量決定),所以是寄存器-存儲器型指令1597430OP
--------源寄存器變址寄存器位移量(16位)
4.3指令和數(shù)據(jù)的尋址方式
某個操作數(shù)或某條指令存放在某個存儲單元時,其存儲單元的編號,就是該操作數(shù)或指令在存儲器中的地址尋址方式:形成指令或操作數(shù)的內(nèi)存地址的方式,或者說查找指令或數(shù)據(jù)的方式[尋址方式的類別]指令尋址方式:用于形成指令在內(nèi)存中的地址數(shù)據(jù)(操作數(shù))尋址方式:用于形成操作數(shù)在內(nèi)存中的地址,一般也包括數(shù)據(jù)在寄存器的情況指令的順序?qū)ぶ贩绞?/p>
指令的跳躍尋址方式(程序的控制轉(zhuǎn)移)指令的相對尋址方式程序計數(shù)器PC的內(nèi)容加上偏移量形成指令的目的地址4.3.2操作數(shù)尋址方式指令中操作數(shù)字段的地址碼,是由形式地址(偏移量)和變址、間址等組合形成操作數(shù)的尋址:把操作數(shù)的形式地址,根據(jù)間址和變址等組合變換為操作數(shù)有效地址的過程形式地址D變址X
間址I
操作碼OP
操作碼字段操作數(shù)字段常用數(shù)據(jù)尋址方式隱含尋址:在指令中不明顯地給出操作數(shù)的地址寄存器尋址:指令中給出的操作數(shù)地址不是內(nèi)存的地址單元號,而是通用寄存器的編號。即操作數(shù)不放在內(nèi)存中,而是放在通用寄存器中立即尋址:指令的地址字段指出的不是操作數(shù)的地址,而直接是操作數(shù)本身直接尋址:在指令格式的地址字段中,直接給出操作數(shù)在內(nèi)存的地址寄存器間接尋址:指令中指定的寄存器中的內(nèi)容不是操作數(shù),而是操作數(shù)的地址基址(寄存器相對)尋址:基址寄存器的內(nèi)容加上指令中給定的形式地址(偏移量),形成操作數(shù)的有效地址直接尋址基址(寄存器相對)尋址尋址方式總結(jié)立即(數(shù))尋址存儲器直接尋址間接尋址變址尋址基址尋址基址加變址尋址在指令中在寄存器中在主存中在I/O端口中直接尋址寄存器間接尋址寄存器尋址寄存器間接尋址存儲器間接尋址4.4堆棧尋址方式堆棧:一個“先進(jìn)后出FILO”或“后進(jìn)先出LIFO”存取的存儲區(qū)域,只有一個數(shù)據(jù)出入口,即當(dāng)前棧頂(不斷變化)兩種基本操作寫入:數(shù)據(jù)壓進(jìn)堆棧PUSH讀出:數(shù)據(jù)彈出堆棧操作POP存儲器堆棧使用主存部分空間作為堆棧區(qū)域寄存器堆棧(串聯(lián)堆棧)CPU內(nèi)部以堆棧方式存取數(shù)據(jù)的一組寄存器Word1Word2Word3Word4Word5StackPUSHPOP4.5.1指令的分類數(shù)據(jù)傳送指令實現(xiàn)主存與寄存器之間、寄存器與寄存器之間或立即數(shù)到寄存器和主存的數(shù)據(jù)傳送算術(shù)運算指令實現(xiàn)加、減、乘、除等運算的指令邏輯運算指令實現(xiàn)邏輯與、或、非、異或,以及移位等操作的指令程序控制轉(zhuǎn)移指令無條件轉(zhuǎn)移指令、有條件轉(zhuǎn)移指令、子程序調(diào)用和返回指令等輸入輸出指令CPU與外設(shè)之間傳送數(shù)據(jù)的指令4.5.2基本指令系統(tǒng)助記符指令功能LDA取數(shù)STA存數(shù)MOV傳送PUSH進(jìn)棧POP出棧ADD加法SUB減法INC加1助記符指令功能AND邏輯與OR邏輯或ROL循環(huán)左移ROR循環(huán)右移JMP跳轉(zhuǎn)JSR轉(zhuǎn)子程序CLA清0HLT暫停4.5.3精簡指令系統(tǒng)為了
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 呼倫貝爾職業(yè)技術(shù)學(xué)院《數(shù)字造型藝術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 武漢交通職業(yè)學(xué)院《工程設(shè)計與分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 漳州衛(wèi)生職業(yè)學(xué)院《醫(yī)用統(tǒng)計方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 中南民族大學(xué)《職業(yè)民主管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江中考科學(xué)模擬試卷含答案(5份)
- 2025屆天津市寧河區(qū)北淮淀鎮(zhèn)中學(xué)初三年級開學(xué)摸底考試英語試題試卷含答案
- 開魯縣2025年三年級數(shù)學(xué)第二學(xué)期期末聯(lián)考試題含解析
- 宿遷學(xué)院《水污染控制工程(二)》2023-2024學(xué)年第二學(xué)期期末試卷
- 宿遷澤達(dá)職業(yè)技術(shù)學(xué)院《教育美學(xué):發(fā)現(xiàn)文藝作品中的教育學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024-2025學(xué)年吉林省汪清縣四中高三(下)調(diào)研英語試題試卷含解析
- 【2025新教材】教科版一年級科學(xué)下冊全冊教案【含反思】
- 第16課《有為有不為 》課件-2024-2025學(xué)年統(tǒng)編版語文七年級下冊
- 火鍋店創(chuàng)業(yè)計劃書:營銷策略
- 交通大數(shù)據(jù)分析-深度研究
- 基礎(chǔ)護理學(xué)試題及標(biāo)準(zhǔn)答案
- DB11-T 1754-2024 老年人能力綜合評估規(guī)范
- 招聘團隊管理
- 【課件】用坐標(biāo)描述簡單幾何圖形+課件人教版七年級數(shù)學(xué)下冊
- 電商運營崗位聘用合同樣本
- 2023年浙江省杭州市上城區(qū)中考數(shù)學(xué)一模試卷
- 租賃鉆桿合同范例
評論
0/150
提交評論