體系結(jié)構(gòu)第2章_第1頁
體系結(jié)構(gòu)第2章_第2頁
體系結(jié)構(gòu)第2章_第3頁
體系結(jié)構(gòu)第2章_第4頁
體系結(jié)構(gòu)第2章_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

計算機系統(tǒng)結(jié)構(gòu)

主講人:陳儉喜計算機學(xué)院武漢光電國家實驗室信息存儲部chenjx@QQ群:279749742ComputerArchitecture第1章計算機系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識

(1)計算機系統(tǒng)的多級層次模型,計算機系統(tǒng)結(jié)構(gòu)的廣義定義與狹義定義,與組織、實現(xiàn)的關(guān)系;(2)計算機系統(tǒng)結(jié)構(gòu)的分類;(3)計算機系統(tǒng)設(shè)計的定量原理

Amdahl定律 CPU性能公式

平均時鐘周期數(shù)CPI

每秒百萬指令數(shù)MIPS(4)執(zhí)行時間、吞吐率和基準(zhǔn)測試程序;(5)馮.諾依曼結(jié)構(gòu)的特點;(6)并行性的等級與技術(shù)途徑。作業(yè):1.7,1.10,1.11,下周一上課的時候交作業(yè)

計算機系統(tǒng)設(shè)計的定量原理(1)Makethecommoncasefaster|AmdahlCPU性能公式CPU時間=

(CPIi

ICi)/時鐘頻率CPI=

(CPIi

ICi)/IC=

(CPIi

ICi/IC)CPU時間=CPIIC

時鐘周期時間

;MIPS106=指令條數(shù)執(zhí)行時間CPU時鐘周期數(shù)=指令條數(shù)106/ffCPI=106程序的執(zhí)行時間Te=MIPS指令條數(shù)106計算機系統(tǒng)設(shè)計的定量原理(2)MIPS(MillionInstructionsPerSecond)AboutMIPS2.1 指令系統(tǒng)結(jié)構(gòu)的分類2.2 尋址方式2.3 指令系統(tǒng)的設(shè)計與優(yōu)化2.4指令系統(tǒng)的發(fā)展和改進(jìn)2.5 操作數(shù)的類型和大小2.6 MIPS指令系統(tǒng)結(jié)構(gòu)作業(yè):補充習(xí)題2.14,實驗1,要求見群共享

第2章指令系統(tǒng)的設(shè)計2.1指令系統(tǒng)結(jié)構(gòu)的分類先考慮如下問題:1.指令是什么?2.和高級語言(C語言)的差別?3.一條指令應(yīng)包含哪些內(nèi)容?OperationOprand2.3指令系統(tǒng)的設(shè)計與優(yōu)化操作類型實例算術(shù)和邏輯運算算術(shù)運算和邏輯操作:加,減,乘,除,與,或等數(shù)據(jù)傳輸load,store控制分支,跳轉(zhuǎn),過程調(diào)用和返回,自陷等系統(tǒng)操作系統(tǒng)調(diào)用,虛擬存儲器管理等浮點浮點操作:加,減,乘,除,比較等十進(jìn)制十進(jìn)制加,十進(jìn)制乘,十進(jìn)制到字符的轉(zhuǎn)換等字符串字符串移動,字符串比較,字符串搜索等圖形像素操作,壓縮/解壓操作等尋址方式指令實例含義寄存器尋址ADDR1,R2Regs[R1]←Regs[R1]+Regs[R2]立即值尋址ADDR3,#6Regs[R3]←Regs[R3]+6偏移尋址ADDR3,120(R2)Regs[R3]←Regs[R3]+Mem[120+Regs[R2]]寄存器間接尋址ADDR4,(R2)Regs[R4]←Regs[R4]+Mem[Regs[R2]]索引尋址ADDR4,(R2+R3)Regs[R4]←Regs[R4]+Mem[Regs[R2]+Regs[R3]]直接尋址或絕對尋址ADDR4,(1010)Regs[R4]←Regs[R4]+Mem[1010]存儲器間接尋址ADDR2,@(R4)Regs[R2]←Regs[R2]+Mem[Mem[Regs[R4]]]自增尋址ADDR1,(R2)+Regs[R1]←Regs[R1]+Mem[Regs[R2]]Regs[R2]←Regs[R2]+d自減尋址ADDR1,-(R2)Regs[R2]←Regs[R2]-dRegs[R1]←Regs[R1]+Mem[Regs[R2]]縮放尋址ADDR1,80(R2)[R3]Regs[R1]←Regs[R1]+Mem[80+Regs[R2]+Regs[R3]*d]2.2尋址方式一個需要注意的問題:物理地址空間的信息如何存放?如何在存儲器中存放不同寬度的信息?2.2尋址方式信息寬度不超過主存寬度的信息必須存放在一個存儲字內(nèi),不能跨邊界。必須做到:信息在主存中存放的起始地址必須是該信息寬度(字節(jié)數(shù))的整數(shù)倍信息存儲的整數(shù)邊界概念滿足以下條件字節(jié)信息的起始地址為:×…××××半字信息的起始地址為:×…×××0單字信息的起始地址為:×…××00雙字信息的起始地址為:×…×000

