指令格式及尋址方式_第1頁
指令格式及尋址方式_第2頁
指令格式及尋址方式_第3頁
指令格式及尋址方式_第4頁
指令格式及尋址方式_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、指令格式及尋址方式1指令格式指令格式是指令字用二進制代碼表示的結(jié)構(gòu)形式。通常由操作碼字段和地址碼字段組成。一條指令的結(jié)構(gòu)形式參考書上105頁4.2操作碼字段OP地址碼字段A23地址碼是產(chǎn)品出廠時已經(jīng)設(shè)定的號碼,區(qū)別不同的設(shè)備,就如同機器的身份號。用以存儲器中有許多存放指令或數(shù)據(jù)的存儲單元。每一個存儲單元都有一個地址的編號,即地址碼。地址編號由小到大順序增加,對該存儲單元取用或存入的二進制信息稱為該地址的內(nèi)容,可以按地址去尋找訪問存儲單元里的內(nèi)容。地址碼(書106頁)4地址碼通常指定參與操作的操作數(shù)的地址。根據(jù)一條指令中有操作數(shù)地址數(shù)X,可將該指令稱為X操作數(shù)指令或X地址指令。目前二地址和一地址

2、指令格式用的得最多。零地址指令的指令字中只有操作碼,而沒有地址碼。一地址指令常稱單操作數(shù)指令。(AC) OP (A) AC(書4.2.2(2)中)OP碼A5二地址指令常稱雙操作數(shù)指令,它有兩個地址碼字段A1和A2,分別指明參與操作的兩個數(shù)在內(nèi)存中或運算器通用寄存器的地址,其中地址A1兼做存放操作結(jié)果的地址。 (A1) OP (A2) A1三地址指令字中有三個操作數(shù)地址A1,A2和A3。 (A1) OP (A2) A3OP碼A1A2OP碼A1A2A36從操作數(shù)的物理位置來說,可把二地址指令可歸結(jié)為三種類型:第一種:訪問內(nèi)存的指令格式存儲器-存儲器(SS)型指令:參與操作的數(shù)都放在內(nèi)存里,從內(nèi)存某

3、單元中取操作數(shù),操作結(jié)果存放至內(nèi)存另一單元中。機器執(zhí)行這種指令需要多次訪問內(nèi)存。第二種:訪問寄存器的指令格式寄存器-寄存器(RR)型指令:需要多個通用寄存器或個別專用寄存器,從寄存器中取操作數(shù),把操作結(jié)果放到另一寄存器中。機器執(zhí)行這種指令的速度很快,不需要訪問內(nèi)存。第三種:寄存器-存儲器(RS)型指令:執(zhí)行此類指令,既要訪問內(nèi)存單元,又要訪問寄存器7指令的尋址方式書112頁4.4.1指令的尋址方式有兩種:順序?qū)ぶ贩绞?、跳躍尋址方式順序?qū)ぶ贩绞?放演示動畫)由于指令地址在內(nèi)存中按順序安排,當(dāng)執(zhí)行一段程序時,通常是一條指令接一條指令地順序進行。也就是說,從存儲器取出第1條指令,然后執(zhí)行這條指令;接

4、著從存儲器取出第2條指令,再執(zhí)行第二條指令;接著再取出第3條指令。必須使用程序計數(shù)器(又稱指令指針寄存器)PC來計數(shù)指令的順序號,該順序號就是指令在內(nèi)存中的地址。8跳躍尋址方式當(dāng)程序轉(zhuǎn)移執(zhí)行的順序時,指令的尋址就采取跳躍尋址方式。所謂跳躍,是指下條指令的地址碼不是由程序計數(shù)器給出,而是由本條指令給出。注意,程序跳躍后,按新的指令地址開始順序執(zhí)行。因此,指令計數(shù)據(jù)的內(nèi)容也必須相應(yīng)改變,以便及時跟蹤新的指令地址。采用指令跳躍尋址方式,可以實現(xiàn)程序轉(zhuǎn)移或構(gòu)成循環(huán)程序,從而能縮短程序長度,或?qū)⒛承┏绦蜃鳛楣渤绦蛞?。指令系統(tǒng)中的各種條件轉(zhuǎn)移或無條件轉(zhuǎn)移指令,就是為了實現(xiàn)指令的跳躍尋址而設(shè)置的。9操作

