![[工學]第四章指令系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/c6390258-056b-4b4e-bed2-57abbdc9a7ed/c6390258-056b-4b4e-bed2-57abbdc9a7ed1.gif)
![[工學]第四章指令系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/c6390258-056b-4b4e-bed2-57abbdc9a7ed/c6390258-056b-4b4e-bed2-57abbdc9a7ed2.gif)
![[工學]第四章指令系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/c6390258-056b-4b4e-bed2-57abbdc9a7ed/c6390258-056b-4b4e-bed2-57abbdc9a7ed3.gif)
![[工學]第四章指令系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/c6390258-056b-4b4e-bed2-57abbdc9a7ed/c6390258-056b-4b4e-bed2-57abbdc9a7ed4.gif)
![[工學]第四章指令系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/c6390258-056b-4b4e-bed2-57abbdc9a7ed/c6390258-056b-4b4e-bed2-57abbdc9a7ed5.gif)
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、.第四章 指令系統(tǒng)一、本章主要內容內 容要 求指令格式(含定長操作碼指令格式和擴展操作碼指令格式)*尋址方式(數據尋址和指令尋址,常見尋址方式的特點和表示方法)*CISC和RISC的基本概念*二、知識結構尋址方式存儲器尋址定長操作碼不定長操作碼操作碼指令格式操作數操作數的個數立即數尋址直接尋址間接尋址寄存器間接尋址變址尋址寄存器尋址系統(tǒng)尋址基址尋址 三、具體內容介紹(一) 指令格式1. 指令的基本格式:機器內部的指令格式由兩大字段組成,操作碼和操作數;l 操作碼規(guī)定本條指令所要進行的操作或完成的功能;l 操作數字段給出本條指令操作的數據對象以及下一條將要執(zhí)行的指令的地址,操作數字段有可能包含尋
2、址方式字段。l 指令系統(tǒng)中各指令的長度可以相同,也可以不同,一般取機器字長的倍數。操作碼 尋址1 數1 尋址I 數i 尋址n 數n2. 定長操作碼指令格式:所有指令的操作碼位數相同。重點掌握內容:操作碼位數和指令總統(tǒng)所含指令條數的關系。n位操作碼,指令系統(tǒng)最多2n條指令;反之,指令系統(tǒng)有n條指令,至少log2n位操作碼。3. 擴展操作碼指令格式在高級語言中,各語句的使用頻率相差較大,比如C語言中,goto語句是限制使用的,一般程序不會使用goto語句,而幾乎所有的程序都需要多次使用賦值語句。同樣,指令系統(tǒng)中各條指令的使用頻率也不一定相同,定長操作碼指令給所有指令分配相同位數的操作碼,使得極少使
3、用的指令和經常使用的指令具有相同位數的操作碼,對操作碼的譯碼效率會產生影響。擴展操作碼指令格式將根據指令的使用頻率不同,分配不同位數的操作碼,以提高指令系統(tǒng)的整體譯碼速度。比如使用頻率高的指令操作碼位數較短,使用頻率低的指令操作碼位數長一些。二 指令的尋址方式指令的尋址方式指確定本條指令中所有操作數的地址以及下一條將要執(zhí)行的指令的地址的方法。1. 形式地址和有效地址通常,指令中的操作數的位置有:指令中、內存中、CPU的寄存器中或者I/O接口中,所以指令中的操作數字段提供的值稱為形式地址,把按照約定的尋址方式計算得到的地址稱為有效地址。2. 數據尋址及常見尋址方式數據尋址:確定本條指令中所有操作
4、數的地址,即尋找指令將要操作的數據的方法,常見數據尋址方式如下所示: 立即數尋址:指令的操作數字段給出的是操作數本身(操作數在指令中)。這是最簡單最直接的尋址方式,執(zhí)行指令時,數據隨指令由內存讀入CPU。 優(yōu)點:簡單、明確、速度快 缺點:由于操作數字段的位數是有限的,所以立即數表示數的范圍也是有限的。比如每個操作數占6位,則無符號數的表數范圍是0-63,有符號數的表數范圍是-32-+31。所以立即數尋址方式只適合操作數較小的情況,大一些的操作數無法應用。直接尋址:操作數在內存,指令的操作數字段給出的是操作數的內存地址。執(zhí)行指令時,指令由內存讀入CPU后,再按照直接尋址字段給出操作數的內存地址讀
5、一次內存,即可將數據從內存讀入CPU。 優(yōu)點:由于操作數在內存,操作數所占的內存單元數由數據的類型決定,所以數據的范圍可以較大。比如操作數字段占6位,對應數據為16位,則無符號數的表數范圍是0-65535,有符號數的表數范圍是-32768-+32767。 缺點:由于操作數字段的位數是有限的,所以操作數可存放的內存地址的范圍也是有限的。比如每個操作數占6位,操作數只可在0-63內存單元存放。所以直接尋址中操作數的存放位置有限,可定義的操作數的個數就受限。間接尋址:操作數在內存,指令的操作數字段給出的是操作數的內存地址所存放的內存單元地址,即操作數字段給出的是操作數的地址的地址。執(zhí)行指令時,指令由
6、內存讀入CPU后,再按照間接尋址字段給出操作數的內存地址的內存地址讀一次內存,可得到操作數的內存地址,按照這個地址再讀一次內存,即將數據從內存讀入CPU。 優(yōu)點:由于操作數在內存,操作數所占的內存單元數由數據的類型決定,所以數據的內存地址以及范圍可以較大。比如操作數字段占6位,內存單元均以16位為單位讀寫,則對應操作數的內存地址占16位,則操作數的可存放地址范圍是065535;對應操作數占16位,則無符號數的表數范圍是0-65535,有符號數的表數范圍是-32768-+32767。 缺點:首先由于操作數字段的位數是有限的,所以操作數的地址可存放的內存地址的范圍也是有限的。比如每個操作數占6位,
7、操作數的地址只可在0-63內存單元存放。其次讀寫操作數需要兩次讀寫內存,速度較慢。寄存器尋址:操作數在CPU內的寄存器中,指令的操作數字段給出的是相應寄存器的編號。執(zhí)行指令時,指令由內存讀入CPU后,可直接按照寄存器編號讀寄存器,讀出內容即為本條指令需要的操作數。 優(yōu)點:由于操作數在CPU中,取數速度較快。 由于CPU中寄存器的數量是有限的,所以需要的寄存器編號也較短,可以有效減少操作數字段的位數。 缺點:由于CPU中寄存器的數量是有限的,所以同時進行寄存器尋址的操作數個數是有限的,一旦超出,只能通過其他方式使用,比如將暫時不用的寄存器內容入棧保存,需要時再出棧使用。寄存器間接尋址:操作數在內
8、存,操作數的內存地址在CPU內的寄存器中,指令的操作數字段給出的是相應寄存器的編號。執(zhí)行指令時,指令由內存讀入CPU后,可直接按照寄存器編號讀寄存器,讀出內容即為本條指令所需要的操作數的內存地址;再按照讀出的內存地址讀內存,即可讀出本條指令所需要的操作數。 優(yōu)點:由于操作數的地址在CPU中,獲得操作數內存地址的速度較快。 由于CPU中寄存器的數量是有限的,所以需要的寄存器編號也較短,可以有效減少操作數字段的位數。 缺點:由于CPU中寄存器的數量是有限的,所以同時進行寄存器間接尋址的操作數個數是有限的,一旦超出,只能通過其他方式使用,比如將暫時不用的寄存器內容入棧保存,需要時再出棧使用;由于讀操
9、作數需要訪問內存一次,速度較寄存器尋址較慢。變址尋址:操作數在內存,操作數的內存地址由CPU內的變址寄存器的內容和指令中給出的偏移量求和得到。執(zhí)行指令時,指令由內存讀入CPU后,可直接按照變址寄存器編號讀寄存器,讀出內容和指令中的偏移量求和即為本條指令所需要的操作數的內存地址;再按照計算出的內存地址讀內存,即可讀出本條指令所需要的操作數。 優(yōu)點:一般將數組首地址放入指令的操作數字段,變址寄存器用來提供下標,在循環(huán)體中順序修改變址寄存器的值,可實現數組功能。 缺點:由于操作數地址需要計算得到,速度較慢。 特點:讀寫一次內存可完成操作。3. 指令尋址及常見尋址方式相對尋址:下一條將要執(zhí)行的指令所在
10、的內存地址由CPU內的PC寄存器的內容(直接用或加1后使用)和指令中給出的偏移量求和得到,注意偏移量為有符號數,補碼表示。 特點:可實現循環(huán)和選擇結構。4. 其他常見尋址方式基址尋址:操作數或指令的內存地址由CPU內的基址寄存器的內容左移n位(乘2n)和指令中給出的偏移量求和得到。比如8086/8088中,四個段寄存器CS、DS、SS和ES均為基址寄存器,所有指令地址由(CS)*16+(PC)得到;所有數據段的地址由(DS)*16+指令中給出的偏移量得到;所有附加段的地址由(ES)*16+指令中給出的偏移量得到;所有堆棧段的地址由(SS)*16+(SP)或(SS)*16+(BP)得到。 特點:
11、一般用來擴大尋址空間。4操作數的個數指令中的操作數個數一般有0-3個,多于三個的操作數可以轉換為四類中的一類。零操作數指令:指令中無操作數字段??赡苤噶畈恍枰僮鲾?,比如停機指令hlt,也可能指令中的操作數隱含在特殊寄存器、堆?;蚶奂悠髦小R坏刂分噶睿褐噶钪邪粋€操作數字段。可能指令只需要一個操作數,也可能其他操作數隱含在特殊寄存器、堆?;蚶奂悠髦?。二地址指令:指令中包含兩個操作數字段,一般其中的一個操作數兼作目的操作數。三地址指令:指令中包含三個操作數字段,其中兩個源操作數,一個目的操作數。三CISC和RISC的基本概念只需了解基本概念和特點即可。CISC:復雜指令集計算機。指令系統(tǒng)包含的
12、指令條數較多,優(yōu)點是編程方便,程序效率較高;缺點是指令條數較多導致系統(tǒng)復雜程度較高。RISC:精簡指令集計算機。根據指令的使用頻率,給使用頻率較高的20%指令分配較短的操作碼,使用較快的尋址方式;其他80%指令用較長操作碼或直接用子程序實現。指令系統(tǒng)指令條數較少,一般嵌入式的處理器使用RISC,比如ARM處理器。 例題例1(2001年上海大學攻讀碩士學位研究生入學考試試題,10分;武漢理工大學2004年攻讀碩士學位研究生入學考試試題,10分;2004年武漢理工大學攻讀碩士學位研究生入學考試試題,10分):假設某計算機指令長度為20位,具有雙操作數、單操作數、無操作數三類指令格式,規(guī)定每個操作數
13、占6位,現已設計出m條雙操作數指令,n條無操作數指令,求這臺計算機最多可設計出多少條單操作數指令?若操作碼位數固定呢?解:本題為典型的擴展操作碼指令格式,由題意,該指令系統(tǒng)的指令格式如下:操作碼 操作數1(6位) 操作數2(6位) 由于規(guī)定每個操作數占6位,所以雙操作數指令的操作碼有20-6-6=8位;單操作數指令可以將操作碼的位數擴充至操作數1,操作碼有8+6=14位;無操作數指令可以將操作碼的位數擴充至操作數2,操作碼有14+6=20位。所以,雙操作數指令最多可有28=256條,已知現已設計出m條雙操作數指令,可剩余256-m個8位編碼用于擴充單操作數指令。單操作數指令最多有(256-m)
14、*26條,設最終指令系統(tǒng)有x條單操作數指令,可剩余(256-m)*26-x個14位編碼用于擴充無操作數指令。無操作數指令最多有(256-m)*26-x)*26條,已知現已設計出n條無操作數指令,所以n=(256-m)*26-x)*26,解不等式求出x即可。n=(256-m)*64-x)*64n/64=(256-m)*64-xx=(256-m)*64- n/64這臺計算機最多可設計出(256-m)*64- n/64條單操作數指令。(1) 本題如果將條件改為操作碼位數固定,則最多可設計256-m-n條單操作數指令。例2、(2003年武漢理工大學攻讀碩士學位研究生入學考試試題,10分)某機存儲器及C
15、PU的字長均為16位,CPU有16個16位的通用寄存器。請為該機設計能滿足下列條件的指令格式,并加以說明。1、允許有不超過210種的操作指令2、主存儲器空間不少于16MB3、至少有5種尋址方式4、只有單字長指令和雙字長指令可供選擇解:允許有不超過210種的操作指令-由于7log22108,所以操作碼占8位,最多256條指令,現有210條,剩余46個編碼可用于擴充。主存儲器空間不少于16MB-主存字節(jié)地址至少log216M=24位至少有5種尋址方式-由于2log253,所以尋址方式占3位,最多8種尋址方式,現有5種,剩余3個編碼可用于擴充其他尋址方式。16個通用寄存器,寄存器編號占log216=
16、4位單字長指令即指令長度為16位,其中操作碼必須占8位,一個操作數的尋址方式占3位,僅剩5位用于操作數。立即數尋址方式、寄存器尋址方式和寄存器間接尋址方式用5位可以直接表達,其他涉及內存的尋址方式需要24(字節(jié)尋址)(字尋址)位地址,指令的操作數字段只能提供5位,需要借助特殊寄存器提供高19位地址,但寄存器只有16位,可以將寄存器內容左移8位的方法構造出24位地址,再和指令提供的5位偏移地址求和,以得到操作數所需的24位有效地址。所以單字長指令格式為操作碼8位,尋址方式3位,操作數5位。雙字長指令即指令長度為32位,其中操作碼必須占8位,剩余24位。雙字長單操作數指令格式,24位中的3位為尋址方式,剩余21位用于操作數。立即數尋址方式和寄存器相關的尋址方式用5位可以直接表達,其他涉及內存的尋址方式需要24位地址,指令的操作數字段只能提供21位,可以將寄存器內容左移8位的方法構造出24位地址,再和指令提供的21位偏移地址求和,以得到操作數所需的24
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度試用期員工離職風險評估與應對合同
- 地方高校轉型的目標與方向
- 游樂園裝修監(jiān)理合同樣本
- 2025年中國服飾零售信息化行業(yè)發(fā)展監(jiān)測及投資戰(zhàn)略研究報告
- 氣象觀測液氮運輸協議
- 城市休閑公園項目概述
- 塑料制品加工廠裝修合同
- 二零二五年度電商電商平臺入駐與傭金分配合同
- 二零二五年度銀行上門收款業(yè)務標準化合同模板
- 冷鏈血液制品直銷協議
- GB∕T 1732-2020 漆膜耐沖擊測定法
- 我國油菜生產機械化技術(-119)
- 2022《化工裝置安全試車工作規(guī)范》精選ppt課件
- 吞咽障礙篩查表
- Q∕GDW 12067-2020 高壓電纜及通道防火技術規(guī)范
- 汽車系統(tǒng)動力學-輪胎動力學
- 10T每天生活污水處理設計方案
- 艾琳歆日內交易2011-2月至4月份圖表
- 中國民航國內航空匯編航路314系列航線
- 山西特色文化簡介(課堂PPT)
- 工業(yè)廠房工程技術標(共93頁)
評論
0/150
提交評論