存在存儲空間的浪費,但保證訪問速度。2.2尋址方式2.3指令系統(tǒng)的設(shè)計與優(yōu)化在設(shè)計指令系統(tǒng)時,有兩種截然不同的設(shè)計策略。(產(chǎn)生了兩類不同的計算機系統(tǒng))CISC(復(fù)雜指令系統(tǒng)計算機)增強指令功能,把越來越多的功能交由硬件來實現(xiàn),并且指令的數(shù)量也是越來越多。RISC(精簡指令系統(tǒng)計算機)盡可能地把指令系統(tǒng)簡化,不僅指令的條數(shù)少,而且指令的功能也比較簡單。

2.3.3指令操作碼的優(yōu)化───3種方法(P37)指令操作碼的編碼方法有3種:定長編碼,Huffman編碼,擴(kuò)展編碼。1.定長編碼(P40)

就是所有指令的操作碼使用相同位數(shù),其最小碼長等于式中是平均碼長,是第i種指令的碼長,n是指令總數(shù)。例2.0已知n=15,求定長編碼的最小平均碼長。解:這種編碼方式?jīng)]有對操作命令中的冗余信息進(jìn)行壓縮,程序占用的空間比后2種編碼都大。但是每條指令中的操作碼位數(shù)固定,CPU的指令譯碼電路可以設(shè)計得簡單而快速,所以在追求速度的RISC計算機上被普遍采用。2.Huffman編碼(P38)Huffman壓縮概念(最佳編碼定理):當(dāng)用n個長度不等的代碼分別代表n種發(fā)生概率不等的事件時,按照短代碼給高概率事件、把長代碼給低概率事件的原則分配,可使平均碼長達(dá)到最低。3.擴(kuò)展編碼方法(等長擴(kuò)展法,P39)擴(kuò)展編碼方法是等長編碼與Huffman編碼的折中,在CISC機器中常常使用(如Intel80x86系列處理機)。用碼長表示:例如4-8-12法。這并不能說明具體編碼方法,例如下面兩種編碼方法都是4-8-12法。用碼點數(shù)表示:例如15/15/15法,8/64/512法15/15/15法,每一種碼長都有4位可編碼位(前頭可以有相同的擴(kuò)展標(biāo)識前綴),可產(chǎn)生16個碼點(即編碼組合),但是至多只能使用其中15個來表示事件,留下1個或多個碼點組合作為更長代碼的擴(kuò)展標(biāo)識前綴。已經(jīng)用來表示事件的碼點組合不能再作為其它更長代碼的前導(dǎo)部分,否則接收者會混淆。這就是“非前綴原則”。8/64/512法,每一種碼長按4位分段,每一段中至少要留下1位或多位作為擴(kuò)展標(biāo)識。各段剩下的可編碼位一起編碼,所產(chǎn)生的碼點用來對應(yīng)被編碼事件。每一段中的標(biāo)識位指出后面還有沒有后續(xù)段。以3-6-9位為例36bit目標(biāo):平均碼長最小化33bit平均碼長=P1l1+P2l2+……+P84l8430bit27bit24bit21bit18bit15bit12bit9bit6bit3bit7/7/7法碼長分布7條7條7條7條7條7條7條7條7條7條7條7條9bit6bit3bit4/16/64法碼長分布4條16條64條指令頻度分布懸殊

P1

……P84指令頻度分布均勻

P1