5、數(shù)尋址形成操作數(shù)的有效地址的方法稱為操作數(shù)的尋址方式。由于大型機、小型機、微型機和單片機結(jié)構(gòu)不同,從而形成了各種不同的操作數(shù)尋址方式。下面介紹一些比較典型又常用的操作數(shù)尋址方式。隱含尋址這種類型的指令,不是明顯地給出操作數(shù)的地址。而是在指令中隱含著操作數(shù)的地址。例如,單地址的指令格式,就不明顯地在地址字段中指出第2操作數(shù)的地址,而是規(guī)定累加寄存器AC作為第2操作數(shù)地址。指令格式明顯指出的僅是第1操作數(shù)的地址D。因此,累加寄存器AC對單地址指令格式來說是隱含地址。10立即尋址指令的地址字段指出的不是操作數(shù)的地址,而是操作數(shù)本身,這種尋址方式稱為立即尋址。立即尋址方式的H特點是指令執(zhí)行時間很短,因

6、為它不需要訪問內(nèi)存取數(shù),從而節(jié)省了訪問內(nèi)存的時間。1如:MOV AX,5678H 注意:立即數(shù)只能作為源操作數(shù),不能作為目的操作數(shù)。11直接尋址直接尋址是一種基本的尋址方法,其特點是:在指令格式的地址的字段中直接指出操作數(shù)在內(nèi)存的地址。由于操作數(shù)的地址直接給出而不需要經(jīng)過某種變換,所以稱這種尋址方式為直接尋址方式。在指令中直接給出參與運算的操作數(shù)及運算結(jié)果所存放的主存地址,即在指令中直接給出有效地址12間接尋址間接尋址是相對直接尋址而言的,在間接尋址的情況下,指令地址字段中的形式地址不是操作數(shù)的真正地址,而是操作數(shù)地址的指示器,或者說此形式地址單元的內(nèi)容才是操作數(shù)的有效地址。13寄存器尋址方式

7、和寄存器間接尋址方式14當(dāng)操作數(shù)不放在內(nèi)存中,而是放在CPU的通用寄存器中時,可采用寄存器尋址方式。顯然,此時指令中給出的操作數(shù)地址不是內(nèi)存的地址單元號,而是通用寄存器的編號(可以是8位也可以是16位(AX,BX,CX,DX)。指令結(jié)構(gòu)中的RR型指令,就是采用寄存器尋址方式的例子。如:MOV DS,AX寄存器間接尋址方式與寄存器尋址方式的區(qū)別在于:指令格式中的寄存器內(nèi)容不是操作數(shù),而是操作數(shù)的地址,該地址指明的操作數(shù)在內(nèi)存中。15偏移尋址16相對尋址方式相對尋址是把程序計數(shù)器PC的內(nèi)容加上指令格式中的形式地址D而形成操作數(shù)的有效地址。程序計數(shù)器的內(nèi)容就是當(dāng)前指令的地址。“相對”尋址,就是相對于

8、當(dāng)前的指令地址而言。采用相對尋址方式的好處是程序員無須用指令的絕對地址編程,因而所編程序可以放在內(nèi)存的任何地方。1指令格式:MOVAX,BX+1200H操作數(shù)物理地址PA=(DS/SS)*10H+EA EA=(BX/BP/SI/DI)+(6/8)位偏移量Disp 對于BX,SI,DI寄存器來說段寄存器默認為DS,對于SP來說,段寄存器默認為SS17基址尋址方式在基址尋址方式中將CPU中的基址寄存器的內(nèi)容,加上指令格式中的形式地址而形成操作數(shù)的有效地址。基址尋址的優(yōu)點是可以擴大尋址能力,因為與形式地址相比,基址寄存器的位數(shù)可以設(shè)置得很長,從而可以在較大的存儲空間中尋址。18變址尋址方式變址尋址方式與基址尋址方式計算有效地址的方法很相似,它把CPU中某個變址寄存器的內(nèi)容與偏移量D相加來形成操作數(shù)有效地址。但使用變址尋址方式的目的不在于擴大尋址空間,而在于實現(xiàn)程序塊的規(guī)律變化。為此,必須使變址寄存器的內(nèi)容實現(xiàn)有規(guī)律的變化(如自增1、自減1、乘比例系數(shù))而不改變指令本身,從而使有效地址按變址寄存器的內(nèi)容實現(xiàn)有規(guī)律的變化。19段尋址方式微型機中采用了段尋址方式,例如它們可以給定一個20位的地址,從而有220=1M存儲空間的直接尋址能力。為此將整個1M空間存儲器

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論