計(jì)算機(jī)組成原理第章指令系統(tǒng)軟.pptx_第1頁(yè)
計(jì)算機(jī)組成原理第章指令系統(tǒng)軟.pptx_第2頁(yè)
計(jì)算機(jī)組成原理第章指令系統(tǒng)軟.pptx_第3頁(yè)
計(jì)算機(jī)組成原理第章指令系統(tǒng)軟.pptx_第4頁(yè)
計(jì)算機(jī)組成原理第章指令系統(tǒng)軟.pptx_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第4章 指令系統(tǒng) 4.1 指令系統(tǒng)的發(fā)展與性能要求 4.2 指令格式 4.3 指令和數(shù)據(jù)的尋址方式 4.4 典型指令 4.1 指令系統(tǒng)的發(fā)展和性能要求 4.1.1 指令系統(tǒng)的發(fā)展 計(jì)算機(jī)的程序是由一系列的指令組成的,指令就是要計(jì)算機(jī)執(zhí)行某種操作的命令。從計(jì)算機(jī)組成的層次結(jié)構(gòu)來說,計(jì)算機(jī)的指令有微指令、機(jī)器指令和宏指令之分。微指令:微程序級(jí)的命令,它屬于硬件;宏指令:由若干條機(jī)器指令組成的軟件指令,它屬于軟件;機(jī)器指令(指令):介于微指令與宏指令之間,每條指令可完成一個(gè)獨(dú)立的算術(shù)運(yùn)算或邏輯運(yùn)算。 指令系統(tǒng):一臺(tái)計(jì)算機(jī)中所有機(jī)器指令的集合,它是表征一臺(tái)計(jì)算機(jī)性能的重要因素,其格式與功能不僅直接影響

2、到機(jī)器的硬件結(jié)構(gòu),也直接影響到系統(tǒng)軟件,影響到機(jī)器的適用范圍。 計(jì)算機(jī)指令系統(tǒng)的發(fā)展過程50年代:指令系統(tǒng)只有定點(diǎn)加減、邏輯運(yùn)算、數(shù)據(jù)傳送、轉(zhuǎn)移等十幾至幾十條指令。 60年代后期:增加了乘除運(yùn)算、浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算、字符串處理等指令,指令數(shù)目多達(dá)一二百條,尋址方式也趨多樣化。 60年代后期開始出現(xiàn)系列計(jì)算機(jī)(指基本指令系統(tǒng)相同、基本體系結(jié)構(gòu)相同的一系列計(jì)算機(jī))一個(gè)系列往往有多種型號(hào),它們?cè)诮Y(jié)構(gòu)和性能上有所差異。同一系列的各機(jī)種有共同的指令集而且新推出的機(jī)種指令系統(tǒng)一定包含所有舊機(jī)種的全部指令,舊機(jī)種上運(yùn)行的各種軟件可以不加任何修改便可在新機(jī)種上運(yùn)行,大大減少了軟件開發(fā)費(fèi)用。 70年代末期:大

3、多數(shù)計(jì)算機(jī)的指令系統(tǒng)多達(dá)幾百條。我們稱這些計(jì)算機(jī)為復(fù)雜指令系統(tǒng)計(jì)算機(jī)(CISC)。但是如此龐大的指令系統(tǒng)難以保證正確性,不易調(diào)試維護(hù),造成硬件資源浪費(fèi)。為此人們又提出了便于VLSI技術(shù)實(shí)現(xiàn)的精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)(RISC)。 4.1.2對(duì)指令系統(tǒng)性能的要求 指令系統(tǒng)的性能決定了計(jì)算機(jī)的基本功能,它的設(shè)計(jì)直接關(guān)系到計(jì)算機(jī)的硬件結(jié)構(gòu)和用戶的需要。一個(gè)完善的指令系統(tǒng)應(yīng)滿足如下四方面的要求:完備性 用匯編語(yǔ)言編寫各種程序時(shí),指令系統(tǒng)直接提供的指令足夠使用,而不必用軟件來實(shí)現(xiàn)。完備性要求指令系統(tǒng)豐富、功能齊全、使用方便。 有效性 利用該指令系統(tǒng)所編寫的程序能夠高效率的運(yùn)行。高效率主要表現(xiàn)在程序占據(jù)存儲(chǔ)空間

