第3章指令系統(tǒng)與尋址方式.ppt_第1頁
第3章指令系統(tǒng)與尋址方式.ppt_第2頁
第3章指令系統(tǒng)與尋址方式.ppt_第3頁
第3章指令系統(tǒng)與尋址方式.ppt_第4頁
第3章指令系統(tǒng)與尋址方式.ppt_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、主講人鄭曉薇,匯編語言,第三章,遼寧師范大學(xué),計(jì)算機(jī)與信息技術(shù)學(xué)院,第三章 指令系統(tǒng)與尋址方式,設(shè)問:,1匯編指令的特點(diǎn)是什么? 2匯編指令中出現(xiàn)寄存器、存儲(chǔ)器嗎? 3指令中的操作數(shù)在哪兒存放? 4. 為什么要有尋址方式?,本章重點(diǎn),匯編語言指令格式 指令的尋址方式 存儲(chǔ)器尋址,3.1 匯編語言指令,3.1.1 機(jī)器指令 機(jī)器指令也稱作代碼指令。它是計(jì)算機(jī)能識(shí)別的一組二進(jìn)制代碼。,例1 用機(jī)器指令實(shí)現(xiàn)將7加3的結(jié)果存入5號(hào)字節(jié)單元的 操作。 1011 0000 0000 0111 B B007H 把數(shù)“7”送到AL中。 0000 0100 0000 0011B 0403H 把數(shù)“3”與AL內(nèi)容

2、相加,結(jié)果放在AL中。 1010 0010 0101 0000 0000 0000B A25000H 把AL中的內(nèi)容送到地址為5的存儲(chǔ)單元中。 共需要三條機(jī)器指令實(shí)現(xiàn)。,機(jī)器指令可以用二進(jìn)制表示也可以用十六進(jìn)制表示,指令的長(zhǎng)度也可以不一樣。如前兩條指令的長(zhǎng)度為2字節(jié),第三條指令的長(zhǎng)度為3字節(jié)。 用匯編指令實(shí)現(xiàn)將7加3的結(jié)果存入5號(hào)字節(jié)單元的操作。 MOV AL,7 ADD AL,3 MOV DS:5,AL,3.1.2 匯編指令,1、指令格式 匯編指令由操作碼字段和操作數(shù)字段構(gòu)成。,例1 單操作數(shù)指令(一地址指令) INC AX ;加1指令。 INC BL ;加1指令。 PUSH AX ;進(jìn)棧指

3、令。 JMP LA1 ;無條件轉(zhuǎn)移指令。,例2 雙操作數(shù)指令(兩地址指令) MOV AX,5 ;傳送指令。 ADD AX,BX;加法指令。,目的操作數(shù),源操作數(shù),例3 三操作數(shù)指令(三地址指令) IMUL EBX,ESI,7 ;乘法指令。 (80386機(jī)器指令),例4 無操作數(shù)指令(零地址指令) CBW;字節(jié)轉(zhuǎn)換為字指令 CLC;進(jìn)位標(biāo)志CF清零 NOP;不操作指令 HLT;停機(jī)指令,2指令屬性,(1)指令長(zhǎng)度根據(jù)指令的功能不同,指令的長(zhǎng)度也不一樣(以字節(jié)為單位)。分為單字節(jié)指令、雙字節(jié)、三字節(jié)、四字節(jié)和多字節(jié)指令等。,(2)指令的執(zhí)行時(shí)間指令的執(zhí)行時(shí)間(以CPU時(shí)鐘周期為單位)也是一個(gè)重要的

4、屬性。它會(huì)影響程序的執(zhí)行速度,因此采用較少執(zhí)行時(shí)間的指令可提高程序的運(yùn)行速度。,3.1.3 指令系統(tǒng),1指令系統(tǒng)定義 計(jì)算機(jī)所能執(zhí)行的各種代碼指令的集合。 2指令的分類 8086的指令共分為六大類。分別是:,數(shù)據(jù)傳送指令 算術(shù)運(yùn)算指令 邏輯運(yùn)算指令 字符串處理指令 控制與轉(zhuǎn)移指令 處理機(jī)控制指令,3.2指令的尋址方式,尋址方式:指令中提供操作數(shù)或操作數(shù)地址的方式。 有效地址EA(Effective Address): 操作數(shù)的偏移地址。 操作數(shù)的物理地址=段地址10H+EA 尋址方式的分類: 與數(shù)據(jù)有關(guān)的尋址方式 與轉(zhuǎn)移地址有關(guān)的尋址方式,3.2.1尋址方式,3.2.2 立即尋址方式 3.2.

5、3寄存器尋址方式 3.2.4 存儲(chǔ)器尋址方式 直接尋址方式 寄存器間接尋址方式 寄存器相對(duì)尋址方式 基址變址尋址方式 相對(duì)基址變址尋址方式,立即尋址方式,返回,例:MOV AL,5 MOV AX,3060H,例 : MOV AX,3060H MOV AL,5 MOV BL,0FFH MOV BX,0A46DH MOV CH,23,寄存器尋址方式,8位寄存器:AH、AL,BH、BL CH、CL, DH、DL 16位寄存器:AX、BX、CX、DX SI、DI、BP、SP,返回,例1 MOV AX ,BX;兩個(gè)操作數(shù)(16位) 都是寄存器尋址 執(zhí)行前:(AX)=0000H (BX)=1234H, 執(zhí)

