![字符串處理指令_第1頁(yè)](http://file4.renrendoc.com/view7/M00/18/2F/wKhkGWbKpUeAeO7SAAOj3e2ahdY264.jpg)
![字符串處理指令_第2頁(yè)](http://file4.renrendoc.com/view7/M00/18/2F/wKhkGWbKpUeAeO7SAAOj3e2ahdY2642.jpg)
![字符串處理指令_第3頁(yè)](http://file4.renrendoc.com/view7/M00/18/2F/wKhkGWbKpUeAeO7SAAOj3e2ahdY2643.jpg)
![字符串處理指令_第4頁(yè)](http://file4.renrendoc.com/view7/M00/18/2F/wKhkGWbKpUeAeO7SAAOj3e2ahdY2644.jpg)
![字符串處理指令_第5頁(yè)](http://file4.renrendoc.com/view7/M00/18/2F/wKhkGWbKpUeAeO7SAAOj3e2ahdY2645.jpg)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
字符串處理指令字符串:一系列存放在存儲(chǔ)器中的字或字節(jié)數(shù)據(jù),不管他們是不是ASCII碼。字符串長(zhǎng)度可達(dá)64K字節(jié),組成字符串的字節(jié)或字稱(chēng)為字符串元素,每種字符串指令對(duì)字符串對(duì)字符串元素只進(jìn)行同一種操作。8086提供5條1字節(jié)的字符串操作指令,專(zhuān)門(mén)對(duì)存儲(chǔ)器中的字節(jié)串和字串?dāng)?shù)據(jù)進(jìn)行傳送、比較、掃描、存儲(chǔ)及裝入等5種操作。使用字符串操作指令時(shí),可以有兩種方法告訴匯編程序是進(jìn)行字節(jié)操作還是字操作。一種方法是用指令中的源串和目的串名來(lái)表明是字節(jié)還是字,另一種方法是在指令助記符后加B說(shuō)明是字節(jié),加W說(shuō)明是字操作。這樣每種指令都有3種格式。字符串傳送,MOVS目的串,源串MOVSBMOVSW字符串比較,CMPS目的串,源串CWPSBCMPSW字符串掃描,SCAS目的串SCASBSCASW字符串裝入,LODS源串LODSBLODSW字符串存儲(chǔ),STOS目的串STOSBSTOSW字符串指令執(zhí)行時(shí),必須遵守以下隱含約定:源串位于當(dāng)前數(shù)據(jù)段,由DS尋址,源串的元素由SI作指針,即源串字符的起始地址為DS:SI。源串允許使用段超越前綴來(lái)修改段地址。目的串必須位于當(dāng)前的附加段中,由ES尋址,目的串元素由DI做指針,即目的串字符的首地址為ES:DI,但目的串不允許使用短超越前綴修改ES。如果要在同一段內(nèi)進(jìn)行串運(yùn)算,必須使DS和ES指向同一段。每執(zhí)行一次字符串指令,指針SI和DI會(huì)自動(dòng)進(jìn)行修改,以便指向下一待操作單元。DF標(biāo)志控制字符的處理方向。DF=0為遞增方向,這時(shí)DS:SI指向源串首地址,每進(jìn)行一次串操作,使SI和DI增加,字節(jié)串操作時(shí),SI和DI分別增1,字串操作時(shí),SI和DI分別增2,;DF=1為遞減方向,這時(shí),DS:SI指向源串末地址,每執(zhí)行一次串操作,使SI和DI分別減量,字節(jié)串操作時(shí)減1,字串操作時(shí)減2.可用標(biāo)志操作指令STD和CLD來(lái)改變DF的值,STD使DF置1,CLD使DF清零。要處理的字符串長(zhǎng)度(字或字節(jié)數(shù))放在CX寄存器中。為了加快串運(yùn)算指令的執(zhí)行速度,可在基本指令前加重復(fù)前綴,是數(shù)據(jù)傳指令重復(fù)執(zhí)行。每重復(fù)執(zhí)行一次,地址指針SI和DI都根據(jù)方向標(biāo)志自動(dòng)進(jìn)行修改,CX的值則將自動(dòng)減1.能與基本指令配合使用的重復(fù)前綴有:REP無(wú)條件重復(fù)REPE\REPZ相等\結(jié)果為零則重復(fù)REPNE\REPNZ不相等\結(jié)果不為零則重復(fù)無(wú)條件重復(fù)指令REP常與傳送指令(MOVS)連用,連續(xù)進(jìn)行字符串傳送操作,直到整個(gè)字符串傳送完畢,CX=0為止。重復(fù)前綴REPE和REPZ具有相同的含義,它們常與串比較指令(CMPS)連用,用于字符串比較操作。當(dāng)兩個(gè)字符串相等(ZF=1)和CX0時(shí),則進(jìn)行重復(fù)比較,直到ZF=0或CX=0為止。重復(fù)前綴REPNE和REPNZ也具有相同的意義,它們常與串掃描指令(SCAS)連用,當(dāng)結(jié)果非零時(shí)(ZF=0)和CX0時(shí),重復(fù)進(jìn)行,直到ZF=1或CX=0為止。帶有重復(fù)前綴的串運(yùn)算時(shí)間可能很長(zhǎng),在指令執(zhí)行過(guò)程中允許有中斷進(jìn)入,因此在處理每個(gè)元素之前都在查詢(xún)是否有中斷請(qǐng)求,一旦外部有中斷進(jìn)入,CPU將暫停執(zhí)行當(dāng)前的串操作指令,轉(zhuǎn)去執(zhí)行相應(yīng)得中斷服務(wù)程序,使中斷服務(wù)完成后,再去執(zhí)行被中斷的串操作指令。分別介紹:MOVS字符串操作指令指令格式:MOVS目的串,源串指令功能:把由SI指針的源串中的一個(gè)字節(jié)或一個(gè)字傳送到由DI作指針的目的串中,且自動(dòng)修改指針SI和DI在實(shí)際應(yīng)用中,人們經(jīng)常需要在存儲(chǔ)單元之間傳送數(shù)據(jù)。然而,MOVS指令不能直接在存儲(chǔ)單元之間傳送數(shù)據(jù),為了實(shí)現(xiàn)這種操作,必須以某一通用寄存器為橋梁,先把一個(gè)存儲(chǔ)單元的數(shù)據(jù)送到指定的通用寄存器中,再把寄存器中的數(shù)據(jù)傳送到另一個(gè)存儲(chǔ)單元中,每進(jìn)行一次傳送操作,還必須修改地址指針。如果改用MOVS指令,便能方便地實(shí)現(xiàn)這種功能,它不但能把數(shù)據(jù)從內(nèi)存中的某一地址傳送到另一地址,還能自動(dòng)修改源和目的地址。若使用重復(fù)前綴,還可以利用一條指令傳送一批數(shù)據(jù)。例要求把數(shù)據(jù)段中以SRC_MESS為偏移地址的一串字符“HELLO!"傳送到附加段中以NEW_LOC開(kāi)始的單元中。實(shí)現(xiàn)該操作的程序如下:DATASEGMENT;數(shù)據(jù)段SRC_MESSDB"HELLO!";源串DATAENDS;EXTRASEGMENT;附加段NEW_LOCDB6DUP(?);存放目的串EXTRAENDS;CODESEGMENT;代碼段ASSUMECS:CODE,DS:DATA,ES:EXTRASTART:MOVAX,DATAMOVDS,AN;DS=數(shù)據(jù)段段址MOVAX,EXTRAMOVES,AX;ES=附加段段址LEASI,SRC_MESS;SI指向源串偏移地址LENDI,NEW_LOC;DI指向目的串偏移地址MOVCX,6;CX作串長(zhǎng)度計(jì)數(shù)器CLD;清方向標(biāo)志,地址增量REPMOVSB;重復(fù)傳送串中的各字節(jié),直到CX=0為止CODEENDSENDSTART例中的REPMOVSB也可用指令代替:AGAIN:MOVSNEW_LOC,SRC_MESSDECCXJNZAGAIN比較這兩種方法,顯然可以發(fā)現(xiàn),使用有重復(fù)前綴REP的MOVSB指令,程序更簡(jiǎn)潔。2/CMPS字符串比較指令指令格式:CMPS目的串,源串指令功能:從S
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年手工烏冬面連鎖店行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢(xún)報(bào)告
- 2025-2030年掌上地理學(xué)習(xí)器行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2025-2030年打印機(jī)照片打印服務(wù)企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2025-2030年塑木戶(hù)外燒烤架設(shè)計(jì)企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2025-2030年在線(xiàn)顏料銷(xiāo)售與教程平臺(tái)行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2025-2030年可調(diào)節(jié)傾斜角度桌行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢(xún)報(bào)告
- 社交APP項(xiàng)目績(jī)效評(píng)估報(bào)告
- 2025年度個(gè)人借款合同范本全新版
- 2025年度建筑工程項(xiàng)目管理與監(jiān)理合同
- 2025年度智慧社區(qū)建設(shè)項(xiàng)目建筑工程合作施工合同
- 課堂精練九年級(jí)全一冊(cè)數(shù)學(xué)北師大版2022
- 著衣母嬰臥像教學(xué)設(shè)計(jì)
- 【課件】DNA片段的擴(kuò)增及電泳鑒定課件高二下學(xué)期生物人教版(2019)選擇性必修3
- GB/T 6417.1-2005金屬熔化焊接頭缺欠分類(lèi)及說(shuō)明
- 2023年湖北成人學(xué)位英語(yǔ)考試真題及答案
- 《社會(huì)主義市場(chǎng)經(jīng)濟(jì)理論(第三版)》第七章社會(huì)主義市場(chǎng)經(jīng)濟(jì)規(guī)則論
- 《腰椎間盤(pán)突出》課件
- 漢聲數(shù)學(xué)圖畫(huà)電子版4冊(cè)含媽媽手冊(cè)文本不加密可版本-29.統(tǒng)計(jì)2500g早教
- simotion輪切解決方案與應(yīng)用手冊(cè)
- 柴油發(fā)電機(jī)運(yùn)行檢查記錄表格
- DSC曲線(xiàn)反映PET得結(jié)晶度
評(píng)論
0/150
提交評(píng)論