4、小、執(zhí)行速度快。一般來說,一個(gè)功能更強(qiáng)、更完善的指令系統(tǒng),必定有更好的有效性。規(guī)整性 規(guī)整性包括指令系統(tǒng)的對(duì)稱性、勻齊性、指令格式和數(shù)據(jù)格式的一致性。對(duì)稱性指在指令系統(tǒng)中所有的寄存器和存儲(chǔ)器單元都可同等對(duì)待,所有的指令都可使用各種尋址方式;勻齊性是指一種操作性質(zhì)的指令可以支持各種數(shù)據(jù)類型;指令格式和數(shù)據(jù)格式的一致性是指指令長(zhǎng)度和數(shù)據(jù)長(zhǎng)度有一定的關(guān)系,以方便處理和存取。兼容性 系列機(jī)各機(jī)種之間具有相同的基本結(jié)構(gòu)和共同的基本指令集,因而指令系統(tǒng)是兼容的,即各機(jī)種上基本軟件可以通用。但由于不同機(jī)種推出的時(shí)間不同,在結(jié)構(gòu)和性能上有差異,做到所有軟件都完全兼容是不可能的,只能做到“向上兼容”,即低檔機(jī)上

5、運(yùn)行的軟件可以在高檔機(jī)上運(yùn)行。 4.1.3低級(jí)語(yǔ)言與硬件結(jié)構(gòu)的關(guān)系 計(jì)算機(jī)語(yǔ)言具有高級(jí)語(yǔ)言和低級(jí)語(yǔ)言之分。高級(jí)語(yǔ)言如C,F(xiàn)ORTRAN等,其語(yǔ)句和用法與具體機(jī)器的指令系統(tǒng)無(wú)關(guān)。低級(jí)語(yǔ)言分機(jī)器語(yǔ)言(二進(jìn)制語(yǔ)言)和匯編語(yǔ)言(符號(hào)語(yǔ)言),這兩種語(yǔ)言都是面向機(jī)器的語(yǔ)言,和具體機(jī)器的指令系統(tǒng)密切相關(guān)。機(jī)器語(yǔ)言用指令代碼編寫程序,而符號(hào)語(yǔ)言用指令助記符來編寫程序。比 較 內(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í)間 短

6、較 長(zhǎng)5 程序執(zhí)行時(shí)間 較 長(zhǎng) 短6 編譯過程中對(duì)計(jì)算機(jī)資源的要求 多 少 計(jì)算機(jī)能夠直接識(shí)別和執(zhí)行的唯一語(yǔ)言是二進(jìn)制語(yǔ)言,但人們采用符號(hào)語(yǔ)言或高級(jí)語(yǔ)言編寫程序。為此,必須借助匯編程序或編譯程序,把符號(hào)語(yǔ)言或高級(jí)語(yǔ)言翻譯成二進(jìn)制碼組成的機(jī)器語(yǔ)言。匯編語(yǔ)言依賴于計(jì)算機(jī)的硬件結(jié)構(gòu)和指令系統(tǒng)。不同的機(jī)器有不同的指令,所以用匯編語(yǔ)言編寫的程序不能在其他類型的機(jī)器上運(yùn)行。高級(jí)語(yǔ)言與計(jì)算機(jī)的硬件結(jié)構(gòu)及指令系統(tǒng)無(wú)關(guān),在編寫程序方面比匯編語(yǔ)言優(yōu)越。但是高級(jí)語(yǔ)言程序“看不見”機(jī)器的硬件結(jié)構(gòu),不能用于編寫直接訪問機(jī)器硬件資源的系統(tǒng)軟件或設(shè)備控制軟件。為此,一些高級(jí)語(yǔ)言提供了與匯編語(yǔ)言之間的調(diào)用接口。用匯編語(yǔ)言編寫

