版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
控制轉(zhuǎn)移指令●無(wú)條件轉(zhuǎn)移指令根據(jù)其轉(zhuǎn)移范圍的大小可以分為五種方式:指令名稱指令格式執(zhí)行操作1.段內(nèi)直接短轉(zhuǎn)移JMPSHORTOPRIP←(IP)+8位位移量2.段內(nèi)直接近轉(zhuǎn)移JMPNEARPTROPRIP←(IP)+16位位移量3.段內(nèi)間接轉(zhuǎn)移JMPWORDPTROPRIP←(EA)4.段間直接轉(zhuǎn)移JMPFARPTROPRIP←OPR的段內(nèi)偏移地址CS←OPR所在段的段地址5.段間間接轉(zhuǎn)移JMPDWORDPTROPRIP←(EA)CS←(EA+2)●1.無(wú)條件轉(zhuǎn)移指令JMP●指令功能:無(wú)條件地轉(zhuǎn)移到由地址表達(dá)式所確定的目標(biāo)單元?!裰噶罡袷剑篔MP地址表達(dá)式無(wú)條件轉(zhuǎn)移指令的一般使用格式為:JMP符號(hào)地址●2.條件轉(zhuǎn)移指令(1)條件轉(zhuǎn)移指令●指令功能:根據(jù)前面指令形成的條件來(lái)確定轉(zhuǎn)移目的的地址?!裰噶畈僮鳎寒?dāng)條件滿足時(shí)程序轉(zhuǎn)移至標(biāo)號(hào)處,轉(zhuǎn)移范圍只能在離當(dāng)前IP的-128?+127個(gè)字節(jié)之內(nèi)。按照轉(zhuǎn)移條件分為四類1.單個(gè)標(biāo)志位的條件轉(zhuǎn)移指令。如JZ(JE)、JP2.兩個(gè)無(wú)符號(hào)數(shù)比較的條件轉(zhuǎn)移指令。如JB(JNAE,JC)、JBE(JNA)3.兩個(gè)有符號(hào)數(shù)比較的條件轉(zhuǎn)移指令。如JLE(JNG)、JNL(JGE)4.測(cè)試(CX)=0的條件轉(zhuǎn)移指令。如JCXZ指令分類指令格式執(zhí)行條件1.單個(gè)標(biāo)志位的條件轉(zhuǎn)移指令JZ(JE)標(biāo)號(hào)ZF=1JNZ(JNE)標(biāo)號(hào)ZF=0JS標(biāo)號(hào)SF=1JNS標(biāo)號(hào)SF=0JO標(biāo)號(hào)OF=1JNO標(biāo)號(hào)OF=0JP標(biāo)號(hào)PF=1JNP標(biāo)號(hào)PF=0JC標(biāo)號(hào)CF=1JNC標(biāo)號(hào)CF=02.兩個(gè)無(wú)符號(hào)數(shù)比較的條件轉(zhuǎn)移指令JB(JNAE)標(biāo)號(hào)CF=1(<)JNB(JAE)標(biāo)號(hào)CF=0(≥)JBE(JNA)標(biāo)號(hào)CF∨ZF=1(≤)JNBE(JA)標(biāo)號(hào)CF∨ZF=0(>)3.兩個(gè)有符號(hào)數(shù)比較的條件轉(zhuǎn)移指令JL(JNGE)標(biāo)號(hào)SF⊕OF=1(<)JNL(JGE)標(biāo)號(hào)SF⊕OF=0(≥)JLE(JNG)標(biāo)號(hào)(SF⊕OF)∨ZF=1(≤)JNLE(JG)標(biāo)號(hào)(SF⊕OF)∨ZF=0(>)●3.(1)計(jì)數(shù)循環(huán)指令LOOP循環(huán)控制指令
●指令格式:LOOPOPR●指令功能:每執(zhí)行一次LOOP指令,CX的內(nèi)容減“1”,若(CX)≠0,則循環(huán)轉(zhuǎn)移到目的地址TARGET重復(fù)執(zhí)行其間的程序段,直到(CX)=0,退出循環(huán),順序執(zhí)行下條指令。例[4-18]把數(shù)據(jù)區(qū)buffer內(nèi)的50個(gè)有符號(hào)字節(jié)數(shù)將正(零歸正數(shù))、負(fù)數(shù)分開,并分別送到NUM1和NUM2兩個(gè)緩沖區(qū)的程序如下:
LEA SI,BUFFER LEA DI,NUM1 LEA BX,NUM2 MOV CX,50BEG: MOVAL,[SI]INCSI TEST AL,80H JNZ MINUS MOV [DI],ALINCDI JMP AGAINMINUS:MOV [BX],ALINCBXAGAIN:LOOP BEG HLT(2)結(jié)果為零或相等時(shí)循環(huán)指令LOOPE/LOOPZ●指令格式:LOOPZ(LOOPE)
OPR●指令功能:使(CX)-1→CX,當(dāng)(CX)≠0,且ZF=1時(shí),則循環(huán)轉(zhuǎn)移至目的地址TATGET去重復(fù)執(zhí)行其間的程序段。當(dāng)(CX)=0,或ZF=0,退出循環(huán),順序執(zhí)行本指令的下條指令。例[4–19]找出以NUM為首地址的100個(gè)字節(jié)數(shù)組中第一個(gè)非零項(xiàng),并將其置于AL中,數(shù)組中若無(wú)非零項(xiàng),則(AL)=0。程序如下:
MOV CX,100 LEA BX,NUM MOV SI,0FFFFHZERO:INC SI CMP BYTEPTR[BX+SI],0 LOOPZZERO JZ OVER MOV AL,[BX+SI] JMP DONEOVER:MOV AL,0DONE:HLT(3)結(jié)果不為零或不相等時(shí)循環(huán)指令LOOPNE/LOOPNZ●指令格式:LOOPNZ(LOOPNE)
OPR●循環(huán)條件:ZF=0且
(CX)≠0●執(zhí)行操作:①
(CX)←(CX)-1;②檢查是否滿足循環(huán)條件:
如滿足則實(shí)行循環(huán); 不滿足則退出循環(huán)。過程調(diào)用指令CALL與返回指令RET●4.為便于模塊化程序設(shè)計(jì),可把某些經(jīng)常重復(fù)出現(xiàn)的一段程序獨(dú)立編制成一個(gè)模塊,稱為一個(gè)子過程或子程序。程序中可由調(diào)用指令CALL調(diào)用子程序,在子程序執(zhí)行完成后又用返回指令RET返回調(diào)用程序繼續(xù)執(zhí)行?!襁^程調(diào)用指令CALL必須同返回指令RET成對(duì)使用?!襁^程定義的形式如下(詳見第五章“偽指令”):過程名
PROC[near/far]
過程體
RET
過程名 ENDP(1)CALL指令①段內(nèi)直接調(diào)用●指令格式:CALL DST●執(zhí)行操作:SP←(SP)-2
(SP)+1,(SP)←(IP)
IP←(IP)+16位位移量②段內(nèi)間接調(diào)用●指令格式:CALL DST●執(zhí)行操作:SP←(SP)-2
(SP)+1,(SP)←(IP)
IP←(EA)過程調(diào)用指令CALL與返回指令RET●4.(1)CALL指令③段間直接調(diào)用●指令格式:CALL DST●執(zhí)行操作:SP←(SP)-2
(SP)+1,(SP)←(CS)
SP←(SP)-2(SP)+1,(SP)←(IP)
IP←
偏移地址
CS←
段地址④段間間接調(diào)用●指令格式:CALL DST●執(zhí)行操作:SP←(SP)-2
(SP)+1,(SP)←(CS)
SP←(SP)-2(SP)+1,(SP)←(IP)
IP←
(EA)
CS←(EA+2)CALL指令不影響標(biāo)志位常用格式:CALL子程序名過程調(diào)用指令CALL與返回指令RET(2)①段內(nèi)返回●指令格式:RET●執(zhí)行操作:IP←((SP)+1,(SP))
SP←(SP)+2②段內(nèi)帶立即數(shù)返回●指令格式:RETn●執(zhí)行操作:IP←((SP)+1,(SP))
SP←(SP)+2SP←(SP)+n
④段間帶立即數(shù)返回●指令格式:RETn●執(zhí)行操作:IP←((SP)+1,(SP))SP←(SP)+2CS←((SP)+1,(SP))SP←(SP)+2
SP←(SP)+n返回指令RET
③段間返回
●指令格式:RET
●執(zhí)行操作:IP←((SP)+1,(SP))SP←(SP)+2CS←((SP)+1,(SP))SP←(SP)+2●4.RET指令不影響標(biāo)志位中斷調(diào)用與返回指令●5.將在第七章中介紹CLC ;CF←0STC ;CF←1CMC ;CF求反,即CF←┓CFCLD
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國(guó)全自動(dòng)氣動(dòng)式超聲波清洗機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年中國(guó)黃銅內(nèi)絲擴(kuò)口式接頭數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 二零二五年度個(gè)人汽車按揭貸款財(cái)產(chǎn)抵押擔(dān)保合同2篇
- 二零二五年度個(gè)人光伏發(fā)電設(shè)備貸款合同(含發(fā)電收益分配)4篇
- 2024年全球AI應(yīng)用趨勢(shì)年度報(bào)告
- 2025版消防水泵房設(shè)備整改與維修合同
- 二零二五年度企業(yè)間供應(yīng)鏈借款服務(wù)協(xié)議4篇
- 二零二五年版心臟病患者入學(xué)康復(fù)輔導(dǎo)與免責(zé)合同3篇
- 品牌廣告宣傳合同
- 股票投資合作合同范本
- 2022-2023學(xué)年四川省南充市九年級(jí)(上)期末數(shù)學(xué)試卷
- 組建農(nóng)產(chǎn)品供應(yīng)鏈公司方案
- 公轉(zhuǎn)私人轉(zhuǎn)賬協(xié)議
- 液壓阻尼器工作原理
- 小學(xué)畢業(yè)紀(jì)念冊(cè)教學(xué)課件
- 移動(dòng)商務(wù)內(nèi)容運(yùn)營(yíng)(吳洪貴)任務(wù)四 圖文類內(nèi)容的打造
- 個(gè)人房屋買賣購(gòu)房合同
- 航空油料計(jì)量統(tǒng)計(jì)員(初級(jí))理論考試復(fù)習(xí)題庫(kù)大全-下(判斷題匯總)
- 2022年度上海市養(yǎng)老護(hù)理員技師考試題(含答案)
- 養(yǎng)老護(hù)理員培訓(xùn)老年人日常生活照料
- 各種抽油泵的結(jié)構(gòu)及工作原理幻燈片
評(píng)論
0/150
提交評(píng)論