組成原理課程4_第1頁(yè)
組成原理課程4_第2頁(yè)
組成原理課程4_第3頁(yè)
組成原理課程4_第4頁(yè)
組成原理課程4_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1第四章第四章 指令系統(tǒng)指令系統(tǒng)4.1 指令系統(tǒng)的發(fā)展與性能要求4.2 指令格式4.3 操作數(shù)類(lèi)型4.4 指令和數(shù)據(jù)的尋址方式4.5 典型指令4.6 ARM匯編語(yǔ)言返回24.1 指令系統(tǒng)的發(fā)展與性能要求指令系統(tǒng)的發(fā)展與性能要求4.1.1 指令系統(tǒng)的發(fā)展4.1.2 對(duì)指令系統(tǒng)性能的要求4.1.3 低級(jí)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系34.1.1 指令系統(tǒng)的發(fā)展指令系統(tǒng)的發(fā)展指令系統(tǒng)基本概念l指令:就是要計(jì)算機(jī)執(zhí)行某種操作的命令。從計(jì)算機(jī)組成的層次結(jié)構(gòu)來(lái)說(shuō),計(jì)算機(jī)的指令有微指令、機(jī)器指令和宏指令之分。微指令是微程序級(jí)的命令,它屬于硬件;l宏指令:由若干條機(jī)器指令組成的軟件指令,它屬于軟件;l機(jī)器指令:介于微指

2、令與宏指令之間,通常簡(jiǎn)稱(chēng)為指令,每一條指令可完成一個(gè)獨(dú)立的算術(shù)運(yùn)算或邏輯運(yùn)算操作。l本章所討論的指令,是機(jī)器指令。本章所討論的指令,是機(jī)器指令。l一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合,稱(chēng)為這臺(tái)計(jì)算機(jī)的指令系統(tǒng)。l指令系統(tǒng)是表征一臺(tái)計(jì)算機(jī)性能的重要因素,它的格式與功能不僅直接影響到機(jī)器的硬件結(jié)構(gòu),而且也直接影響到系統(tǒng)軟件,影響到機(jī)器的適用范圍44.1.1 指令系統(tǒng)的發(fā)展指令系統(tǒng)的發(fā)展發(fā)展情況l復(fù)雜指令系統(tǒng)計(jì)算機(jī),簡(jiǎn)稱(chēng)CISC。但是如此龐大的指令系統(tǒng)不但使計(jì)算機(jī)的研制周期變長(zhǎng),難以保證正確性,不易調(diào)試維護(hù),而且由于采用了大量使用頻率很低的復(fù)雜指令而造成硬件資源浪費(fèi)。l精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī):簡(jiǎn)稱(chēng)RISC,人

3、們又提出了便于VLSI技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)。54.1.2 對(duì)指令系統(tǒng)性能的要求對(duì)指令系統(tǒng)性能的要求l完備性:完備性:完備性是指用匯編語(yǔ)言編寫(xiě)各種程序時(shí),指令系統(tǒng)直接提供的指令足夠使用,而不必用軟件來(lái)實(shí)現(xiàn)。完備性要求指令系統(tǒng)豐富、功能齊全、使用方便。一臺(tái)計(jì)算機(jī)中最基本、必不可少的指令是不多的。許多指令可用最基本的指令編程來(lái)實(shí)現(xiàn)。例如,乘除運(yùn)算指令、浮點(diǎn)運(yùn)算指令可直接用硬件來(lái)實(shí)現(xiàn),也可用基本指令編寫(xiě)的程序來(lái)實(shí)現(xiàn)。采用硬件指令的目的是提高程序執(zhí)行速度,便于用戶(hù)編寫(xiě)程序。l有效性:有效性:有效性是指利用該指令系統(tǒng)所編寫(xiě)的程序能夠高效率地運(yùn)行。高效率主要表現(xiàn)在程序占據(jù)存儲(chǔ)空間小、執(zhí)行速度快。一般

