版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、器器地器器地址 寄存器(寄存器地址 輸入輸出端口(輸入輸出端口地址 數(shù)值(無符號、定點、浮點 邏輯型數(shù)、字 地址(操作數(shù)地址、指令地址操作數(shù)方 大端(big-endian)次序:最高有效字在地址最小位 小端(little-endian)次序:最低有效字在地址最小位例: Int a; /0 x12345678 地址 地 值大端次小端次6(2012(2012級東民)第五講:指令系統(tǒng)與MIPS2一二CISC與三MIPS 操作類型:應(yīng)該提供哪些(多少)操作用已經(jīng)足夠編寫任何計算程序,但不實用,程序太長。 操作對象:如何表示?可以表示大多數(shù)是雙值運算(如存在單值運算(如 指令格式:如何將這些內(nèi)容編碼成一
2、致的格式31.1 機器指令的要 操作碼(Operation Code):指明進行的何種操源操作數(shù)地址(Source Operand Reference):參加操作的操作數(shù) 目的操作數(shù)地址(Destination Operand Reference):保存操作結(jié)的地址下條指令的地址(t Instution Rfenc):指明下一條要運行的指令的位置,一般指令是按順序依次執(zhí)行的,所以絕大多數(shù)指令中并不顯式的指明下一條指令的地址,也就是說,指令格式中并不包含這部分信息。數(shù)指令需要顯示指明下一條指令的地址。41.1 1.1 51.2 指令的表 機器表示:二進1.2 指令的表 機器表示:二進制代碼形符號
3、化表示:助記符,如MOV 操作數(shù)地址的數(shù)三地址Des(Sur1)OP雙地址Des (Sur) OP 單地址:累加器作為默認操作數(shù)的雙操作數(shù)型,或單操作數(shù) 無地址:隱含操作數(shù)型,或無操作數(shù)指令類 數(shù)據(jù)傳輸指令:寄存器與器之間,寄存器之間傳遞數(shù)據(jù)算術(shù)邏輯運算指令:寄存器(或器)中整型數(shù)或邏輯型據(jù)的運算操作。 程序控制指令:控制程序執(zhí)行順序,條件轉(zhuǎn)移或跳轉(zhuǎn),子程調(diào)用和返回 浮點運算指令:處理浮點數(shù)的運 寄存器比器 寄存器便于編譯器 寄存器可以 減少器,提高速 提高代碼密度,寄存器地址比器地址9DesSur1Sur2DesSur 指令集系統(tǒng)結(jié)構(gòu) 機器語言編程者的視角,機結(jié)構(gòu)和行為能力的指令級抽Soft
4、ware layers Hardwarelayers fordesign7Circuit Digital Datapath & Instruction Set Architecture 指令集系統(tǒng)架構(gòu)(ISA) 大部分ISA Register-Memory式ISA(如多種指令可以內(nèi)存Load-Store式ISA(如只有裝載(LOAD)和(STORE)指令可以內(nèi)81.2 1.2 固定長度操作碼:操作碼長度(占二進制位數(shù))固定 可變長度操作碼:操作碼長度隨指令地址數(shù)目的不同而不同指令長 定長指令系統(tǒng),如MIPS指 變長指令系般為字節(jié)的整數(shù)倍,如80X86指1.3 形式地址與有效地 形式地址:指令中
5、直接給出的地址編碼有效地址:根據(jù)形式地址和尋址方式計算出來的操作數(shù)在內(nèi)存單元 尋址方式:根據(jù)形式地址計算到操作數(shù)的有效地址的方式(算法 立即尋 寄存器直接尋 寄存器間接尋 基址尋址/變址尋 相對尋址:基址尋址的特例,程序計數(shù)器PC作為基址寄存 堆棧尋目的 址源地目的地源地Imme.目的 址源地目的地源地Imme.1.3 1.3 如指令,指令中僅有一個主虛存地址的,且指令中僅有一二種尋址方式。/tr型機器指令屬于這種情況。 如指令,指令中有多個操作數(shù),且尋址方式各不相同,需要各自說明尋址方式。目的操作數(shù)尋址方源操作數(shù)尋址方1.3 OP Des SurA或Add(內(nèi)存地址 Mod SP:堆棧指針(
6、寄存器EA DataOperand (Rn):寄存器Rn的內(nèi)容(值 MemA:內(nèi)存地址為AImmeData XXH:16進制數(shù)1.3 1.3 操作數(shù)直接在指令代碼中給出源操作說 立即尋址只能作為雙操作數(shù)指令的源操Operand=Imme.例:MOV AX,1000H (80X86指令, addi$s1$s2100 (MIPS指令$s1 思立即尋址的操作數(shù)在什么地方,器 or 寄存器 立即數(shù)的地1.3 寄存器直接尋 操作數(shù)在寄存器中,指令地址字段給出寄存器的地址(編碼EA=Rn,Operand= 例:MOV BX, AX (80X86指令add $s1,$s2,$s3 (MIPS通用寄存器組1.
7、3 1.3 寄存器間接尋操作數(shù)在器中,指令地址字段中給出的寄存器的內(nèi)容是操作數(shù)存 例:MOV AX, BX (80X86指令, AX 器寄存器1.3 址寄存器的內(nèi)容與形式地址之和是操作數(shù)的內(nèi)存EA = (Rb)+A, Operand = 例:MOV AX, 1000HBX (80X86指令,AXMem(Bx)lw $s1,100($s2) (MIPS指令,$s1 Mem$s2+100)Mod 基址尋址的作用:較短的形式地址長度可以實現(xiàn)較大的空間的尋址操作數(shù)在器中,指令地址字段給出一變址寄存器和一形式地址EA =(Rx)+A, Operand = Rx (Rx) + (操作數(shù)Data的字節(jié)數(shù)例:
8、MOV AX1000HDI(80X86指令Mod EA = (PC)+A, Operand = 例:JNE A (80X86指令beq $s1$s2, 100MIPS指令1.3 1.3 堆棧的結(jié)構(gòu):一段內(nèi)存區(qū)域堆棧指針(SP):是一個特殊寄存器部件, 指向棧壓棧操作:PUSH Rn,假定寄存器Rn為16位寄存器 (SP) (Rn), SP (SP)-2壓棧后A-A-壓棧前堆1.3 出棧操作:POP Rn,假定寄存器Rn為16位寄存器 SP (SP) + 2, Rn (SP)出棧前出棧后堆1.3 1.3 方算立操作數(shù) 主要優(yōu)指令執(zhí)行主要缺器直EA 有效地址計地址范圍有寄存器直操作數(shù)指令執(zhí)行快,指
9、令地址范圍有寄存器間EA 地址額外 器相EA 堆EA 棧第五講:指令系統(tǒng)與MIPS匯指令系統(tǒng)概指令格尋址方二典型指令系統(tǒng)介8086/8088指令系MIPS指令系CISC與三MIPS匯編語2.18086/8088指令系器單元結(jié) 按字節(jié)單元 可2.18086/8088指令系器單元結(jié) 按字節(jié)單元 可以字節(jié)、字、雙字為單方式采高字低字字單器指令系統(tǒng): 指令系統(tǒng): 1971年1月,In 4004,第一枚4位微處理器1972年4月,In 8008,第一個8位微處理器。8008采用P溝道MOS電1973年8月, In 8080, 8位微處理器,以N溝道MOS電路取代了P溝1978年6月,IIIn 8086/
10、8088, 16位器問世,也標(biāo)志著x86架構(gòu)和 PC (1981年)的產(chǎn)生。MS1981年 1982年2月1985年10月位進入 位時代paq崛 80387Dell崛起。1993年3月,In lPPPentium586CPU問世,命名為8086/808880868088CPU1978年由In 推出,16 CISC(Complex Instruction Set Computer,復(fù)雜指令集計算機) 29000 速度可分為5MHz、8MHz、數(shù)據(jù)總線、外部數(shù)據(jù)總線均為16 地址總線為20位,可尋址1MB1981年,IBM推出首款選用8088CPU的個人電腦IBMPC8086/80888086/8
11、08880868088CPU結(jié)2.18086/8088指令系器及器地址結(jié) 主存容量為1M(220),可直接的主存物理地址為20位。超1M的空間通過其他方式 80868088機器字長16位,所有寄存器長度為16位,數(shù)據(jù)總線 主存采用分主存單元的地址構(gòu)成:段基址(16 bits) 段內(nèi)偏移(16 可執(zhí)行程序(.EXE)的結(jié)構(gòu):代碼段(Code Segment),數(shù)據(jù)段(Data Segment),堆棧段(Stack Segment),擴展數(shù)據(jù)段(可命令程序(.CO)的結(jié)構(gòu):代碼段,數(shù)據(jù)段和堆棧段必須同一個段。所以命令程序最大為64B空間。16位段基(左移4+20位物理地(16位段內(nèi)偏移(2.180
12、86/8088指令系通用寄存器:數(shù)據(jù)寄存器(Data 2.18086/8088指令系通用寄存器:數(shù)據(jù)寄存器(Data AX,BX,CX,DX(16位AH,AL,BH,BL,CH,CL,DH,DL(8位) AX:累加 BX:基址寄存 CX:計數(shù) DX:數(shù)據(jù)寄存888086/8088通用寄存器:指針寄存器(Pointer 堆棧指針:SP(16 位 基址指針:BP(16位),默認指向通用寄存器:變址寄存器(Index SI,DI:16一般情況下,二者使用上無差異,在串操作中,SI 對應(yīng)源操作數(shù),DI162.18086/8088指令系段寄存器(Segment 代碼段(Code Segment),數(shù)據(jù)段
13、(Data Segment),堆棧段(Stack Segment),擴展數(shù)據(jù)段(Extend data Segment)代碼段寄存器:CS(16 數(shù)據(jù)段寄存器:DS (16 堆棧段寄存器:SS (16 擴展段寄存器:ES (16 162.18086/8088指令系指令指針I(yè)P(InstructionIP(16 bits 指向代碼段中下一條要執(zhí)行的指令CS IP 形成下一次要執(zhí)行的指令的標(biāo)志寄存器FLAGS(Flags6個為狀態(tài)標(biāo)志位,記錄當(dāng)前CPU運行程序的各種狀進位標(biāo)志位CF(Carry 輔助進位標(biāo)志位AF(Auxitiary 奇偶標(biāo)志位PF(Parity 零值標(biāo)志位ZF(Zero 符號標(biāo)志
14、位SF(Sign 溢出標(biāo)志位OF(Overflow 3個為控制標(biāo)志位,用于控制微處理 單標(biāo)志位TF(Trace 中斷允許標(biāo)志位IF(Interrupt-enable 方向標(biāo)志位DF(Direction 2.18086/8088指令系 立即尋址如:MOV AL, 寄存器直接尋址, 如: MOV AX, 基址(變址)尋址,如: MOV AX, 串操作尋址如:MOVSB /隱含尋址DS (SI) ES I/O尋址如:OUT DX, AL /DX為MOV AX, 1000HBX (指令代碼等價MOVAXDS 器EA=DS MOV SI, 1000H /DS (SI) MOV DI, 3000H /ES
15、 (DI) MOV CX, 0100HREP/SI+ DI+ CX-CS 8086/80888086/80888086寄存 指令長度26個字節(jié)(前2個字節(jié)必須 Opcode:操作碼(6位 RR型或RS型,其中必有一個操作數(shù)在寄存器中(寄存器直接尋址 REG:確定一個操作數(shù)(寄存器直接尋址), MOD和R/M D:方向字段,表明REGd=1, REG確定目的操作數(shù),MOD+R/Md=0, REG確定源操作數(shù),MOD+R/M W:字字節(jié)字段,表明操作數(shù)是字節(jié)(8位)還是字(16位W=1,字(16位W=0,字節(jié)(8位6 1 1 2 一般雙操作數(shù)指令格式與編碼(續(xù)RE(位)個操作數(shù)。與字段配合使用。6
16、 1 1 2 2.12.18086/8088指令系一般雙操作數(shù)指令格式與編碼(續(xù) MOD(2位)和R/M(3位):確定另外一個操作數(shù)的尋址方式8086/8088MOV MOV的操作 d=1:目的操作數(shù)是寄存器直接尋 W=1:16 REG=000:表示 MOD=10, R/M=000:另一個操作數(shù) 指令前兩個字節(jié) 4字節(jié)指令編碼8086/80888086/8088 傳送指令:MOV,XCHG,LDS,LEA 算術(shù)運算指令:ADD,INC,SUB,CMP 邏輯運算指令:AND,OR,NOT,TEST 處理器控制指令:CLC,STC,CLI,STI,CLD,NOP 程序控制指令:CALL,RET,J
17、MP,JNE,INT,IRET 串指令:MOVSB,MOVSWI/O指令8086/8088 堆棧操作指 有符號數(shù)乘法指 移位指 數(shù)據(jù)傳送與填充指 堆棧操作指 取段寄存器指 有符號數(shù)乘法指 符號擴展指 移位指 位操作指 條件設(shè)置字節(jié)指 循環(huán)控制指 字符串操作指80486新增指令字節(jié)交交換并相加指比較并交換指Cache管理8字節(jié)比較交處理器特征識別讀時間標(biāo)記計數(shù)器指讀模型寄存器指寫模型寄存器指MMX(SIMD, 圖形/音頻SSE(圖形/語音8086(89)-Reg. 01for assembler(為匯編程序保留Reg. 01for assembler(為匯編程序保留v02values for r
18、esults(過程調(diào)用返回值a04t08s016t824more temporaries(其他臨時變量k026for kernel(為OS保留global pointer(全局指針 (return address過程調(diào)用返回地址第五講:指令系統(tǒng)與MIPS第五講:指令系統(tǒng)與MIPS二CISC與三MIPS2.2MIPSMIPS R系列CPURISC(Reduced InstructionsetComputer,精簡指令集計算機RISC)微處理器 stages,無互鎖流水級的微處理器),最早在80年代初由Stanford大學(xué)Patterson教授的1986年,推出R2000(32位1988年,推出R
19、3000(32位1991年,推出R4000(64位1994年,推出R8000 (64位 1996年,推出 1997年,推出通用指令體系MIPSI、MIPSII、MIPSIII、MIPSIV到 MIPSV,指令體系MIPS16、MIPS32到,發(fā)展已經(jīng)十分成熟。在設(shè)計理念上強調(diào)軟硬件協(xié)同提高性能,同時簡化硬件設(shè)計。2.2 2.2 MIPS 指令系MIPSR2000/R3000 寄存器結(jié)32位虛擬地址空3232bitGPRs, 3232 bit FPRs, HI,LO,2.2 MIPS 指令系MIPS 寄存器Registersarereferencedeitherbynumber$0$31,orb
20、yname2.2 2.2 MIPS 指令系MIPS指令格 MIPS只有3種指令格式,32位固定長度指R(Register)類型指令:兩個寄存器操作數(shù)計算,結(jié)果送寄存I(Immediate)類型指令:使用1個16位立即數(shù)作操作數(shù)J(Jump)類型指令:跳轉(zhuǎn)指令,26 最多3地址指令:add $t0$s1$s2 ( 對于Load/Store指令,單一尋址模式 簡單轉(zhuǎn)移條件(與0比較,或者比較兩個寄存器是否相等2.2 MIPS 指令系MIPS 指令格Op:6bits, Rs 5bits,TheregistersourceRt 5bits,ThesecondregistersourceRd 5bits
21、,TheregisterdestinationShamt 5bits,Shiftamount(shiftFunc 6bits,functioncode(anotherR類 2.2MIPS MIPS2.2MIPS 指令系統(tǒng) Load/Store(取數(shù)/)指 I2.2MIPS MIPS2.2MIPS 指令系統(tǒng) Load/Store(取數(shù)/)指 I類型指令,器與通用寄存器之間傳送數(shù) 支持唯一的器尋址方式 取數(shù)指令:LB(取字節(jié))、LBU(取不帶符號字節(jié))、LH(取半字)LHU(取不帶符號的半字)、LW(取字)、LWL、 指令:SB(存字節(jié))、SH(存半字)、SW(存字)、SWL、 mfhimflo等
22、 邏輯運算:and, andi, or, ori, xor, xori, nor2.2 MIPS 2.2 MIPS 指令系統(tǒng) 跳轉(zhuǎn)指令:J類型指令(26位絕對轉(zhuǎn)向地址)或R類型指令(32位的轉(zhuǎn)移指令:I類型指令,rlativ尋址方式,相對程序計數(shù)器的位位移量(立即數(shù))。跳轉(zhuǎn):J 、JAL、JR、轉(zhuǎn)移:BEQ(相等轉(zhuǎn)移)、BNE(不等轉(zhuǎn)移)、BLEZ(小于或等于0轉(zhuǎn)移)、BGTZ(大于0轉(zhuǎn)移)、BLTZ(小于0轉(zhuǎn)移)、BLTZAL、 R類型指 系統(tǒng)調(diào)用 斷點2.2 MIPS 指令系R-Type指令編碼示指令:add$t0$s1$s2 t0(S1 Op000000(表示R- = Shamt=000
23、00(表示沒有移位2.2 2.2 MIPS 指令系統(tǒng) add$1,$2,$3 $1 $2 + $3 sub$1,$2,$3$1 $2 $3 addimmediate addi$1,$2,100 $1 $2+multHi,Lo $2 divLo $2Lo Hi $2modHi move from Himfhi$1$1 Hi move from Lomflo$1 $1 Lo and$1,$2,$3$1 $2 & $3LogicalANDor$1 $2 | LogicalswStorelw$1,-$1Mem($2-Load$31 jumpandlinkjal1000 Go to 1000jumpregisterjr$31 Go to $31 set on less thanslt$1,$2,$3if ($2 $3) than $1 1else$1 2.2 MIPS 指令系統(tǒng) SWAP:MIPS第五講:指令系統(tǒng)與MIPS第五講:指令系統(tǒng)與MIPS二CISC與三MIPSCISC與 增強指令功能:CISC(Complex Instruction Set Computer),即復(fù)思路:把一些原來由實現(xiàn)的、常用的功能改用硬件指令來實 簡化指令功能:RISC( Reduc
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度工業(yè)垃圾處理合同:廢物回收與循環(huán)利用規(guī)定2篇
- 2025年無紡環(huán)保袋環(huán)保認證與市場推廣合作協(xié)議3篇
- 二零二五年房產(chǎn)代持稅務(wù)籌劃合同3篇
- 2025年銑刨料運輸、加工及土地整治工程合同3篇
- 2025版企業(yè)英語培訓(xùn)兼職外教協(xié)議書樣本3篇
- 2025年度鋁灰綜合利用技術(shù)合作合同4篇
- 物業(yè)管理服務(wù)2025年度維修基金合同3篇
- 二零二五版物流園區(qū)供氣服務(wù)合同正規(guī)范本3篇
- 2025年度智慧城市建設(shè)與運營管理合同3篇
- 二零二五年度科研機構(gòu)實驗室設(shè)備借用及知識產(chǎn)權(quán)保護合同3篇
- 我的家鄉(xiāng)瓊海
- (2025)專業(yè)技術(shù)人員繼續(xù)教育公需課題庫(附含答案)
- 《互聯(lián)網(wǎng)現(xiàn)狀和發(fā)展》課件
- 【MOOC】計算機組成原理-電子科技大學(xué) 中國大學(xué)慕課MOOC答案
- 2024年上海健康醫(yī)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案解析
- 2024年湖北省武漢市中考語文適應(yīng)性試卷
- 非新生兒破傷風(fēng)診療規(guī)范(2024年版)解讀
- EDIFIER漫步者S880使用說明書
- 皮膚惡性黑色素瘤-疾病研究白皮書
- 從心理學(xué)看現(xiàn)代家庭教育課件
- C語言程序設(shè)計PPT(第7版)高職完整全套教學(xué)課件
評論
0/150
提交評論