……P84兩種等長擴(kuò)展碼適用性比較4.編碼方法性能指標(biāo)信息量:根據(jù)信息論的基本知識,在n種可能發(fā)生的事件集合中,報告第i種事件發(fā)生的消息中包含的信息量為其中Pi是第i種事件發(fā)生的先驗概率,a是編碼基值(2進(jìn)制bit,a=2)。信息量的單位是表示位數(shù)(最少所需位數(shù))。這個定義式表明事件的發(fā)生概率越低,關(guān)于它的消息中的信息量越大。熵(entropy)──平均信息量:一個消息源對n種事件發(fā)布的消息的信息量平均值,記為平均碼長:各事件編碼長度的數(shù)學(xué)期望。信息冗余量:它表明消息編碼中“無用成分”所占的百分比。從減少存儲與傳輸量的角度看,編碼方法的平均碼長越短越好。但是平均碼長不可能無限制縮短,它的下限就是熵(即R=0時)。如果短于熵就一定會丟失有用信息(即混淆不同指令),這是不允許的。例2.1(補充,教材P38的例2.1自己閱讀)已知頻度序列為0.1,0.1,0.15,0.15,0.2,0.3,求Huffman編碼、等長擴(kuò)展3/3/3碼、定長編碼、三者的平均碼長、信息冗余量以及熵。解:

熵H=–(2×0.1×log20.1+2×0.15×log20.15+0.2×log20.2+0.3×log20.3)

≈2.47

根據(jù)Huffman編碼方法作Huffman樹如圖2.2所示,三種編碼方法的結(jié)果列于表2.1中。表2.1Huffman編碼、等長擴(kuò)展3/3/3碼及定長編碼2.4指令系統(tǒng)的發(fā)展和改進(jìn)CISC指令系統(tǒng)結(jié)構(gòu)存在的問題

(1979年開始,Patterson等人的研究)各種指令的使用頻度相差懸殊,許多指令很少用。據(jù)統(tǒng)計:只有20%的指令使用頻度比較高,占運行時間的80%。而其余80%的指令只在20%的運行時間內(nèi)才會用到。使用頻度高的指令也是最簡單的指令。2.4.2沿RISC方向發(fā)展和改進(jìn)指令系統(tǒng)執(zhí)行頻度排序80x86指令指令執(zhí)行頻度(占執(zhí)行指令總數(shù)的百分比)1load22%2條件分支20%3比較16%4store12%5加8%6與6%7減5%8寄存器-寄存器間數(shù)據(jù)移動4%9調(diào)用子程序1%10返回1%合計95%Intel80x86最常用的10條指令2.4指令系統(tǒng)的發(fā)展和改進(jìn)指令系統(tǒng)龐大,指令條數(shù)很多,許多指令的功能又很復(fù)雜,使得控制器硬件非常復(fù)雜。

導(dǎo)致的問題:占用了大量的芯片面積(如占用CPU芯片總面積的一半以上)增加了研制時間和成本,容易造成設(shè)計錯誤。許多指令由于操作繁雜,其CPI值比較大,執(zhí)行速度慢。由于指令功能復(fù)雜,規(guī)整性不好,不利于采用流水技術(shù)來提高性能。2.4指令系統(tǒng)的發(fā)展和改進(jìn)設(shè)計RISC機器遵循的原則指令條數(shù)少、指令功能簡單。只選取使用頻度很高的指令,在此基礎(chǔ)上補充一些最有用的指令;采用簡單而又統(tǒng)一的指令格式,并減少尋址方式;指令字長都為32位或64位;指令的執(zhí)行在單個機器周期內(nèi)完成;

(采用流水線機制)只有l(wèi)oad和store指令才能訪問存儲器,其它指令的操作都是在寄存器之間進(jìn)行;

