版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
8088/8086CPU指令系統(tǒng)尋址方式解決了操作數(shù)存放的形式,本節(jié)講述8088/8086CPU基本指令的助記符表示形式及功能結(jié)合不同的尋址方式,將133條基本指令組合為上千種指令功能8088/8086CPU基本指令類數(shù)據(jù)傳送類指令算術(shù)運算類指令邏輯運算類指令串操作類指令控制轉(zhuǎn)移類指令處理器控制類指令程序轉(zhuǎn)移指令用來控制程序的走向,其實質(zhì)是設(shè)法改變當(dāng)前的CS和IP值,以使CPU轉(zhuǎn)移到一個新的地址處執(zhí)行程序??刂妻D(zhuǎn)移類指令控制轉(zhuǎn)移類指令JMP——無條件轉(zhuǎn)移指令
段內(nèi)直接短轉(zhuǎn)移
JMPSHORTLABEL
;IP目的←IP當(dāng)前
+rel8(8bit符號數(shù))
rel8
在-128~+127之間
段內(nèi)直接近轉(zhuǎn)移
JMPNEARLABEL
;IP目的←IP當(dāng)前
+rel16
(16bit符號數(shù))
rel16
在-32768~+32767之間段內(nèi)直接短轉(zhuǎn)移——rel8
←IP源←IP當(dāng)前←IP目的錯誤的rel8正確的rel8LABELJMPSHORLABELIP目的←IP當(dāng)前
+rel8IP目的←IP源
+rel8+2注:rel8
<
80H
←06H段內(nèi)直接近轉(zhuǎn)移——rel16
←IP源←IP當(dāng)前←IP目的錯誤的rel16正確的rel16LABELJMPNEARLABELIP目的←IP當(dāng)前
+rel16IP目的←IP源
+rel16+3←00H←05H控制轉(zhuǎn)移類指令JMP——無條件轉(zhuǎn)移指令
段內(nèi)間接轉(zhuǎn)移
寄存器中的值為段內(nèi)IP目的地址
JMPBX
存儲器中的值為段內(nèi)IP目的地址
JMPWORD[BX]JMPWORD[2000H]
注:段內(nèi)轉(zhuǎn)移方式——CS不變、IP變控制轉(zhuǎn)移類指令JMP——無條件轉(zhuǎn)移指令
段間直接遠(yuǎn)轉(zhuǎn)移
JMPFARLABEL
;LABEL為CS目的:IP目的
段間間接遠(yuǎn)轉(zhuǎn)移
JMPDWORD[BX]
;CS目的:IP目的在地址[BX]中
注:段間轉(zhuǎn)移方式——CS變、IP變當(dāng)前CS=2100HJMP0C020065轉(zhuǎn)移目標(biāo)的偏移地址轉(zhuǎn)移目標(biāo)的段地址×1621000H代碼段1×1665000H新CS=6500H代碼段2轉(zhuǎn)移至此當(dāng)前IP=1500H新IP=020CH…段內(nèi)間接轉(zhuǎn)移與段間間接遠(yuǎn)轉(zhuǎn)移例
若(BX)=2000HJMPWORD[BX]CS目的
=CS源
IP目的=3C2AHJMPDWORD[BX]CS目的
=3367HIP目的=3C2AH2000H控制轉(zhuǎn)移類指令CALL、RET
——過程調(diào)用與過程返回指令
過程調(diào)用指令—CALLLABEL
段內(nèi)近調(diào)用過程CS不變,IP變;保護(hù)現(xiàn)場即將IP當(dāng)前值入棧段間遠(yuǎn)調(diào)用過程CS、IP均變;保護(hù)現(xiàn)場即將CS當(dāng)前、IP當(dāng)前值入棧過程返回指令—RET
定義近過程時
RET指令恢復(fù)現(xiàn)場即將IP當(dāng)前值出棧定義遠(yuǎn)過程時
RET指令恢復(fù)現(xiàn)場即將IP當(dāng)前、CS當(dāng)前值出??刂妻D(zhuǎn)移類指令
(IP當(dāng)前)→SS:SP
保護(hù)現(xiàn)場IP值入棧
段內(nèi)近調(diào)用過程——CALLLABEL
段內(nèi)近調(diào)用返回——RET(IP當(dāng)前)←
SS:SP
恢復(fù)現(xiàn)場IP值出棧
段間遠(yuǎn)調(diào)用過程——CALLLABEL(CS當(dāng)前)←
SS:SP恢復(fù)現(xiàn)場CS值出棧(CS當(dāng)前)→SS:SP
保護(hù)現(xiàn)場CS值入棧(IP當(dāng)前)→SS:SP
保護(hù)現(xiàn)場IP值入棧
段間遠(yuǎn)調(diào)用返回——RET(IP當(dāng)前)←
SS:SP
恢復(fù)現(xiàn)場IP值出??刂妻D(zhuǎn)移類指令CALL指令中的直接調(diào)用與間接調(diào)用段內(nèi)近過程調(diào)用直接IP目的間接IP目的段間遠(yuǎn)過程調(diào)用直接CS目的:IP目的間接CS目的:IP目的CALLMAIN
CALLBX
CALLDWORD[BX]
CALLMAIN
控制轉(zhuǎn)移類指令CALL、JMP指令比較
CALL指令
先保護(hù)現(xiàn)場CS當(dāng)前:IP當(dāng)前后獲得調(diào)用過程入口CS目的:IP目的
JMP指令
不保護(hù)現(xiàn)場CS當(dāng)前:IP當(dāng)前只獲得跳轉(zhuǎn)程序入口CS目的:IP目的控制轉(zhuǎn)移類指令JXX——有條件轉(zhuǎn)移指令
指令格式
JL、JGE、......JNZ等
指令特點
僅有段內(nèi)短轉(zhuǎn)移,IP目的
=IP當(dāng)前
+rel8rel8
值在頁內(nèi),即-128~+127間
前導(dǎo)指令
CMP、TEST、DECCX等
注:執(zhí)行JXX指令前的指令必須影響標(biāo)志位控制轉(zhuǎn)移類指令有條件轉(zhuǎn)移指令的英文符號
Zero——目的操作數(shù)減源操作數(shù)為0(ZF=0)
Equal——目的操作數(shù)等于源操作數(shù)(ZF=0)
Above——目的操作數(shù)高于源操作數(shù)(CF=0)
Below——目的操作數(shù)低于源操作數(shù)(CF=1)
Greater——目的操作數(shù)大于源操作數(shù)(OF⊕SF=0)
Less——目的操作數(shù)小于源操作數(shù)(OF⊕SF=1)
Carry——兩無符號運算后有進(jìn)位(CF=1)
Overflow——兩有符號運算后有溢出(OF=1)
Sign——兩有符號運算后有符號(SF=1)
Parity——奇偶位為偶(PF=1)
Not——不是控制轉(zhuǎn)移類指令JXX指令與狀態(tài)標(biāo)志位——ZF、CF與ZF有關(guān)的條件轉(zhuǎn)移指令
JE/JZ——兩數(shù)相等/兩數(shù)相減不為零(ZF=0)
JNE/JNZ——兩數(shù)有等/兩數(shù)相減為零(ZF=1)與CF有關(guān)的條件轉(zhuǎn)移指令
JAE/JNB——高于或等于/不低于(CF=0)
JNC——無進(jìn)位/無借位(CF=0)
JB/JNAE——低于/不高于也不等于(CF=1)
JC——有進(jìn)位/有借位(CF=1)例:JC/JNC指令;統(tǒng)計BX中1的個數(shù)(方法一) xoral,al ;AL=0,CF=0again: testbx,0ffffh;等價于cmpbx,0 jenext;ZF=1,即(BX)=0,轉(zhuǎn)移 shlbx,1 jncagain;CF=0.轉(zhuǎn)移 incal;CF=1,加1 jmpagainnext: ... ;AL保存1的個數(shù)例:JZ/JNZ指令 repz
cmpsb ;重復(fù)比較兩個字符串 jnzunmat ;ZF=0(不等),轉(zhuǎn)移 mov
al,0 ;順序執(zhí)行(相等) jmp
outputunmat: mov
al,0ffhoutput: mov
result,al repzcmpsb ;重復(fù)比較兩個字符串 jzmat ;ZF=1(相等),轉(zhuǎn)移 mov
al,0ffh ;順序執(zhí)行(不等) jmp
outputmat: mov
al,0output: mov
result,al控制轉(zhuǎn)移類指令JXX指令與狀態(tài)標(biāo)志位——SF、PF、OF與SF有關(guān)的條件轉(zhuǎn)移指令
JS——(SF=1)時跳轉(zhuǎn)
JNS——(SF=0)時跳轉(zhuǎn)與PF有關(guān)的條件轉(zhuǎn)移指令
JO/JPE——(PF=1)時跳轉(zhuǎn)
JNP/JPO——(PF=0)時跳轉(zhuǎn)與OF有關(guān)的條件轉(zhuǎn)移指令
JO——(OF=1)時跳轉(zhuǎn)
JNO——(OF=0)時跳轉(zhuǎn)例:JP/JNP指令;設(shè)字符的ASCII碼在AL寄存器中;將字符加上奇校驗位;在字符ASCII碼中為“1”的個數(shù)已為奇數(shù)時;則令其最高位為“0”;否則令最高位為“1”
andal,7fh
;最高位置“0”,同時判斷“1”的個數(shù)
jnpnext
;個數(shù)已為奇數(shù),則轉(zhuǎn)向next
oral,80h ;否則,最高位置“1”next: ...控制轉(zhuǎn)移類指令高于與大于、低于與小于
兩無符號數(shù)比較稱——高于、低于與標(biāo)志位CF有關(guān)
JA/JNBE、JAE/JNB、JB/JNAE、JBE/JNA
Above、Below、Not、Equal
兩有符號數(shù)比較稱——大于、小于與標(biāo)志位OF,SF有關(guān)
JG/JNLE、JGE/JNL、JL/JNGE、JLE/JNG
Greater、Less、Not、Equal控制轉(zhuǎn)移類指令JXX指令與狀態(tài)標(biāo)志位——CF,ZFJA/JNBE——目操作數(shù)>源操作數(shù)則轉(zhuǎn)移(CF=0且ZF=0)
JAE/JNB——目操作數(shù)≥源操作數(shù)則轉(zhuǎn)移(CF=0、ZF=0或ZF=1)
JB/JNAE——目操作數(shù)<源操作數(shù)則轉(zhuǎn)移(CF=1且ZF=0)
JBE/JNA——目操作數(shù)≤源操作數(shù)則轉(zhuǎn)移(CF=1、ZF=0或ZF=1)注:兩個無符號數(shù)的比較,>稱高于、<稱低于控制轉(zhuǎn)移類指令JXX指令與狀態(tài)標(biāo)志位——OF,SF,ZFJG/JNLE——目操作數(shù)>源操作數(shù)則轉(zhuǎn)移(OF⊕SF=0且ZF=0)
JGE/JNL——目操作數(shù)≥源操作數(shù)則轉(zhuǎn)移(OF⊕SF=0、ZF=0或ZF=1)
JL/JNGE——目操作數(shù)<源操作數(shù)則轉(zhuǎn)移(OF⊕SF=1且ZF=0)
JLE/JNG——目操作數(shù)≤源操作數(shù)則轉(zhuǎn)移(OF⊕SF=1、ZF=0或ZF=1)注:兩個有符號數(shù)的比較>稱大于、<稱小于例:比較無符號數(shù) cmpax,bx ;比較ax和bx jnbnext ;若ax≥bx,轉(zhuǎn)移 xchgax,bx ;若ax<bx,交換next: ...例:比較有符號數(shù) cmpax,bx ;比較ax和bx jnlnext ;若ax≥bx,轉(zhuǎn)移 xchgax,bx ;若ax<bx,交換next: ...控制轉(zhuǎn)移類指令LOOP——循環(huán)控制指令
指令特點以計數(shù)器CX,標(biāo)志位ZF為條件,控制循環(huán)體
指令格式
LOOPLABEL
若(CX)≠0,執(zhí)行循環(huán)體LABEL
LOOPZLABEL或LOOPELABEL
若(CX)≠0或ZF=1,執(zhí)行循環(huán)體LABEL
LOOPNZLABEL或LOOPNELABEL
若(CX)≠0或ZF=0、執(zhí)行循環(huán)體LABEL
JCXZ短標(biāo)號
若(CX)=0則轉(zhuǎn)移至目標(biāo)地址控制轉(zhuǎn)移類指令JNZ、LOOP指令比較AGA:MOVAX,BX
...
DECCXJNZAGAEXIT:......AGA:MOVAX,BX
...
LOOPAGAEXIT:......例:統(tǒng)計空格個數(shù)movcx,count;設(shè)置循環(huán)次數(shù)movsi,offsetstringxorbx,bx;bx清0,用于統(tǒng)計空格數(shù)moval,20hagain:cmpal,es:[si]jnznext;ZF=0,非空格,轉(zhuǎn)移incbx;ZF=1,是空格,個數(shù)加1next:incsiloopagain;字符個數(shù)減1,不為0繼續(xù)循環(huán)deccxjnzagain控制轉(zhuǎn)移類指令I(lǐng)NT——中斷控制指令
中斷概念特事特辦,立即處理
中斷類型
內(nèi)部中斷軟中斷,由執(zhí)行中斷指令I(lǐng)NT獲得中斷服務(wù)外部中斷硬中斷,由外部電平觸發(fā)獲得中斷服務(wù)控制轉(zhuǎn)移類指令CALL指令與INT指令比較
執(zhí)行CALLLABEL指令調(diào)用過程名為LABEL的子程序
執(zhí)行INTn指令調(diào)用中斷類型(號)為n的中斷服務(wù)程序控制轉(zhuǎn)移類指令保護(hù)現(xiàn)場與恢復(fù)現(xiàn)場
保護(hù)現(xiàn)場(斷點)
CALL近調(diào)用保護(hù)IP,遠(yuǎn)調(diào)用保護(hù)CS、IPINT保護(hù)FLAG、CS、IP
恢復(fù)現(xiàn)場(斷點)
RET根據(jù)定義過程恢復(fù)IP或IP、CSIRET恢復(fù)IP、CS、FLAG
注:由指令完成入棧、出棧操作控制轉(zhuǎn)移類指令I(lǐng)NTn指令執(zhí)行過程(F)→SS:SP
將標(biāo)志寄存器F的值入棧保存
TF→0
中服程序正常運行,非單步運行
IF→0
中服程序中關(guān)可屏蔽中斷INTR(CS當(dāng)前)→SS:SP
保護(hù)現(xiàn)場CS值入棧
[n*4+2]→(CS目的)獲得中服程序的入口CS值(IP當(dāng)前)→SS:SP
保護(hù)現(xiàn)場IP值入棧
[n*4]→(IP目的)獲得中服程序的入口IP值從CS目的:IP目的處執(zhí)行中服程序控制轉(zhuǎn)移類指令I(lǐng)RET指令執(zhí)行過程(IP當(dāng)前)←
SS:SP
恢復(fù)現(xiàn)場IP值出棧(CS當(dāng)前)←
SS:SP恢復(fù)現(xiàn)場CS值出棧(FLAG)←
SS:SP恢復(fù)標(biāo)志寄存器的值出棧控制轉(zhuǎn)移類指令I(lǐng)NTO——溢出中斷指令
指令功能若溢出標(biāo)志OF=1,產(chǎn)生4號中斷(中斷向量地址為10H),否則順序執(zhí)行ADDAX,BXINTOSUBAX,BXINTO控制轉(zhuǎn)移類指令中斷號、中斷向量、中斷向量表
中斷號(中斷類型碼)
PC機定義了256個中斷號從0~255或00H~0FFH
中斷向量
中斷服務(wù)程序的入口地址,即CS目的:IP目的值
中斷向量表存放所有中斷號對應(yīng)中斷服務(wù)程序的入口地址CS目的:IP目的值的存儲區(qū)控制轉(zhuǎn)移類指令I(lǐng)ntel對8088/8086CPU的保留中斷向量表區(qū)00000H0007FHFFFFFH128B中斷向量表區(qū)可存放32個中斷向量控制轉(zhuǎn)移類指令中斷向量的存放中斷服務(wù)程序中斷向量表8FC0H:2A30HIP目的CS目的
每個中斷服務(wù)程序的入口地址CS目的:IP目的
占用4個存儲單元。IP目的值放在低地址的
2個存儲單元。CS目的值放在高地址的
2個存儲單元。
從CS目的:
IP目的處執(zhí)行中斷服務(wù)程序。30H2AHC0H8FH控制轉(zhuǎn)移類指令中斷號與中斷向量表的關(guān)系
根據(jù)中斷號n求中斷服務(wù)程序的入口表地址
[IP目的]=n*4或[IP目的]=n←2[CS目的]=n*4+2
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省鎮(zhèn)江市丹徒區(qū)高中政治 第九課 唯物辯證法的實質(zhì)與核心教案 新人教版必修4
- 二年級品德與生活上冊 誠實故事會教案2 北師大版
- 2024秋八年級物理上冊 第4章 光的折射 透鏡 第一節(jié) 光的折射教案2(新版)蘇科版
- 2024年秋九年級歷史上冊 第2單元 古代歐洲文明 第4課 希臘城邦和亞歷山大帝國教案 新人教版
- 2024-2025學(xué)年高中英語 Module 5 Newspapers and Magazines教案1 外研版必修2
- 2024年五年級語文上冊 第四單元 13 少年中國說(節(jié)選)配套教案 新人教版
- 2023六年級數(shù)學(xué)下冊 第4單元 比例 2正比例和反比例練習(xí)課(正比例和反比例)教案 新人教版
- 換熱站管理制度
- 自建房屋外包合同(2篇)
- 設(shè)計師求職簡歷幻燈片模板
- 手術(shù)室??谱o(hù)士培訓(xùn)計劃
- 中醫(yī)冬季養(yǎng)生課件整理
- 整形美容科品管圈PDCA匯報模板-通過綜合性護(hù)理干預(yù)措施降低疤痕發(fā)生率
- 小學(xué)心理健康教育-團(tuán)體心理輔導(dǎo)教學(xué)課件設(shè)計
- 國際貿(mào)易業(yè)務(wù)流程圖(完整資料)
- SMT電子物料損耗率標(biāo)準(zhǔn) 貼片物料損耗標(biāo)準(zhǔn)
- 國際海上人命安全公約
- DB51T 3007-2023四川省農(nóng)田生態(tài)溝渠構(gòu)建技術(shù)規(guī)范
- 凝血基礎(chǔ)知識專家講座
- 王陽明心學(xué)課件
- 馬克思主義基本原理概論(湖南師范大學(xué))智慧樹知到答案章節(jié)測試2023年
評論
0/150
提交評論