4、來(lái)說(shuō),一個(gè)功能更強(qiáng)、更完善的指令系統(tǒng),必定有更好的有效性。l規(guī)整性:規(guī)整性:規(guī)整性包括指令系統(tǒng)的對(duì)稱(chēng)性、勻齊性、指令格式和數(shù)據(jù)格式的一致性。對(duì)稱(chēng)性是指:在指令系統(tǒng)中所有的寄存器和存儲(chǔ)器單元都可同等對(duì)待,所有的指令都可使用各種尋址方式;勻齊性是指:一種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類(lèi)型,如算術(shù)運(yùn)算指令可支持字節(jié)、字、雙字整數(shù)的運(yùn)算,十進(jìn)制數(shù)運(yùn)算和單、雙精度浮點(diǎn)數(shù)運(yùn)算等;指令格式和數(shù)據(jù)格式的一致性是指:指令長(zhǎng)度和數(shù)據(jù)長(zhǎng)度有一定的關(guān)系,以方便處理和存取。例如指令長(zhǎng)度和數(shù)據(jù)長(zhǎng)度通常是字節(jié)長(zhǎng)度的整數(shù)倍。l兼容性:兼容性:系列機(jī)各機(jī)種之間具有相同的基本結(jié)構(gòu)和共同的基本指令集,因而指令系統(tǒng)是兼容的,即各機(jī)種

5、上基本軟件可以通用。但由于不同機(jī)種推出的時(shí)間不同,在結(jié)構(gòu)和性能上有差異,做到所有軟件都完全兼容是不可能的,只能做到“向上兼容”,即低檔機(jī)上運(yùn)行的軟件可以在高檔機(jī)上運(yùn)行。64.1.3 低級(jí)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系低級(jí)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系低級(jí)語(yǔ)言與高級(jí)語(yǔ)言關(guān)系比較內(nèi)容高級(jí)語(yǔ)言低級(jí)語(yǔ)言1對(duì)程序員的訓(xùn)練要求(1)通用算法(2)語(yǔ)言規(guī)則(3)硬件知識(shí)有較少不要有較多要2對(duì)機(jī)器獨(dú)立的程度獨(dú)立不獨(dú)立3編制程序的難易程度易難4編制程序所需時(shí)間短較長(zhǎng)5程序執(zhí)行時(shí)間較長(zhǎng)短6編譯過(guò)程中對(duì)計(jì)算機(jī)資源的要求多少74.2 指令格式指令格式4.2.1 操作碼4.2.2 地址碼4.2.3 指令字長(zhǎng)度4.2.4 指令助記符4.2.

6、5 指令格式舉例l指令格式包括兩個(gè)方面:操作碼字段操作碼字段地址碼字段地址碼字段84.2.1 操作碼操作碼l設(shè)計(jì)計(jì)算機(jī)時(shí),對(duì)指令系統(tǒng)的每一條指令都要規(guī)定一個(gè)操作碼。指令的操作碼OP表示該指令應(yīng)進(jìn)行什么性質(zhì)的操作,如進(jìn)行加法、減法、乘法、除法、取數(shù)、存數(shù)等等。不同的指令用操作碼字段的不同編碼來(lái)表示,每一種編碼代表一種指令。l組成操作碼字段的位數(shù)一般取決于計(jì)算機(jī)指令系統(tǒng)的規(guī)模。較大的指令系統(tǒng)就需要更多的位數(shù)來(lái)表示每條特定的指令。l等長(zhǎng)(指令規(guī)整,譯碼簡(jiǎn)單)l例如IBM 370機(jī),該機(jī)字長(zhǎng)32位,16個(gè)通用寄存器R0R15,共有183條指令;指令的長(zhǎng)度可以分為16位、32位和48位等幾種,所有指令的

