版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第三章8086指令系統(tǒng)8086操作數(shù)尋址方式8086指令格式、功能,以及指令執(zhí)行完以后對標(biāo)志寄存器的影響本章重點(diǎn)指令指令系統(tǒng)指令格式:操作碼+操作數(shù)操作碼:表明指令完成的什么操作,以助記符形式MOV、ADD、SUB等操作數(shù):表示指令的操作對象常數(shù)寄存器存儲器3.1指令系統(tǒng)概述:能讓計算機(jī)執(zhí)行各種操作的命令。:計算機(jī)所能執(zhí)行的全部指令的集合。操作數(shù)的尋址方式概念:尋找操作數(shù)或操作數(shù)地址的方法目的:以確定數(shù)據(jù)的來源和去處。源操作數(shù)目的操作數(shù)3.28086CPU的尋址方式指令格式:指令源操作數(shù),目的操作數(shù)指令源操作數(shù)指令目的操作數(shù)立即尋址寄存器尋址直接尋址寄存器間接尋址基址尋址變址尋址基址變址尋址基址變址相對尋址操作數(shù)的尋址方式存儲器尋址——立即數(shù)操作數(shù)——寄存器操作數(shù)(存儲器操作數(shù))操作數(shù)在指令碼中,由指令直接給出。MOVAX,1234H;AX←1234H
對應(yīng)的指令碼:B83412H不需要訪存取操作數(shù),執(zhí)行速度快1.立即尋址12H34HB8H存儲器高地址低地址←操作碼……AXAHALCPU指令隊列B83412H12H34H操作數(shù)存放在存儲單元的某一位置,指令中直接給出該存儲單位的8/16位偏移量Disp操作數(shù)默認(rèn)存放在DS段中格式:指令操作數(shù)1,[Disp]舉例1:DS=2000H,ES=1500HMOVAX,[1000H]MOVAX,ES[1000H]3.直接尋址9EA=Disp操作數(shù)物理地址=(默認(rèn)段)*10H+Disp物理地址=2000H*10H+1000H物理地址=1500H*10H+1000H南京理工大學(xué)紫金學(xué)院陳琳琳①④⑤③②操作數(shù)如果不在DS數(shù)據(jù)段,而在DS以外的段中,則需要在操作數(shù)前面加上段超越修飾符修飾符為段寄存器的名稱如MOVAX,ES[1000H]段超越11段超越例:已知(DS)=2100H,(SS)=1100H,(ES)=3000H,(BX)=0010H,(BP)=1000H,求下列指令的源操作數(shù)的物理地址。MOVAX,[BX]MOVAX,[BP]MOVAX,ES:[BP]13物理地址=(DS)*16+(BX)=21010H物理地址==(SS)*16+(BP)=
12000H物理地址==(ES)*16+(BP)=31000H操作數(shù)存放在存儲單元某一位置,其EA由基址寄存器BX或BP加指令給出的Disp得到默認(rèn)段同寄存器尋址格式:指令操作數(shù)1,[基址寄存器+Disp]指令操作數(shù)1,Disp[基址寄存器]舉例:MOVAX,[BX+100H]或MOVAX,100H[BX]5.基址尋址14EA=BX/BP+Disp操作數(shù)物理地址=(默認(rèn)段)*10H+寄存器+Disp操作數(shù)存放在存儲單元某一位置,其EA由變址寄存器SI/DI加指令給出的Disp得到默認(rèn)段為DS格式:指令操作數(shù)1,[變址寄存器+Disp]指令操作數(shù)1,Disp[變址寄存器]舉例:MOVAX,[SI+100H]或MOVAX,100H[DI]6.變址尋址15EA=SI/DI+Disp操作數(shù)物理地址=(默認(rèn)段)*10H+寄存器+Disp操作數(shù)存放在存儲單元的某一位置,其EA由變址寄存器SI/DI加基址寄存器BX/BP加指令給出的偏移量Disp得到默認(rèn)段同寄存器尋址格式:指令操作數(shù)1,[基址寄存器+變址寄存器+Disp]舉例:MOVAX,[SI+100H]或MOVAX,100H[DI]8.基址變址相對尋址17EA=BP/BX+SI/DI+Disp操作數(shù)物理地址=(默認(rèn)段)*10H+BP/BX+SI/DI+Disp位移量Disp指令中的一個8/16位數(shù)基地址基址寄存器BX或基址指針BP的內(nèi)容變址源變址寄存器SI或目的變址寄存器DI的內(nèi)容9.總結(jié):EA的組成10.各種尋址方式對比尋址方式操作數(shù)物理地址計算立即尋址操作數(shù)在指令碼中,無法計算寄存器尋址操作數(shù)在寄存器中,無物理地址直接尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+Disp寄存器間接尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+(BX/BP/SI/DI)基址尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+(BX/BP)+Disp變址尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+(SI/DI)+Disp基址變址尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+(BX/BP)+(SI/DI)基址變址相對尋址操作數(shù)在內(nèi)存中,(默認(rèn)段)*16+(BX/BP)+(SI/DI)+Disp19可以使用段超越源、目的操作數(shù)均不能為IP、F,目的操作數(shù)不能為立即數(shù)、CS。段寄存器之間不能用MOV指令傳遞數(shù)據(jù)。立即數(shù)不能用MOV指令送到段寄存器。DST和SRC不能同時為存儲器操作數(shù)。傳送的源操作數(shù)和目的操作數(shù)必須同時為字或者字節(jié)。立即數(shù)送存儲單元時應(yīng)該指出該存儲單元為字單元還是字節(jié)單元。注意:MOV[BX+SI],255應(yīng)為:MOVBYTEPTR[BX+SI],255
或MOVWORDPTR[BX+SI],255
或MOV[BX+SI],BYTEPTR255
或MOV[BX+SI],WORDPTR255舉例1:非法指令:255可以是8位數(shù)(1字節(jié)),也可以是16位數(shù)(2字節(jié)),[BX+SI]指向的存儲單元不明確是字節(jié)還是字單元判斷下列指令是否正確,若不正確,請說明理由。(1)MOVDS,CS(2)MOVIP,BX;(3)MOVCS,AX(4)MOVF,0000H(5)MOV[AX],[BX](6)MOVDX,IP(7)MOVBX,[SI+DI](8)MOV[1000],30(9)MOVES,1000H(10)MOVAX,BL舉例2:將寄存器BL的內(nèi)容送寄存器DL分析:通用寄存器通用寄存器MOVDL,BL將AX的內(nèi)容與CX的內(nèi)容互換分析:內(nèi)容互換必須借助第三方MOVBX,AXMOVAX,CXMOVCX,BX舉例4:XCHGDST,SRC功能:將SRC和DST互換2.交換指令目的操作數(shù)源操作數(shù)通用寄存器通用寄存器存儲單元存儲單元進(jìn)棧:PUSHSRC
執(zhí)行的操作:出棧:POPDST
執(zhí)行的操作:在8086中,進(jìn)棧、出棧均是以字為單位的。3.堆棧操作指令16位的通用寄存器、段寄存器、存儲單元16位的通用寄存器、段寄存器(CS除外)、存儲單元(SP)-1→SP,SRC高字節(jié)→[SP]([SP])→DST低字節(jié),(SP)+1→SP(SP)-1→SP,SRC低字節(jié)→[SP]([SP])→DST高字節(jié),(SP)+1→SP舉例:PUSHAXPOPBXXXSPAHALSPXX62H03HSP高低BHBL03H62HSPSP-1-1+1SP+1MOV、XCHG、PUSH、POP不改變標(biāo)志寄存器的值標(biāo)志位傳送指令可能改變標(biāo)志寄存器的值4.標(biāo)志位傳送指令CFPFAFZFSFTFIFDFOFFHFL07815取標(biāo)志寄存器指令/存標(biāo)志寄存器指令LAHFSAHF標(biāo)志進(jìn)棧指令/標(biāo)志出棧指令PUSHFPOPF
標(biāo)志寄存器操作指令例:將標(biāo)志寄存器F清零。MOVAX,0PUSHAXPOPFCLC;復(fù)位進(jìn)位標(biāo)志:CF←0STC;置位進(jìn)位標(biāo)志:CF←1CMC;求反進(jìn)位標(biāo)志:CF←~CFCLD;復(fù)位方向標(biāo)志:DF←0,串操作后地址增大STD;置位方向標(biāo)志:DF←1,串操作后地址減小CLI;復(fù)位中斷標(biāo)志:IF←0,禁止響應(yīng)可屏蔽中斷STI;置位中斷標(biāo)志:IF←1,允許響應(yīng)可屏蔽中斷標(biāo)志位操作指令1.裝入有效地址指令(即獲取SRC的EA)
LEADST,SRCSRC——存儲器操作數(shù)??梢允亲兞俊?biāo)號或地址表達(dá)式。DST——16位的通用寄存器偽操作符OFFSET,可以在匯編過程中得到變量(或標(biāo)號)的偏移地址。5.地址傳送指令MOVBX,400HMOVSI,3CHLEABX,[BX+SI+0F62H] 舉例1:BX=?139EH變量WVAR的偏移量是0004H,值為4142HMOVAX,WVAR
LEASI,WVARMOVCX,[SI]MOVDI,OFFSETWVAR MOVDX,[DI]舉例2:AX=?4142HSI=?0004HCX=?4142HDI=?0004HDX=?4142H3種指令作用相同完成累加器(AX/AL)與I/O端口間的數(shù)據(jù)傳送。輸入:INAX/AL,端口號功能:端口數(shù)據(jù)→AX/AL輸出:OUT端口號,AX/AL功能:AX/AL→端口6.輸入/輸出指令直接尋址當(dāng)端口地址≤255(0~0FFH)時,端口地址可以以立即數(shù)的形式直接出現(xiàn)在輸入、輸出指令中間接尋址當(dāng)端口地址>255時,必須先將端口地址存于DX中,輸入、輸出指令中用DX表示端口地址端口地址的尋址方式例1:從地址為100的端口讀入一個字節(jié)數(shù)據(jù)INAL,100例2:向地址為100H的端口寫入一個字?jǐn)?shù)據(jù)
MOVDX,100HOUTDX,AX舉例:或:MOVDX,100
INAL,DX運(yùn)算指令大部分會對標(biāo)志寄存器產(chǎn)生影響1.加法/減法指令指令格式:ADD/SUBDST,SRC功能:將(DST)(SRC)的結(jié)果送入DST,根據(jù)運(yùn)算結(jié)果設(shè)置標(biāo)志寄存器中的6個狀態(tài)位。3.4.2算術(shù)運(yùn)算指令加法/減法指令目的操作數(shù)源操作數(shù)通用寄存器通用寄存器存儲單元存儲單元立即數(shù)例1:(DL)=2EH,(AL)=2CHADDAL,DL結(jié)果:(AL)=5AHAF=,CF=,OF=,PF=,ZF=,SF=例2:SUBAX,AX和MOVAX,0的區(qū)別
SUB指令會影響狀態(tài)標(biāo)志位,MOV指令不影響標(biāo)志位。舉例:010110100010110000101110+)指令格式:ADC/SBB DST,SRC功能:(DST)(SRC)(CF)→DST,并根據(jù)運(yùn)算結(jié)果設(shè)置標(biāo)志寄存器中的6個狀態(tài)標(biāo)志位。用途:處理多字節(jié)數(shù)據(jù)的加減運(yùn)算,一般可與普通的加減法指令聯(lián)用。2.帶進(jìn)位的加法/帶借位的減法指令I(lǐng)NC/DECDST功能:(DST)1→DST,該操作不影響CF,影響其它狀態(tài)標(biāo)志位。通常用來對計數(shù)器和地址指針進(jìn)行調(diào)整。INCSIDECBYTEPTR[BX]3.加1/減1指令
可以是8/16位的通用寄存器或存儲單元;必須指明存儲單元的類型NEGDST功能:DST←0-(DST),根據(jù)運(yùn)算結(jié)果設(shè)置標(biāo)志寄存器中的6個狀態(tài)位。運(yùn)算結(jié)果:若DST是正數(shù)(負(fù)數(shù))將其變成絕對值相等的負(fù)數(shù)(正數(shù))。例:假設(shè)已知(BL)=10011010,則執(zhí)行指令
NEGBL4.求補(bǔ)指令;(BL)=0110011010011010為負(fù)數(shù),求補(bǔ)為1;變成負(fù)數(shù)為:0CMPDST,SRC功能:根據(jù)(DST)-(SRC)的結(jié)果置標(biāo)志位,但不改變DST的值。通常在CMP后接JG、JZ、JC等條件轉(zhuǎn)移指令。5.比較指令可以是8/16位的通用寄存器、存儲單元、立即數(shù)可以是8/16位的通用寄存器、存儲單元MULSRC——無符號數(shù)乘法IMULSRC——有符號數(shù)乘法除了影響CF和OF,其他狀態(tài)標(biāo)志位內(nèi)容不確定。6.乘法指令A(yù)X(16)SRC(16)DX(16)AX(16)AL(8)SRC(8)AH(8)AL(8)被乘數(shù)乘數(shù)乘積例1:計算兩個無符號數(shù)的乘積:64H×0A5H MOVAL,64H MOVBL,0A5H MULBL例2:MUL[BX]舉例:應(yīng)指定存儲單元的類型
MULBYTE/WORDPTR[BX]XDIVSRC——無符號數(shù)除法IDIVSRC——有符號數(shù)除法
執(zhí)行除法指令后,各狀態(tài)標(biāo)志位內(nèi)容不確定。7.除法指令
AL(8)SRC(8)AH(8)AL(8)AX(16)SRC(16)DX(16)AX(16)DX(16)=AH(8)=商余數(shù)余數(shù)商1.邏輯運(yùn)算指令3.4.3邏輯運(yùn)算與移位指令A(yù)NDDST,SRC(DST)∧(SRC)→DSTOF=CF=0,SF、ZF、PF根據(jù)運(yùn)算結(jié)果置位/復(fù)位,AF狀態(tài)不定ORDST,SRC(DST)∨(SRC)→DSTXORDST,SRC(DST)⊕(SRC)→DSTTESTDST,SRC(DST)∧(SRC),(DST)不變NOTDST(DST)→DST對標(biāo)志位無影響可以是8/16位的通用寄存器、存儲單元、立即數(shù)可以是8/16位的通用寄存器、存儲單元例1.測試AL的最高位是否為1,為1則跳轉(zhuǎn)到標(biāo)號L1處執(zhí)行指令
TESTAL,10000000BJNZL1例2.屏蔽AL的第0、1兩位
ANDAL,11111100B例3.置位AL的第5位
ORAL,00100000B例4.將AL的第0、1兩位取反
XORAL,00000011B舉例:算術(shù)移位SALDST,COUNTSARDST,COUNT邏輯移位SHLDST,COUNTSHRDST,COUNT2.移位指令COUNT>1時,不可以直接寫入指令,必須將其用CL寄存器值表示DST可以是8/16位通用寄存器或存儲單元;將(DST)算術(shù)左移COUNT位;將(DST)算術(shù)右移COUNT位;將(DST)邏輯左移COUNT位;將(DST)邏輯右移COUNT位53(a)算術(shù)/邏輯左移
SAL/SHLDST(b)邏輯右移SHR
DST(c)算術(shù)右移SAR
DST根據(jù)移位的結(jié)果置狀態(tài)標(biāo)志位(AF除外)。移多位則OF無效,移1位時,對OF的影響:算術(shù)/邏輯左移:移位后,若CF與DST的最高位不相等,則OF=1;否則OF=0。邏輯右移:移位后,若DST的最高位與次高位不相等,則OF=1;否則OF=0。移位指令對標(biāo)志位的影響算術(shù)/邏輯左移55CFX10100101__CF0——數(shù)據(jù)左移n位,數(shù)值*2nSAL/SHLAL,1溢出!AL算術(shù)/邏輯右移5610100101CFX__101001010CF__101001011CFSHRAL,1SARAL,1——數(shù)據(jù)右移n位,數(shù)值/2n溢出!AL不帶進(jìn)位的循環(huán)移位
ROL DST,COUNT ROR DST,COUNT帶進(jìn)位的循環(huán)移位
RCL DST,COUNT RCR DST,COUNT3.循環(huán)移位指令COUNT>1時,不可以直接寫入指令,必須將其用CL寄存器值表示58(a)不帶進(jìn)位的循環(huán)左移ROLDST(b)不帶進(jìn)位的循環(huán)右移RORDST(c)帶進(jìn)位的循環(huán)左移RCLDST(d)帶進(jìn)位的循環(huán)右移RCRDST循環(huán)左移5910100101CFx10100101__CF110100101__CFxROLAL,1RCLAL,1AL循環(huán)右移6010100101CFx__101001011CF__10100101xCFRORAL,1RCRAL,1AL在指令系統(tǒng)中有一些特殊的指令,可以按需要用轉(zhuǎn)移地址修改IP與CS的值,從而達(dá)到改變程序執(zhí)行順序的目的。這組指令稱為程序轉(zhuǎn)移指令。3.4.4程序控制指令功能:使程序無條件的跳轉(zhuǎn)到某一標(biāo)號執(zhí)行標(biāo)號:即某一地址的代號1.無條件轉(zhuǎn)移指令JMP舉例:JMPSUB1……SUB1:MOVAX,BX尋址方式格式跳轉(zhuǎn)的地址范圍段內(nèi)直接短轉(zhuǎn)移JMPSHORT標(biāo)號8位補(bǔ)碼,即-128~+127段內(nèi)直接轉(zhuǎn)移JMP標(biāo)號JMPNEARPTR標(biāo)號16位補(bǔ)碼,即-32768~+32768段內(nèi)間接轉(zhuǎn)移JMP字地址指針16位跳轉(zhuǎn)地址存放在寄存器或存儲器中段內(nèi)64K范圍內(nèi)段間直接轉(zhuǎn)移JMPFARPTR標(biāo)號由標(biāo)號給出段基址和段內(nèi)偏移范圍為1M段間間接轉(zhuǎn)移JMPDWORDPTR雙字地址指針段基址和段內(nèi)偏移存放于存儲器范圍為1MJMP的格式63JMPSHORT
標(biāo)號JMPNEARPTR
標(biāo)號僅修改IP的內(nèi)容,CS內(nèi)容不變轉(zhuǎn)移的有效偏移地址(EA)=Disp段內(nèi)短程轉(zhuǎn)移(Disp為8位)段內(nèi)近程轉(zhuǎn)移(Disp為16位)段內(nèi)直接轉(zhuǎn)移/段內(nèi)直接尋址匯編后,標(biāo)號相當(dāng)于一個位移量DispJMP AE若標(biāo)號AE的偏移地址為0120H,則執(zhí)行JMP指令后,(IP)=0120H段內(nèi)直接轉(zhuǎn)移例=JMP0120HJMP字地址指針僅修改IP的內(nèi)容,CS內(nèi)容不變轉(zhuǎn)移的有效偏移地址EA在一個16位寄存器或在內(nèi)存的相鄰兩單元中。內(nèi)存的地址根據(jù)尋址方式進(jìn)行計算段內(nèi)間接轉(zhuǎn)移/段內(nèi)間接尋址16位寄存器或指向1個字單元JMP[BX]——轉(zhuǎn)移的偏移地址為BX所指的內(nèi)存單元提供(BX)=1000H(1000H)=2345H(IP)=2400H段內(nèi)間接轉(zhuǎn)移指令(2)指令執(zhí)行后
(IP)=2345HJMPFARPTR
標(biāo)號CS和IP均被修改轉(zhuǎn)移的目標(biāo)地址的段基址和段內(nèi)偏移均由指令碼直接提供段間直接轉(zhuǎn)移/段間直接尋址匯編后,標(biāo)號相當(dāng)于段基址:段偏移JMP DST若DST為數(shù)據(jù)段標(biāo)號,偏移地址為0110H(DS)=2000H段間直接轉(zhuǎn)移例指令執(zhí)行后
(CS)=2000H (IP)=0110H=JMP2000H:0110HJMPDWORDPTR
雙字地址指針CS和IP均被修改轉(zhuǎn)移的目標(biāo)地址的段基址和段內(nèi)偏移在內(nèi)存中相鄰4個單元中。段間間接轉(zhuǎn)移/段間間接尋址指向2個字單元JMPDWORDPTR[BX+ADD] ——段間間接轉(zhuǎn)移(CS)=1000H(IP)=026AH(DS)=2000H(BX)=1400H(ADD)=020AH段間間接轉(zhuǎn)移例獲取實際轉(zhuǎn)移地址的物理地址
DS*10H+BX+ADD=2160AH0EH32H00H40H2160AHIP320EHCS4000H舉例2:72sub/functionPR1 JMPshortA1 …… JMPA2A1: …… ……A2: ……endsub/function兩條指令的地址差在8位補(bǔ)碼表示范圍-128~+127內(nèi),段內(nèi)直接短程轉(zhuǎn)移兩條指令的地址差在16位補(bǔ)碼表示范圍-32768~+32767內(nèi),段內(nèi)直接近程轉(zhuǎn)移舉例3:73sub/functionPR1 …… JMPfarptrA3 ……endsub/function
sub/functionPR2 ……
A3: ……endsub/function兩條指令不在一個段內(nèi),段間遠(yuǎn)程轉(zhuǎn)移單測試條件轉(zhuǎn)移指令指令格式:JXX目標(biāo)標(biāo)號2.條件轉(zhuǎn)移指令指令測試標(biāo)志位轉(zhuǎn)移條件JC/JNCCFCF=1/CF=0JE/JZZFZF=1JNE/JNZZF=0JS/JNSSFSF=1/SF=0JO/JNOOFOF=1/OF=0JP/JPEPFPF=1JNP/JPOPF=0例:若AX中存放的無符號數(shù)為偶數(shù),則除以2,如果是奇數(shù)則加1后除以2
75TESTAX,0001HJZ EVENADD AX,1EVEN:SHRAX,1If(i%2==0)i=i/2;Elsei=(i+1)/2復(fù)合條件轉(zhuǎn)移指令測試操作數(shù)類型指令轉(zhuǎn)移條件無符號數(shù)JA/JNBECF=0&&ZF=0JAE/JNBCF=0||ZF=1JB/JNAECF=1&&ZF=0JBE/JNACF=1||ZF=1有符號數(shù)JG/JNLESF=OF&&ZF=0JGE/JNLSF=OF||ZF=1JL/JNGESF≠OF&&ZF=0JLE/JNGSF≠OF||ZF=1MOVAL,80HCMPAL,50HJAK1JMPK2….K1:…..K2:舉例:7780H-50H并影響CF和ZFCF=0ZF=0判斷CF和ZF,然后跳轉(zhuǎn)3.循環(huán)控制指令指令格式執(zhí)行操作LOOP標(biāo)號(CX)-1→CX;若CX≠0,則循環(huán)LOOPZ/LOOPE標(biāo)號(CX)-1→CX;若CX≠0且ZF=1,則循環(huán)LOOPNZ/LOOPNE標(biāo)號(CX)-1→CX;若CX≠0且ZF=0,則循環(huán)JCXZ標(biāo)號CX=0時轉(zhuǎn)移78
隱含使用CX記錄循環(huán)次數(shù)。例1.計算1+2+…+100=
舉例:79MOV AX,0MOV CX,100MOV DX,REPEAT: ADD AX,DXINC DXLOOPREPEATa=0c=100;d=1Do{a=a+d;d++;}while(c-->0)過程即子程序:SUB子程序名…..ret或retnENDSUB過程調(diào)用指令:CALL過程名過程返回指令:ret/retnn代表返回參數(shù)的字節(jié)數(shù)4.調(diào)用與返回指令80與無條件轉(zhuǎn)移指令類似,過程調(diào)用可分為段內(nèi)直接調(diào)用 段內(nèi)間接調(diào)用段間直接調(diào)用 段間間接調(diào)用與JMP的相似操作:根據(jù)實際情況修改IP和CS的值與JMP的區(qū)別:要將當(dāng)前IP和CS的入棧以便返回可以帶參數(shù)5.中斷指令82指令名稱指令中斷INTN溢出中斷INTO中斷返回IRET中斷類型碼MOVSMOVSBMOVSW傳送CMPSCMPSBCMPSB比較SCASSCASBSCASW搜索LODSLODSBLODSW讀取STOSSTOSBSTOSW保存REPREPEREPZ重復(fù)前綴3.4.5字符串處理指令83格式:MOVS目的串,源串功能:將一個字節(jié)或字從SI指向的源串復(fù)制到目的串,并且CPU將SI和DI自增1或2[DI]<-[SI]SI<-SI+1/2DI<-DI+1/21.MOVSBMOVSW格式:CMPS目的串,源串功能:將源串的一個字節(jié)或字減目的串的一個字節(jié)或字,不改變兩個串,但影響標(biāo)志位,并且CPU將SI和DI自增1或2[DI]-[SI]SI<-SI+1/2DI<-DI+1/22.CMPSBCMPSW格式SACS目的串功能:在目的串中查找AX或AL的內(nèi)容,不保留結(jié)果,影響標(biāo)志位,同時SI、DI自增1AX/AL-[DI]DI<-DI+1/23.SCASBSCASWLODS從SI指向的字符串取一個字節(jié)或字,送到AX/AL中,并將SI自增1/2AX/AL<-[SI]SI<-SI+1/2STOS將AX/AL的內(nèi)容存到從DI指向的字符串,并將DI自增1/2[DI]<-AX/ALDI<-DI+1/24.LODSSTOSREP
MOVS/STOS功能:CX-1,并處理一次字符串元素直到CX=0REPEREPZ
CMPS/SCAS功能:CX-1,處理一次字符串元素直到CX=0或字符串元素不匹配REPNEREPNZ
CMPS/SCAS功能:CX-1,處理一次字符串元素直到CX=0或字符串元素匹配5.重復(fù)前綴指令將字符串變量string1中的100個字節(jié)數(shù)據(jù)復(fù)制到string2中MOVCX,100LEASI,STRING1LEADI,STRING2REPMOVSB舉例:處理器控制類指令用來控制CPU的狀態(tài)ESC ;外部操作碼,源操作數(shù)WAIT ;等待指令:CPU進(jìn)入等待狀態(tài)LOCK ;封鎖總線HLT ;暫停指令:CPU進(jìn)入暫停
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 洛陽職業(yè)技術(shù)學(xué)院《大學(xué)生就業(yè)指導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年肇慶考貨運(yùn)從業(yè)資格證
- 2025年鄂州貨運(yùn)從業(yè)資格證考試題庫答案
- 2025年廣東貨運(yùn)叢業(yè)資格證考試題庫答案
- 2024年某物流公司關(guān)于運(yùn)輸000噸貨物的運(yùn)輸合同
- 物聯(lián)網(wǎng)應(yīng)用招投標(biāo)合同操作規(guī)程
- 皮革制品庫房施工合同
- 咨詢服務(wù)租賃合同模板
- 合租影視制作室合同樣本
- 沙灘休閑區(qū)遮陽棚工程合同
- 2024合作房地產(chǎn)開發(fā)協(xié)議
- 農(nóng)貿(mào)市場通風(fēng)與空調(diào)設(shè)計方案
- 第25課《周亞夫軍細(xì)柳》復(fù)習(xí)課教學(xué)設(shè)計+2024-2025學(xué)年統(tǒng)編版語文八年級上冊
- 2024年廣東省深圳市中考英語試題含解析
- 金蛇納瑞2025年公司年會通知模板
- GB/T 16288-2024塑料制品的標(biāo)志
- 四年級英語上冊 【月考卷】第三次月考卷(Unit 5-Unit 6) (含答案)(人教PEP)
- 某某市“鄉(xiāng)村振興”行動項目-可行性研究報告
- 中國航空協(xié)會:2024低空經(jīng)濟(jì)場景白皮書
- 第七單元 條形統(tǒng)計圖 條形統(tǒng)計圖(一) (同步練習(xí))-2024-2025學(xué)年人教版數(shù)學(xué)四年級上冊
- 行政主管崗位招聘筆試題及解答(某大型央企)2024年
評論
0/150
提交評論