(即采用load-store結(jié)構(gòu))大多數(shù)指令都采用硬連邏輯來實現(xiàn);2.4指令系統(tǒng)的發(fā)展和改進(jìn)強調(diào)優(yōu)化編譯器的作用,為高級語言程序生成優(yōu)化的代碼;充分利用流水技術(shù)來提高性能。早期的RISC微處理器1981年,Berkeley分校的Patterson等人的32位微處理器RISCI:31條指令,指令字長都是32位,78個通用寄存器,時鐘頻率為8MHz;控制部分所占的芯片面積只有約6%。商品化微處理器MC68000和Z8000分別為50%和53%;性能比MC68000和Z8000快3~4倍。2.4指令系統(tǒng)的發(fā)展和改進(jìn)1983年的RISCⅡ:指令條數(shù)為39,通用寄存器個數(shù)為138,時鐘頻率為12MHz。后來發(fā)展成了Sun公司的SPARC系列微處理器。1981年,Stanford大學(xué)Hennessy等人的MIPS后來發(fā)展成了MIPSRxxx系列微處理器。IBM的801共同特點:采用load-store結(jié)構(gòu)指令字長為32位采用高效的流水技術(shù)32個64位通用寄存器(GPRs)R0,R1,…,R31也稱為整數(shù)寄存器R0的值永遠(yuǎn)是032個64位浮點數(shù)寄存器(FPRs)F0,F(xiàn)1,…,F(xiàn)312.6MIPS指令系統(tǒng)結(jié)構(gòu)介紹MIPS64的一個子集,簡稱為MIPS。2.6.1MIPS的寄存器2.6MIPS指令系統(tǒng)結(jié)構(gòu)用來存放32個單精度浮點數(shù)(32位),也可以用來存放32個雙精度浮點數(shù)(64位)。存儲單精度浮點數(shù)(32位)時,只用到FPR的一半,其另一半沒用。一些特殊寄存器它們可以與通用寄存器交換數(shù)據(jù)。例如浮點狀態(tài)寄存器:用來保存有關(guān)浮點操作結(jié)果的信息。2.6MIPS指令系統(tǒng)結(jié)構(gòu)MIPS的數(shù)據(jù)表示整數(shù)字節(jié)(8位)半字(16位)字(32位)雙字(64位)浮點數(shù)單精度浮點數(shù)(32位)雙精度浮點數(shù)(64位)字節(jié)、半字或者字在裝入64位寄存器時,用零擴(kuò)展或者用符號位擴(kuò)展來填充該寄存器的剩余部分。裝入以后,對它們將按照64位整數(shù)的方式進(jìn)行運算。2.6.2MIPS的數(shù)據(jù)表示2.6MIPS指令系統(tǒng)結(jié)構(gòu)立即數(shù)尋址與偏移量尋址;

寄存器間接尋址是通過把0作為偏移量來實現(xiàn)的;

16位絕對尋址是通過把R0(其值永遠(yuǎn)為0)作為基址寄存器來完成的;MIPS的存儲器是按字節(jié)尋址的,地址為64位;所有存儲器訪問都必須是邊界對齊的。MIPS的存儲器地址采用高端字節(jié)表示順序(bigendian,又稱“大尾端排序”),即用bit63表示最低位,而bit0表示最高位;存儲多字節(jié)數(shù)據(jù)時,高字節(jié)存放在低地址,…。與之相反的是,Intel80x86處理機采用低端字節(jié)表示順序(smallendian,又稱“小尾端排序”)2.6.3MIPS的數(shù)據(jù)尋址方式2.6MIPS指令系統(tǒng)結(jié)構(gòu)尋址方式編碼到操作碼中所有的指令都是32位的操作碼占6位3種指令格式

3種格式中,同名字段的位置固定不變。2.6.4MIPS的指令格式MIPS指令格式有三種指令格式R-Type兩個操作數(shù)和結(jié)果都在寄存器的運算指令。如:subrd,rs,rtI-Type運算指令:一個寄存器、一個立即數(shù)。如:orirt,rs,imm16LOAD和STORE指令。如:lwrt,rs,imm16條件分支指令。如:beqrs,rt,imm16J-Type無條件跳轉(zhuǎn)指令。如:jtargetoprsrtrdshamtfunc0611162126316bits6bits5bits5bits5bits5bitsR-Type指令oprsrtimmediate0162126316bits16bits5bits5bitsI-Type指令optargetaddress026316bits26bitsJ-Type指令所有指令都是32位寬,須按字地址對齊MIPS指令字段含義OP:操作碼rs:第一個源操作數(shù)寄存器rt:第二個源操作數(shù)寄存器rd:結(jié)果寄存器shamt:移位指令 的位移量func:R-Type指令的OP字段是特定的“000000”,具體操作由func字段給定。例如:func=“100000”時,表示“加法”運算。immediate:立即數(shù)或load/store指令和分支指令的偏移地址targetaddress:無條件轉(zhuǎn)移地址的低26位。將PC高4位拼上26位直接地址,最后添2個“0”就是32位目標(biāo)地址。為何最后兩位要添“0”?oprsrtrdshamtfunc0611162126316bits6bits5bits5bits5bits5bitsR-Type指令oprsrtimmediate0162126316bits16bits5bits5bitsI-Type指令optargetaddress026316bits26bitsJ-Type指令操作碼的不同編碼定義不同的含義,操作碼相同時,再由功能碼定義不同的含義!指令按字地址對齊,所以每條指令的地址都是4的倍數(shù)(最后兩位為0)。立即尋址寄存器尋址:R-type基址尋址:I-typePC相對尋址偽直接尋址(pseudodirectaddressing)注意:字長32位26位形式地址左移2位(字對準(zhǔn)),與PC的高4位拼接ByteHalfwordWordRegistersMemoryMemoryWordMemoryWordRegisterRegister1.