6、行后:(AX)=1234H (BX)=1234H。,例1:MOV AX,DS:2000H,(1)存儲(chǔ)器讀操作,返回,直接尋址方式,(2)存儲(chǔ)器寫操作,返回,例2 MOV DS:4000H,AX,例3 MOV AX,VALUE MOV AX,VALUE,返回,有效地址:EA=VALUE=1000H 設(shè)VALUE=1000H 物理地址=(DS)10HEA 設(shè)(DS)=1500H =15000H+1000H=16000H 若 (16000 H) =5678H 執(zhí)行指令后:(AX) =5678H,(3)符號(hào)地址,例4 VALUE EQU 1000H MOV AX,DS:VALUE MOV AX,ES:

7、VALUE,若已知(ES)=3600H,EA=VALUE=1000H, 則指令源操作數(shù)的物理地址計(jì)算為: 物理地址=(ES)10HEA =36000H+1000H = 37000H 若(37000H) = 9091H 執(zhí)行第二條指令后:(AX) = 9091H,返回,(4)段超越,寄存器間接尋址方式,(BX) 操作數(shù)的物理地址=(DS)10H ( SI ) (DI ) 操作數(shù)的物理地址=(SS)10H ( BP ),例: MOV AX,BX,四個(gè)間址寄存器:BX,BP ,SI ,DI,返回,例:MOV AX,TOPSI,(BX) 操作數(shù)的物理地址=(DS)10H ( SI )+ 8位(16位)

8、位移量 (DI ) 操作數(shù)的物理地址=(SS)10H( BP ) + 8位(16位)位移量,返回,寄存器相對(duì)尋址方式,操作數(shù)的物理地址=(DS)10H(BX) + ( SI ) =(DS)10H(BX) + ( DI ) =(SS)10H(BP) + ( SI ) =(SS)10H(BP) + ( DI ),基址變址尋址方式,例1 MOV AX,BX+DI 執(zhí)行前:(DS)=2100H,(BX)=0158H (DI)=10A5H,(AX)=0FFFFH (221FD)=34H,(221FE)=12H 有效地址: EA=(BX)+(DI)= 0158+10A5 =11FDH 物理地址 =2100

9、0+11FD =221FDH 執(zhí)行后:(AX)=1234H,返回,例1 MOV AX,MASKBXSI 或 MOV AX,MASK+BX+SI 或 MOV AX,BX+SI.MASK 有效地址:EA=MASK+(BX)+(SI) 物理地址= (DS)+EA,相對(duì)基址變址尋址方式 操作數(shù)的物理地址 =(DS)10H(BX) + ( SI ) + 8位(16位)位移量 =(DS)10H(BX) + ( DI ) + 8位(16位)位移量 =(SS)10H(BP) + ( SI ) + 8位(16位)位移量 =(SS)10H(BP) + ( DI ) + 8位(16位)位移量,返回,練習(xí): 已知(D

10、S)=1500H,(SS)=2500H, (ES)=4350H, TABLE=4780H,VALUE=7567H,(BX)=4080H 求下列指令操作數(shù)的物理地址。,MOV DS:3A47H, AH MOV DL,ES:TABLE MOV VALUE,BH MOV AX,SS:BX MOV AX,3040H MOV AX,CX,MOV AX,105 MOV AL,BH MOV AX,DS:1250 MOV AX,TABLE MOV AX,BX MOV CX,VALUE,練習(xí):已知(DS)=1500H,(SS)=2500H,(ES)=4350H,(BX)=4080H,(BP)=7567H,(SI

11、)=9578H,(DI)=8456H,COUNT=2345H,TOP=6930H,求下列指令操作數(shù)的物理地址。,MOV TOPBXSI,AX MOV AH,ES:BX MOV SI+BP,CX MOV DX, COUNT DI,3.3 實(shí)例三 尋找操作數(shù),常用的尋址方式有7種之多,其中立即尋址和寄存器尋址無論從指令長(zhǎng)度和指令執(zhí)行時(shí)間都比存儲(chǔ)器尋址要好,但是也要根據(jù)具體情況選用。 學(xué)會(huì)使用尋址方式是理解指令作用的關(guān)鍵,也是掌握程序設(shè)計(jì)技巧的一種途徑。,3.3.1 尋址方式的選擇,3.3.2 實(shí)驗(yàn)示例,示例3-1 根據(jù)題目要求,寫出相應(yīng)的匯編指令: (1)AX、BX寄存器分別賦值為0008H和00

12、06H (2)AX和BX的內(nèi)容相加,結(jié)果在AX中 (3)用寄存器間接尋址將相加的結(jié)果保存到6號(hào)單元。,指令如下: MOV AX,0008H MOV BX,0006H ADD AX,BX MOV BX,AX HLT ;停機(jī)指令,執(zhí)行: (1)在DEBUG下,用A命令輸入上述四條指令,再用R命令顯示寄存器的情況 (2)用T命令單步執(zhí)行,用D命令觀察結(jié)果。,3.3.3 實(shí)驗(yàn)任務(wù),實(shí)驗(yàn)?zāi)康模?通過實(shí)驗(yàn)觀察和分析在不同的尋址方式下存儲(chǔ)單元的邏輯地址的表示以及指令的執(zhí)行結(jié)果。熟練掌握DEBUG的R命令、A命令、T命令和D命令的用法。,實(shí)驗(yàn)內(nèi)容: 參考示例3-1,完成下列實(shí)驗(yàn)內(nèi)容: 兩個(gè)操作數(shù)相減運(yùn)算,結(jié)果放在數(shù)據(jù)段的16號(hào)單元: (1)AX、BX寄存器分別賦值為0008H和0010H (2)AX和BX的內(nèi)容相減(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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)論