7、的程序,可作為高級(jí)語(yǔ)言的一個(gè)外部過程或函數(shù),利用堆棧來傳遞參數(shù)或參數(shù)的地址。4.2 指令格式 4.2.1操作碼 指令字(簡(jiǎn)稱指令)即表示一條指令的機(jī)器字。指令格式則是指令字用二進(jìn)制代碼表示的結(jié)構(gòu)形式,由操作碼字段和地址碼字段組成。操作碼字段表征指令的操作特性與功能;地址碼字段通常指定參與操作的操作數(shù)的地址。 指令系統(tǒng)的每一條指令都有一個(gè)操作碼,它表示該指令應(yīng)進(jìn)行什么性質(zhì)的操作。不同的指令用操作碼字段的不同編碼來表示,每一種編碼代表一種指令。 組成操作碼字段的位數(shù)一般取決于計(jì)算機(jī)指令系統(tǒng)的規(guī)模。例如,一個(gè)指令系統(tǒng)只有8條指令,則有3位操作碼就夠;如果有32條指令,那么就需要5位操作碼。 對(duì)于一個(gè)

8、機(jī)器的指令系統(tǒng),在指令字中操作碼字段和地址碼字段長(zhǎng)度通常是固定的。 操作碼字段 地址碼字段4.2.2地址碼 根據(jù)一條指令中有幾個(gè)操作數(shù)地址,可將該指令稱為幾操作數(shù)指令或幾地址指令。一般的操作數(shù)有被操作數(shù)、操作數(shù)及操作結(jié)果這三種數(shù),因而就形成了三地址指令格式。在此基礎(chǔ)上,后來又發(fā)展成二地址格式、一地址格式和零地址格式。注意 (1)零地址指令的指令字中只有操作碼,而沒有地址碼。 (2)一地址指令常稱為單操作數(shù)指令。通常這種指令以運(yùn)算器中累加寄存器AC中的數(shù)據(jù)為被操作數(shù),指令字的地址碼字段所指明的數(shù)為操作數(shù),操作結(jié)果又放回累加寄存器AC中。(AC)OP(A)-ACOP表示操作性質(zhì);(AC)表示累加寄

9、存器AC中的數(shù);(A)表示內(nèi)存中地址為A的存儲(chǔ)單元中的數(shù)或運(yùn)算器中地址為A的通用寄存器中的數(shù); 表示把操作(運(yùn)算)結(jié)果傳送到指定的地方。 (3)二地址指令常稱為雙操作數(shù)指令,它的兩個(gè)地址碼字段分別指明參與操作的兩個(gè)數(shù)在內(nèi)存中或運(yùn)算器中通用寄存器的地址,A1作存放操作結(jié)果的地址。(A1)OP(A2)-A1 (4)三地址指令字中有三個(gè)操作數(shù)地址。(A1)OP(A2)-A3 A1為被操作數(shù)地址,也稱源操作數(shù)地址; A2為操作數(shù)地址,也稱終點(diǎn)操作數(shù)地址; A3為存放結(jié)果的地址。 同樣,A1,A2,A3可以是內(nèi)存中的單元地址,也可以是運(yùn)算器中通用寄存器的地址。二地址指令格式中,從操作數(shù)的物理位置來說,又

10、可歸結(jié)為三種類型。存儲(chǔ)器-存儲(chǔ)器(SS)型指令:操作時(shí)都是涉及內(nèi)存單元,參與操作的數(shù)都放在內(nèi)存里,從內(nèi)存某單元中取操作數(shù),操作結(jié)果存放至內(nèi)存另一單元中,因此機(jī)器執(zhí)行這種指令需要多次訪問內(nèi)存。寄存器-寄存器(RR)型指令:需要多個(gè)通用寄存器或個(gè)別專用寄存器,從寄存器中取操作數(shù),把操作結(jié)果放到另一寄存器。機(jī)器執(zhí)行寄存器-寄存器型指令的速度很快,因?yàn)閳?zhí)行這類指令,不需要訪問內(nèi)存。寄存器-存儲(chǔ)器(RS)型指令:執(zhí)行此類指令時(shí),既要訪問內(nèi)存單元,又要訪問寄存器。 4.2.3指令字長(zhǎng)度 指令字長(zhǎng)度:一個(gè)指令字中包含二進(jìn)制代碼的位數(shù)。機(jī)器字長(zhǎng):計(jì)算機(jī)能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù),它決定了計(jì)算機(jī)的運(yùn)算精度。其