Immediate

addressing2.

Register

addressing3.

Base

addressing4.

PC-relative

addressing5.

Pseudodirect

addressingoprsrtoprsrtoprsrtopoprsrtAddressAddressAddressrd.

.

.functImmediatePCPC++

MIPS尋址模式MIPSAddressingModes(尋址方式)immedoprsrtregisterBase或index+MemoryimmedoprsrtImmediateimmedoprsrtPC+4PC-relative+MemoryI-format:oprsrtrdregisterRegisterfuncR-format:smt655565J-format:opaddr.MemoryPseudodirectB/HW/WByte/HalfWord/Word2.6MIPS指令系統(tǒng)結(jié)構(gòu)MIPS指令可以分為四大類load和storeALU操作分支與跳轉(zhuǎn)浮點操作符號的意義x←ny:從y傳送n位到xx,y←z:把z傳送到x和y2.6.5MIPS的操作2.6MIPS指令系統(tǒng)結(jié)構(gòu)下標(biāo):表示字段中具體的位;對于指令和數(shù)據(jù),按從最高位到最低位(即從左到右)的順序依次進(jìn)行編號,最高位為第0位,次高位為第1位,依此類推。下標(biāo)可以是一個數(shù)字,也可以是一個范圍。例如:Regs[R4]0:寄存器R4的符號位

Regs[R4]56-63:R4的最低字節(jié)Mem:表示主存;按字節(jié)尋址,可以傳輸任意個字節(jié)。上標(biāo):用于表示對字段進(jìn)行復(fù)制的次數(shù)。例如:0

32:一個32位長的全0字段2.6MIPS指令系統(tǒng)結(jié)構(gòu)符號##:用于兩個字段的拼接,并且可以出現(xiàn)在數(shù)據(jù)傳送的任何一邊。舉例:R8、R10:64位的寄存器,則Regs[R8]32-63←32

(Mem[Regs[R6]]0)24

##Mem[Regs[R6]]表示的意義是:以R6的內(nèi)容作為地址訪問內(nèi)存,得到的字節(jié)按符號位擴(kuò)展為32位后存入R8的低32位,R8的高32位(即Regs[R8]0-31)不變。

load和store指令指令舉例指令名稱含義LDR2,20(R3)裝入雙字Regs[R2]←64Mem[20+Regs[R3]]LWR2,40(R3)裝入字Regs[R2]←64(Mem[40+Regs[R3]]0)32##Mem[40+Regs[R3]]LBR2,30(R3)裝入字節(jié)Regs[R2]←64(Mem[30+Regs[R3]]0)56##Mem[30+Regs[R3]]LBUR2,40(R3)裝入無符號字節(jié)Regs[R2]←64056##Mem[40+Regs[R3]]LHR2,30(R3)裝入半字Regs[R2]←64(Mem[30+Regs[R3]]0)48##Mem[30+Regs[R3]]##Mem[31+Regs[R3]]L.SF2,60(R4)裝入半字Regs[F2]←64Mem[60+Regs[R4]]##032L.DF2,40(R3)裝入雙精度浮點數(shù)Regs[F2]←64Mem[40+Regs[R3]]SDR4,300(R5)保存雙字Mem[300+Regs[R5]]←64Regs[R4]SWR4,300(R5)保存字Mem[300+Regs[R5]]←32Regs[R4]S.SF2,40(R2)保存單精度浮點數(shù)Mem[40+Regs[R2]]←32Regs[F2]0··31

SHR5,502(R4)保存半字

Mem[502+Regs[R4]]←16Regs[R5]48··.63