7、操作碼都是8位固定長(zhǎng)度。l固定長(zhǎng)度編碼的主要缺點(diǎn)是:信息的冗余極大,使程序的總長(zhǎng)度增加。94.2.2 地址碼地址碼l根據(jù)一條指令中有幾個(gè)操作數(shù)地址,可將該指令稱(chēng)為幾操作數(shù)指令或幾地址指令。三地址指令二地址指令單地址指令零地址指令104.2.2 地址碼地址碼l三地址指令l指令格式如下:l操作碼op 第一操作數(shù)A1 第二操作數(shù)A2 結(jié)果A3 l功能描述:l(A1) op(A2)A3l(PC) +1PCl這種格式雖然省去了一個(gè)地址,但指令長(zhǎng)度仍比較長(zhǎng),所以只在字長(zhǎng)較長(zhǎng)的大、中型機(jī)中使用,而小型、微型機(jī)中很少使用。114.2.2 地址碼地址碼l二地址指令l其格式如下:l操作碼op第一操作數(shù)A1第二操作

8、數(shù)A2l 功能描述:l(A1) op(A2)A1l(PC)+1PCl二地址指令在計(jì)算機(jī)中得到了廣泛的應(yīng)用,但是在使用時(shí)有一點(diǎn)必須注意:指令執(zhí)行之后,A1中原存的內(nèi)容已經(jīng)被新的運(yùn)算結(jié)果替換了。124.2.2 地址碼地址碼l二地址地址根據(jù)操作數(shù)的物理位置分為:lSS 存儲(chǔ)器-存儲(chǔ)器類(lèi)型lRS 寄存器-存儲(chǔ)器類(lèi)型lRR 寄存器-寄存器類(lèi)型慢134.2.2 地址碼地址碼l一地址指令l指令格式為:l 操作碼op 第一操作數(shù)A1l功能描述:l(AC) op(A1) A1l(PC)+1PCl單操作數(shù)運(yùn)算指令,如“+1”、“-1”、“求反”l指令中給出一個(gè)源操作數(shù)的地址144.2.2 地址碼地址碼l零地址指令

9、 l其格式為:l 操作碼opl“停機(jī)”、“空操作”、“清除”等控制類(lèi)指令。op154.2.3 指令字長(zhǎng)度指令字長(zhǎng)度l概念l指令字長(zhǎng)度(一個(gè)指令字包含二進(jìn)制代碼的位數(shù))l機(jī)器字長(zhǎng):計(jì)算機(jī)能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù)。l單字長(zhǎng)指令l半字長(zhǎng)指令l雙字長(zhǎng)指令l多字長(zhǎng)指令多字長(zhǎng)指令的優(yōu)缺點(diǎn)l優(yōu)點(diǎn)提供足夠的地址位來(lái)解決訪問(wèn)內(nèi)存任何單元的尋址問(wèn)題 ;l缺點(diǎn)必須兩次或多次訪問(wèn)內(nèi)存以取出一整條指令,降低了CPU的運(yùn)算速度,又占用了更多的存儲(chǔ)空間。l指令系統(tǒng)中指令采用等長(zhǎng)指令等長(zhǎng)指令的優(yōu)點(diǎn):各種指令字長(zhǎng)度是相等的,指令字結(jié)構(gòu)簡(jiǎn)單,且指令字長(zhǎng)度是不變的 ;l采用非等長(zhǎng)指令非等長(zhǎng)指令的的優(yōu)點(diǎn):各種指令字長(zhǎng)度隨指令功能

10、而異,結(jié)構(gòu)靈活,能充分利用指令長(zhǎng)度,但指令的控制較復(fù)雜 。164.2.4 指令助記符指令助記符l由于硬件只能識(shí)別1和0,所以采用二進(jìn)制操作碼是必要的,但是我們用二進(jìn)制來(lái)書(shū)寫(xiě)程序卻非常麻煩。l為了便于書(shū)寫(xiě)和閱讀程序,每條指令通常用3個(gè)或4個(gè)英文縮寫(xiě)字母來(lái)表示。這種縮寫(xiě)碼叫做指令助記符用34個(gè)英文字母來(lái)表示操作碼,一般為英文縮寫(xiě)不同的計(jì)算機(jī)系統(tǒng),規(guī)定不一樣必須用匯編語(yǔ)言翻譯成二進(jìn)制代碼174.2.5 指令格式舉例指令格式舉例l8位微型計(jì)算機(jī)的指令格式l如8088,字長(zhǎng)8位,指令結(jié)構(gòu)可變l包括單字長(zhǎng)指令、雙字長(zhǎng)指令和三字長(zhǎng)指令l操作碼長(zhǎng)度固定184.2.5 指令格式舉例指令格式舉例lMIPS R40