11、中L為指令字長(zhǎng)度,N為機(jī)器字長(zhǎng)度使用多字長(zhǎng)指令,目的在于提供足夠的地址位來解決訪問內(nèi)存任何單元的尋址問題。其主要缺點(diǎn)是必須兩次或多次訪問內(nèi)存以取出一整條指令,降低了CPU的運(yùn)算速度,又占用了更多的存儲(chǔ)空間。等長(zhǎng)指令字結(jié)構(gòu):各種指令字長(zhǎng)度是相等的。這種指令字結(jié)構(gòu)簡(jiǎn)單,且指令字長(zhǎng)度是不變的。變長(zhǎng)指令字結(jié)構(gòu):各種指令字長(zhǎng)度隨指令功能而異。結(jié)構(gòu)靈活,能充分利用指令長(zhǎng)度,但指令的控制較復(fù)雜。 4.2.4指令助記符 由于硬件只能識(shí)別1和0,所以采用二進(jìn)制操作碼是必要的,但是我們用二進(jìn)制來書寫程序卻非常麻煩。為了便于書寫和閱讀程序,每條指令通常用3個(gè)或4個(gè)英文縮寫字母來表示。這種縮寫碼叫做指令助記符。 典

12、型 指 令 指令助記符 二進(jìn)制操作碼 加 法 ADD1 減 法 SUB10 傳 送 MOV11 跳 轉(zhuǎn) JMP100 轉(zhuǎn) 子 JSR101 存 儲(chǔ) STR110 讀 數(shù) LDA111 如上表所示,這里我們假定指令系統(tǒng)只有7條指令,所以操作碼只需3位二進(jìn)制。 由于指令助記符提示了每條指令的意義,因此比較容易記憶,書寫起來比較方便,閱讀程序容易理解。需要注意的是,在不同的計(jì)算機(jī)中,指令助記符的規(guī)定是不一樣的。因此,指令助記符還必須轉(zhuǎn)換成與它們相對(duì)應(yīng)的二進(jìn)制碼。這種轉(zhuǎn)換借助匯編程序可以自動(dòng)完成,匯編程序相當(dāng)于一個(gè)“翻譯”。4.2.5指令格式舉例 八位微型計(jì)算機(jī)的指令格式 8位微型機(jī)字長(zhǎng)只有8位,指令

13、結(jié)構(gòu)是一種可變字長(zhǎng)形式,包含單字長(zhǎng)、雙字長(zhǎng)、三字長(zhǎng)指令等多種。 內(nèi)存按字節(jié)編址,所以單字長(zhǎng)指令每執(zhí)行一條指令后,指令地址加。雙字長(zhǎng)指令或三字長(zhǎng)指令每執(zhí)行一條指令時(shí),指令地址要加2或加3,可見多字長(zhǎng)的指令格式不利于提高機(jī)器速度。 4.3 指令和數(shù)據(jù)的尋址方式4.3.1指令的尋址方式 操作數(shù)或指令在存儲(chǔ)器中的地址: 尋址方式 : 指令的尋址方式有兩種: 1. 順序?qū)ぶ贩绞? 2. 跳躍尋址方式。指令地址和數(shù)據(jù)地址的形成方式。某個(gè)操作數(shù)或某條指令存放在某個(gè)存儲(chǔ)單元時(shí)其存儲(chǔ)單元的編號(hào)。1.順序?qū)ぶ贩绞街噶畹刂吩趦?nèi)存中按順序安排,當(dāng)執(zhí)行一段程序時(shí),通常是一條指令接一條指令的順序執(zhí)行。從存儲(chǔ)器取出第一條指

14、令,然后執(zhí)行這條指令;接著從存儲(chǔ)器取出第二條指令,在執(zhí)行第二條指令;接著再取出第三條指令這種程序順序執(zhí)行的過程,我們稱為指令的順序?qū)ぶ贩绞?。為此,必須使用程序?jì)數(shù)器(又稱指令指針寄存器)PC來計(jì)數(shù)指令的順序號(hào),該順序號(hào)就是指令在內(nèi)存中的地址。2.跳躍尋址方式 6跳躍是為了實(shí)現(xiàn)程序的轉(zhuǎn)移。所謂跳躍,是指下條指令的地址碼不是由程序計(jì)數(shù)器給出,而是由本條指令給出。跳躍后程序計(jì)數(shù)器的值修改為當(dāng)前的跳轉(zhuǎn)地址。4.3.2操作數(shù)的尋址方式形成操作數(shù)的有效地址的方法,稱為操作數(shù)的尋址方式。操作數(shù)的尋址方式分類:隱含尋址:不明顯的給出而是隱含著操作數(shù)的地址立即尋址:指令的地址字段是操作數(shù)本身。 例如:?jiǎn)蔚刂返囊?/p>

