版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 1 1指令系統(tǒng)的發(fā)展指令系統(tǒng)的發(fā)展 2 2指令系統(tǒng)的性能指令系統(tǒng)的性能 性能:性能: (1 1)完備性:完備性:指令系統(tǒng)豐富、功能齊全、使用方便指令系統(tǒng)豐富、功能齊全、使用方便 (2 2)高效性:高效性:占儲存空間少、執(zhí)行速度快占儲存空間少、執(zhí)行速度快 (3 3)規(guī)整性:規(guī)整性:含對稱性、勻齊性以及指令格式和數(shù)據(jù)含對稱性、勻齊性以及指令格式和數(shù)據(jù) 格式的一致性格式的一致性 對稱性對稱性; ;是在指令系統(tǒng)中所有的寄存器和存儲器單元都可同等是在指令系統(tǒng)中所有的寄存器和存儲器單元都可同等對待,所有指令都可使用各種尋址方式。對待,所有指令都可使用各種尋址方式。 勻齊性勻齊性: :是指一種操作性質(zhì)的指
2、令可以支持各種數(shù)據(jù)類型。是指一種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類型。 指令格式和數(shù)據(jù)格式的一致性:指令格式和數(shù)據(jù)格式的一致性:是指指令長度和數(shù)據(jù)長度有一是指指令長度和數(shù)據(jù)長度有一定關(guān)系,以方便存取,通常為字節(jié)的整數(shù)倍。定關(guān)系,以方便存取,通常為字節(jié)的整數(shù)倍。 (4 4)兼容性:兼容性:系列機做到系列機做到“向上兼容向上兼容”。3 3、 計算機語言與硬件結(jié)構(gòu)的關(guān)系計算機語言與硬件結(jié)構(gòu)的關(guān)系 比較內(nèi)容比較內(nèi)容高級語言高級語言低級語言低級語言1 1對程序員的訓(xùn)練要求對程序員的訓(xùn)練要求(1)(1)通用算法通用算法(2)(2)語言規(guī)則語言規(guī)則(3)(3)硬件知識硬件知識 有有 較少較少 不要不要 有有
3、較多較多要要2 2對機器獨立的程度對機器獨立的程度獨立獨立不獨立不獨立3 3編制程序的難易程度編制程序的難易程度易易難難4 4編制程序所需時間編制程序所需時間短短 較長較長5 5程序執(zhí)行時間程序執(zhí)行時間 較長較長短短6 6編譯過程中對計算機編譯過程中對計算機資源的要求資源的要求多多少少高級語言與低級語言的性能比較高級語言與低級語言的性能比較 4.2 4.2 指令格式指令格式指令格式是用一條二進制代碼表示一條指令的結(jié)構(gòu)形式,指令格式是用一條二進制代碼表示一條指令的結(jié)構(gòu)形式,由操作碼和地址碼(操作數(shù)的地址)兩種字段組成。由操作碼和地址碼(操作數(shù)的地址)兩種字段組成。操作碼操作碼:是表征指令操作的性
4、質(zhì)和功能:是表征指令操作的性質(zhì)和功能地址碼地址碼:指定參與操作的操作數(shù)的地址。:指定參與操作的操作數(shù)的地址。操作碼字段操作碼字段地址碼字段地址碼字段 指令格式設(shè)定一般與機器的字長、存儲器容量指令格式設(shè)定一般與機器的字長、存儲器容量以及指令的功能有關(guān)。以及指令的功能有關(guān)。 指令格式:指令格式: (2 2)地址碼地址碼 指令中參加運算的操作數(shù)是由地址碼來直接或間接指令中參加運算的操作數(shù)是由地址碼來直接或間接提供的。根據(jù)指令的不同有可分為:一地址指令、二地提供的。根據(jù)指令的不同有可分為:一地址指令、二地址指令、三地址指令、零地址指令以及多地址的指令。址指令、三地址指令、零地址指令以及多地址的指令。
5、opcodeopcodeA1A1A2A2A3A3二地址指令格式:二地址指令格式:opcodeopcodeA1A1A2A2一地址指令格式:一地址指令格式:opcodeopcodeA A零地址指令格式:零地址指令格式:opcodeopcode多地址指令格式:多地址指令格式:三地址指令格式:三地址指令格式:OPCODEA1A2A315121187430 (2)二地址指令需二地址指令需15條,由條,由8b操作碼的操作碼的1111000011111110組合給出,剩下一個組合給出,剩下一個11111111用于把操作碼長度擴展用于把操作碼長度擴展到到A2,即從,即從8b擴展到擴展到12b;這可采用如下操作
6、碼擴展方法:這可采用如下操作碼擴展方法: (1 1) 三地址指令僅需三地址指令僅需1515條,由條,由4b4b基本操作碼的基本操作碼的0000000011101110組合給出,剩下的一個組合組合給出,剩下的一個組合11111111用于把操作碼長度擴展用于把操作碼長度擴展到到 A1 A1,即,即4b4b擴展到擴展到8b8b;采用上述指令操作碼擴展方法后,三地址指令、二地址指令和采用上述指令操作碼擴展方法后,三地址指令、二地址指令和一地址指令各一地址指令各15條,零地址指令條,零地址指令16條,共計條,共計61條指令。條指令。(3)一地址指令需一地址指令需15條,由條,由12b操作碼的操作碼的11
7、1111110000111111111110組合給出,剩下一個組合組合給出,剩下一個組合111111111111用于把操作用于把操作碼長度擴展到碼長度擴展到A3,即從,即從12b擴展到擴展到16b;(4)零地址指令需零地址指令需16條,由條,由16位操作碼的位操作碼的11111111111100001111111111111111組合給出。組合給出。3 3指令格式舉例指令格式舉例3 3指令格式舉例指令格式舉例 如下圖所示:如下圖所示:第三個半字第三個半字第二個半字第二個半字第一個半字第一個半字第第3 3字節(jié)字節(jié)第第2 2字節(jié)字節(jié)第第1 1字節(jié)字節(jié)第第6 6字節(jié)字節(jié)第第5 5字節(jié)字節(jié)第第4 4字
8、節(jié)字節(jié)OPOPR R1 1R R2 2OPOPR R1 1R R2 2OPOPR R1 1X X2 2B B2 2D D2 2OPOPR R1 1R R2 2B B2 2D D2 2OPOPI I2 2B B1 1D D1 1OPOPB B2 2D D2 2B B1 1L LOPOPD D2 2B B2 2D D1 1B B1 1OPOPD D2 2B B2 2D D1 1L L1 1L L2 2B B1 1 OP OPD D2 2B B2 2D D1 1RRRR型型RRERRE型型RXRX型型RSRS型型SISI型型S S型型SSSS型型SSSS型型SSESSE型型(3) SPARC(3)
9、SPARC計算機的指令格式計算機的指令格式SPARCSPARC是是Sun MicrosystemSun Microsystem公司于公司于19871987年推出的精年推出的精簡指令系統(tǒng)計算機(簡指令系統(tǒng)計算機(RISCRISC),字長),字長32b32b。SPARCSPARC共有三共有三種指令格式,格式種指令格式,格式1 1、格式、格式2 2和格式和格式3 3,如圖所示:,如圖所示:SunMicrosystemRISCSPARC指令格式指令格式3 3指令格式舉例指令格式舉例4.3 4.3 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式 1.1.順序?qū)ぶ贩绞巾樞驅(qū)ぶ贩绞揭?、指令的尋址方式一、指令的尋?/p>
10、方式 ( (確定下一條將要執(zhí)行的指令地址的方法確定下一條將要執(zhí)行的指令地址的方法) )指令的順序?qū)ぶ贩绞街噶畹捻樞驅(qū)ぶ贩绞匠绦蛴嫈?shù)器程序計數(shù)器 2.2.跳躍尋址方式跳躍尋址方式程序計數(shù)器程序計數(shù)器 二、操作數(shù)尋址方式二、操作數(shù)尋址方式 所謂所謂,就是形成操作數(shù)的有效,就是形成操作數(shù)的有效地址(地址(EAEA)的方法。)的方法。 指令字中的地址碼字段,通常是由形式地址和指令字中的地址碼字段,通常是由形式地址和尋址方式特征位組成的,并不是操作數(shù)的有效地址。尋址方式特征位組成的,并不是操作數(shù)的有效地址。其表示形式為:其表示形式為: OPCODE OPCODE 尋址方式特征尋址方式特征MODMOD 形
11、式地址形式地址A AOPCODE尋址方式特征尋址方式特征MOD 形式地址形式地址A形式地址形式地址A A,是指令字結(jié)構(gòu)中給定的地址量。,是指令字結(jié)構(gòu)中給定的地址量。尋址方式特征位尋址方式特征位,通常由,通常由間址位間址位(I)(I)和和變址位變址位(X)(X)組成。組成。 若指令無間址和變址要求,則形式地址就是操作數(shù)若指令無間址和變址要求,則形式地址就是操作數(shù)的有效地址;的有效地址; 若指令中指明要進行變址或間址變換,則形式地址若指令中指明要進行變址或間址變換,則形式地址就不是操作數(shù)的有效地址,而必須按指定方式進行就不是操作數(shù)的有效地址,而必須按指定方式進行變換,才能形成有效地址。變換,才能形
12、成有效地址。常見的操作數(shù)尋址方式1 1、隱含尋址方式、隱含尋址方式2 2、立即尋址、立即尋址(Immediate Addressing(Immediate Addressing)3 3、寄存器尋址方式、寄存器尋址方式 ( Register Addressing ) ( Register Addressing )4 4、直接尋址、直接尋址(Direct Addressing)(Direct Addressing)5 5、間接尋址、間接尋址( Indirect Addressing )( Indirect Addressing )6 6、相對尋址、相對尋址 ( Relative Addressin
13、g ) ( Relative Addressing )7 7、基址尋址、基址尋址 ( Based Addressing ) ( Based Addressing )8 8、變址尋址(、變址尋址(Indexed AddressingIndexed Addressing)9 9、堆棧尋址、堆棧尋址 ( Stack Addressing ) ( Stack Addressing )在指令中不明顯的給出而是在指令中不明顯的給出而是隱含著操作數(shù)的地址隱含著操作數(shù)的地址。例如例如:單地址的指令格式,沒有在地址字段中指明第:單地址的指令格式,沒有在地址字段中指明第二操作數(shù)地址,而是規(guī)定累加寄存器二操作數(shù)地址
14、,而是規(guī)定累加寄存器ACAC作為第二操作為第二操作數(shù)地址,作數(shù)地址,ACAC對單地址指令格式來說是隱含地址。對單地址指令格式來說是隱含地址。1.1.隱含尋址隱含尋址 立即尋址方式表示形式為:立即尋址方式表示形式為:OPCODEOPCODE立即尋址方式立即尋址方式 操作數(shù)操作數(shù)DataData指令的地址字段指令的地址字段指出的不是操作數(shù)的地址,而是指出的不是操作數(shù)的地址,而是操操作數(shù)本身作數(shù)本身。這種方式的特點是指令執(zhí)行時間很短,不需要訪問這種方式的特點是指令執(zhí)行時間很短,不需要訪問內(nèi)存取數(shù)(操作數(shù)在地址碼字段中)。內(nèi)存取數(shù)(操作數(shù)在地址碼字段中)。2. 2. 立即尋址立即尋址3 3、寄存器尋址
15、方式、寄存器尋址方式 ( Register Addressing ) ( Register Addressing ) 操作數(shù)放在操作數(shù)放在CPUCPU的通用寄存器中,操作數(shù)所在的的通用寄存器中,操作數(shù)所在的寄存器編號存放在指令的地址字段寄存器編號存放在指令的地址字段A A中,即:中,即: DATA DATA(R Ri i)MOV AX, BXMOV AX, BXMOV AL, BHMOV AL, BH4 4直接尋址直接尋址(Direct Addressing)(Direct Addressing) 操作數(shù)位于存儲器中,操作數(shù)所在的存儲器單元操作數(shù)位于存儲器中,操作數(shù)所在的存儲器單元的地址存放在
16、指令的地址字段的地址存放在指令的地址字段A A中,即:中,即:DATADATA(EAEA)指令字中的形式地址指令字中的形式地址A A就是操作數(shù)的有效地址就是操作數(shù)的有效地址E EEA=AEA=A,該類指令中的形式地址,該類指令中的形式地址A A又稱為又稱為直接地址直接地址4 4直接尋址直接尋址(Direct Addressing)(Direct Addressing)(1 1)寄存器直接尋址方式)寄存器直接尋址方式指令地址碼字段直接給出所需操作數(shù)在通用寄存器中指令地址碼字段直接給出所需操作數(shù)在通用寄存器中地址編號。其表示形式為:地址編號。其表示形式為:直接尋址方式又可分為寄存器直接尋址和存儲器
17、直接尋址兩種。直接尋址方式又可分為寄存器直接尋址和存儲器直接尋址兩種。OPCODEOPCODE寄存器直接尋址寄存器直接尋址寄存器地址編號寄存器地址編號RiRi有效地址有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEARiRi (2 2)存儲器直接尋址方式)存儲器直接尋址方式 一般簡稱直接尋址方式,其指令地址碼字段直一般簡稱直接尋址方式,其指令地址碼字段直接給出存放在存儲器中操作數(shù)的存儲地址。其接給出存放在存儲器中操作數(shù)的存儲地址。其表示形式見前面。表示形式見前面。 間接尋址的情況下,指令地址字段中的形式地址間接尋址的情況下,指令地址字段中的形式地址A A不不是操作數(shù)的真正地址,而是是操作數(shù)的真正
18、地址,而是操作數(shù)地址的指示器操作數(shù)地址的指示器,A A單元的內(nèi)容是操作數(shù)的有效地址。即單元的內(nèi)容是操作數(shù)的有效地址。即DATADATA(EAEA)EA=EA=(A A)即:即:A A為操作數(shù)地址的地址為操作數(shù)地址的地址5. 5. 間接尋址間接尋址 按尋址特征間址位按尋址特征間址位X X的要求,根據(jù)地址碼指的是寄的要求,根據(jù)地址碼指的是寄存器地址還是存儲器地址,間接尋址又可分為存器地址還是存儲器地址,間接尋址又可分為寄存寄存器間接尋址器間接尋址和和存儲器間接尋址存儲器間接尋址兩種方式。兩種方式。(1 1)寄存器間接尋址方式)寄存器間接尋址方式 寄存器間接尋址時,需先訪問寄存器,從寄存器讀出操作數(shù)
19、寄存器間接尋址時,需先訪問寄存器,從寄存器讀出操作數(shù)地址后,再訪問存儲器才能取得操作數(shù)。地址后,再訪問存儲器才能取得操作數(shù)。 有效地址有效地址EA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EA(R),即,即Data(EA)(R)寄存器間接尋址方式示意圖寄存器間接尋址方式示意圖(2 2)存儲器間接尋址方式)存儲器間接尋址方式 存儲器間接尋址時,需訪問兩次存儲器才能取得數(shù)據(jù),第存儲器間接尋址時,需訪問兩次存儲器才能取得數(shù)據(jù),第一次先從存儲器讀出操作數(shù)地址,第二次才能根據(jù)讀出的操作一次先從存儲器讀出操作數(shù)地址,第二次才能根據(jù)讀出的操作數(shù)地址再取出真正的操作數(shù)。數(shù)地址再取出真正的操作數(shù)。有效地址有效地址EAEA數(shù)學(xué)形式
20、為:數(shù)學(xué)形式為:EAEA(A)(A),即,即DataData(EA)(EA)(A)(A)存儲器間接尋址方式示意圖存儲器間接尋址方式示意圖6. 6. 相對尋址方式相對尋址方式 所謂相對尋址方式,是指根據(jù)一個所謂相對尋址方式,是指根據(jù)一個基準(zhǔn)地址基準(zhǔn)地址及其及其相對量相對量來尋來尋找操作數(shù)地址的方式。找操作數(shù)地址的方式。 根據(jù)基準(zhǔn)地址的來源不同,它又分為基址方式和變址方式、根據(jù)基準(zhǔn)地址的來源不同,它又分為基址方式和變址方式、以及以及PCPC相對尋址方式,這里主要指后者。相對尋址方式,這里主要指后者。 PC PC相對尋址方式,一般簡稱相對尋址方式,是指將程序計數(shù)相對尋址方式,一般簡稱相對尋址方式,是
21、指將程序計數(shù)器器 PC PC的內(nèi)容(的內(nèi)容(即當(dāng)前執(zhí)行指令的地址即當(dāng)前執(zhí)行指令的地址)與地址碼部分給出)與地址碼部分給出的的位移量位移量(Disp)(Disp) 通過加法器相加,所得之和作為操作數(shù)的通過加法器相加,所得之和作為操作數(shù)的有效地址的方式。有效地址的方式。相對尋址方式示意圖相對尋址方式示意圖有效地址有效地址EA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EA(PC)+Disp 計算機設(shè)置一個寄存器,專門用來存放基準(zhǔn)地址,該寄計算機設(shè)置一個寄存器,專門用來存放基準(zhǔn)地址,該寄存器就是基址寄存器存器就是基址寄存器(RB)(RB)。RBRB既可在既可在CPUCPU中專設(shè),也可中專設(shè),也可由指令指定某個通用寄存器
22、擔(dān)任。由指令指定某個通用寄存器擔(dān)任。 基址尋址方式是將基址尋址方式是將CPUCPU中中基址寄存器基址寄存器RBRB的內(nèi)容的內(nèi)容加加上指令格上指令格式中的式中的形式地址形式地址A A而形成操作數(shù)的有效地址。而形成操作數(shù)的有效地址。 7. 7. 基址尋址方式基址尋址方式優(yōu)點:優(yōu)點:是可以擴大尋址能力。同形式地址相比,基址寄是可以擴大尋址能力。同形式地址相比,基址寄存器的位數(shù)可以設(shè)置得很長,從而可以在較大的存儲空存器的位數(shù)可以設(shè)置得很長,從而可以在較大的存儲空間中尋址。間中尋址。有效地址有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEA(RB) + Disp(RB) + Disp地址碼地址碼 A A在
23、這種方式下通常被稱為位移量在這種方式下通常被稱為位移量(Disp)(Disp)。7. 7. 基址尋址方式基址尋址方式 變址尋址方式與基址尋址方式計算有效地址的方法很相變址尋址方式與基址尋址方式計算有效地址的方法很相似,它把似,它把CPUCPU中某個變址寄存器的內(nèi)容與偏移量中某個變址寄存器的內(nèi)容與偏移量D D相加來相加來形成操作數(shù)有效地址。形成操作數(shù)有效地址。 使用變址尋址方式的目的不在于擴大尋址空間,而在于使用變址尋址方式的目的不在于擴大尋址空間,而在于實現(xiàn)程序塊的規(guī)律性變化。實現(xiàn)程序塊的規(guī)律性變化。8. 8. 變址尋址方式變址尋址方式有效地址有效地址EA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EA(RI)+
24、Disp變址尋址方式變址尋址方式XRI指出變址尋指出變址尋址方式的特征址方式的特征9 9、堆棧尋址、堆棧尋址 ( Stack Addressing ) ( Stack Addressing ) 操作數(shù)位于存儲器中,操作數(shù)所在的存儲器地址操作數(shù)位于存儲器中,操作數(shù)所在的存儲器地址EAEA由由堆棧指針寄存器堆棧指針寄存器SPSP隱含隱含指出,通常用于堆棧指令。指出,通常用于堆棧指令。 堆棧是由若干個連續(xù)主存單元組成的堆棧是由若干個連續(xù)主存單元組成的先進后出先進后出(first in last outfirst in last out,即,即FILOFILO)存儲區(qū),第一個放)存儲區(qū),第一個放入堆棧
25、的數(shù)據(jù)存放在入堆棧的數(shù)據(jù)存放在棧底棧底,最近放入的數(shù)據(jù)存放在,最近放入的數(shù)據(jù)存放在棧棧頂頂。棧底是固定不變的,而棧頂是隨著數(shù)據(jù)的入棧和。棧底是固定不變的,而棧頂是隨著數(shù)據(jù)的入棧和出棧在時刻變化。出棧在時刻變化。棧頂?shù)牡刂窏m數(shù)牡刂酚啥褩V羔樣啥褩V羔楽PSP指明。指明。9 9、堆棧尋址、堆棧尋址 ( Stack Addressing ) ( Stack Addressing ) 一般計算機中,堆棧從高地址向低地址擴展,即一般計算機中,堆棧從高地址向低地址擴展,即棧棧底的地址底的地址總是總是棧頂?shù)牡刂窏m數(shù)牡刂?,稱為,稱為上推堆棧上推堆棧;也有;也有少數(shù)計算機相反,稱為下推堆棧。少數(shù)計算機相反,
26、稱為下推堆棧。 堆棧尋址主要用來堆棧尋址主要用來暫存暫存中斷和子程序調(diào)用時中斷和子程序調(diào)用時現(xiàn)場數(shù)現(xiàn)場數(shù)據(jù)及返回地址據(jù)及返回地址。存儲器存儲器堆棧段堆棧段棧底棧底SPSP棧棧頂頂堆棧的結(jié)構(gòu)堆棧的結(jié)構(gòu) 堆棧的操作:壓入(堆棧的操作:壓入(PUSHPUSH)和彈出)和彈出(POPPOP),對應(yīng)),對應(yīng)PUSHPUSH和和POPPOP指令,假設(shè)指令,假設(shè)數(shù)據(jù)字長為數(shù)據(jù)字長為1B1B 壓入指令壓入指令 PUSH Ri PUSH Ri:將:將RiRi寄存器內(nèi)寄存器內(nèi)容壓入堆棧。其操作是:容壓入堆棧。其操作是:(SPSP)1SP1SP,(Ri) (Ri) (SPSP) 彈出指令彈出指令POP RiPOP
27、Ri:從堆棧中彈出:從堆棧中彈出1 1個個數(shù)據(jù)送數(shù)據(jù)送RiRi寄存器,其操作是:寄存器,其操作是:(SP) Ri (SP) Ri ,(SP)(SP)1SP1SP 其中其中(SP)(SP)表示堆棧指針表示堆棧指針SPSP的內(nèi)容;的內(nèi)容;(SP)(SP)表示表示SPSP所指的棧頂?shù)膬?nèi)容。所指的棧頂?shù)膬?nèi)容。注意:注意:存儲器堆棧中,進棧時先存入數(shù)據(jù),后修改堆存儲器堆棧中,進棧時先存入數(shù)據(jù),后修改堆棧指示器;出棧時,先修改堆棧指示器,然后取出棧指示器;出棧時,先修改堆棧指示器,然后取出數(shù)據(jù)。數(shù)據(jù)。 這種尋址方式先把程序計數(shù)器這種尋址方式先把程序計數(shù)器PCPC的內(nèi)容和形式地址的內(nèi)容和形式地址( (通常通
28、常為位移量為位移量)Disp)Disp相加得相加得(PC) + Disp(PC) + Disp,然后再間接尋址求得操,然后再間接尋址求得操作數(shù)的有效地址,即作數(shù)的有效地址,即先相對尋址再間接尋址先相對尋址再間接尋址。 操作數(shù)的有效地址操作數(shù)的有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEA( (PC) + Disp)( (PC) + Disp)10. 10. 復(fù)合型尋址方式復(fù)合型尋址方式上面介紹的幾種尋址方式,在計算機中可以組合使用。上面介紹的幾種尋址方式,在計算機中可以組合使用。 這種尋址方式先把變址寄存器這種尋址方式先把變址寄存器RIRI的內(nèi)容和形式地址的內(nèi)容和形式地址DispDisp相加
29、得相加得(RI) + Disp(RI) + Disp,然后再間接尋址求得操作數(shù)的有,然后再間接尋址求得操作數(shù)的有效地址,即效地址,即先變址再間址先變址再間址。 操作數(shù)的有效地址操作數(shù)的有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEA( (RI) + Disp)( (RI) + Disp)10. 10. 復(fù)合型尋址方式復(fù)合型尋址方式 這種尋址方式先將形式地址這種尋址方式先將形式地址DispDisp作間接變換作間接變換( Disp )( Disp ),然后將間接變換值和程序計數(shù)器然后將間接變換值和程序計數(shù)器PCPC的內(nèi)容相加得到操作數(shù)的的內(nèi)容相加得到操作數(shù)的有效地址,即有效地址,即先間接尋址再相對
30、尋址先間接尋址再相對尋址。 操作數(shù)的有效地址操作數(shù)的有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEA(PC) + ( Disp)(PC) + ( Disp)10. 10. 復(fù)合型尋址方式復(fù)合型尋址方式 這種尋址方式先將形式地址這種尋址方式先將形式地址DispDisp作間接變換作間接變換( Disp )( Disp ),然后將間接變換值和變址寄存器然后將間接變換值和變址寄存器RIRI的內(nèi)容相加得到操作數(shù)的的內(nèi)容相加得到操作數(shù)的有效地址,即有效地址,即先間址再變址先間址再變址。 操作數(shù)的有效地址操作數(shù)的有效地址EAEA數(shù)學(xué)形式為:數(shù)學(xué)形式為:EAEA(RI) + ( Disp)(RI) + ( D
31、isp)10. 10. 復(fù)合型尋址方式復(fù)合型尋址方式例例1:1:指令格式如下所示。指令格式如下所示。OPOP為操作碼字段,試分析指令格式特點。為操作碼字段,試分析指令格式特點。 31 26 21 18 17 16 15 0 31 26 21 18 17 16 15 0 OP OP 源寄存器源寄存器 變址寄存器變址寄存器 偏偏 移移 量量解解: :(1)(1)操作碼字段為操作碼字段為6 6位,可指定位,可指定2 26 6= 64= 64種操作,即種操作,即6464條指令。條指令。(2)(2)單字長(單字長(3232位)二地址指令位)二地址指令(3)(3)一個操作數(shù)在源寄存器一個操作數(shù)在源寄存器(
32、 (共有共有1616個個),),另一個操作數(shù)在存儲另一個操作數(shù)在存儲 器中器中( (由變址寄存器內(nèi)容由變址寄存器內(nèi)容+ +偏移量決定偏移量決定),),所以是所以是RSRS型指令。型指令。(4)(4)這種指令結(jié)構(gòu)用于訪問存儲器。這種指令結(jié)構(gòu)用于訪問存儲器。指令格式分析舉例指令格式分析舉例: :例例2:2:指令格式如下所示。指令格式如下所示。OPOP為操作碼字段,試分析指令格式特點。為操作碼字段,試分析指令格式特點。 15 10 7 3 2 0 15 10 7 3 2 0OPOP 源寄存器源寄存器基值寄存器基值寄存器偏移量(偏移量(1616位)位)解解: : (1 1)操作碼字段)操作碼字段OPO
33、P為為1616位,可指定位,可指定2 26 6 = 64 = 64 (2 2)雙字長()雙字長(3232位)二地址指令,用于訪問存儲器。位)二地址指令,用于訪問存儲器。 (3 3)一個操作數(shù)在源寄存器(共)一個操作數(shù)在源寄存器(共3232個),另一個操作數(shù)在存?zhèn)€),另一個操作數(shù)在存儲器中(由基值寄存器和偏移量決定)。所以是儲器中(由基值寄存器和偏移量決定)。所以是RSRS型指令。型指令。指令格式分析舉例指令格式分析舉例: :例例3:3:指令格式如下所示。指令格式如下所示。OPOP為操作碼字段,試分析指令格式特點。為操作碼字段,試分析指令格式特點。 15 10 7 3 2 0 15 10 7 3
34、 2 0OP源寄存器源寄存器基值寄存器基值寄存器偏移量(偏移量(16位)位) 解解: : (1 1)操作碼字段)操作碼字段OPOP為為1616位,可指定位,可指定2 26 6 = 64 = 64 (2 2)雙字長()雙字長(3232位)二地址指令,用于訪問存儲器。位)二地址指令,用于訪問存儲器。 (3 3)一個操作數(shù)在源寄存器(共)一個操作數(shù)在源寄存器(共3232個),另一個操作數(shù)在存?zhèn)€),另一個操作數(shù)在存儲器中(由基值寄存器和偏移量決定)。所以是儲器中(由基值寄存器和偏移量決定)。所以是RSRS型指令。型指令。指令格式分析舉例指令格式分析舉例: :例例4:4:某某1616位機器所能使用的指令
35、格式和尋址方式如下所示位機器所能使用的指令格式和尋址方式如下所示, ,該機該機有兩個有兩個2020位的基址寄存器位的基址寄存器, ,四個四個1616位變址寄存器位變址寄存器, ,十六個十六個1616位位通用寄存器通用寄存器, ,指令匯編格式中的指令匯編格式中的S(S(源源) ) 、D(D(目目) )都是通用寄存都是通用寄存器器,M,M為主存中的一個單元為主存中的一個單元, ,三種指令操作碼分別是三種指令操作碼分別是: : MOV(OP)=(A) MOV(OP)=(A)H H STA(OP)=(1B) STA(OP)=(1B)H H LDA(OP)=(3C) LDA(OP)=(3C)H H, ,
36、指令格式分析舉例指令格式分析舉例: :OPOP 目目 源源MOV S , DMOV S , DSTA S , MSTA S , MLDA M , DLDA M , D151510109 98 87 74 43 30 0151510109 98 87 74 43 30 0151510109 98 87 74 43 30 0要求要求: :(1)(1)分析三種指令的指令格式與尋指方式特點分析三種指令的指令格式與尋指方式特點(2)(2)處理機完成哪種操作所花時間最短處理機完成哪種操作所花時間最短? ?哪種操作所花時間最長哪種操作所花時間最長? ?第二種指令的執(zhí)行時間會等于第三種嗎第二種指令的執(zhí)行時間會
37、等于第三種嗎? ?(3)(3)下列情況每個十六進制指令分別代表什么操作下列情況每個十六進制指令分別代表什么操作? ?其中如果有其中如果有編碼錯誤編碼錯誤, ,如何改正才能成為合法指令如何改正才能成為合法指令? ?(F0F1)(F0F1)H H (3CD2) (3CD2)H H ; ; (2856)(2856)H H (6FD6)(6FD6)H H ; ; (1C2)(1C2)H H例例5:5:一種二地址一種二地址RRRR型,型,RSRS型指令結(jié)構(gòu)如下所示型指令結(jié)構(gòu)如下所示 6 6位位 4 4位位 4 4位位 1 1位位 2 2位位 16 16位位OPOP源寄存器源寄存器目標(biāo)寄存器目標(biāo)寄存器I
38、IX XD D(偏移量)(偏移量)指令格式分析舉例指令格式分析舉例: :尋址方式尋址方式I IX X有效地址有效地址E E算法算法說明說明(1)(1)0 00000E=DE=DD D為偏移量為偏移量(2)(2)0 00101指令地址指令地址=(PC)+D=(PC)+DPCPC為程序計數(shù)器為程序計數(shù)器(3)(3)0 01010E=(RE=(Rx x)+D)+DR Rx x為變址寄存器為變址寄存器(4)(4)1 11111E=(R)E=(R)R R為通用寄存器為通用寄存器(5 5)1 10000E=(D)E=(D)(6)(6)0 01111E=(RE=(Rb b)+D)+DR Rb b為基址寄存器
39、為基址寄存器請寫出表中請寫出表中6 6種尋址方式名稱,并說明主存中操作數(shù)的位置。種尋址方式名稱,并說明主存中操作數(shù)的位置。解:解:(1)(1)直接尋址,操作數(shù)在有效地址直接尋址,操作數(shù)在有效地址E=DE=D的存儲單元中。的存儲單元中。(2)(2)相對尋址。相對尋址。(3)(3)變址尋址,操作數(shù)在變址尋址,操作數(shù)在E=(RX) + DE=(RX) + D的存儲單元中。的存儲單元中。(4)(4)寄存器間接尋址,通用寄存器的內(nèi)容指明操作數(shù)在主存中寄存器間接尋址,通用寄存器的內(nèi)容指明操作數(shù)在主存中的地址。的地址。(5)(5)間接尋址,用偏移量做地址訪主存得到操作數(shù)的地址指示間接尋址,用偏移量做地址訪主
40、存得到操作數(shù)的地址指示器,再按地址指示器訪主存的操作數(shù),因此間接尋址需兩次器,再按地址指示器訪主存的操作數(shù),因此間接尋址需兩次訪問主存訪問主存. .(6)(6)基值尋址,操作數(shù)在基值尋址,操作數(shù)在E=(Rb) + D E=(Rb) + D 的存儲單元中的存儲單元中. .例例6:6:一臺處理機具有如下指令格式一臺處理機具有如下指令格式 位位 位位位位位位 X X OP OP源寄存器源寄存器 目標(biāo)寄存器目標(biāo)寄存器地址地址格式表明有格式表明有8 8位通用寄存器(長度位通用寄存器(長度1616位),位),X X指定尋址模式,指定尋址模式,主存實際容量為主存實際容量為256k256k字。字。假設(shè)不用通用
41、寄存器也能直接訪問主存中的每一個單元,并假設(shè)不用通用寄存器也能直接訪問主存中的每一個單元,并設(shè)操作碼域設(shè)操作碼域OP=6OP=6位,請問地址碼域應(yīng)分配多少位?指令字長位,請問地址碼域應(yīng)分配多少位?指令字長度應(yīng)有多少位?度應(yīng)有多少位?2.2.假設(shè)假設(shè)X=11X=11時,指定的那個通用寄存器用做基值寄存器,請時,指定的那個通用寄存器用做基值寄存器,請?zhí)岢鲆粋€硬件設(shè)計規(guī)劃,使得被指定的通用寄存器能訪問提出一個硬件設(shè)計規(guī)劃,使得被指定的通用寄存器能訪問1M1M主存空間中的每一個單元。主存空間中的每一個單元。指令格式分析舉例指令格式分析舉例: :解:解:(1)(1)因為因為2 21818=256K=25
42、6K,所以地址碼域,所以地址碼域1818位位, , 操作碼域位操作碼域位指令長度指令長度18+3+3+6+2=3218+3+3+6+2=32位位(2)(2)此時指定的通用寄存器用作基值寄存器此時指定的通用寄存器用作基值寄存器(16(16位位),),但但1616位長度不足以覆蓋位長度不足以覆蓋1M1M字地址空間,為此將通用寄存器左字地址空間,為此將通用寄存器左移,移,4 4位低位補形成位基地址。然后與指令字形式位低位補形成位基地址。然后與指令字形式地址相加得有效地址,可訪問主存地址相加得有效地址,可訪問主存1M1M地址空間中任何單地址空間中任何單元。元。例例7:7:某機的某機的1616位單字長訪
43、內(nèi)指令格式如下:位單字長訪內(nèi)指令格式如下: 其中為形式地址,補碼表示(其中一位符號位);其中為形式地址,補碼表示(其中一位符號位);為直接為直接/ /間接尋址方式:間接尋址方式: 為間接尋址方式,為間接尋址方式, 為直接尋址方式;為直接尋址方式;為尋址模式:為絕對地址,為基地址尋址,為尋址模式:為絕對地址,為基地址尋址, 為相對尋址,為立即尋址;為相對尋址,為立即尋址;為變址尋址。為變址尋址。 設(shè)設(shè)PC,PC,x,Rbx,Rb分別為指令計數(shù)器,變址寄存器,基地址分別為指令計數(shù)器,變址寄存器,基地址寄存器,為有效地址,寄存器,為有效地址,指令格式分析舉例指令格式分析舉例: :例例9:9:設(shè)機器字
44、長設(shè)機器字長1616位,主存容量位,主存容量128K128K字節(jié),指令字長字節(jié),指令字長度度1616位或位或3232位,共位,共7878條指令,設(shè)計計算機指令格式,條指令,設(shè)計計算機指令格式,要求有直接,立即數(shù),相對,基值四種尋址方式。要求有直接,立即數(shù),相對,基值四種尋址方式。解:解:由已知條件,機器字長由已知條件,機器字長16位,主存容量位,主存容量128KB/2=64K字,字,因此因此MAR=18位,共位,共128條指令,故條指令,故OP字段占字段占7位。采用單字長位。采用單字長和雙字長兩種指令格式,其中單字長指令用于算術(shù)邏輯和和雙字長兩種指令格式,其中單字長指令用于算術(shù)邏輯和I/O指指
45、令,雙字長用于訪問主存的指令。令,雙字長用于訪問主存的指令。159854320opR1R21587620opXR2D尋址方式由尋址模式尋址方式由尋址模式X定義如下:定義如下:X=00直接尋址直接尋址E=D(64K)X=01立即數(shù)立即數(shù)D=操作數(shù)操作數(shù)X=10相對尋址相對尋址E=PC+DPC=16位位X=11基值尋址基值尋址E=Rb+DRb=16位位4 44 4 指令系統(tǒng)的要求與指令分類指令系統(tǒng)的要求與指令分類一、指令系統(tǒng)的要求一、指令系統(tǒng)的要求 計算機指令系統(tǒng)決定了計算機的基本功能,計算機指令系統(tǒng)決定了計算機的基本功能,即與計算機硬件組織結(jié)構(gòu)設(shè)計密切相關(guān),又對系即與計算機硬件組織結(jié)構(gòu)設(shè)計密切相
46、關(guān),又對系統(tǒng)軟件的設(shè)計影響極大,直接影響到編寫操作系統(tǒng)軟件的設(shè)計影響極大,直接影響到編寫操作系統(tǒng)和編寫編譯程序的難易程度。是計算機系統(tǒng)的統(tǒng)和編寫編譯程序的難易程度。是計算機系統(tǒng)的一個核心問題。一個核心問題。 二、指令的分類二、指令的分類 這類指令主要用來實現(xiàn)主存和寄存器之間,或寄存器這類指令主要用來實現(xiàn)主存和寄存器之間,或寄存器和寄存器之間,或主存和主存之間的數(shù)據(jù)傳送。和寄存器之間,或主存和主存之間的數(shù)據(jù)傳送。 主要包括主要包括取數(shù)指令取數(shù)指令、存數(shù)指令存數(shù)指令、傳送指令傳送指令、成組傳送成組傳送指令指令、字節(jié)交換指令字節(jié)交換指令、清累加器指令清累加器指令、堆棧操作指令堆棧操作指令等等。等等。
47、 傳送數(shù)據(jù)時,數(shù)據(jù)從源地址傳送到目的地址,而源地傳送數(shù)據(jù)時,數(shù)據(jù)從源地址傳送到目的地址,而源地址中的數(shù)據(jù)保持不變,因此,實際上是數(shù)據(jù)拷貝。址中的數(shù)據(jù)保持不變,因此,實際上是數(shù)據(jù)拷貝。1.1.數(shù)據(jù)傳送指令數(shù)據(jù)傳送指令 這類指令主要用于這類指令主要用于定點或浮點定點或浮點的算術(shù)運算,的算術(shù)運算,大型機中有向量運算指令,直接對整個向量或矩大型機中有向量運算指令,直接對整個向量或矩陣進行求和、求積運算。陣進行求和、求積運算。 這類指令包括二進制定點加、減、乘、除指這類指令包括二進制定點加、減、乘、除指令,浮點加、減、乘、除指令,求反、求補指令,令,浮點加、減、乘、除指令,求反、求補指令,算術(shù)移位指令,
48、算術(shù)比較指令,十進制加、減運算術(shù)移位指令,算術(shù)比較指令,十進制加、減運算指令等。算指令等。2.2.算術(shù)算術(shù)/ /邏輯運算指令邏輯運算指令(1 1)算術(shù)運算指令)算術(shù)運算指令 這類指令用以實現(xiàn)對兩個數(shù)的邏輯運算和這類指令用以實現(xiàn)對兩個數(shù)的邏輯運算和位操作功能,主要包括邏輯與(邏輯乘)、或位操作功能,主要包括邏輯與(邏輯乘)、或(邏輯加)、非(求反)、異或(按位加)等(邏輯加)、非(求反)、異或(按位加)等邏輯操作指令,以及位測試、位清除、位求反邏輯操作指令,以及位測試、位清除、位求反等位操作指令。等位操作指令。(2 2)邏輯運算指令)邏輯運算指令2.2.算術(shù)算術(shù)/ /邏輯運算指令邏輯運算指令3.
49、3.移位操作指令移位操作指令 移位操作指令用以實現(xiàn)將操作數(shù)向左移動或向移位操作指令用以實現(xiàn)將操作數(shù)向左移動或向右移動若干位的功能,包括右移動若干位的功能,包括算術(shù)移位算術(shù)移位、邏輯移邏輯移位位和和循環(huán)移位循環(huán)移位三種指令。三種指令。算術(shù)移位算術(shù)移位 左移時,若寄存器中的數(shù)為算術(shù)操作數(shù),則符號位左移時,若寄存器中的數(shù)為算術(shù)操作數(shù),則符號位不動,其它位左移,最低位補零。不動,其它位左移,最低位補零。 右移時,其它位右移,最高位補符號位。右移時,其它位右移,最高位補符號位。邏輯移位邏輯移位 移位時,若寄存器中的操作數(shù)為邏輯數(shù),則左移或移位時,若寄存器中的操作數(shù)為邏輯數(shù),則左移或右移時,所有位一起移位,最低位或最高位補零。右移時,所有位一起移位,最低位或最高位補零。循環(huán)移位循環(huán)移位 按是否與按是否與“進位進位”位位C C一起循環(huán)分為小循環(huán)一起循環(huán)分為小循環(huán)( (即自身即自身循環(huán)循環(huán)) )和大循環(huán)和大循環(huán)( (即和進位位即和進位位 C C一起循環(huán)一起循環(huán)) )兩種。兩種。 用于實現(xiàn)循環(huán)式控制、高低字節(jié)互換或與算術(shù)、邏用于實現(xiàn)循環(huán)式控制、高低字節(jié)互換或與算術(shù)、邏輯移位指令一起實現(xiàn)雙倍字長或多倍字長的移位。輯移位指令一起實現(xiàn)雙倍字長或多倍字長的移位。循環(huán)移位規(guī)則循環(huán)移位規(guī)則小循環(huán)左移:
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高級活動節(jié)目策劃方案(3篇)
- 水毀河堤修復(fù)工程施工方案
- 2026年5C管理技能進階題庫企業(yè)員工素養(yǎng)
- 2026年及未來5年市場數(shù)據(jù)中國酒店餐飲行業(yè)市場發(fā)展數(shù)據(jù)監(jiān)測及投資戰(zhàn)略咨詢報告
- 2025-2030重慶家居裝飾品市場現(xiàn)狀供需分析及投資前景規(guī)劃研究報告
- 2026年金融分析師金融市場投資策略及風(fēng)險管理理論試卷
- 2026年健康食品科技產(chǎn)品經(jīng)理專業(yè)能力測試題目
- 2026年現(xiàn)代市場營銷經(jīng)理資格考試試題
- 2025至2030中國冷鏈物流行業(yè)基礎(chǔ)設(shè)施布局及運營效率分析報告
- 中國家庭儲能電池智能監(jiān)控系統(tǒng)消費者行為與市場滲透分析報告
- 2026年無錫工藝職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試題庫附答案解析
- 2026年中考語文一輪復(fù)習(xí)課件:記敘文類閱讀技巧及示例
- 培訓(xùn)中心收費與退費制度
- 2025腫瘤靶向藥物皮膚不良反應(yīng)管理專家共識解讀課件
- 腳手架施工安全技術(shù)交底標(biāo)準(zhǔn)模板
- 設(shè)備部2025年度工作總結(jié)報告
- (2026年)壓力性損傷的預(yù)防和護理課件
- 化工廠設(shè)備維護保養(yǎng)培訓(xùn)
- 淘寶主體變更合同范本
- 《交易心理分析》中文
- 2025中國電信股份有限公司重慶分公司社會成熟人才招聘筆試考試參考題庫及答案解析
評論
0/150
提交評論