版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、重復(fù)前綴:REP REPE/REPZ REPNE/REPNZ數(shù)據(jù)串傳送指令MOVS數(shù)據(jù)串比較指令CMPS字符串掃描指令SCAS取數(shù)據(jù)串指令LODS存數(shù)據(jù)串指令STOS串操作指令串操作指令串操作指令可實(shí)現(xiàn)串操作,即對內(nèi)存中連續(xù)地址的字節(jié)、字或雙字進(jìn)行處理,如將一個(gè)數(shù)據(jù)塊從一處搬至存儲(chǔ)器的另一處,比較兩個(gè)字符串是否相等,從一個(gè)數(shù)據(jù)塊尋找某一個(gè)特定的關(guān)鍵字,順次從一個(gè)存儲(chǔ)器取數(shù)或順次向一個(gè)存儲(chǔ)器存數(shù)等。當(dāng)串操作指令執(zhí)行后,能自動(dòng)修改地址指針,為下一次操作做好準(zhǔn)備。串操作指令還可以在指令前加上重復(fù)前綴,使串操作重復(fù)進(jìn)行,直到完成規(guī)定的次數(shù)為止。當(dāng)處理長數(shù)據(jù)串時(shí),采用這種方法比用軟件循環(huán)方法處理要快得多
2、,重復(fù)過程也可以根據(jù)規(guī)定條件來結(jié)束,也可以被中斷和恢復(fù)。 用SI寄存器尋址源操作數(shù)用DI寄存器尋址目的操作數(shù)源操作數(shù)隱含的段寄存器為DS,但允許段超越,目的操作數(shù)的段寄存器約定為ES,不允許段超越。每當(dāng)串操作指令執(zhí)行后,可以自動(dòng)實(shí)現(xiàn)源變址或目的變址,地址的增量可正可負(fù),當(dāng)方向標(biāo)志位(DF)=0,地址增量為正;當(dāng)(DF)=1時(shí),地址增量為負(fù),地址增量的大小取決于串操作數(shù)的類型,當(dāng)操作數(shù)為字節(jié)屬性時(shí),地址增量為1,當(dāng)操作數(shù)為字屬性時(shí),地址增量為2串操作指令特點(diǎn)串操作流程圖串操作指令常常和重復(fù)前綴一齊使用重復(fù)前綴有REP、REPZ/REPE、REPNZ/REPNE,其中REP為無條件重復(fù)前綴重復(fù)次數(shù)
3、由CX中存放的值決定,指令每重復(fù)執(zhí)行一次,計(jì)數(shù)器CX中值減1,當(dāng)CX中值減至0時(shí),停止重復(fù)執(zhí)行,繼續(xù)執(zhí)行下一條指令。 重復(fù)前綴指令(1)REP REP前綴用在MOVS、STOS 、LODS指令前。功能:每執(zhí)行一次串指令(CX)1,直到(CX)=0,重復(fù)執(zhí)行結(jié)束。(2)REPZ 該指令一般用在CMPS、SCAS指令前。功能:每執(zhí)行一次串指令(CX)1,并判斷ZF標(biāo)志是否為0,只要(CX)=0或ZF=0,則重復(fù)執(zhí)行結(jié)束。(3)REPNZ 該指令一般用在CMPS、SCAS 指令前。功能:每執(zhí)行一次串指令(CX)1,并判斷ZF標(biāo)志是否為0,只要(CX)=0或ZF=1,則重復(fù)執(zhí)行結(jié)束。重復(fù)前綴指令MOV
4、S 目的串,源串MOVSBMOVSW功能:將DS:SI所規(guī)定的源數(shù)據(jù)串中的字節(jié)、字傳送至目的串,目的串的地址由ES:DI確定。每當(dāng)指令執(zhí)行后,變址寄存器SI、DI將依據(jù)傳送的操作數(shù)類型自動(dòng)變址,其變址值可為1,2,分別對應(yīng)于字節(jié)、字傳送。“+”、“”號(hào)由DF標(biāo)志位的值確定,當(dāng)DF=0,變址取“”,當(dāng)DF=1,變址取“”。數(shù)據(jù)串傳送指令數(shù)據(jù)串傳送指令將一個(gè)字節(jié)/字從 DS:SI ES:DI指令前要先將源串首地址 DS:SI 目標(biāo)串首地址 ES:DI完成操作后自動(dòng)修改SI、DI,使其指向串的下一個(gè)元素串操作方向由CLD和STD指令設(shè)置CLD 地址遞增方向(DF=0)STD 地址遞減方向(DF=1)
5、串傳送重復(fù)前綴需要先將串的長度存入CX寄存器每處理完一個(gè)元素自動(dòng)使CX-1,直到CX=0才結(jié)束串傳送完成整個(gè)串的傳送REP MOVSBREP MOVSWMOV SI, OFFSET S1MOV DI, OFFSET S2MOV CX, 18REP MOVSB.S1 DB “This is a string!$”S2 DB 18 DUP(0)String1.asm使用方法1、把存于數(shù)據(jù)段中的源串首/末地址放入SI寄存器2、把將要存放數(shù)據(jù)串的附加段的首/末地址放入DI寄存器3、把串長放入CX寄存器4、建立方向標(biāo)志(cld std)5、使用串指令傳送數(shù)據(jù)在數(shù)據(jù)段中有一個(gè)字符串,長度為17,要求把它們
6、傳送到附加段中的一個(gè)緩沖區(qū)String2.asmdata segment mess1 db personal computer $data endsextra segment mess2 db 17 dup(0)extra ends例code segment assume cs:code,ds:data,es:extramain proc far mov ax,data mov ds,ax mov ax,extra mov es,ax, lea si,mess1 lea di,mess2 mov cx,17 cld rep movsb mov ah,4ch int 21main endpcod
7、e endsend mainCMPS 源串,目的串CMPSB字節(jié)串比較CMPSW字串比較功能:將SI所指的源串中的一個(gè)字節(jié)(或字)存儲(chǔ)單元中的數(shù)據(jù)與DI所指的目的串中的一個(gè)字節(jié)(或字)存儲(chǔ)單元中的數(shù)據(jù)相減,并根據(jù)相減的結(jié)果設(shè)置標(biāo)志,但結(jié)果并不保存。(SI)(DI)。 修改串指針,使之指向串中的下一個(gè)元素。當(dāng)DF=0時(shí),(SI)和(DI)增量。當(dāng)DF=1時(shí),(SI)和(DI)減量。串比較指令源操作數(shù)的邏輯地址為DS:SI,可以段超越,目的操作數(shù)的邏輯地址為ES:DI。比較指令執(zhí)行后,變址寄存器SI、DI會(huì)自動(dòng)變址,地址是增還是減,由DF標(biāo)志位來確定,指令執(zhí)行時(shí)是將源操作數(shù)減去目的操作數(shù),該操作數(shù)
8、將影響AF、CF、OF、PF、SF和ZF標(biāo)志指令前通常加重復(fù)前綴REPZ/REPE,從而當(dāng)發(fā)現(xiàn)兩個(gè)串不同時(shí)結(jié)束比較。數(shù)據(jù)串比較指令MOV SI, OFFSET S1MOV DI, OFFSET S2MOV CX, xxREPZ CMPSBJNZ Not_EqualEqual: Not_Equal:.串搜索指令SCAS 目的串 SCASB字節(jié)串搜索 SCASW字串搜索功能:AL(字節(jié))或AX(字)中的內(nèi)容與DI所指的目的串中的一個(gè)字節(jié)(或字)存儲(chǔ)單元中的數(shù)據(jù)相減,根據(jù)相減結(jié)果設(shè)置標(biāo)志位,結(jié)果不保存, 字節(jié)操作:(AL)(DI), 字操作:(AX)(DI)。 修改指針使之指向串中的下一個(gè)元素。當(dāng)D
9、F=0時(shí),(DI)增量。當(dāng)DF=1時(shí),(DI)減量。事先要將待搜索的元素存入AL/AX指令前通常加重復(fù)前綴REPNZ/REPNE,從而當(dāng)發(fā)現(xiàn)待搜索的元素時(shí)結(jié)束搜索。從源串中取數(shù)指令LODS LODSB從字節(jié)串中取數(shù) LODSW從字串中取數(shù)功能:將SI所指的源串中的一個(gè)字節(jié)(或字)存儲(chǔ)單元中的數(shù)據(jù)取出來送入AL(或AX)中。即: 字節(jié)操作:(SI)AL, 字操作:(SI)AX。 修改指針SI,使它指向串中的下一個(gè)元素。當(dāng)DF=0時(shí),(SI)增量。當(dāng)DF=1時(shí),(SI)減量。 串裝入指令沒有重復(fù)前綴String3DATA SEGMENTSTRING DB ABCDEFGHIDATA ENDSCOD
10、E SEGMENTASSUME CS:CODE,DS:DATAMAIN PROC FARMOV AX,DATAMOV DS,AXLEA SI,STRINGMOV CX, 10MOV AH, 2NEXTCHAR: LODSBMOV DL, ALINT 21HLOOP NextCharMOV AH,01HINT 21HMOV AH,4CHINT 21HMAIN ENDPCODE ENDSEND MAIN例:將HEADG1緩沖區(qū)中的10個(gè)字節(jié),以反序的形式傳至HEADG2緩沖區(qū)中。String4.asm string42.asmdata segmentHEADG1 DB cybernauts$HEA
11、DG2 DB 10 DUP(20H),$data endscode segmentassume cs:code,ds:data,es:dataA10MAIN PROC NEAR CLD MOV CX,10 LEA SI,HEADG1 LEA DI,HEADG2+9A20: LODSB MOV DI,AL DEC DI LOOP A20 MOV AX,4C00H INT 21HA10MAIN ENDP END BEGINSTOS STOSB往字節(jié)串中存數(shù)(2)STOSW往字串中存數(shù)功能:將AL或AX中的數(shù)據(jù)送入DI所指的目的串中的字節(jié)(或字)存儲(chǔ)單元中。即: 字節(jié)操作:(AL)DI,字操作:(AX)DI。 修改指針DI,使之指向串中的下一個(gè)元素。當(dāng)DF=0時(shí),(DI)增量。當(dāng)DF=1時(shí),(DI)減量。存數(shù)據(jù)串指令例如把數(shù)據(jù)區(qū)的數(shù)據(jù)都清成空(即20H)。TITLE A12STOS(COM) MODLE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職(電子商務(wù))電子商務(wù)基礎(chǔ)期末測試題及解析
- 2025年高職康復(fù)治療技術(shù)(康復(fù)心理學(xué))試題及答案
- 2025年高職第二學(xué)年(數(shù)字印刷)可變數(shù)據(jù)印刷綜合測試試題及答案
- 2025年高職(水利水電建筑工程)水工建筑物基礎(chǔ)試題及答案
- 2025年中職(勞保產(chǎn)品銷售)防護(hù)性能階段測試卷
- 2025年大學(xué)機(jī)械應(yīng)用技術(shù)(機(jī)械應(yīng)用)試題及答案
- 2025年大學(xué)交通運(yùn)輸工程(交通工程學(xué))試題及答案
- 2025年大學(xué)(金融學(xué))金融工程試題及答案
- 2025年中職(護(hù)理基礎(chǔ))鼻飼操作試題及解析
- 2025年大學(xué)醫(yī)學(xué)檢驗(yàn)技術(shù)(檢驗(yàn)研究)試題及答案
- 車輛中心面試車輛管理題
- 美國心臟協(xié)會(huì)心肺復(fù)蘇(CPR)與心血管急救(ECC)指南(2025年)解讀課件
- 崗位標(biāo)準(zhǔn)作業(yè)流程培訓(xùn)
- 《導(dǎo)游實(shí)務(wù)》課件-3.2出入境知識(shí)、其他相關(guān)知識(shí)
- 部隊(duì)自救互救教學(xué)課件
- 07+意動(dòng)用法-備戰(zhàn)2025年中考語文文言文詞法與句式考點(diǎn)精講與集訓(xùn)
- 學(xué)堂在線 雨課堂 學(xué)堂云 中國傳統(tǒng)藝術(shù)-篆刻、書法、水墨畫體驗(yàn)與欣賞 章節(jié)測試答案
- 陰莖假體植入術(shù)改良方案-洞察及研究
- 互助與團(tuán)隊(duì)精神主題班會(huì)課件
- 可持續(xù)采購管理辦法
- 制造企業(yè)發(fā)票管理辦法
評(píng)論
0/150
提交評(píng)論