15、位指令格式為:OP(移位)FDF為標(biāo)志位,當(dāng)F1,操作數(shù)進(jìn)行右移;當(dāng)F0時(shí),操作數(shù)進(jìn)行左移。3.直接尋址在指令格式的地址字段中直接指出操作數(shù)在內(nèi)存的地址D(Disp)。 有效地址(E)(D)直接地址THANK YOUSUCCESS2022/7/1119可編輯4.間接尋址形式地址D是操作數(shù)地址的指示器D單元的內(nèi)容才是操作數(shù)的有效地址。有效地址 E (D)間接地址直接尋址和間接尋址的結(jié)合間接尋址方式是早期計(jì)算機(jī)中經(jīng)常采用的方式,但由于兩次訪存,影響指令執(zhí)行速度,現(xiàn)在已不大使用。操作碼ID特征位I0,表示直接尋址,這時(shí)有效地址ED;I1,表示間接尋址,這時(shí)有效地址E(D)。5.寄存器尋址方式和寄存器

16、間接尋址方式寄存器尋址:操作數(shù)不放在內(nèi)存中,而放在CPU的通用寄存器中有效地址 E Reg 寄存器編號(hào)指令中給出的操作數(shù)地址是通用寄存器的編號(hào)寄存器直接尋址:指令格式中的寄存器內(nèi)容不是操作數(shù),而是操作數(shù)在內(nèi)存中的地址寄存器間接尋址:有效地址 E (Reg 寄存器編號(hào))6.相對(duì)尋址方式 相對(duì)尋址優(yōu)點(diǎn):程序員無(wú)須用指令的絕對(duì)地址編程,所編程序可以放在內(nèi)存任何地方。有效地址 E PC + D程序計(jì)數(shù)器形式地址D通常稱為偏移量,其值可正可負(fù),相對(duì)于程序計(jì)數(shù)器的值進(jìn)行浮動(dòng)。7.基址尋址方式基址尋址優(yōu)點(diǎn):可以擴(kuò)大尋址能力 有效地址 E RegA + D基址寄存器A形式地址D通常稱為偏移量,其值可正可負(fù),相

17、對(duì)于基址寄存器的值進(jìn)行浮動(dòng)。8.變址尋址方式有效地址 E RegB + D變址寄存器B形式地址D通常稱為偏移量,其值可正可負(fù),相對(duì)于變址寄存器的值進(jìn)行浮動(dòng)。使用變址尋址方式目的:不在于擴(kuò)大尋址空間,而在于實(shí)現(xiàn)程序塊的規(guī)律性變化。9.段尋址方式微型機(jī)中采用了段尋址方式,例如它們可以給定一個(gè)20位的地址,從而有1M存儲(chǔ)空間的直接尋址能力。為此將整個(gè)1M空間存儲(chǔ)器以64K為單位劃分成若干段。在尋址一個(gè)內(nèi)存具體單元時(shí),由一個(gè)基地址再加上某些寄存器提供的16位偏移量來形成實(shí)際的20位物理地址。這個(gè)基地址就是CPU中的段寄存器。在形成20位物理地址時(shí),段寄存器中的16位數(shù)會(huì)自動(dòng)左移4位,然后與16位偏移量

18、相加,即可形成所需的內(nèi)存地址。這種尋址方式的實(shí)質(zhì)還是基址尋址。例3一種二地址RS型指令的結(jié)構(gòu)如下所示:6位 4位 1位2位16位其中I為間接尋址標(biāo)志位,X為尋址模式字段,D為偏移量字段。通過I,X,D的組合,可構(gòu)成下表所示的尋址方式。 請(qǐng)寫出六種尋址方式的名稱。解: 直接尋址相對(duì)尋址變址尋址寄存器間接尋址間接尋址基址尋址例4 某16位機(jī)器所使用的指令格式和尋址方式如下所示,該機(jī)有兩個(gè)20位基址寄存器,四個(gè)16位變址寄存器,十六個(gè)16位通用寄存器,指令匯編格式中的S(源),D(目標(biāo))都是通用寄存器,M是主存中的一個(gè)單元。三種指令的操作碼分別是 MOV(OP)(A)H , MOV是傳送指令 STA

