




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
指令格式從二進制位串上講,一條指令中包含兩部分:操作碼(OperationCode)和地址碼(AddressCode)。其中操作碼表明了指令的操作性質(zhì)及功能,地址碼則給出了操作數(shù)的地址(即操作數(shù)的存儲位置)。指令是指示計算機執(zhí)行某些操作的命令。一臺計算機的所有指令的集合構(gòu)成該機的指令系統(tǒng),也稱指令集。指令系統(tǒng)是計算機的主要屬性,位于硬件和軟件的交界面上1指令系統(tǒng)(1)地址碼結(jié)構(gòu)計算機執(zhí)行一條指令所需要的全部信息都必須包含在指令中。對于一般的雙操作數(shù)運算類指令來說,除去操作碼之外,指令還應包含以下信息:第一操作數(shù)地址,用A1表示。第二操作數(shù)地址,用A2表示。操作結(jié)果存放地址,用A3表示。下條將要執(zhí)行指令的地址,用A4表示。這樣,一條指令的格式可以細分為(OP表示具體的操作,Ai表示地址):OPA1A2A3A4指令的含義:(A1)OP(A2)→A3
下條將要執(zhí)行指令存儲在地址為A4開始的存儲單元優(yōu)點:四地址指令格式的具有直觀,下條指令的地址明顯缺點:指令長度較長,占用的存儲空間較大。如果將指令按順序依次存儲在存儲器中,用一個程序計數(shù)器(ProgramCounter,PC)來存放指令地址。通常每執(zhí)行一條指令,PC就自動加1(設(shè)每條指令只占一個主存單元),直接得到將要執(zhí)行的下一條指令的地址。OPA1A2A3指令的含義:(A1)OP(A2)→A3(PC)+1→PC(隱含)執(zhí)行一條三地址的雙操作數(shù)運算指令,至少需要訪問4次主存。第一次取指令本身,第二次取第一操作數(shù),第三次取第二操作數(shù),第四次保存運算結(jié)果。這種格式省去了一個地址,但指令長度仍比較長,所以在微型計算機中很少使用。三地址指令執(zhí)行完后,主存中的兩個操作數(shù)均不會被破壞。然而,通常并不一定需要完整的保留兩個操作數(shù)。如果讓第一操作數(shù)地址同時兼作存放結(jié)果的地址(目的地址),這樣即得到了二地址指令,其格式為:OPA1A2指令的含義:(A1)OP(A2)→A1(PC)+1→PC(隱含)通常把A1稱為目的操作數(shù)地址,A2稱為源操作數(shù)地址。執(zhí)行一條二地址的雙操作數(shù)運算指令,同樣至少需要訪問4次主存。只有一個地址的指令為一地址指令。那么另一個操作數(shù)來自何方呢?指令中雖未明顯給出,但隱含著放在CPU內(nèi)部的一個特殊存儲器(專門寄存器)中的操作數(shù)。因為這個寄存器在連續(xù)性運算時,保存著多條指令連續(xù)操作的累計結(jié)果,故稱為累加寄存器(Accumulator,Acc)。它的指令格式為:OPA1指令的含義:(Acc)OP(A1)→Acc(PC)+1→PC(隱含)執(zhí)行一條一地址的雙操作數(shù)運算指令,只需要訪問兩次主存。第一次取指令本身,第二次取第二操作數(shù)。第一操作數(shù)和運算結(jié)果都放在累加寄存器中,所以讀取和存入都不需要訪問存儲器。(2)操作碼指令系統(tǒng)中的每一條指令都有一個唯一確定的操作碼,指令不同,其操作碼的編碼也不同。通常,希望用盡可能短的操作碼字段來表達全部的指令。指令操作碼的編碼可以分為定長編碼和變長編碼兩類。定長編碼是一種最簡單的編碼方法,操作碼字段的位數(shù)和位置是固定的。為了能表示整個指令系統(tǒng)中的全部指令,指令的操作碼字段應當具有足夠的位數(shù)。定長編碼對于簡化硬件設(shè)計、減少指令譯碼的時間是非常有利的,在字長較長的大、中型計算機及超級小型計算機上廣泛采用。變長編碼的操作碼字段的位數(shù)不固定,且分散地放在指令字的不同位置上。這種方式能夠有效地壓縮指令中操作碼字段的平均長度,在字長較短的微型計算機上廣泛采用。最常用的非規(guī)整型編碼方式是擴展操作碼法。因為如果指令長度一定,則地址碼與操作碼字段的長度是相互制約的。為了解決這一矛盾,讓操作數(shù)地址個數(shù)多的指令(三地址指令)的操作碼字段短些,操作數(shù)地址個數(shù)少的指令(一或零地址指令)的操作碼字段長些,這樣既能充分地利用指令的各個字段,又能在不增加指令長度的情況下擴展操作碼的位數(shù),使它能表示更多的指令。例如:設(shè)某計算機的指令長度為16位,操作碼字段為4位,有3個4位的地址碼字段,其格式為:如果按照定長編碼的方法,4位操作碼最多只能表示16條不同的三地址指令。假設(shè)指令系統(tǒng)中不僅有三地址指令,還有二地址指令、一地址指令和零地址指令,利用擴展操作碼法可以使在指令長度不變的情況下,指令的總數(shù)遠遠大于16條。4位操作碼的編碼0000~1110定義了15條三地址指令,留下1111作為擴展窗口,與下一個4位(A1)組成一個8位的操作碼字段。8位操作碼的編碼11110000~11111110定義了15條二地址指令,留下11111111作為擴展窗口,與下一個4位(A2)組成一個12位的操作碼字段。12位操作碼的編碼111111110000~111111111110定義了15條一地址指令,擴展窗口為111111111111,與A3組成16位的操作碼字段。最后,16條零地址指令由16位操作碼的編碼給出。指令系統(tǒng)中要求有15條三地址指令、15條二地址指令、15條一地址指令和16條零地址指令,共61條指令。顯然,只有4位操作碼是不夠的,解決的方法就是向地址碼字段擴展操作碼的位數(shù)。擴展的方法是:CPU指令集分類復雜指令集,ComplexInstructionSetComputer--CISC)精簡指令集(ReducedInstructionSetComputing-RISC)早期的CPU全部是CISC架構(gòu),它的設(shè)計目的是要用最少的機器語言指令來完成所需的計算任務。比如對于乘法運算,在CISC架構(gòu)的CPU上,需要這樣一條指令:
MULADDRA,ADDRB
就可以將ADDRA和ADDRB中的數(shù)相乘并將結(jié)果儲存在ADDRA中。將ADDRA,ADDRB中的數(shù)據(jù)讀入寄存器,相乘和將結(jié)果寫回內(nèi)存的操作全部依賴于CPU中設(shè)計的邏輯來實現(xiàn)。這種架構(gòu)會增加CPU結(jié)構(gòu)的復雜性和對CPU工藝的要求,但對于編譯器的開發(fā)十分有利。比如上面的例子,C程序中的a*=b就可以直接編譯為一條乘法指令。在CISC微處理器中,程序的各條指令是按順序串行執(zhí)行的,每條指令中的各個操作也是按順序串行執(zhí)行的。順序執(zhí)行的優(yōu)點是控制簡單,但計算機各部分的利用率不高,執(zhí)行速度慢。今天只有Intel及其兼容CPU還在使用CISC架構(gòu)。后續(xù)章節(jié)中所講述的8086CPU和MSC-51單片機的指令集都屬于復雜指令集。RISC架構(gòu)要求軟件來指定各個操作步驟。上面的例子如果要在RISC架構(gòu)上實現(xiàn),將ADDRA,ADDRB中的數(shù)據(jù)讀入寄存器,相乘和將結(jié)果寫回內(nèi)存的操作都必須由軟件來實現(xiàn),程序:
MOVA,ADDRA;MOVB,ADDRB;MULA,B;STRADDRA,A。這種架構(gòu)可以降低CPU的復雜性以及允許在同樣的工藝水平下生產(chǎn)出功能更強大的CPU,但對于編譯器的設(shè)計有更高的要求與傳統(tǒng)的CISC相比,RISC的指令格式統(tǒng)一,種類比較少,尋址方式也比復雜指令集少。當然處理速度就提高很多了。目前在中高檔服務器中普遍采用這一指令系統(tǒng)的CPU,特別是高檔服務器全都采用RISC指令系統(tǒng)的CPU:PowerPC處理器、SPARC處理器、PA-RISC處理器、MIPS處理器、Alpha處理器。目前一些嵌入式的CPU也采用RISC指令集。2尋址技術(shù)所謂尋址,指的是尋找操作數(shù)的地址或下一條將要執(zhí)行的指令地址,尋址技術(shù)是計算機設(shè)計中硬件對軟件最早提供支持的技術(shù)之一。
尋址技術(shù)包括編址方式和尋址方式。編址方式編址方式是指對各種存儲設(shè)備進行編碼的方式。在計算機中需要編址的設(shè)備主要有CPU中的通用寄存器、主存儲器和輸入輸出設(shè)備3種。如果存儲設(shè)備是CPU中的通用寄存器,在指令字中應給出寄存器編號;如果是主存的一個存儲單元,在指令字中應給出該主存單元的地址;如果是輸入輸出設(shè)備(接口)中的一個寄存器,指令字中應給出設(shè)備編號或設(shè)備端口地址或設(shè)備映像地址(與主存地址統(tǒng)一編址時)。目前使用最普遍的編址方式是字節(jié)編址,這是為了適應非數(shù)值應用的需要。字節(jié)編址方式使編址單位與信息的基本單位(一個字節(jié))相一致,這是它的最大優(yōu)點。然而,如果主存的訪問單位也是一個字節(jié)的話,那么主存的帶寬就太窄了,所以編址單位和主存的訪問單位是不相同的。通常主存的訪問單位是編址單位的若干倍。在采用字節(jié)編址的機器中,如果指令長度是32位。那么每執(zhí)行完一條指令,程序計數(shù)器要加4。如果數(shù)據(jù)字長是32位,當連續(xù)訪問存儲器時,每讀寫完一個數(shù)據(jù)字,地址寄存器要加4。由此可見,字節(jié)編址方式存在著地址信息的浪費。指令中地址碼的位數(shù)指令格式中每個地址碼的位數(shù)是與主存容量和最小尋址單位(即編址單位)有關(guān)聯(lián)的。常用的編址單位有字編址、字節(jié)編址和位編址。指令尋址和數(shù)據(jù)尋址尋址可以分為指令尋址和數(shù)據(jù)尋址。指令尋址—尋找下一條將要執(zhí)行的指令地址數(shù)據(jù)尋址—尋找操作數(shù)的地址指令尋址比較簡單,它又可以細分為順序?qū)ぶ泛吞S尋址。而數(shù)據(jù)尋址方式種類較多,其最終目的都是尋找所需要的操作數(shù)。順序?qū)ぶ房赏ㄟ^程序計數(shù)器加1,自動形成下一條指令的地址;跳躍尋址則需要通過程序轉(zhuǎn)移類指令實現(xiàn)。跳躍尋址的轉(zhuǎn)移地址形成方式有3種:直接(絕對)、相對和間接尋址,它與下面介紹的數(shù)據(jù)尋址方式中的直接、相對和間接尋址是相同的,只不過尋找到的不是操作數(shù)的有效地址而是轉(zhuǎn)移的有效地址而已?;緮?shù)據(jù)尋址方式數(shù)據(jù)尋址方式是根據(jù)指令中給出的地址碼字段尋找真實操作數(shù)地址的方式。立即尋址指令中的地址碼不是操作數(shù)的地址,而是操作數(shù)本身寄存器尋址直接尋址指定的寄存器中存放著操作數(shù)指令中地址碼給出的地址A就是操作數(shù)的有效地址,即:EA=A間接尋址間接尋址意味著指令中給出的地址A不是操作數(shù)的地址,而是存放操作數(shù)地址的主存單元的地址,簡稱操作數(shù)地址的地址。(a)一級間接尋址(b)多級間接尋址寄存器間接尋址指令中的地址碼給出某一通用寄存器的編號,在被指定的寄存器中存放操作數(shù)的有效地址,而操作數(shù)則存放在主存單元中變址尋址變址尋址就是把變址寄存器Rx的內(nèi)容與指令中給出的形式地址A相加,形成操作數(shù)有效地址,即EA=(Rx)+A。Rx的內(nèi)容稱為變址值基址尋址基址尋址是將基址寄存器Rb的內(nèi)容與指令中給出的位移量D相加,形成操作數(shù)有效地址,即EA=(Rb)+D?;芳拇嫫鞯膬?nèi)容稱為基址值。指令的地址碼字段是一個位移量,位移量可正、可負相對尋址相對尋址是基址尋址的一種變通,由程序計數(shù)器(PC)提供基準地址,指令中的地址碼字段作為位移量D,兩者相加后得到操作數(shù)的有效地址,即EA=(PC)+D3CPU結(jié)構(gòu)和功能1)指令控制程序的順序控制,稱為指令控制。由于程序是一個指令序列,這些指令的相互順序不能任意顛倒,必須嚴格按程序規(guī)定的順序進行,因此,保證機器按順序執(zhí)行程序是CPU的首要任務。2)操作控制一條指令的功能往往是由若干個操作信號的組合來實現(xiàn)的。因此,CPU管理并產(chǎn)生由內(nèi)存取出的每條指令的操作信號。把各種操作信號送往相應的部件,從而控制這些部件按指令的要求進行動作。3)時間控制對各種操作實施時間上的控制,稱為時間控制。因為在計算機中,各種指令的操作信號均受到時間的嚴格控制。另一方面,一條指令的整個執(zhí)行過程也受到時間的嚴格控制。只有這樣,計算機才能有條不紊地自動工作。4)數(shù)據(jù)加工所謂數(shù)據(jù)加工,就是對數(shù)據(jù)進行算術(shù)運算和邏輯運算處理。完成數(shù)據(jù)的加工處理,這是CPU的根本任務。因為,原始信息只有經(jīng)過加工處理后才能對人們有用。數(shù)據(jù)加工過程是由復雜數(shù)字電路構(gòu)成的運算器完成的。CPU的寄存器4參數(shù)與型號CPU的主要參數(shù)時鐘頻率/主頻地址總線寬度數(shù)據(jù)總線寬度3)數(shù)據(jù)總線寬度數(shù)據(jù)總線寬度指的是數(shù)據(jù)總線的條數(shù)。數(shù)據(jù)總
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年嵌入式操作系統(tǒng)市場調(diào)查報告
- 粉末涂裝行業(yè)深度研究分析報告(2024-2030版)
- 2025年機載設(shè)備綜合測試臺項目安全調(diào)研評估報告
- 2025年陶瓷項目分析評價報告
- 2025年制造業(yè)供應鏈數(shù)字化協(xié)同產(chǎn)業(yè)協(xié)同政策效應評估報告
- 2025年廢舊電子產(chǎn)品回收再利用產(chǎn)業(yè)鏈創(chuàng)新研究報告
- 2025年銀發(fā)消費市場養(yǎng)老服務產(chǎn)品創(chuàng)新研究報告
- 2025年食品與飲料行業(yè)食品行業(yè)食品安全監(jiān)管能力提升報告
- 教育資源整合項目對2025年教育行業(yè)市場格局影響分析報告
- 草籽噴播施工合同10篇
- 礦產(chǎn)資源規(guī)劃編制工作方案(示范文本)
- GB/T 7159-1987電氣技術(shù)中的文字符號制訂通則
- GB/T 3934-2003普通螺紋量規(guī)技術(shù)條件
- 尿動力學檢查操作指南2023版
- 行政事業(yè)單位無形資產(chǎn)管理辦法模板
- 2023年上海高考語文試卷+答案
- 建筑施工企業(yè)安全生產(chǎn)條件檢查表
- 煤化工工藝學教材課件匯總完整版ppt全套課件最全教學教程整本書電子教案全書教案課件合集
- 銀行全國科技周活動宣傳總結(jié)
- SCL-90量表詳細
- 公路工程項目環(huán)境保護措施及其可行性論證
評論
0/150
提交評論