版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第5章 指令系統(tǒng) 本章學(xué)習(xí)導(dǎo)讀:(1)指令的格式、尋址方式和功能分類(lèi)。(2)RISC與CISC指令以及適于多媒體應(yīng)用的MMX指令。(3)典型計(jì)算機(jī)的指令系統(tǒng)。 計(jì)算機(jī)的指令有微指令、機(jī)器指令和宏指令之分。 微指令是微程序級(jí)的命令,屬于硬件; 宏指令是由若干機(jī)器指令組成,屬于軟件; 機(jī)器指令介于二者之間,因而是硬件和軟件的界面。 一臺(tái)計(jì)算機(jī)能執(zhí)行的機(jī)器指令全體稱(chēng)為該機(jī)的指令系統(tǒng)。 指令系統(tǒng)是軟件編程的出發(fā)點(diǎn)和硬件設(shè)計(jì)的依據(jù),它衡量機(jī)器硬件的功能,反映硬件對(duì)軟件支持的程度。5.1 指令格式 5.1.1 指令的格式 指令一般的格式如下: 按指令包含的地址的個(gè)數(shù)可分: 1、三地址指令 執(zhí)行(D1)OP
2、(D2) D3 執(zhí)行(D1)OP(D2) D2 2、二地址指令3單地址指令 執(zhí)行(D)OP (A) A 4、零地址指令 空操作、停機(jī)等不需要地址的指令5.1.2 指令長(zhǎng)度 指令長(zhǎng)度選取原則: 1. 指令長(zhǎng)度應(yīng)為存儲(chǔ)器基本字長(zhǎng)的整數(shù)倍2. 指令字長(zhǎng)應(yīng)盡量短 指令短,可減少所需存儲(chǔ)量和加快運(yùn)行速度,但不能為了使指令短而影響指令系統(tǒng)的完備性和規(guī)整性。5. 2 尋址方式 指令如何指定操作數(shù)或操作數(shù)地址稱(chēng)為尋址方式。 確定指令系統(tǒng)的尋址方式時(shí),須考慮以下幾點(diǎn): 希望指令內(nèi)所含地址盡可能短; 希望能訪問(wèn)盡可能大的存儲(chǔ)空間; 尋址方法盡可能簡(jiǎn)單; 在不改變指令的情況下,僅改變地址的實(shí)際值,從而能方便地訪問(wèn)數(shù)
3、組、串、表格等較復(fù)雜數(shù)據(jù)。 常用的尋址方式1. 立即尋址 指令直接給出操作數(shù)本身,稱(chēng)立即數(shù)尋址方式。 2. 直接尋址 指令直接給出操作數(shù)地址 3. 間接尋址 指令給出存放操作數(shù)地址的存儲(chǔ)單元地址。 4. 寄存器(直接)尋址 操作數(shù)在指令指定的CPU的某個(gè)寄存器中。 寄存器尋址有以下優(yōu)點(diǎn): CPU寄存器數(shù)量遠(yuǎn)小于內(nèi)存單元,所以寄存器號(hào)比內(nèi)存地址短,因而寄存器尋址方式指令短; 操作數(shù)已在CPU中,不用訪存,指令執(zhí)行速度快。5寄存器間接尋址 操作數(shù)地址在指令指定的CPU某個(gè)寄存器中。 8086指令 MOV AX,BX 6寄存器變址 尋址指令指定一個(gè)CPU寄存器(稱(chēng)為變址寄存器)和一個(gè)形式地址,操作數(shù)
4、地址是二者之和。 8086指令MOV AL,SI+1000H 7相對(duì)尋址 相對(duì)尋址是把程序計(jì)數(shù)器PC的內(nèi)容,加上由指令給出的形式地址而形成操作數(shù)地址。8基址尋址 把由指令中給出的地址(或稱(chēng)位移量)與CPU 中的某個(gè)基址寄存器相加而得到實(shí)際的操作數(shù)地址。 變址尋址主要解決程序內(nèi)部的循環(huán)問(wèn)題,基址尋址則要求基址寄存器的內(nèi)容能提供整個(gè)主存范圍的尋址能力;在多道程序運(yùn)行環(huán)境下,實(shí)現(xiàn)程序的再定位。 9隱含尋址方式 指令沒(méi)有明顯地給出操作數(shù)地址,而在操作碼中隱含著操作數(shù)地址。如操作數(shù)隱含在累加器,堆棧內(nèi)。 10其它尋址方式 有的計(jì)算機(jī)指令系統(tǒng)中還有更復(fù)雜的尋址方式,如基址變址尋址、位尋址、塊尋址、串尋址等
5、等。 在使用機(jī)器時(shí),不僅要了解該機(jī)總體上有哪些尋址方式,還應(yīng)了解各指令具體有哪些尋址方式。5. 3 指令類(lèi)型 設(shè)計(jì)一臺(tái)計(jì)算機(jī)的指令系統(tǒng)的功能時(shí),須考慮的幾個(gè)原則: 完備性或完整性: 指令系統(tǒng)的功能應(yīng)盡量完備,但較復(fù)雜的功能可以通過(guò)程序?qū)崿F(xiàn)。 兼容性: 高檔機(jī)的指令系統(tǒng)兼容以前的低檔機(jī)的指令系統(tǒng),給軟件資源重復(fù)利用帶來(lái)方便。 均勻性: 數(shù)據(jù)處理指令能對(duì)多種類(lèi)型的數(shù)據(jù)進(jìn)行處理,包括三種整數(shù)(字節(jié)、字、雙字)和兩種浮點(diǎn)數(shù)(單精度和雙精度浮點(diǎn)數(shù))。 可擴(kuò)充性: 操作碼字段要保留一定的空間,以便需要時(shí)進(jìn)行功能擴(kuò)充。1指令按功能分類(lèi):算術(shù)和邏輯運(yùn)算指令 有加(ADD)、減(SUB)、比較(CMP)、乘(M
6、UL)、除(DIV)、與(AND)、或(OR)、取反(NOT)、 變補(bǔ)(NEG)、異或(XOR)、加1(INC)、減1(DEC) 等。 帶進(jìn)位的加(ADC )和帶借位的減(SBB )指令;十進(jìn)制數(shù)的運(yùn)算指令等。(2) 移位指令和循環(huán)指令 算術(shù)移位、邏輯移位、環(huán)移、半字交換等。 算術(shù)移位: 算術(shù)左移:操作數(shù)的各位依次向左移一位,最低位補(bǔ)零;原操作數(shù)的最高位移入C 標(biāo)志位。 算術(shù)右移:操作數(shù)的各位依次向右移一位,最高位(符號(hào)位)不變;原操作數(shù)的最低位移入C 標(biāo)志位。 邏輯移位: 邏輯左移:操作同算術(shù)左移,大多數(shù)機(jī)器一般不再專(zhuān)門(mén)設(shè)置此指令。 邏輯右移:操作數(shù)的各位依次向右移一位,最高位補(bǔ)零。原操作數(shù)
7、的最低位移入C標(biāo)志位。 環(huán)移: 小環(huán)移 小循環(huán)左移,最高位移入C標(biāo)志,同時(shí)移入最低位。 小循環(huán)右移,最低位移入C標(biāo)志,同時(shí)移入最高位。2) 大環(huán)移 大循環(huán)左移,最高位移入C標(biāo)志,C標(biāo)志移入最低位。 大循環(huán)右移,最低位移入C標(biāo)志,C標(biāo)志移入最高位。 半字交換(3) 傳送類(lèi)指令 有:傳送(MOV)(源操作數(shù)目標(biāo)操作數(shù))、取數(shù)(LDA)(數(shù)由內(nèi)存CPU寄存器)、存數(shù)(STA)(數(shù)由CPU寄存器內(nèi)存)、交換(XCHG)(源操作數(shù)和目標(biāo)操作數(shù)交換)等。(4) 串指令: 對(duì)字符串進(jìn)行操作的指令。如有串傳送、比較、檢索、傳送轉(zhuǎn)換等指令。(5) 順序控制指令: 用來(lái)控制程序執(zhí)行的順序。有條件轉(zhuǎn)移、無(wú)條件轉(zhuǎn)移(
8、JMP)、跳步(SKIP)、轉(zhuǎn)子(CALL)、返主(RET)等指令。 (7) 輸入、輸出指令: 用于完成CPU與外部設(shè)備交換數(shù)據(jù)或傳送控制命令及狀態(tài)信息。(6) CPU控制指令: 有停機(jī)、開(kāi)中斷、關(guān)中斷以及改變執(zhí)行特權(quán)、進(jìn)入特殊處理程序等指令。大多數(shù)只能用于操作系統(tǒng)等系統(tǒng)軟件。2. 按操作數(shù)個(gè)數(shù)分有:(1) 雙操作數(shù)指令:如:ADD、SUB、AND等(2) 單操作數(shù)指令:如:NEG、NOT、INC、DEC等(3) 無(wú)操作數(shù)指令:如:空操作(NOP)、停機(jī),開(kāi)中斷、關(guān)中斷等。3. 按操作數(shù)尋址方式分有: R-R型:兩個(gè)操作數(shù)都在CPU的寄存器中。 R-S型:兩個(gè)操作數(shù)中一個(gè)在CPU寄存器中,另一
9、個(gè)在內(nèi)存中。 (3) S-S型:兩個(gè)操作數(shù)都在內(nèi)存中 。5. 4 堆棧和堆棧存取方式 堆棧是一種特定的數(shù)據(jù)結(jié)構(gòu),其特點(diǎn)是后進(jìn)先出(LIFO)或先進(jìn)后出(FILO)。 1. 用移位寄存器實(shí)現(xiàn)堆棧 用若干移位寄存器構(gòu)成,又叫棧頂固定方式堆棧。 2. 內(nèi)存中開(kāi)辟堆棧區(qū) 這種堆棧,存儲(chǔ)器單元固定,而棧頂位置動(dòng)態(tài)變化。在CPU中專(zhuān)門(mén)設(shè)置堆棧指針SP,指示棧頂位置,存取只能在棧頂進(jìn)行。1)自底向上生成堆棧: 建棧時(shí)堆棧指針SP指向棧底下面一個(gè)單元(棧底是堆棧中地址最大的單元); 入棧操作(PUSH)步驟:i)SP-1SP ii)存入數(shù)據(jù)(SP) 出棧操作(POP)步驟: i)(SP)內(nèi)容讀出 ii) SP
10、+1SP2)自頂向下生成堆棧: 這種堆棧建棧時(shí)堆棧指針SP指向棧底上面一個(gè)單元(棧底是堆棧中地址最小的單元), 入棧操作(PUSH)步驟: i) SP+1SP ii)存入數(shù)據(jù)(SP) 出棧操作(POP)步驟: i)(SP)內(nèi)容讀出 ii) SP-1SP 指針變化方向不同。5. 5 指令系統(tǒng)舉例 5.5.1 IBM 370系列機(jī)指令格式 RRE、S、SSE型指令的操作碼為16位,其余指令的操作碼均為8位。 操作碼的第0位和第1位組成四種不同的編碼 00表示RR型指令,01表示RX型指令,10表示RRE型、RS型、S型及SI型指令,11表示SS型和SSE型指令 RR和RRE型指令都是寄存器-寄存器
11、型指令 RX和RS型指令都是寄存器-存儲(chǔ)器型指令,第一個(gè)操作數(shù)和結(jié)果放在R1中,另一個(gè)操作數(shù)在主存中。 采用變址尋址方式,有效地址=(X2)+(B2)+D2,B2為基址寄存器,D2為位移量,x為變址寄存器號(hào)。 RS型是三地址指令:R1存放結(jié)果,R2放一個(gè)源操作數(shù),另一個(gè)源操作數(shù)在主存中; 有效地址=(B2)+D2。 SI型是立即數(shù)指令 S型是單操作數(shù)指令 SS和SSE型指令是可變字長(zhǎng)指令,用于字符串的運(yùn)算和處理,L為串之長(zhǎng)度。 SSE指令與SS指令之差別是 SS指令中的L字段(8-15位)擴(kuò)展成操作碼。5.5.2 PDP-11指令格式 PDP-11是一個(gè)具有8個(gè)寄存器(R0-R7)、16位字長(zhǎng)
12、的小型計(jì)算機(jī)。其中,R0-R5為通用寄存器,R7是程序計(jì)數(shù)器PC,R6是棧指針SP。存儲(chǔ)器按字節(jié)編址。 雙操作數(shù)指令:操作碼4位,每個(gè)地址碼6位,地址碼由3位寄存器號(hào)和3位尋址方式字段構(gòu)成。 單操作數(shù)指令:操作碼10位,地址碼6位。 轉(zhuǎn)移指令:轉(zhuǎn)移地址(相對(duì)轉(zhuǎn)移)由8位位移量指出; 條件碼操作指令:低5位為條件標(biāo)志。例1 某計(jì)算機(jī)字長(zhǎng)16bit,主存容量64K。指令系統(tǒng)共有58條指令,有直接、間接、相對(duì)和變址四種尋址方式,指令為單字長(zhǎng)單地址指令。請(qǐng)?jiān)O(shè)計(jì)該指令系統(tǒng)的指令格式。 解: 單地址指令格式為OPMD 計(jì)算機(jī)字長(zhǎng)為16bit,指令為單字長(zhǎng),所以指令字長(zhǎng)為16bit;因26=6458,所以操
13、作碼為6bit。16-6-2=8,剩余8位作形式地址。OPMD6 2 8 設(shè)計(jì)指令格式為00 直接尋址 E=D(0255)01 間接尋址 E=(D) (216=64K) 變址尋址 E=RX+D (RX 變址寄存器)11 相對(duì)尋址 E=PC+D(PC 程序計(jì)數(shù)器) 一條指令包含下列信息: 操作碼,操作數(shù)的地址,操作結(jié)果的存放地址,下一條指令的地址(順序、轉(zhuǎn)移和調(diào)子程序)。例2 某存儲(chǔ)器堆棧,棧底地址 Bottom=3000H,棧中已壓入兩個(gè)數(shù)據(jù)a和b,SP為堆棧指針。(1)畫(huà)出此時(shí)堆棧示意圖。(2)現(xiàn)將數(shù)據(jù) c,d 和 e 按順序壓入堆棧,且用累加器AC 進(jìn)行數(shù)據(jù)交換,寫(xiě)出數(shù)據(jù)入棧步驟,畫(huà)出數(shù)據(jù)
14、入棧后的堆棧情況。(3)寫(xiě)出數(shù)據(jù) e 出棧的操作步驟。解:(1)堆棧情況如下圖所示(2)數(shù)據(jù)入棧操作AC c;SP SP-1;(SP) ACAC d;SP SP-1;(SP) ACAC e;SP SP-1;(SP) AC(3)數(shù)據(jù) e 的出棧操作AC (SP)SP SP+15.5.3Pentium指令系統(tǒng) 指令格式 Pentium采用可變長(zhǎng)指令格式,最短的指令只有一個(gè)字節(jié),最長(zhǎng)的指令可有十幾個(gè)字節(jié)。 指令組成: 前綴:位于指令操作碼前,各類(lèi)前綴的字節(jié)數(shù)如下: 前綴不是每條指令必須有的。如有的話,各種前綴也都是可選的。 指令:指令各部分的長(zhǎng)度和含義如下: 操作碼: 指定指令的操作,還指明數(shù)據(jù)是字
15、節(jié)還是全字長(zhǎng);指明REG字段指定的寄存器是源還是目標(biāo) 。 尋址方式字節(jié): 由MOD和R/M聯(lián)合指定8種寄存器尋址和24種變址尋址方式,reg/OP指定某個(gè)寄存器為操作數(shù)或作為操作碼的擴(kuò)展用。 SIB: SS指定比例系數(shù)(變址尋址方式時(shí)用);Index指定變址寄存器;Base指定基址寄存器。2. 尋址方式 (1) Pentium物理地址的形成 Pentium的邏輯地址包括段和偏移量,段號(hào)經(jīng)過(guò)段表直接得到該段的首地址,和有效地址相加形成一維的線性地址。(2) Pentium的尋址方式 5.5.4 Power PC指令系統(tǒng) PowerPC為RISC計(jì)算機(jī),其指令格式和尋址方式要比一般CISC機(jī)簡(jiǎn)單、
16、規(guī)整。 1指令格式 Power PC采用單一的32位指令長(zhǎng)度,格式規(guī)整;所有指令的最高6位都是操作碼,有的指令將其它一些位(X0)作為操作碼擴(kuò)展。 轉(zhuǎn)移指令 鏈接指示(L),表示是否將緊接著該指令的指令地址送入鏈接寄存器(返回地址)。 A標(biāo)志位,指明地址是絕對(duì)地址還是相對(duì)于PC的地址。 CR 位字段指明轉(zhuǎn)移條件要對(duì)條件寄存器(標(biāo)志寄存器)中哪一位進(jìn)行測(cè)試。 選項(xiàng)字段(5位)指定如下幾個(gè)轉(zhuǎn)移方法: 總是轉(zhuǎn)移。 如果計(jì)數(shù)0,且測(cè)試的條件為真則轉(zhuǎn)移。 如果計(jì)數(shù)0,且測(cè)試的條件為假則轉(zhuǎn)移。 如果計(jì)數(shù)0,且測(cè)試的條件為真則轉(zhuǎn)移。 如果計(jì)數(shù)0,且測(cè)試的條件為假則轉(zhuǎn)移。 如果計(jì)數(shù)0,轉(zhuǎn)移。 如果測(cè)試的條件為
17、真,則轉(zhuǎn)移。 如果測(cè)試的條件為假,則轉(zhuǎn)移。 取數(shù)/存數(shù)指令 條件寄存器指令 R標(biāo)志位,用來(lái)表示是否將運(yùn)算結(jié)果的有關(guān)標(biāo)志寫(xiě)入到條件寄存器中去,這在條件轉(zhuǎn)移預(yù)測(cè)時(shí)很有用。 2. 尋址方式 (1) 取數(shù)/存數(shù)指令的尋址方式 間接尋址 有效地址EA=(BR)+D,BR為基址寄存器; D為16位(有正負(fù))的位移量。 間接變址尋址 有效地址EA=(BR)+(IR),IR為變址寄存器,任一通用寄存器也均可作為變址寄存器。 (2) 轉(zhuǎn)移指令的尋址方式 絕對(duì)地址: 無(wú)條件轉(zhuǎn)移和條件轉(zhuǎn)移:指令分別給出24位和16位地址,均擴(kuò)展為32位后形成轉(zhuǎn)移地址。 擴(kuò)展的方法:最低端補(bǔ)兩個(gè)零,高端進(jìn)行符號(hào)擴(kuò)展。 相對(duì)尋址: 無(wú)
18、條件轉(zhuǎn)移,指令給出24位地址,將它按前述方法擴(kuò)展后和PC相加即為下條指令地址; 條件轉(zhuǎn)移,指令給出14位地址,按前述方法擴(kuò)展后和PC相加作為下條指令地址。3. 算術(shù)指令的尋址方式 整數(shù)算術(shù)指令采用寄存器尋址或立即尋址,立即數(shù)是16位有符號(hào)數(shù)。浮點(diǎn)算術(shù)指令只可采用寄存器尋址。 間接尋址: 下條指令的有效地址存放于鏈接寄存器或計(jì)數(shù)寄存器中。若采用計(jì)數(shù)寄存器,此時(shí)計(jì)數(shù)寄存器不能再作計(jì)數(shù)器用。5. 6 CISC與RISC指令 1背景 計(jì)算機(jī)的硬件成本不斷下降,軟件成本不斷上升; 指令系統(tǒng)增加了越來(lái)越多功能強(qiáng)大的復(fù)雜命令,以便使機(jī)器指令的功能接近高級(jí)語(yǔ)言語(yǔ)句的功能; 目前許多計(jì)算機(jī)的指令系統(tǒng)可包含幾百條
19、指令,十多種尋址方式,這對(duì)簡(jiǎn)化匯編語(yǔ)言設(shè)計(jì),提高高級(jí)語(yǔ)言的執(zhí)行效率是有利的。 “復(fù)雜指令集計(jì)算機(jī)”,簡(jiǎn)稱(chēng)CISC(Complex Instruction Set Computer)的提出。 指令系統(tǒng)越來(lái)越復(fù)雜的出發(fā)點(diǎn): 使目標(biāo)程序得到優(yōu)化:把原來(lái)要用一段程序才能完成的功能,只用一條指令來(lái)實(shí)現(xiàn)。 給高級(jí)語(yǔ)言提供更好的支持:改進(jìn)指令系統(tǒng),設(shè)置一些在語(yǔ)義上接近高級(jí)語(yǔ)言語(yǔ)句的指令,就可以減輕編譯的負(fù)擔(dān),提高編譯效率。 提供對(duì)操作系統(tǒng)的支持:操作系統(tǒng)日益發(fā)展,其功能也日趨復(fù)雜,這就要求指令系統(tǒng)提供越來(lái)越復(fù)雜的功能。 龐大的指令系統(tǒng)中,只有算術(shù)邏輯運(yùn)算、數(shù)據(jù)傳送、轉(zhuǎn)移、子程序調(diào)用等幾十條基本指令才是常使用
20、的,在程序中出現(xiàn)的概率占到80%以上; 復(fù)雜的指令系統(tǒng)帶來(lái)的問(wèn)題 計(jì)算機(jī)的結(jié)構(gòu)也越來(lái)越復(fù)雜,不僅增加了計(jì)算機(jī)的研制周期和成本,而且難以保證其正確性,有時(shí)還可能降低系統(tǒng)的性能。 需要大量硬件支持的復(fù)雜指令的利用率卻很低,造成了硬件資源的大量浪費(fèi)。 各種高級(jí)語(yǔ)言的語(yǔ)義之間有很大差別。不可能設(shè)計(jì)出一種能對(duì)所有高級(jí)語(yǔ)言都能提供很好支持的指令系統(tǒng)。 精簡(jiǎn)指令集計(jì)算機(jī)RISC(Reduced Instruction Set Computer)的提出。 指令系統(tǒng)越復(fù)雜,包含的指令越多,編譯時(shí)生成目標(biāo)程序的方法也越多,對(duì)最終優(yōu)化編譯造成困難。2精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)特點(diǎn) 通過(guò)簡(jiǎn)化指令使計(jì)算機(jī)的結(jié)構(gòu)更加簡(jiǎn)單合理,從
21、而提高機(jī)器的性能。指令數(shù)目較少,一般都選用使用頻度最高的一些簡(jiǎn)單指令;指令長(zhǎng)度固定,指令格式種類(lèi)少,尋址方式種類(lèi)少;大多數(shù)指令可在一個(gè)機(jī)器周期內(nèi)完成;通用寄存器數(shù)量多,只有存數(shù)/取數(shù)指令訪問(wèn)存儲(chǔ)器,而其余指令均在寄存器之間進(jìn)行操作。 采用RISC技術(shù) 指令系統(tǒng)可以采用速度較快的硬連線邏輯來(lái)實(shí)現(xiàn),且更適合于采用指令流水技術(shù),可使指令的執(zhí)行速度進(jìn)一步提高。 指令數(shù)量少,固然使編譯工作量加大,但由于指令系統(tǒng)中的指令都是精選的,編譯時(shí)間少,反過(guò)來(lái)對(duì)編譯程序的優(yōu)化又是有利的。 CISC和RISC技術(shù)都在發(fā)展,兩者都各有自己的優(yōu)點(diǎn)和缺點(diǎn)。但是RISC技術(shù)作為一種新的設(shè)計(jì)思想,無(wú)疑對(duì)計(jì)算機(jī)的發(fā)展產(chǎn)生重大影響
22、。3CISC與RISC之爭(zhēng)論 70年代中期,IBM公司、斯坦福大學(xué)、加州大學(xué)伯克利分校等機(jī)構(gòu)分別先后開(kāi)始對(duì)CISC技術(shù)進(jìn)行研究,其成果分別用于IBM、SUN、MIPS等公司的產(chǎn)品中; 八十年代中期,RISC技術(shù)蓬勃發(fā)展,先后出現(xiàn)了PowerPC、MIPSR4400、MC88000、Super Spare、Intel0860等高性能RISC芯片以及相應(yīng)的計(jì)算機(jī); RISC也隨著速度、芯片密度的不斷提高,使RISC系統(tǒng)日趨復(fù)雜; CISC機(jī)采用了部分RISC先進(jìn)技術(shù)(強(qiáng)調(diào)指令流水線、分級(jí)Cache 和多設(shè)通用寄存器),其性能更加提高。5.7 MMX技術(shù) MMX(Microprocessor Med
23、ia Extension)是Intel公司為提高PC機(jī)處理多媒體和通信能力而推出的新一代處理器技術(shù),增加8個(gè)64位寄存器和57條新指令來(lái)實(shí)現(xiàn)。 MMX的由來(lái)與特點(diǎn) 多媒體應(yīng)用中的圖形、圖像、視頻、音頻的操作中存在大量共同特征的操作: 短整數(shù)類(lèi)型的并行操作(如8位圖形象素和16位音頻信號(hào)); 頻繁的乘法累加(如FIR濾波,矩陣運(yùn)算); 短數(shù)據(jù)的高度循環(huán)運(yùn)算(如快速傅里葉變換FFT、離散余弦變換DCT); 計(jì)算密集型算法(如三維圖形、視頻壓縮); 高度并行操作(如圖像處理)。 MMX技術(shù)與以前的Intel CPU(簡(jiǎn)稱(chēng)IA-Intel Architecture)結(jié)構(gòu)相比,增加的功能。 引進(jìn)了新的數(shù)
24、據(jù)類(lèi)型和通用寄存器 MMX技術(shù)的主要數(shù)據(jù)類(lèi)型為定點(diǎn)緊縮(Packed)整數(shù),它定義了4種新的64位數(shù)據(jù)類(lèi)型。(2) 采用SIMD(Single Instruction Multi Data技術(shù)單條指令同時(shí)并行地處理多個(gè)數(shù)據(jù)元素,提高運(yùn)算速度。例如,一條指令可以完成圖形/圖像中8個(gè)象素(每象素8位)的并行操作。(3) 飽和(Situration)運(yùn)算 環(huán)繞運(yùn)算或稱(chēng)非飽和運(yùn)算,上溢或下溢的結(jié)果被截取,返回低有效位值,F(xiàn)3H+1DH=10H。 飽和運(yùn)算:上溢與下溢結(jié)果被截取至各類(lèi)數(shù)據(jù)值域的最大值或最小值。如,F(xiàn)3H+1DH=FFH 。表5.3 MMX飽和運(yùn)算范圍 a亮值為F3H,b點(diǎn)亮度值為1DH,
25、采用非飽和運(yùn)算模式,其線性插值的結(jié)果為10H/2=08H。該結(jié)果的亮度值比b點(diǎn)還低。 引入飽和運(yùn)算后,a與b占亮度插值應(yīng)為: (4) 兼容性 MMX技術(shù)與現(xiàn)有的IA(Intel Architecture)處理器和OS保持向下兼容,IA MMX狀態(tài)建立在IA浮點(diǎn)狀態(tài)之上,無(wú)需增加新的狀態(tài)。 2. MMX指令系統(tǒng) 早期MMX結(jié)構(gòu)中引入了57條新的指令,P4 MMX指令增為144條,SIMD得到了強(qiáng)化,MMX寄存器也擴(kuò)充為128位。 57條指令分成7大類(lèi):算術(shù)運(yùn)算指令、邏輯運(yùn)算指令、比較指令、轉(zhuǎn)換指令、移位指令、數(shù)據(jù)傳送指令、置空MMX狀態(tài)指令。(1) 指令句法數(shù)據(jù)類(lèi)型:緊縮字節(jié)、緊縮字、緊縮雙字、64位字;有符號(hào)數(shù)與無(wú)符號(hào)數(shù);環(huán)繞和飽和運(yùn)算。一個(gè)時(shí)鐘周期內(nèi)可處理完16字節(jié)的數(shù)據(jù)。句法: 詞頭:P(Packed)表示緊縮型指令 指令: ADD(加)、CMP(比較)、XOR(異或) 詞尾: -US 表示無(wú)符號(hào)飽和運(yùn)算-S 表示有符號(hào)飽和運(yùn)算-B、W、D、Q分別表示數(shù)據(jù)類(lèi)型為字節(jié)、字、雙字、4字例如 PADDUSW 表示緊縮無(wú)符號(hào)字飽和相加指令。 (2) 指令類(lèi)型這里僅簡(jiǎn)單介紹一下7類(lèi)指令的特點(diǎn),不去一一詳細(xì)介紹每一條指令的功能。1) 算術(shù)運(yùn)算類(lèi)指令有緊縮加(ADD)、減(SUB)、乘法(MUL)、乘加(
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 24851-2024建筑材料行業(yè)能源計(jì)量器具配備和管理要求
- 2025版互聯(lián)網(wǎng)平臺(tái)開(kāi)發(fā)合同中知識(shí)產(chǎn)權(quán)許可與保密條款規(guī)定3篇
- 2025版xxx知識(shí)產(chǎn)權(quán)轉(zhuǎn)讓合同補(bǔ)充協(xié)議3篇
- 幼兒園放學(xué)接送須知
- 污水處理廠防水防腐施工合同
- 學(xué)?;S池設(shè)施安裝合同
- 超市實(shí)習(xí)生招聘協(xié)議書(shū)
- 房地產(chǎn)開(kāi)發(fā)招投標(biāo)資格預(yù)審政策
- 2025年籃球場(chǎng)體育器材專(zhuān)業(yè)維護(hù)與升級(jí)施工合同3篇
- 2025版機(jī)械設(shè)備購(gòu)銷(xiāo)居間服務(wù)合同范本正規(guī)范本3篇
- 2025年心內(nèi)科工作計(jì)劃
- 2024-2030年中國(guó)金華火腿腌制項(xiàng)目可行性研究報(bào)告
- 2024-2025學(xué)年人教版七年級(jí)數(shù)學(xué)上冊(cè)期末模擬測(cè)試卷(含簡(jiǎn)單答案)
- 2024-2030年中國(guó)家用小家電項(xiàng)目可行性研究報(bào)告
- 《隧道工程監(jiān)控量測(cè)》課件
- 監(jiān)理對(duì)進(jìn)度控制的目標(biāo)及方法措施
- 2024年內(nèi)科醫(yī)生年終工作總結(jié)參考(2篇)
- 環(huán)保項(xiàng)目荒山租賃協(xié)議模板
- xx單位政務(wù)云商用密碼應(yīng)用方案V2.0
- 2024年度校園體育設(shè)施維修保養(yǎng)合同
- 機(jī)電一體化項(xiàng)目職業(yè)技能大賽試題(SX-815Q)
評(píng)論
0/150
提交評(píng)論