19、(OP)(1B)H , STA為寫數(shù)指令 LDA(OP)(3C)H ,LDA為讀數(shù)指令。要求: 分析三種指令的指令格式與尋址方式特點(diǎn)。CPU完成哪一種操作所花時(shí)間最短?哪一種操作所花時(shí)間最長(zhǎng)?第二種指令的執(zhí)行時(shí)間有時(shí)會(huì)等于第三種指令的執(zhí)行時(shí)間嗎? 下列情況下每個(gè)十六進(jìn)制指令字分別代表什么操作?其中如果有編碼不正確,如何改正才能成為合法指令? (F0F1)H (3CD2)H (2856)H(6FD6)H (1C2)H解:第一種指令是單字長(zhǎng)二地址指令,RR型;第二種指令是雙字長(zhǎng)二地址指令,RS型,其中S采用基址尋址或變址尋址,R由源寄存器決定;第三種也是雙字長(zhǎng)二地址指令,RS型,其中R由目標(biāo)寄存器

20、決定,S由20位地址(直接尋址)決定。 處理機(jī)完成第一種指令所花時(shí)間最短,因?yàn)槭荝R型指令,不需要訪問存儲(chǔ)器。第二種指令所花時(shí)間最長(zhǎng),因?yàn)槭荝S型指令,需要訪問存儲(chǔ)器,同時(shí)要進(jìn)行尋址方式的變換運(yùn)算(基址或變址),這也需要時(shí)間。第二種指令的執(zhí)行時(shí)間不會(huì)等于第三種指令,因?yàn)榈谌N指令雖然也訪問存儲(chǔ)器,但節(jié)省了求有效地址運(yùn)算的時(shí)間開銷。 根據(jù)已知條件:MOV(OP)001010,STA(OP)011011,LDA(OP)111100,將指令的十六進(jìn)制格式轉(zhuǎn)換成二進(jìn)制代碼且比較后可知:(F0F1)H (3CD2)H 指令代表LDA指令,編碼正確,其含義是把主存(13CD2)H 地址單元的內(nèi)容取至15號(hào)

21、寄存器。(2856)H 指令代表MOV指令,編碼正確,含義是把6號(hào)源寄存器的內(nèi)容傳送至5號(hào)目標(biāo)寄存器。 (6FD6)H 是單字長(zhǎng)指令,一定是MOV指令,但編碼錯(cuò)誤,可改正為(28D6)H(1C2)H 是單字長(zhǎng)指令,代表MOV指令,但編碼錯(cuò)誤,可改正為(28C2)H 。 4.5 典型指令 4.5.1指令的分類 1.數(shù)據(jù)傳送指令數(shù)據(jù)傳送指令主要包括取數(shù)指令、存數(shù)指令、傳送指令、成組傳送指令、字節(jié)交換指令、清累加器指令、堆棧操作指令等等。這類指令主要用來實(shí)現(xiàn)主存和寄存器之間,或寄存器和寄存器之間的數(shù)據(jù)傳送。2.算術(shù)運(yùn)算指令這類指令包括二進(jìn)制定點(diǎn)加、減、乘、除指令,浮點(diǎn)加、減、乘、除指令,求反、求補(bǔ)指