ALU指令寄存器-寄存器型(RR型)指令或立即數(shù)型算術(shù)和邏輯操作:加、減、與、或、異或和移位等指令舉例指令名稱含義DADDU R1,R2,R3無符號加Regs[R1]←Regs[R2]+Regs[R3]DADDIU R4,R5,#6加無符號立即數(shù)Regs[R4]←Regs[R5]+6LUI R1,#4把立即數(shù)裝入到一個字的高16位Regs[R1]←032##4##016DSLL R1,R2,#5邏輯左移Regs[R1]←Regs[R2]<<5DSLTR1,R2,R3置小于If(Regs[R2]<Regs[R3])Regs[R1]←1elseRegs[R1]←02.6MIPS指令系統(tǒng)結(jié)構(gòu)R0的值永遠(yuǎn)是0,它可以用來合成一些常用的操作。例如:DADDIUR1,R0,#100

給寄存器R1裝入常數(shù)100DADDR1,R0,R2

把寄存器R2中的數(shù)據(jù)傳送到寄存器R12.6MIPS指令系統(tǒng)結(jié)構(gòu)由一組跳轉(zhuǎn)和一組分支指令來實現(xiàn)控制流的改變典型的MIPS控制指令2.6.6MIPS的控制指令指令舉例指令名稱含義Jname跳轉(zhuǎn)PC36··63←name<<2JALname跳轉(zhuǎn)并鏈接Regs[R31]←PC+4;PC36··63←name<<2;((PC+4)-227)≤name<((PC+4)+227)JALRR3寄存器跳轉(zhuǎn)并鏈接Regs[R31]←PC+4;PC←Regs[R3]JRR5寄存器跳轉(zhuǎn)PC←Regs[R5]BEQZR4,name等于零時分支if(Regs[R4]==0)PC←name;((PC+4)-217)≤name<((PC+4)+217)BNER3,R4,name不相等時分支if(Regs[R3]!=Regs[R4])PC←name((PC+4)-217)≤name<((PC+4)+217)MOVZR1,R2,R3等于零時移動if(Regs[R3]==0)Regs[R1]←Regs[R2]2.6MIPS指令系統(tǒng)結(jié)構(gòu)跳轉(zhuǎn)指令根據(jù)跳轉(zhuǎn)指令確定目標(biāo)地址的方式不同以及跳轉(zhuǎn)時是否鏈接,可以把跳轉(zhuǎn)指令分成4種。確定目標(biāo)地址的方式把指令中的26位偏移量左移2位(因為指令字長都是4個字節(jié))后,替換程序計數(shù)器的低28位;間接跳轉(zhuǎn):由指令中指定的一個寄存器來給出轉(zhuǎn)移目標(biāo)地址。跳轉(zhuǎn)的兩種類型簡單跳轉(zhuǎn):把目標(biāo)地址送入程序計數(shù)器。跳轉(zhuǎn)并鏈接:把目標(biāo)地址送入程序計數(shù)器,把返回地址(即順序下一條指令的地址)放入寄存器R31。2.6MIPS指令系統(tǒng)結(jié)構(gòu)分支指令(條件轉(zhuǎn)移)分支條件由指令確定例如:測試某個寄存器的值是否為零提供一組比較指令,用于比較兩個寄存器的值。例如:“置小于”指令有的分支指令可以直接判斷寄存器內(nèi)容是否為負(fù),或者比較兩個寄存器是否相等。分支的目標(biāo)地址由16位帶符號偏移量左移兩位后和PC相加的結(jié)果來決定一條浮點條件分支指令:通過測試浮點狀態(tài)寄存器來決定是否進(jìn)行分支。2.6MIPS指令系統(tǒng)結(jié)構(gòu)由操作碼指出操作數(shù)是單精度(SP)或雙精度(DP)后綴S:表示操作數(shù)是單精度浮點數(shù)后綴D:表示是雙精度浮點數(shù)浮點操作包括加、減、乘、除,分別有單精度和雙精度指令。浮點數(shù)比較指令根據(jù)比較結(jié)果設(shè)置浮點狀態(tài)寄存器中的某一位,以便于后面的分支指令BC1T(若真則分支)或BC1F(若假則分支)測試該位,以決定是否進(jìn)行分支。2.6.7MIPS的浮點操作LoongsonisaMIPS-compatiblefamilyofmicroprocessorsdesignedbytheChineseAcademyofSciences.TheinternalmicroarchitectureofLoongsonmicroprocessorswasdesignedindependentlybytheChinese,andearlyimplementationsofthefamilylackedfourinstructionspatentedbyMIPSTechnologies.InJune2009,ICTlicencedtheMIPS32andMIPS64architecturesdirectlyfromMIPSTechnologies.--fromwikipediaMeaninglessIndicator

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論