




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
了解機器語言的基本概念;
掌握指令格式、尋址方式、指令字長及指令類型對指令系統(tǒng)設計的影響;會根據指令格式、指令字長及尋址方式要求設計指令的編碼。
第4章指令系統(tǒng)§4·1機器指令一、基本概念1、機器指令由0、1代碼表示,計算機硬件能夠識別并直接執(zhí)行的操作命令。2、指令系統(tǒng)一臺計算機所有機器指令的集合,它反映了該計算機具有的基本功能。它是軟件和硬件的主要界面。3、指令的執(zhí)行過程取指令→分析指令→執(zhí)行指令軟件硬件指令系統(tǒng)
地址碼二、指令格式指明指令所完成的操作,其位數反映了機器的操作種類即機器指令的條數。1、操作碼2、地址碼指明與操作數有關的信息,操作數、操作數地址或運算結果地址。操作碼位數n與機器指令條數m的關系2n≥m或n≥log2m操作碼例:某計算機有78條指令,采用等長操作碼編碼需要多少位?三、地址碼格式指令地址碼格式中要指明一條指令操作數地址的個數及操作數地址采用什么方式給出。
1、三地址指令OPA1A2A3功能:(A1)OP(A2)→A3特點:
(1)兩個操作數均保持不變,可再次使用;(2)適用于字長較長的大、中型機。三、地址碼格式2、二地址指令OPA1A2功能:(A1)OP(A2)→A1特點:
(1)操作數A1被運算結果替代;(2)適用于字長較短的小型機和微型機。三、地址碼格式3、一地址指令OPA功能:OP(A)→A特點:
(1)操作數A被運算結果替代;(2)在許多微型機中,雙操作數指令也采用一地址指令格式,在指令中源操作數由地址碼A給出,另一操作數隱含在累加器AX中。(AX)OP(A)→AX(3)適用于字長較短的小型機和微型機。三、地址碼格式4、零地址指令OP特點:
(1)無需任何操作數;(2)所需操作數是隱含指定的。四、操作碼格式1、定長的操作碼操作碼的位數與位置固定,占據指令最前面的幾位。IBM370、VAX-11、Intel8086/8088特點:(1)簡化操作碼譯碼器的設計,縮短指令譯碼時間;(2)指令擴展性差;(3)廣泛用于大、中、小型機及RISC中。例:一臺模型機有7條指令,采用定長操作碼,操作碼位數為幾位?應采用什么樣的譯碼器?四、操作碼格式2、擴展操作碼操作碼的位數不固定,占據指令前面若干位。如
PDP-11
機。特點:(1)常用指令用較短的操碼,不常用的指令用較長的操作碼,可縮短指令操作碼平均長度;(2)指令擴展性強,便于增加新指令;(3)指令譯碼電路復雜;(4)任何短碼不能為長碼的前綴,確保編碼的唯一性。例:某臺計算機的指令系統(tǒng)中共有50條指令,試問:(1)若采用定長編碼方式,其操作碼的編碼長度需要多少位?(2)設該指令系統(tǒng)中有10條指令的使用概率為90%,其余為10%,若采用不等長編碼方式,其操作碼的平均長度為多少?(3)若原指令系統(tǒng)采有固定長度編碼,后繼產品中需增加50條指令,試設計其指令操作碼,并計算其平均長度。
五、指令字長1、定字長指令2、變字長指令指令字長一定,地址碼較多用較短操作碼,地址碼較少用較長操作碼。如PDP-11機指令字長不同,一般使用頻率高的指令用較短操作碼;使用頻率低的指令用較長的較長的操作碼。Pentium機采用可變長指令格式,最短的1個字節(jié),最長的有12個字節(jié)。屬于CISC結構。8086的指令字長為1~6個字節(jié),80486的指令字長為1~11位。
五、指令字長3、特點:(1)指令字長為字節(jié)的整數倍;(2)指令字長越長,指令功能豐富,占用存儲空間多讀取指令時間長;練習:某計算機的指令長度為16位,需設置二地址、一地址和零地址指令三種,每個操作數的地址碼占6位,用操作碼擴展的方法設計出這三種指令的格式,并指出所設計的各種指令的數目。§4·2尋址方式了解機器語言的基本概念;
掌握指令格式、指令字長、尋址方式及指令類型對指令系統(tǒng)設計的影響;會根據指令格式、指令字長及尋址方式要求設計指令的編碼。六、尋址方式在程序的運行過程中,形成指令地址或操作地址的方式。(一)指令的尋址方式1、順序尋址方式:程序按其執(zhí)行的先后次序存放在內存中,由PC提供要執(zhí)行的指令地址。2、跳躍尋址方式:由程序控制類指令的執(zhí)行而改變原來程序的執(zhí)行順序。(二)操作數的尋址方式指令中提供操作數地址(或操作數)的方法。OP尋址特征MOD形式地址D1、立即尋址:操作數在指令中。Data=D2、直接尋址:操作數地址在指令中。EA=DOPMODD(操作數)OPMODD操作數D特點:速度快,尋址范圍受D位數的限制,尋址空間為2D特點:速度快,適用于操作數固定的場合。3、存儲器間接尋址操作地址在內存中,在數在指令中給出的是操作數地址的地址。EA=(D)OPMODD操作數地址EAD操作數EA特點:速度慢,可擴大操作數的尋址范圍。例:設指令字長和存儲字長均為16位,D=8,問直接和間接尋址時的尋址范圍各為多大?4、寄存器尋址操作數在寄存器中,在指令中給出寄存器號。EA=ROPMODR操作數R5、寄存器間接尋址操作數地址在寄存器中,在指令中給出寄存器號。OPMODREAR操作數EA寄存器組寄存器組內存6、隱含尋址在指令中不指出操作數的地址,操作數的地址隱含在操作碼中,此時操作數一般隱含于堆棧或累加器中。特點:可縮短指令字長。7、基址尋址
操作數的有效地址EA等于指令中的形式地址D與基址寄存器BR中內容相加。OPMODDBRALU操作數EA內存特點:可擴大指令對主存的尋址范圍,可實現全空間尋址。主要用于為程序和數據分配存儲空間,基址寄存器中的內容通常由操作系統(tǒng)或管理程序確定。7、變址尋址
操作數的有效地址EA等于指令字中的形式地址D與變址寄存器IX中內容相加。OPMODDIXALU操作數EA內存特點:主要用于處理數組問題。8、相對尋址
操作數的有效地址EA等于指令字中的形式地址D與程序計數器PC中內容相加。EA=(PC)+DOPMODDPCALU操作數EA內存特點:主要用于轉移類指令。指令系統(tǒng)中采用不同尋址方式的目的主要是縮短指令長度,擴大尋址空間,提高編程的靈活性。例:一種二地址R-S型(寄存器/存儲器)指令的結構如下所示:OP9通用寄存器4I1X2偏移量D16其中I為間接尋址標志位,X為尋址模式字段,D為偏移量字段。通過I、X、D的組合,可構成下表所示的尋址方式,請寫出表中6種尋址方式的名稱。有效地址E算法E=DE=(PC)DE=(R2)DE=(R3)E=(D)E=(R1)D尋址方式名稱說明PC程序計數器R2為變址寄存器R1為基址寄存器I000110X000110110011+-+-+-(三)Pentium機的尋址方式尋址方式名稱有效地址E算法說明立即寄存器直接基址基址+偏移量比例變址+偏移量基址+變址+偏移量基址+比例變址+偏移量相對EEEEEEE操作數在指令中操作數在寄存器中=DD為偏移量=(B)=(B)+DB為基址寄存器=(I)×S+DI為變址寄存器,S為比例因子=(B)+(I)+D=(B)+(I)×S+D=(PC)+DPC為程序計數器1、定長操作碼編碼方式中操作碼位數n與指令條數m有何關系?2、采用擴展操作碼編碼方式時有哪些注意事項?知識回顧例:某計算機字長16位,運算器16位,有16個通用寄存器,8種尋址方式,主存容量為64K字,指令中地址碼由尋址方式字段和寄存器字段組成。(1)單、雙操作數指令最各有多少條?(2)直接尋址范圍有多大?(雙字長)(3)間接尋址范圍有多大?(單字長)(4)變址尋址(雙字長)的范圍有多大?練習:某機存儲字長為32位,共有機器指令100條,指令單字長,等長操作碼,CPU內部有通用寄存器32個,可做變址寄存器用。存儲器按字節(jié)編址,指令擬用直接尋址、間接尋址、變址尋址和相對尋址4種方式。(1)分別畫出采用4種不同尋址方式的單地址指令的指令格式。(2)采用直接尋址和間接尋址方式時,可尋址的存儲器空間各是多少?(3)寫出4種方式下,有效地址E的表達式。七、指令類型1、數據傳送類指令2、算術/邏輯運算指令3、程序控制類指令4、輸入/輸出指令5、其他指令八、RISC指令系統(tǒng)和CISC指令系統(tǒng)的特點1、RSIC精簡指令系統(tǒng)計算機的特點(1)指令數目較少,選使用頻度高的簡單指令。(2)指令長度固定、指令格式、尋址方式種類少。(3)只有存/取數指令訪存,其余指令均在寄存器之間進行。(4)大部分指令在一個機器周期內完成,采用流水線技術。每條指令的平均執(zhí)行時間小于一個是時鐘財期。(5)CPU中通用寄存器數量相當多。(6)控制器采用組合邏輯控制,不用微程序控制。(7)采用優(yōu)化的編譯程序。(8)指令功能簡單使得程序代碼較長,占用較多的存儲空間。如:SPARC機只有75條指令,3種指令格式,4種尋址方式120~136個寄存器。MIPSR400094/1/322、CISC復雜指令系統(tǒng)計算機的特點(1)指令系統(tǒng)復雜龐大。(200~300條)(2)尋址方式、指令格式多。(3)指令字長不固定。(4)可訪存指令多。(5)指令使用頻率、執(zhí)行時間相差大。(6)采用微程序控制器。Intel80486計算機有235條指令,11種尋址方式;Pentuim有191條指令,9種尋址方式。練習:某機字長16位,直接尋址空間為128字,變址時的位移時為-64~+64,16個通用寄存器都可以作為變址寄存器。設計一套指令系統(tǒng),滿足下列尋址類型的要求:(1)直接尋址的二地址指令3條。(2)變址尋址的一地址指令6條。(3)寄存器尋址的二地址指令8條。(4)直接尋址的一地址指令12條。(5)零地址指令32條。2009年考研:1、某機器字長16位,主存按字節(jié)編址,轉移指令采用相對尋址,由兩個字節(jié)組成,第一個字節(jié)為操作碼字段,第二個字節(jié)為相對位移量字段。假定取指令時,每取一個字節(jié)PC自動加1。若某轉移指令所在主存地址為2000H,相對位移量字段的內容為06H,則該轉移指令成功轉移后的目標地址是()。A.2006HB.2007HC.2008HD.2009H2、下列關于RISC的敘述中,錯誤的是()。A.RISC普遍采用微程序控制器B.RISC大多數指令在一個時鐘周期內完成C.RISC的內部通用寄存器數量相對CISC多D.RISC的指令數、尋址方式和指令格式種類相對CISC少(2010考研)某計算機字長為16位,主存地址空間大小為128KB,按字編址。采用單字長指令格式,指令各字段定義如下:轉移指令采用相尋址方式,相對偏移量用補碼表示。尋址方式定義如下:(1)該指令系統(tǒng)最多可有多少條指令?該計算機最多有多少個通用寄存器?MAR和MDR各多少們位?(2)轉移指令的目標地址范圍是多少?(3)若操作碼0010B表示加法操作(add),寄存器R4和R5的編號分別為100B和101B,R4的內容為1234H,R5的內容為5678H,地址1234H中的內容為5678H,地址5678H中的內容為1234H,則執(zhí)行“add(R4),(R5)+”(逗號前為源操作數)對應的機器碼是什么?哪些寄存器和存儲單元的內容會改變?改變后的內容是什么?OP1512MsRs116MdRd50Ms/Md000B001B010B011B尋址方式寄存器直接寄存器間接寄存器間接、自增011B助記符Rn(Rn)(Rn)+D(Rn)含義操作數=(Rn)操作數=((Rn))操作數=((Rn)),(Rn)+1→Rn轉移目標地址=(PC)+(Rn)2010年考研1、下列選項中,能縮短程序執(zhí)行時間的措施是()Ⅰ.提高CPU時鐘頻率Ⅱ.優(yōu)化數據通路結構Ⅲ.對程序進行編譯優(yōu)化A.僅Ⅰ和ⅡB.僅Ⅰ和ⅢC.僅Ⅱ和ⅢD.Ⅰ、Ⅱ和Ⅲ2、假定有4個整數用8位補碼分別表示為r1=FEH,r2=F2H,r3=90H,r4=F8H。若運算結果存放在一個8位寄存器中,則下列運算中會發(fā)生溢出的是()。A.r1×r2B.r2×r3C.r1×r4D.r2×r42010年考研3、假定變量I、f和d的數據類型分別為int、float和double(int用補碼表示,float和double分別用IEEE754單精度和雙精度浮點數格式表示),已知i=785,f=1.5678e3,d=1.5e100。若在32位機器中執(zhí)行下列關系表達式,則結果為“真”的是()。Ⅰ.i==(int)(float)iⅡ.f==(float)(int)fⅢ.f==(float)(double)fⅣ.(d+f)-d==fA.僅Ⅰ和ⅡB.僅Ⅰ和ⅢC.僅Ⅱ和ⅢD.僅Ⅲ和Ⅳ4、下列寄存器中,匯編語言程序員可見的是()。A.存儲器地址寄存器(MAR)B.存儲器數據寄存器(MDR)C.程序計數器(PC)D.指令寄存器(IR)2010年考研5、不列選項中,不會引起指令流水線阻塞的是()。A.數據旁路(轉發(fā))B.數據相關C.條件轉移D.資源沖突6、下列選項中英文縮寫均為總線標準的是()。A.PCI、CRT、USB、EISAB.ISA、CPI、VESA、EISAC.ISA、SCSI、RAM、MIPSD.ISA、EISA、PCI、PCI-Express7、單級中斷系統(tǒng)中,中斷服務程序內的執(zhí)行順序是()。Ⅰ.保護現場Ⅱ.開中斷Ⅲ.關中斷Ⅳ.保存斷點Ⅴ.中斷事件處理Ⅵ.恢復現場Ⅶ.中斷返回A.Ⅰ→Ⅴ→Ⅵ
→Ⅱ→ⅦB.Ⅲ→Ⅰ→Ⅴ→ⅦC.Ⅲ→Ⅳ→Ⅴ→
Ⅶ→Ⅵ
D.Ⅳ→Ⅰ→Ⅴ→Ⅵ→Ⅶ2010年考研8、假定一臺計算機的顯示存儲器用DRAM芯片實現,若要示顯示分辨率為1600×1200,顏色深度為24位,幀頻為85HZ,顯存總帶寬的50%用來刷新屏幕,則需要的顯存總帶寬至少約為()。A.245MbpsB.979MbpsC.1958MbpsD.7834Mbps9、下列選項中,操作系統(tǒng)提供應用程序的接口是()。A.系統(tǒng)調用B.中斷C.庫函數D.原語7、單級中斷系統(tǒng)中,中斷服務程序內的執(zhí)行順序是()。Ⅰ.保護現場Ⅱ.開中斷Ⅲ.關中斷Ⅳ.保存斷點Ⅴ.中斷事件處理Ⅵ.恢復現場Ⅶ.中斷返回A.Ⅰ→Ⅴ→Ⅵ→Ⅱ→ⅦB.Ⅲ→Ⅰ→Ⅴ→ⅦC.Ⅲ→Ⅳ→Ⅴ→Ⅶ→ⅥD.Ⅳ→Ⅰ→Ⅴ→Ⅵ→Ⅶ一、填空1、指令的編碼將指令分成()、()等字段。2、通常指令編碼的第一個字段是()。3、操作數直接出現在地址碼位置的尋址方式稱為()尋址。4、寄存器尋址方式中,指令的地址碼位置部分給出的是(),而操作數在()。5、直接尋址方式指令中,直接給出(),只需()一次就可獲得操作數。6、寄存器間接尋址方式指令中給出的是()所在的寄存器號。7、存儲器間接尋址方式指令中給出的是()所在的存儲器的地址,CPU需要訪問內存()次才能獲得操作數。8、變址尋址方式中操作數的地址由()與()的和產生。9、相對尋址方式中操作數的地址由()與()之和產生。10、只有操作碼而沒有地址碼的指令稱為()指令。二、判斷題1、執(zhí)行指令時,指令在內存中地址存放在指令寄存器中。2、沒有設置乘、除法指令的計算機系統(tǒng)中,就不能實現乘、除法運算。3、程序計數器PC用來指令從內存中取指令。4、內存地址寄存器用來指示從內存中取數據。5、計算機指令是指揮CPU進行操作的命令,指令通常由操作碼和操作數地址碼組成。6、浮點運算指令對用于科學計算的計算機是很必要的,可以提高機器的運算速度。7、不設置浮點運算指令的計算機,就不能用于科學計算。8、擴展操作碼是種優(yōu)化技術,它使操作碼的長度隨地址碼的減少而增加,不同地址的指令可以具有不同長度的操作碼。9、RISC沒有乘、除指令和浮點運算指令。10、RISC的主要設計目標是減少指令數、降低軟、硬件開銷。(1)二地址指令三條,直接尋址的空間為128,所以指令中的D=7因為二地址指令所以指令格式如下:操作碼編碼為00、01、10(2)變址尋址的一地址指令6條變址時的位移量為-64~+63需用7位表示位移量的范圍,4位表示通用寄存器尋址,操作碼5位。格式如下:操作碼編碼為11000、1100111010、1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 瓣膜置換的圍術期護理
- 人教A版 (2019)選擇性必修 第一冊3.2 雙曲線獲獎教案
- 2024中鋁共享服務(天津)有限公司校園招聘1人筆試參考題庫附帶答案詳解
- 鳳仙花的一生(教學設計)-2024-2025學年科學三年級下冊人教鄂教版
- 人教部編版一年級下冊20 咕咚第2課時教學設計
- 人教版(2024)八年級上冊(2024)第4節(jié) 眼睛和眼鏡教案
- 2024中建一局二級公司總工程師公開競聘1人筆試參考題庫附帶答案詳解
- 釘釘使用詳盡培訓
- 2024中國郵政福建建省分公司校園招聘預筆試參考題庫附帶答案詳解
- 人美版三年級下冊第3課 豎彎鉤教案及反思
- 顯示屏出廠合格證
- (中職)電子技術基礎與技能(電子信息類)教案
- 三晶變頻器說明書SAJ系列簡約
- 混凝土模板支撐工程專項施工方案(140頁)
- MATLAB_第6講_GUI界面設計
- 第三章煤層氣的儲層壓力及賦存狀態(tài)
- 高中英語北師大版(2019)必修第一冊 Unit3Lesson1SpringFestival
- 《公輸》(共44張PPT)
- 鴿巢原理例1、例2
- 飛剪機傳動裝置的設計機械CAD圖紙
- 阿里巴巴OfferLetter
評論
0/150
提交評論