22、令,算術(shù)移位指令,算術(shù)比較指令,十進(jìn)制加、減運(yùn)算指令等。這類指令主要用于定點(diǎn)或浮點(diǎn)的算術(shù)運(yùn)算,大型機(jī)中有向量運(yùn)算指令,直接對(duì)整個(gè)向量或矩陣進(jìn)行求和、求積運(yùn)算。3.邏輯運(yùn)算指令這類指令包括邏輯加、邏輯乘、按位加、邏輯移位等指令,主要用于無(wú)符號(hào)數(shù)的位操作、代碼的轉(zhuǎn)換、判斷及運(yùn)算。 移位指令用來對(duì)寄存器的內(nèi)容實(shí)現(xiàn)左移、右移或循環(huán)移位。4.程序控制指令程序控制指令也稱轉(zhuǎn)移指令。執(zhí)行程序時(shí),有時(shí)機(jī)器執(zhí)行到某條指令時(shí),出現(xiàn)了幾種不同結(jié)果,這時(shí)機(jī)器必須執(zhí)行一條轉(zhuǎn)移指令,根據(jù)不同結(jié)果進(jìn)行轉(zhuǎn)移,從而改變程序原來執(zhí)行的順序。這種轉(zhuǎn)移指令稱為條件轉(zhuǎn)移指令。除各種條件轉(zhuǎn)移指令外,還有無(wú)條件轉(zhuǎn)移指令、轉(zhuǎn)子程序指令、返回

23、主程序指令、中斷返回指令等。 轉(zhuǎn)移指令的轉(zhuǎn)移地址一般采用直接尋址和相對(duì)尋址方式來確定。5.輸入輸出指令 輸入輸出指令主要用來啟動(dòng)外圍設(shè)備,檢查測(cè)試外圍設(shè)備的工作狀態(tài),并實(shí)現(xiàn)外部設(shè)備和CPU之間,或外圍設(shè)備與外圍設(shè)備之間的信息傳送。6.字符串處理指令字符串處理指令是一種非數(shù)值處理指令,一般包括字符串傳送、字符串轉(zhuǎn)換(把一種編碼的字符串轉(zhuǎn)換成另一種編碼的字符串)、字符串替換(把某一字符串用另一字符串替換)等。這類指令在文字編輯中對(duì)大量字符串進(jìn)行處理。7.特權(quán)指令特權(quán)指令是指具有特殊權(quán)限的指令。這類指令只用于操作系統(tǒng)或其他系統(tǒng)軟件,一般不直接提供給用戶使用。 在多用戶、多任務(wù)的計(jì)算機(jī)系統(tǒng)中特權(quán)指令必

24、不可少。它主要用于系統(tǒng)資源的分配和管理。8.其他指令 除以上各類指令外,還有狀態(tài)寄存器置位、復(fù)位指令、測(cè)試指令、暫停指令,空操作指令,以及其他一些系統(tǒng)控制用的特殊指令。4.5.2基本指令系統(tǒng) 指 令 符號(hào)代碼 八進(jìn)制代碼 操作說明 取數(shù) LDAD 01 (M)-A 存數(shù) STAD 02 (A)-M 加法 ADDD 03 A+(M)-A 減法 SUBD 04 A-(M)-A單 邏輯乘 ANDD 05 (A)(M)-A地 邏輯加 ORAD 06 (A)(M)-A址 按位加 EORD 07 (A)(M)-A指 比較 CMPD 10 (A)-(M)令 內(nèi)存修改 JSZD 11 (M)+1-M,結(jié)果為0

25、轉(zhuǎn)移 無(wú)條件轉(zhuǎn)移 JMPD 14 無(wú)條件轉(zhuǎn)移至存儲(chǔ)器M單元 進(jìn)位置轉(zhuǎn) BCSD 15 C=1,移至存儲(chǔ)器M單元 零轉(zhuǎn) BEQD 16 Z=1,移至存儲(chǔ)器M單元 負(fù)轉(zhuǎn) BMID 17 N=1,移至存儲(chǔ)器M單元 溢出置轉(zhuǎn) BVSD 20 V=1,移至存儲(chǔ)器M單元 進(jìn)棧 PUSH120000 (A)-Msp,(SP)-SP 退棧 POP130000 (SP)+1-SP,(Msp)-A 加 INC210000 (A)+1-A 求反 COM220000 (A)-A 取補(bǔ) NEG230000 0-(A)-A 減 DEC240000 (A)-1-A 清零 CLA250000 0-A零 循環(huán)左移 ROL260000 包括符號(hào)位的左移地 循環(huán)右移 ROR270000 包括符號(hào)位的右移址 算術(shù)左移 ASL300000 末尾加0的左移指 算術(shù)右移 ASR310000 首位加符號(hào)位的右移令 邏輯右移 LSR320000 首位加0的右移 測(cè)試I/O

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論