11、00指令格式lRISC計(jì)算機(jī)系統(tǒng),32位字長(zhǎng),32個(gè)通用寄存器。R型(寄存器)指令:6位 5位 5位 5位 5位 6位 op rs rt rd shamt functI型(立即數(shù))指令:6位 5位 5位 16位 op rs rt 常數(shù)或地址194.2.5 指令格式舉例指令格式舉例:ARM指令格式指令格式204.2.5 指令格式舉例指令格式舉例 Pentium指令格式l指令長(zhǎng)度可變,最短1個(gè)字節(jié),最長(zhǎng)12個(gè)字節(jié),典型的CISC指令系統(tǒng)指令前綴段取代操作數(shù)長(zhǎng)度取代地址長(zhǎng)度取代操作碼ModReg或操作碼R/MSIB位移量立即數(shù)214.2.5 指令格式舉例指令格式舉例例3 MIPS R4000匯編語(yǔ)言

12、中,寄存器$s0$s7對(duì)應(yīng)寄存器號(hào)為十進(jìn)制1623,寄存器$t0$t7對(duì)應(yīng)的寄存器號(hào)為815。請(qǐng)將下表4條匯編語(yǔ)言翻譯成對(duì)應(yīng)的機(jī)器語(yǔ)言十進(jìn)制數(shù)表示。224.3 操作數(shù)類(lèi)型操作數(shù)類(lèi)型4.3.1 一般的數(shù)據(jù)類(lèi)型4.3.2 Pentium數(shù)據(jù)類(lèi)型4.3.3 Power PC數(shù)據(jù)類(lèi)型234.3.1 一般的數(shù)據(jù)類(lèi)型一般的數(shù)據(jù)類(lèi)型l地址數(shù)據(jù)地址數(shù)據(jù):地址實(shí)際上也是一種形式的數(shù)據(jù)。l數(shù)值數(shù)據(jù)數(shù)值數(shù)據(jù):計(jì)算機(jī)中普遍使用的三種類(lèi)型的數(shù)值數(shù)據(jù)。l字符數(shù)據(jù)字符數(shù)據(jù):文本數(shù)據(jù)或字符串,目前廣泛使用ASCII碼。l邏輯數(shù)據(jù)邏輯數(shù)據(jù):一個(gè)單元中有幾位二進(jìn)制bit項(xiàng)組成,每個(gè)bit的值可以是1或0。當(dāng)數(shù)據(jù)以這種方式看待時(shí),

13、稱(chēng)為邏輯性數(shù)據(jù)。244.3.2 Pentium數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 常規(guī)整數(shù)序數(shù)未壓縮的BCD壓縮的BCD近指針位串字符串浮點(diǎn)數(shù)254.3.3 Power PC數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 無(wú)符號(hào)字節(jié)無(wú)符號(hào)半字有符號(hào)半字無(wú)符號(hào)字有符號(hào)字無(wú)符號(hào)雙字字節(jié)串浮點(diǎn)數(shù)264.4 指令和數(shù)據(jù)的尋址方式指令和數(shù)據(jù)的尋址方式4.4.1 指令的尋址方式4.4.2 操作數(shù)基本尋址方式4.4.3 尋址方式舉例274.4.1 指令的尋址方式指令的尋址方式l順序方式lPCl跳躍方式CAI284.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式l形成操作數(shù)有效地址的方法,稱(chēng)為尋址方式。l例如,一種單地址指令的結(jié)構(gòu)如下:操作碼OP、變址X、間

