版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2.3指令系統(tǒng)共分為6類(lèi)92種指令。(1)數(shù)據(jù)傳送(2)算術(shù)運(yùn)算(3)邏輯運(yùn)算和移位(4)串處理(5)控制轉(zhuǎn)移類(lèi)(6)處理器控制12.3.1數(shù)據(jù)傳送類(lèi)指令按功能分為四組:②輸入輸出指令;①通用數(shù)據(jù)傳送指令;③目標(biāo)地址傳送指令;④標(biāo)志傳送指令;MOVPUSHPOPXCHGXLATINOUTLEALDSLESLAHFSAHFPUSHFPOPF2■指令匯編格式:MOVdest,src操作:將一個(gè)源操作數(shù)(字節(jié)或字)傳送到目標(biāo)操作數(shù)中。dest←(src)■受影響的狀態(tài)標(biāo)志位:沒(méi)有(1)MOV(move)傳送1.通用數(shù)據(jù)傳送指令;32012-06.如下指令中正確的指令是【】
A.MOVDS,1234HB.MOVBX,1234H
C.MOVIP,1234HD.MOV1234H,AX2010-07.下列四條指令中正確的是【】
A.MOVDS,0100HB.MOVAL,0100H
C.SHRAL,4D.MOVAL,AH2009-04.下列四條指令中,錯(cuò)誤的是【】
A.MOVAX,[DI]B.MOVAL,[DI+5]
C.MOVCS,AXD.MOVDS,AXBDC4SS:0000SP00000H棧頂棧底初始化時(shí)SPFFFFFH堆棧段...××H××H...12H34H......
8086/8088堆棧結(jié)構(gòu)■指令匯編格式:PUSHsrc■
指令匯編格式:POPdest5注意:
1.源操作數(shù)可以是CPU內(nèi)部的16位通用寄存器、段寄存器和內(nèi)存操作數(shù)。2.入棧操作對(duì)象必須是16位數(shù),不能是8位數(shù)。3.可以使用除立即數(shù)以外的其它尋址方式。PUSHBLPUSHDHPOPALPOPCL
■指令匯編格式:PUSHsrc■
指令匯編格式:POPdest62012-25.設(shè)SP=100H,AX=200H,當(dāng)8086執(zhí)行PUSHAX指令后,SP的值變?yōu)開(kāi)_______。P572009-27.若堆棧指針SP的初值為3000H,執(zhí)行PUSHAX指令后SP的值為_(kāi)__________。FEH或00FEH2FFEH7(4)XLAT(translate)轉(zhuǎn)換表■指令匯編格式:XLAT操作:BX和AL內(nèi)容之和指出的內(nèi)存字節(jié)單元的內(nèi)容送到AL中。AL←(BX+AL)■受影響的狀態(tài)標(biāo)志位:沒(méi)有■說(shuō)明:XLAT指令用于查表。表的開(kāi)始地址即表頭地址由BX寄存器給出。AL中的原始值是要尋址的表中元素地址的位移量,規(guī)定表中第一個(gè)字節(jié)的位移量為0。這是一種特殊的基址變址尋址方式,基址寄存器為BX,變址寄存器為AL。8MOVBX,2A00HMOVAL,3XLAT■
舉例DS:2A0041H+142H+243H+344H+445H+546H+647H+748H+849H+94AH+104BH+114CH+124DH+134EH+144FH+1550H+1651H+1752H+1853H.+1954H+2055H9IN(Input)輸入指令一般格式INAL,n;BAL←[n]
INAX,n;WAX←[n+1][n]
INAL,DX;BAL←[DX]
INAX,DX;WAX←[DX+1][DX]
功能:從I/O端口輸入數(shù)據(jù)至AL或AX。注意:輸入指令允許把一個(gè)字節(jié)或一個(gè)字由一個(gè)輸入端口傳送到AL或AX中。若端口地址超過(guò)255時(shí),則用DX保存端口地址,這樣用DX作端口尋址最多可尋找64K個(gè)端口(必須用DX)。2.輸入輸出指令;10OUT(Output)輸出指令一般格式OUTn,AL;BAL→[n]
OUTn,AX;WAX→[n+1][n]
OUTDX,AL;BAL→[DX]
OUTDX,AX;WAX→[DX+1][DX]功能:將AL或AX的內(nèi)容輸出至I/O端口。注意:該指令將AL或AX中的內(nèi)容傳送到一個(gè)輸出端口。端口尋址方式與IN指令相同。112011-16.8088執(zhí)行指令OUT12,AL時(shí),數(shù)據(jù)總線(xiàn)傳送的內(nèi)容是【】
A.AL的值B.AX的值
C.12D.12H2010-17.執(zhí)行指令OUTDX,AL時(shí)【】
A.B.
C.D.AC12(1)LEA(loadeffectiveaddress)取有效地址■指令匯編格式:LEAreg16,mem操作:將指令中給出的存儲(chǔ)器操作數(shù)的有效地址(即地址的偏移量)送到指定的寄存器中。
reg16←mem的EA■受影響的狀態(tài)標(biāo)志位:沒(méi)有■說(shuō)明:LEA指令是將源操作數(shù)地址的偏移量,即有效地址傳送到目標(biāo)操作數(shù)中。源操作數(shù)必須是一個(gè)存儲(chǔ)器操作數(shù),目標(biāo)操作數(shù)可以是任一16位通用寄存器、指針寄存器或變址寄存器。3.目標(biāo)地址傳送指令;13指令LEA與LDS,LES的比較已知:DS=09A0H,BX=0048HLEADI,[BX]LDSDI,[BX]LESDI,[BX]→執(zhí)行后:DI=0048H→執(zhí)行后:DI=003EHDS=0816H→執(zhí)行后:DI=003EHES=0816HDS=09A008H……3EH00H16H0048H0049H004AH004BH14■標(biāo)志寄存器長(zhǎng)度為16位,其中9個(gè)位有定義?!痢痢痢罯F
DFIFTFSF
ZF×AF×PF×CF1514131211109876543210標(biāo)志寄存器FR4.標(biāo)志傳送指令15●(1)LAHF指令(讀標(biāo)志指令)指令格式:LAHF指令功能:將標(biāo)志寄存器低8位→AH?!瘢?)SAHF(設(shè)置標(biāo)志指令)指令格式:SAHF指令功能:將AH→標(biāo)志寄存器低8位。SFZF
AFPFCF01234567AHLAHF的功能SFZF
AFPFCF01234567AHSAHF的功能16●
(3)PUSHF指令(標(biāo)志進(jìn)棧)指令格式:PUSHF指令功能:將16位標(biāo)志寄存器入棧,同時(shí)修改棧指針SP?!瘢?)POPF指令(標(biāo)志出棧)指令格式:POPF指令功能:將棧頂?shù)囊粋€(gè)字送標(biāo)志寄存器,同時(shí)修改棧指針SP。注:字傳送方式16位標(biāo)志寄存器中的16位數(shù)據(jù)傳送即狀態(tài)標(biāo)志位OF、CF、AF、ZF、SF、PF的傳送及控制標(biāo)志位IF、DF、TF的傳送17指令類(lèi)型助記符算術(shù)運(yùn)算加法(5)ADD,ADC,INC,AAA,DAA減法(7)SUB,SBB,DEC,NEG,CMP,AAS,DAS乘法(3)MUL,IMUL,AAM除法(3)DIV,IDIV,AAD轉(zhuǎn)換(2)CBW,CWD2.3.2算術(shù)運(yùn)算指令181.加法指令(1)ADD(addition)加法(2)ADC(additionwithcarry)帶進(jìn)位加(3)INC(incrementby1)增119(1)ADD(addition)加法■指令匯編格式:ADDdest,src操作:兩個(gè)操作數(shù)求和,結(jié)果存目標(biāo)操作數(shù)中。dest←(dest)+(src)■受影響的狀態(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF說(shuō)明:dest和src不能同時(shí)為存儲(chǔ)器操作數(shù)和段寄存器。20例:ADDCL,10ADDDX,SIADDAX,MEMADD[BX],ALADD[DI],3000H21(2)ADC(additionwithcarry)帶進(jìn)位加法■指令匯編格式:ADCdest,src操作:兩個(gè)操作數(shù)相加的同時(shí),再加上CF。結(jié)果存入目標(biāo)操作數(shù)中。dest←(dest)+(src)+CF■受影響的狀態(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF■說(shuō)明:ADC指令主要用于多精度數(shù)據(jù)相加。22(3)INC(incrementbyone)增1■指令匯編格式:INCdest操作:將指定的操作數(shù)加1,并將結(jié)果回送到目標(biāo)操作數(shù)中。dest←(dest)+1■dest可以是寄存器(段寄存器除外)、變量。■dest不允許是立即數(shù)?!鍪苡绊懙臓顟B(tài)標(biāo)志位:OF,SF,ZF,AF,PF■說(shuō)明:INC指令不影響CF。例:INCDLINCSIINCBYTEPTR[BX][SI]INCWORDPTR[DI]23指令格式:DAA指令功能:對(duì)AL中的由兩個(gè)組合BCD碼相加所得的結(jié)果進(jìn)行調(diào)整,并將調(diào)整后的結(jié)果存于A(yíng)L中。操作過(guò)程:如果AL的低4位大于9或者AF=1,則AL+6→AL,并置AF=1;如果AL的高4位大于9或者CF=1,則AL+60H→AL,并置CF=1。注意本指令使用時(shí)必須緊跟在A(yíng)DD或ADC指令之后。而且,只能對(duì)AL中的結(jié)果進(jìn)行調(diào)整,因此對(duì)多字節(jié)的十進(jìn)制數(shù)運(yùn)算,只能從低字節(jié)開(kāi)始逐個(gè)字節(jié)的進(jìn)行運(yùn)算和調(diào)整。(4)DAA(組合BCD碼的加法調(diào)整指令)說(shuō)明:指令會(huì)影響OF、SF、ZF、AF、PF、CF。242.減法指令(1)SUB(subtract)減法(2)SBB(subtractwithborrow)帶借位減(3)DEC(decrementby1)減1(4)NEG(negate)取補(bǔ)
CMP(compare)比較
DAS(decimaladjustforsubtract)25(1)SUB(subtract)減法■指令匯編格式:SUBdest,src操作:從目標(biāo)操作數(shù)減去源操作數(shù),結(jié)果存入目標(biāo)操作數(shù)。
dest←(dest)-(src)■dest,src可以是寄存器(段寄存器除外)、變量?!鰏rc可以是立即數(shù)?!霾辉试Sdest和src同時(shí)為變量?!鍪苡绊懙臓顟B(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF例:SUBAL,98HSUBBX,CXSUBDX,WORDPTR[VAR1]SUB[BX],AXSUBWORDPTR[DI],1234H26(2)SBB(subtractwithborrow)帶借位減法■指令匯編格式:SBBdest,src操作:從目標(biāo)操作數(shù)中減去源操作數(shù)和CF,結(jié)果存入目標(biāo)操作數(shù)中。dest←(dest)-(src)-CF■dest,src可以是寄存器(段寄存器除外)、變量?!鰏rc可以是立即數(shù)?!霾辉试Sdest和src同時(shí)為變量?!鍪苡绊懙臓顟B(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF例:SBBAL,0SBBDL,CLSBBAX,[BX]SBB[1234H],ALSBBWORDPTR[1234H],56H27(3)DEC(decrementbyone)減1■指令匯編格式:DECdest操作:將指定的操作數(shù)減1,并將結(jié)果送回到目標(biāo)操作數(shù)中。
dest←(dest)-1■dest,src可以是寄存器(段寄存器除外)、變量?!鍪苡绊懙臓顟B(tài)標(biāo)志位:OF,SF,ZF,AF,PF■說(shuō)明:DEC指令不影響CF。例:DECBLDECCXDECBYTEPTR[BX]DECWORDPTR[BP][DI]28(4)NEG(negate)取補(bǔ)(取負(fù))■指令匯編格式:NEGdest操作:從0中減去指令中給定的操作數(shù),最后將結(jié)果送回到給定的操作數(shù)中。dest←0-(dest)■dest可以使寄存器(段寄存器除外)、變量。■dest不允許是立即數(shù)?!鍪苡绊懙臓顟B(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF例:NEGBHNEGAXNEGWORDPTR[SI+10]29(5)CMP(compare)比較■指令匯編格式:CMPdest,src操作:從目標(biāo)操作數(shù)中減去源操作數(shù)
(dest)-(src)■dest,src可以是寄存器(段寄存器除外)、存儲(chǔ)器變量?!鰀est,src的位數(shù)必須相同?!鲋噶畈槐A魣?zhí)行結(jié)果。■受影響的狀態(tài)標(biāo)志位:OF,SF,ZF,AF,PF,CF例:CMPAL,0BHCMPCX,DICMPAX,GAMMACMPAREA2,15030分為無(wú)符號(hào)數(shù)與有符號(hào)數(shù)的比較,根據(jù)相減結(jié)果:a.無(wú)符號(hào)若ZF=1,則兩數(shù)相等若ZF=0,CF=1,則被減數(shù)小b.有符號(hào)OF=0時(shí),若SF=0,則A>B若SF=1,則A<BOF=1時(shí),若SF=1,則A>B若SF=0,則A<B31指令格式:DAS
指令功能:對(duì)AL中的由兩個(gè)組合BCD碼相減所得的結(jié)果進(jìn)行調(diào)整,并將調(diào)整后的結(jié)果存于A(yíng)L中。操作過(guò)程:調(diào)整方法與DAA類(lèi)似,不同的只是當(dāng)AL的低4位大于9或者AF=1,則AL-6→AL,并置AF=1;而當(dāng)AL的高4位大于9或者CF=1時(shí),則AL-60H→AL,并置CF=1。注意使用DAS指令必須緊跟在SUB或SBB指令之后。(6)DAS(組合BCD碼的減法調(diào)整指令)322012-08.設(shè)AL=1,8086執(zhí)行指令SUBAL,2后,為0的標(biāo)志是【】
A.CF B.OF
C.PFD.SF2009-05.指令CMPBL,DL運(yùn)算結(jié)果將會(huì)【】
A.影響標(biāo)志位,并把差值送BLB.不影響標(biāo)志位,但將差值送BL
C.影響標(biāo)志位,但不將差值送BLD.不影響標(biāo)志位,也不計(jì)算差值2009-11.兩數(shù)相減其結(jié)果為零;則標(biāo)志寄存器中必定為1的標(biāo)志位是【】
A.CFB.DF
C.SFD.ZFBCD33(1)CBW(convertbytetoword)將字節(jié)轉(zhuǎn)換為字(2)CWD(convertwordtodoubleword)將字轉(zhuǎn)換為雙字5.轉(zhuǎn)換指令34指令類(lèi)型助記符邏輯指令邏輯運(yùn)算(5)AND,TEST,OR,XOR,NOT移位(3)SHL,SAL,SHR,SAR循環(huán)移位(4)ROL,ROR,RCL,RCR1.AND(and,logicalconjunction)邏輯與2.TEST(test,orlogicalcompare)測(cè)試3.OR(or,inclusive)邏輯或4.XOR(exclusiveor)異或5.NOT(not,orform1’scomplement)取反2.3.3邏輯運(yùn)算指令351.AND邏輯與■指令匯編格式:ANDdest,src
dest←(dest)∧(src),CF←0,OF←0●
指令會(huì)影響SF,ZF,PF;總是將OF=0,CF=0;對(duì)AF不定。2.TEST測(cè)試■指令匯編格式:TESTdest,src(dest)∧(src),CF←0,OF←0●
指令會(huì)影響SF,ZF,PF;總是將OF=0,CF=0;對(duì)AF不定。3.OR邏輯或■指令匯編格式:ORdest,srcdest←(dest)∨(src),CF←0,OF←0●
指令會(huì)影響SF,ZF,PF;總是將OF=0,CF=0;對(duì)AF不定。364.XOR異或■指令匯編格式:XORdest,srcdest←(dest)⊕(src),CF←0,OF←0●
4)指令會(huì)影響SF,ZF,PF;總是將OF=0,CF=0;對(duì)AF不定?!稣f(shuō)明:XOR指令可用來(lái)使操作數(shù)中的某些位取反,某些位不變。5.NOT取反■指令匯編格式:NOTdest
dest←dest●
對(duì)標(biāo)志位影響不確定。37邏輯操作指令應(yīng)用舉例將寄存器AL的第1,3,5,7位清0,其它位不變。
ANDAL,01010101B將寄存器AL的第1,3,5,7位置1,其它位不變。
ORAL,10101010B將寄存器AL的第1,3,5,7位取反,其它位不變。
XORAL,10101010B382011-08.設(shè)AL=80H,執(zhí)行指令ORAL,AL后,被置位的標(biāo)志是【】P74
A.CFB.OF
C.SFD.ZF2010-02.指令XORAL,AL執(zhí)行后,則【】P75
A.CF=1B.SF=1
C.ZF=1D.OF=1CC39移位指令SHLdest,nSHRdest,nSALdest,nSARdest,nSHL
reg/mem,1/CL ;邏輯左移SHR
reg/mem,1/CL ;邏輯右移SAL
reg/mem,1/CL ;算術(shù)左移SARreg/mem,1/CL ;算術(shù)右移40循環(huán)移位指令ROLdest,nRORdest,nRCLdest,nRCRdest,nROL
reg/mem,1/CL ;不帶進(jìn)位循環(huán)左移ROR
reg/mem,1/CL ;不帶進(jìn)位循環(huán)右移RCL
reg/mem,1/CL ;帶進(jìn)位循環(huán)左移RCRreg/mem,1/CL ;帶進(jìn)位循環(huán)右移41指令類(lèi)型助記符邏輯指令邏輯運(yùn)算(5)AND,TEST,OR,XOR,NOT移位(3)SHL,SAL,SHR,SAR循環(huán)移位(4)ROL,ROR,RCL,RCR移位循環(huán)邏輯算術(shù)不帶進(jìn)位帶進(jìn)位左右CFdest0CFdest0CFdestCFdest0CFdestCFdestCFdestCFdestSHLSALRCLROLSHRSARRCRROR422012-15.設(shè)AL=10H,指令SHRAL,1執(zhí)行后,AL的值為【】P76
A.08HB.10H
C.18HD.20H2011-24.設(shè)AL=80H,當(dāng)執(zhí)行指令SARAL,1后,AL中的內(nèi)容是
。AC0H432.串操作指令串操作指令是8086指令系統(tǒng)中比較獨(dú)特的一類(lèi)指令,采用比較特殊的數(shù)據(jù)串尋址方式,在操作主存連續(xù)區(qū)域的數(shù)據(jù)時(shí),特別好用,因而常用重點(diǎn)掌握: MOVSSTOSLODS CMPSSCASREP一般了解: REPZ/REPEREPNZ/REPNE指令類(lèi)型助記符串處理串操作(5)MOVS,CMPS,SCAS,LODS,STOS重復(fù)控制(3)REP,REPE,REPZ,REPNE,REPNZ44(1)MOVSB/MOVSW
數(shù)據(jù)串傳送指令(movestring)把字節(jié)或字操作數(shù)從主存的源地址傳送至目的地址MOVSB
;字節(jié)串傳送:[ES:DI]←[DS:SI] ;SI←SI±1,DI←DI±1MOVSW
;字串傳送:[ES:DI]←[DS:SI] ;SI←SI±2,DI←DI±245(2)CMPSB/CMPSW
數(shù)據(jù)串比較指令(comparestring)將主存中的源操作數(shù)減去目的操作數(shù),以便設(shè)置標(biāo)志,進(jìn)而比較兩操作數(shù)之間的關(guān)系。CMPSB
;字節(jié)串比較:[DS:SI]-[ES:DI] ;SI←SI±1,DI←DI±1CMPSW
;字串比較:[DS:SI]-[ES:DI] ;SI←SI±2,DI←DI±2■受影響的標(biāo)志位:OF,SF,ZF,AF,PF,CF46(3)SCASB/SCASW
數(shù)據(jù)串搜索指令(scanstring)將AL/AX減去目的操作數(shù),以便設(shè)置標(biāo)志,進(jìn)而比較AL/AX與操作數(shù)之間的關(guān)系。SCASB
;字節(jié)串查找:AL-[ES:DI] ;DI←DI±1SCASW
;字串查找:AX-[ES:DI] ;DI←DI±2■受影響的標(biāo)志位:OF,SF,ZF,AF,PF,CF47(4)LODSB/LODSW
取數(shù)據(jù)串元素指令(loadstring)把指定主存單元的數(shù)據(jù)傳送給AL或AXLODSB
;字節(jié)串讀?。篈L←[DS:SI] ;SI←SI±1LODSW
;字串讀?。篈X←[DS:SI] ;SI←SI±248(5)STOSB/STOSW
存數(shù)據(jù)串元素指令(storestring)把AL或AX數(shù)據(jù)傳送至目的地址STOSB
;字節(jié)串存儲(chǔ):[ES:DI]←AL ;DI←DI±1STOSW
;字串存儲(chǔ):[ES:DI]←AX ;DI←DI±249指令類(lèi)型助記符控制轉(zhuǎn)移轉(zhuǎn)移無(wú)條件轉(zhuǎn)移(1)JMP條件轉(zhuǎn)移(19)JA/JNBE,JAE/JNB,JB/JNAE,JBE/JNA,JC,JCXZJE/JZ,JNS,JO,JS,JG/JNLE,JGE/JNL,JL/JNGEJLE/JNG,JNC,JNE/JNZ,JNO,JNP/JPO,JP/JPE循環(huán)控制(5)LOOP,LOOPE,LOOPZ,LOOPNE,LOOPNZ過(guò)程調(diào)用(2)CALL,RET中斷指令(3)INT,INTO,IRET2.3.5轉(zhuǎn)跳指令501.無(wú)條件轉(zhuǎn)移指令JMP■指令匯編格式:JMPtarget■受影響的狀態(tài)標(biāo)志位:無(wú)■說(shuō)明:指令中的target可以是直接標(biāo)號(hào)、寄存器間接或存儲(chǔ)器間接尋址形式。JMP分為近轉(zhuǎn)跳(NearJump)和遠(yuǎn)轉(zhuǎn)跳(FarJump)兩大類(lèi)51代碼段代碼段格式:JMPSHORTtarget
;IP←IP+target(8位);-128≤target≤127格式:JMPNEARPTRtarget
;IP←IP+target(16位);-32768≤target≤32767格式:JMPFARPTRtarget
;CS←target的段;IP←target的偏移
實(shí)際編程時(shí),匯編程序會(huì)根據(jù)目標(biāo)地址的屬性,自動(dòng)處理成短轉(zhuǎn)跳、近轉(zhuǎn)跳或遠(yuǎn)轉(zhuǎn)跳程序員可用操作符short、nearptr
或farptr
強(qiáng)制成為需要的轉(zhuǎn)移類(lèi)型代碼段代碼段52(2)Jxx指令(條件轉(zhuǎn)移指令)指令格式及操作Jxxtarget;target:目標(biāo)地址;Jxx是短轉(zhuǎn)跳功能Jxx根據(jù)不同條件轉(zhuǎn)跳target。不同條件Jxx格式不同。說(shuō)明Jxx對(duì)標(biāo)志位沒(méi)有影響。53根據(jù)利用的標(biāo)志位不同,分成三種情況:⑴判斷單個(gè)標(biāo)志位狀態(tài)⑵比較無(wú)符號(hào)數(shù)高低⑶比較有符號(hào)數(shù)大小
Jxx指令實(shí)際雖然只有16條,但卻有30個(gè)助記符采用多個(gè)助記符,目的是為了方便記憶和使用54(1)判斷單個(gè)標(biāo)志位狀態(tài)測(cè)試位指令格式轉(zhuǎn)移條件含義ZFJE/JZOPRZF=1相等/等于0JNE/JNZOPRZF=0不相等/不等于SFJSOPRSF=1是負(fù)數(shù)JNSOPRSF=0是正數(shù)PFJP/JPEOPRPF=1有偶數(shù)個(gè)“1”JNP/JPOOPRPF=0有奇數(shù)個(gè)“1”O(jiān)FJOOPROF=1有溢出JNOOPROF=0無(wú)溢出CFJCOPRCF=1有進(jìn)位/借位JNCOPRCF=0無(wú)進(jìn)位/借位55(2)比較無(wú)符號(hào)數(shù)高低指令格式轉(zhuǎn)移條件含義名稱(chēng)JB/JNAE/JC標(biāo)號(hào)CF=1A<B低于(不高于或等于)JAE/JNB/JNC標(biāo)號(hào)CF=0A>=B高于或等于(不低于)JA/JNBE標(biāo)號(hào)CF=0且ZF=0A>B高于(不低于或等于)JBE/JNA標(biāo)號(hào)CF=1或ZF=1A<=B低于或等于(不高于)無(wú)符號(hào)數(shù)的大小用高(Above)、低(Below)表示,需要利用CF確定高低、利用ZF標(biāo)志確定相等(Equal)56(3)比較有符號(hào)數(shù)大小指令格式轉(zhuǎn)移條件含義名稱(chēng)JG/JNLE標(biāo)號(hào)SF=OF且ZF=0A>B大于(不小于或等于)JGE/JNL標(biāo)號(hào)SF=OFA>=B大于或等于(不小于)JL/JNGE標(biāo)號(hào)SF≠OFA<B小于(不大于或等于)JLE/JNG標(biāo)號(hào)SF≠OF或ZF=1A<=B小于或等于(不大于)判斷有符號(hào)數(shù)的大(Greater)、?。↙ess),需要組合OF、SF標(biāo)志、并利用ZF標(biāo)志確定相等與否572.循環(huán)控制指令LOOPLOOPE/LOOPZLOOPNE/LOOPNZtarget標(biāo)識(shí)循環(huán)體入口的標(biāo)號(hào)LOOP(LOOP)循環(huán)LOOPZ/LOOPE(Loopwhilezero,orequal)當(dāng)為零或相等時(shí)循環(huán)LOONZ/LOOPNE(Loopwhilenonzero,ornotequal)當(dāng)不為零或不相等時(shí)循環(huán)58(1)LOOP重復(fù)控制指令■指令格式:LOOPtarget■功能:①CX←CX-1②若CX≠0,則使控制轉(zhuǎn)到target標(biāo)識(shí)的循環(huán)入口處,繼續(xù)下一次循環(huán),否則退出循環(huán)體,執(zhí)行后續(xù)指令?!稣f(shuō)明1)LOOP對(duì)標(biāo)志位沒(méi)有影響;2)LOOP是短轉(zhuǎn)跳,即-128≤target≤+127.59過(guò)程(Procedure)相當(dāng)于子程序,是完成特定功能的一段程序。當(dāng)主程序(調(diào)用程序)需要執(zhí)行這個(gè)功能時(shí),采用CALL調(diào)用指令轉(zhuǎn)移到該過(guò)程(子程序)的起始處執(zhí)行。當(dāng)運(yùn)行完子程序功能后,采用RET返回指令回到主程序繼續(xù)執(zhí)行。
轉(zhuǎn)移指令有去無(wú)回過(guò)程調(diào)用需要返回,其中利用堆棧保存返回地址3.過(guò)程調(diào)用指令60■指令匯編格式:CALLproc■功能:CALL指令執(zhí)行后,CPU執(zhí)行proc?!稣f(shuō)明:1)CALL對(duì)標(biāo)志位沒(méi)有影響;2)proc表示被調(diào)用過(guò)程的名稱(chēng),是一個(gè)存儲(chǔ)器操作數(shù)。(1)CALL指令61過(guò)程調(diào)用分類(lèi)①段內(nèi)調(diào)用與段間調(diào)用段內(nèi)調(diào)用:通過(guò)指令指針I(yè)P的變化實(shí)現(xiàn)的。段間調(diào)用:通過(guò)IP和CS的共同變化實(shí)現(xiàn)的。②直接調(diào)用與間接調(diào)用
直接調(diào)用:子程序的入口地址直接包含在指令代碼中。間接調(diào)用:子程序的入口地址通過(guò)寄存器或存儲(chǔ)器間接得到的。62(2)RET指令
■匯編格式:RET RETpop_value;
■功能:從被調(diào)用過(guò)程返回。1)從近過(guò)程返回
RET;IP←[SP+1:SP] ;SP←SP+2
RETpop_value;IP←[SP+1:SP] ;SP←SP+2;SP←SP+pop_value632)從遠(yuǎn)過(guò)程返回
RET;IP←[SP+1:SP] ;SP←SP+2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位管理制度合并選集員工管理篇十篇
- 《學(xué)習(xí)英語(yǔ)的困難》課件
- 單位管理制度分享大合集【員工管理篇】十篇
- 《證券經(jīng)紀(jì)與交易》課件
- 2024年農(nóng)業(yè)局上半年科技教育工作總結(jié)
- 九上歷史:第一次月考A卷(考試版+解析)
- DBJT 13-313-2019 城市軌道交通工程滲漏水治理技術(shù)規(guī)程
- XX中學(xué)師生生活綜合樓可研報(bào)告
- 《液壓支架技術(shù)》課件
- 《證券投資要義》課件
- 口腔頜面外科學(xué) 09顳下頜關(guān)節(jié)疾病
- 應(yīng)急物資清單明細(xì)表
- 房地產(chǎn)估計(jì)第八章成本法練習(xí)題參考
- 《社會(huì)主義核心價(jià)值觀(guān)》優(yōu)秀課件
- DB11-T1835-2021 給水排水管道工程施工技術(shù)規(guī)程高清最新版
- 《妊娠期糖尿病患者個(gè)案護(hù)理體會(huì)(論文)3500字》
- 《小學(xué)生錯(cuò)別字原因及對(duì)策研究(論文)》
- 便攜式氣體檢測(cè)報(bào)警儀管理制度
- 酒店安全的管理制度
- (大潔王)化學(xué)品安全技術(shù)說(shuō)明書(shū)
- 2022年科學(xué)道德與學(xué)術(shù)規(guī)范知識(shí)競(jìng)賽決賽題庫(kù)(含答案)
評(píng)論
0/150
提交評(píng)論