14、址I、形式地址A294.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式CAI304.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式1、隱含尋址l指令中隱含著操作數(shù)的地址l如某些運(yùn)算,隱含了累加器AC作為源和目的寄存器l如8086匯編中的STC指令,設(shè)置標(biāo)志寄存器的C為1 314.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式2、立即尋址l立即尋址是一種特殊的尋址方式,指令中在操作碼字段后面的部分不是通常意義上的操作數(shù)地址,而是操作數(shù)本身,也就是說(shuō)數(shù)據(jù)就包含在指令中,只要取出指令,就取出了可以立即使用的操作數(shù),因此,這樣的操作數(shù)被稱(chēng)為立即數(shù)。l指令格式:操作碼OP 操作數(shù)A 324.4.2 操作數(shù)基本

15、尋址方式操作數(shù)基本尋址方式3、直接尋址l 指令中地址碼字段給出的地址A就是操作數(shù)的有效地址EA(Effective Address),即EAA。334.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式4、間接尋址l 間接尋址意味著指令的地址碼部分給出的地址A不是操作數(shù)的地址,而是存放操作數(shù)地址的主存單元的地址,簡(jiǎn)稱(chēng)操作數(shù)地址的地址。操作數(shù)的有效地址的計(jì)算公式為:EA(A)344.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式5、寄存器尋址l在指令的地址碼部分給出CPU內(nèi)某一通用寄存器的編號(hào),指令的操作數(shù)存放在相應(yīng)的寄存器中,即EA=Ri 優(yōu)點(diǎn):(1)由于寄存器在CPU的內(nèi)部,指令在執(zhí)行時(shí)從寄存器中取

16、操作數(shù)比訪問(wèn)主存要快得多;(2)由于寄存器的數(shù)量較少,因此寄存器編號(hào)所占位數(shù)也較少,從而可以有效減少指令的地址碼字段的長(zhǎng)度。354.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式6、寄存器間接尋址 l為了克服間接尋址中多次訪存的缺點(diǎn),可采用寄存器間接尋址,即將操作數(shù)放在主存儲(chǔ)器中,而操作數(shù)的地址放在某一通用寄存器中,然后在指令的地址碼部分給出該通用寄存器的編號(hào),這時(shí)有EA=(Ri)l這種尋址方式的指令較短,并且在取指后只需一次訪存便可得到操作數(shù),因此指令執(zhí)行速度較前述的間接尋址方式要快,也是目前在計(jì)算機(jī)中使用較為廣泛的一種尋址方式。364.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式7、偏移尋址

17、、偏移尋址l相對(duì)尋址:相對(duì)尋址:由程序計(jì)數(shù)器由程序計(jì)數(shù)器PC提供基準(zhǔn)地址,而指提供基準(zhǔn)地址,而指令的地址碼部分給出相對(duì)的位移量令的地址碼部分給出相對(duì)的位移量D,兩者相加后,兩者相加后作為操作數(shù)的有效地址,即:作為操作數(shù)的有效地址,即:EA(PC)D。374.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式l7、偏移尋址:基址尋址、偏移尋址:基址尋址l基址寄存器的位數(shù)可以設(shè)置得很長(zhǎng),從而可以在較大的存儲(chǔ)空間中尋址。384.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式l7、偏移尋址:變址尋址、偏移尋址:變址尋址l變址尋址就是將指令的地址碼部分給出的基準(zhǔn)地址A與CPU內(nèi)某特定的變址寄存器Rx中的內(nèi)容相加

18、,以形成操作數(shù)的有效地址。394.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式8、段尋址方式、段尋址方式存儲(chǔ)空間劃分為多段存儲(chǔ)空間劃分為多段404.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式l分寄存器堆棧、存儲(chǔ)器堆棧以先進(jìn)后出原理存儲(chǔ)數(shù)據(jù)414.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式例例4.4:將:將ARM匯編語(yǔ)言翻譯成機(jī)器語(yǔ)言。已知匯編語(yǔ)言翻譯成機(jī)器語(yǔ)言。已知5條條ARM指令格指令格式譯碼如下表所示:式譯碼如下表所示:設(shè)設(shè)r3寄存器中保存數(shù)組寄存器中保存數(shù)組A的基值,的基值,h放在寄存器放在寄存器r2中。中。C語(yǔ)言程序語(yǔ)言程序語(yǔ)句語(yǔ)句 A30=h+A30 可編譯成如下可編譯成如下3條

19、匯編語(yǔ)句指令:條匯編語(yǔ)句指令:LDR r5 , r3, #120;寄存器寄存器r5中獲得中獲得A30ADD r5 , r2 , r5 ,;寄存器寄存器r5中獲得中獲得h+A30STR r5 , r3, #120;將將h+A30存入到存入到A30請(qǐng)問(wèn)這請(qǐng)問(wèn)這3條匯編語(yǔ)言指令的機(jī)器語(yǔ)言是什么?條匯編語(yǔ)言指令的機(jī)器語(yǔ)言是什么?424.4.2 操作數(shù)基本尋址方式操作數(shù)基本尋址方式解:首先利用十進(jìn)制數(shù)來(lái)表示機(jī)器語(yǔ)言指令,然后轉(zhuǎn)換成二進(jìn)制機(jī)器指令。解:首先利用十進(jìn)制數(shù)來(lái)表示機(jī)器語(yǔ)言指令,然后轉(zhuǎn)換成二進(jìn)制機(jī)器指令。從表從表4.3中我們可以確定中我們可以確定3條機(jī)器語(yǔ)言指令:條機(jī)器語(yǔ)言指令:LDR指令在第指令

20、在第3字段(字段(opcond)用操作碼)用操作碼24確定?;导拇嫫鞔_定。基值寄存器3指定在指定在第第4字段(字段(Rn),目的寄存器),目的寄存器5指定在第指定在第6字段(字段(Rd),選擇),選擇A30(120304)的)的offset字段放在最后一個(gè)字段(字段放在最后一個(gè)字段(offset12)。)。ADD指令在第指令在第4字段(字段(opcode)用操作碼)用操作碼4確定。確定。3個(gè)寄存器操作(個(gè)寄存器操作(2、5和和5)分別被指定在第)分別被指定在第6、7、8字段。字段。STR指令在第指令在第3字段用操作碼字段用操作碼25確定,其余部分與確定,其余部分與LDR指令相同。指令相同。4

21、34.4.3 尋址方式舉例尋址方式舉例Pentium的尋址方式的尋址方式CAI444.4.3 尋址方式舉例尋址方式舉例方式算法立即作數(shù)=A寄存器LA=R偏移量LA=(SR)+A基址LA=(SR)+(B)基址帶偏移量LA=(SR)+(B)+A比例變址帶偏移量LA=(SR)+(I)S+A基址帶變址和偏移量LA=(SR)+(B)+(I)+A基址帶比例變址和偏移量 LA=(SR)+(B)+(I)S+A相對(duì)LA=(PC)+APentium的尋址方式的尋址方式454.4.3 尋址方式舉例尋址方式舉例例4 一種二地址RS型指令的結(jié)構(gòu)如下:6位 4位 1位 2位 16位 OP 通用寄存器 I X 偏移量D其中

22、I為間接尋址標(biāo)志位,X為尋址模式字段,D為偏移量字段。通過(guò)I,X,D的組合,可構(gòu)成如下尋址方式:請(qǐng)寫(xiě)出6種尋址方式的名稱(chēng)。464.4.3 尋址方式舉例尋址方式舉例例5 將ARM匯編語(yǔ)言翻譯成機(jī)器語(yǔ)言。已知5條ARM指令格式譯碼如下表所示:設(shè)r3寄存器中保存數(shù)組A的基址,h放在寄存器r2中。C語(yǔ)言程序語(yǔ)句A30=h+A30 可編譯成如下3條匯編語(yǔ)言指令:LDR r5,r3,#120;寄存器r5中獲得A30ADD r5,r2,r5;寄存器r5中獲得h+A30STR r5,r3,#120;將h+A30存入到A30請(qǐng)問(wèn)這3條匯編語(yǔ)言指令的機(jī)器語(yǔ)言是什么?474.5 典型指令典型指令 4.5.1 指令的

23、分類(lèi)指令的分類(lèi)4.5.2 基本指令系統(tǒng)的操作基本指令系統(tǒng)的操作4.5.3 精簡(jiǎn)指令系統(tǒng)精簡(jiǎn)指令系統(tǒng)484.5.1 指令的分類(lèi)指令的分類(lèi)l數(shù)據(jù)傳送類(lèi)指令l一般傳送指令: MOV AX,BXl數(shù)據(jù)交換指令: XCHGl堆棧操作指令: PUSH,POPl運(yùn)算類(lèi)指令l算術(shù)運(yùn)算指令: 加、減、乘、除以及加1、減1、比較l邏輯運(yùn)算指令: l移位指令 l程序控制類(lèi)指令 l程序控制類(lèi)指令用于控制程序的執(zhí)行方向,并使程序具有測(cè)試、分析與判斷的能力。l 輸入和輸出指令、字符串處理指令、特權(quán)指令、其他指令494.5.2 基本指令系統(tǒng)的操作基本指令系統(tǒng)的操作l20%和80%規(guī)律:CISC中大約有20%的指令使用頻率高

24、,占據(jù)了80%的處理機(jī)時(shí)間,而有80%的不常用指令只占用處理機(jī)的20%時(shí)間。lVLSI技術(shù)發(fā)展引起的問(wèn)題lVLSI工藝要求規(guī)整性,而大量復(fù)雜指令控制邏輯極其不規(guī)整,給VLSI工藝造成了很大的困難。l現(xiàn)在用微程序?qū)崿F(xiàn)復(fù)雜指令與用簡(jiǎn)單指令組成的子程序相比,沒(méi)有多大的區(qū)別。因?yàn)楝F(xiàn)在控制存儲(chǔ)器和主存的速度差縮小。lCISC中,通過(guò)增強(qiáng)指令系統(tǒng)的功能,簡(jiǎn)化了軟件,增加了硬件的復(fù)雜程度。然而指令復(fù)雜了,指令的執(zhí)行時(shí)間必然加長(zhǎng),從而使整個(gè)系統(tǒng)的執(zhí)行時(shí)間反而增加,因而在計(jì)算機(jī)體系結(jié)構(gòu)設(shè)計(jì)中,軟硬件的功能分配必須恰當(dāng)504.5.3 精簡(jiǎn)指令系統(tǒng)精簡(jiǎn)指令系統(tǒng)l特點(diǎn)(采用流水線技術(shù))l簡(jiǎn)單而統(tǒng)一格式的指令譯碼;l大

25、部分指令可以單周期執(zhí)行l(wèi)只有LOAD/STORE可以訪問(wèn)存儲(chǔ)器l簡(jiǎn)單的尋址方式l采用延遲轉(zhuǎn)移技術(shù)l采用LOAD延遲技術(shù)l三地址指令格式l較多的寄存器l對(duì)稱(chēng)的指令格式返回514.6 ARM匯編語(yǔ)言 匯編語(yǔ)言是計(jì)算機(jī)機(jī)器語(yǔ)言(二進(jìn)制指令代碼)進(jìn)行符號(hào)化的一種表示方法,每一個(gè)基本匯編語(yǔ)句對(duì)應(yīng)一條機(jī)器指令。表4.11列出了嵌入式處理機(jī)ARM的匯編語(yǔ)言。其中操作數(shù)使用16個(gè)寄存器(r0 , r1r12 , sp , Ir , pc),230個(gè)存儲(chǔ)字(字節(jié)編址,連續(xù)的字的地址間相差4)。返回CAICAI表表4.11(上上)表表4.11(下下)524.6 ARM匯編語(yǔ)言 在進(jìn)行匯編語(yǔ)言程序設(shè)計(jì)時(shí),可直接使用英文單詞或其縮寫(xiě)表示指令,使用標(biāo)識(shí)表示數(shù)據(jù)或地址,從而有效地避免了記憶二進(jìn)制的指令代碼。不用由程序

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論