微型計算機(jī)技術(shù)第3章6串操作_第1頁
微型計算機(jī)技術(shù)第3章6串操作_第2頁
微型計算機(jī)技術(shù)第3章6串操作_第3頁
微型計算機(jī)技術(shù)第3章6串操作_第4頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

串操作指令(5條)數(shù)據(jù)串是存儲器中一塊字節(jié)或字的存儲區(qū)域,其長度可以是1字節(jié)~64K字節(jié)串操作就是對數(shù)據(jù)串中每個元素所進(jìn)行的操作,這種操作通常是組合操作,能完成幾條指令的功能用作源操作數(shù)的串稱為源串,源串默認(rèn)放在數(shù)據(jù)段中(段地址在DS中),但可以段超越到其他段,源串的偏移地址指針必須放在SI中用作目的操作數(shù)的串稱為目的串,目的串必須放在附加段中(段地址在ES中),目的串的偏移地址指針必須放在DI中串的長度(字節(jié)數(shù)或字?jǐn)?shù))必須放在CX中串操作可以按字節(jié)操作(助記符末尾字母加B),也可以按字操作(助記符末尾字母加W)。按字節(jié)操作時,地址指針加或減1,按字操作時,地址指針加或減2若方向標(biāo)志DF=0,則按增址操作,地址指針加1或加2;若方向標(biāo)志DF=1,則按減址操作,地址指針減1或減28086共有5種基本的串操作指令,有的指令涉及到2個串,而有的只涉及到1個串有些串操作是在數(shù)據(jù)串與寄存器之間進(jìn)行,則規(guī)定寄存器只能用累加器,字節(jié)操作時用AL,字操作時用AX串操作指令每次只處理一個元素的數(shù)據(jù),為了能重復(fù)執(zhí)行最多達(dá)64KB的串操作,8086還提供了3種重復(fù)前綴指令,使用這些指令可以使串操作指令重復(fù)執(zhí)行由寄存器CX指定的次數(shù)除串比較和串搜索指令影響全部6個狀態(tài)標(biāo)志外,其它指令均不影響標(biāo)志位重復(fù)前綴(3個)(1)重復(fù)REP(REPeat)

格式:REP串操作指令

功能:使串操作指令重復(fù)執(zhí)行CX指定的次數(shù)

說明:若CX≠0則重復(fù)執(zhí)行串指令,并置CX←CX-1,直到CX=0為止。REP指令主要用于串傳送和串寫入指令前例如:

REP

MOVSB

REP

MOVSWREPSTOSW(2)相等則重復(fù)REPE/REPZ(REPeatwhenEqual/Zero)

格式:REPE/REPZ串操作指令

功能:若串操作指令執(zhí)行結(jié)果相等,且CX指定次數(shù)未到,則重復(fù)執(zhí)行串指令,直到結(jié)果不相等,或CX指定次數(shù)已到則停止

說明:若ZF=1且CX-1→CX≠0則重復(fù)執(zhí)行串指令,直到ZF=0或CX-1→CX=0為止。REPE指令主要用于串比較和串搜索指令前例如:

REPECMPSB

REPZSCASW(3)不相等則重復(fù)REPNE/REPNZ(REPeatwhenNotEqual/Zero)

格式:REPNE/REPNZ串操作指令

功能:若串操作指令執(zhí)行結(jié)果不相等,且CX指定次數(shù)未到,則重復(fù)執(zhí)行串指令,直到結(jié)果相等,或CX指定次數(shù)已到則停止

說明:若ZF=0且CX-1→CX≠0則重復(fù)執(zhí)行串指令,直到ZF=1或CX-1→CX=0為止。REPNE指令主要用于串比較和串搜索指令前例如:

REPNECMPSW

REPNZSCASB串操作指令(5條)14、串傳送指令MOVSB/MOVSW(MOVeStringofByte/Word)

格式:MOVSB/MOVSW

功能:將源串指針SI所指單元的一個數(shù)據(jù)(字節(jié)或字)傳送到目的串指針DI所指單元中,指針作相應(yīng)變化(1)[ES:DI]←[DS:SI](2)MOVSB(字節(jié)操作):(SI)←(SI)±1,(DI)←(DI)±1MOVSW(字操作):(SI)←(SI)±2,(DI)←(DI)±2(3)方向標(biāo)志:DF=0時地址“+”,DF=1時地址“-”(4)使用重復(fù)前綴REP相配合,一次完成數(shù)據(jù)串的傳送操作數(shù)據(jù)段DS附加段ES(SI)(DI)DF=0(SI)(DI)DF=1程序段如下:

LDS

SI,源串首地址LESDI,目的串首地址MOV

CX,串長度CLD

REP

MOVSB;將數(shù)據(jù)段中的整串?dāng)?shù)據(jù)傳送到附加段中執(zhí)行REPMOVS之前,應(yīng)先做好如下準(zhǔn)備:(1)源串首地址(末地址)→SI,置好DS的值(2)目的串首地址(末地址)→DI,置好ES的值(3)串長度→CX(4)設(shè)置方向標(biāo)志(CLD使DF=0,STD使DF=1)(SI)數(shù)據(jù)段DS附加段ES(SI)(DI)(DI)DF=0地址增量15、串比較指令CMPSB/CMPSW(CoMPareStringofByte/Word)

格式:CMPSB/CMPSW

功能:將源串指針SI所指單元的一個數(shù)據(jù)(字節(jié)或字)與目的串指針DI所指單元的一個數(shù)據(jù)(字節(jié)或字)相減,但結(jié)果不回送,只影響標(biāo)志位,指針作相應(yīng)變化(1)[DS:SI]-[ES:DI],不保存結(jié)果,影響標(biāo)志位同CMP指令(2)CMPSB(字節(jié)操作):(SI)←(SI)±1,(DI)←(DI)±1

CMPSW(字操作):(SI)←(SI)±2,(DI)←(DI)±2(3)方向標(biāo)志:DF=0時地址“+”,DF=1時地址“-”(4)使用重復(fù)前綴REPZ/REPE、REPNZ/REPNE相配合(SI)(DI)DF=1數(shù)據(jù)段DS附加段ES(SI)(DI)DF=016、串搜索指令SCASB/SCASW(SCAnStringofByte/Word)

格式:SCASB/SCASW

功能:將累加器(AL或AX)內(nèi)容與目的串指針DI所指單元的一個數(shù)據(jù)(字節(jié)或字)相減,但結(jié)果不回送,只影響標(biāo)志位,指針作相應(yīng)變化(1)AL(AX)-[ES:DI],不保存結(jié)果,影響標(biāo)志位(2)SCASB(字節(jié)操作):(SI)←(SI)±1,(DI)←(DI)±1

SCASW(字操作):(SI)←(SI)±2,(DI)←(DI)±2(3)方向標(biāo)志:DF=0時地址“+”,DF=1時地址“-”(4)使用重復(fù)前綴REPZ/REPE、REPNZ/REPNE相配合(DI)DF=1附加段ES(DI)DF=0AL(AX)搜索數(shù)據(jù)串中與AL/AX相同/(不相同)的數(shù)據(jù)17、串寫入指令STOSB/STOSW(STOredatatoStringofByte/Word)

格式:STOSB/STOSW

功能:累加器(AL或AX)內(nèi)容傳送到目的串指針DI所指單元中,指針作相應(yīng)變化(1)[ES:DI]←AL(AX),不影響標(biāo)志位(2)STOSB(字節(jié)操作):(SI)←(SI)±1,(DI)←(DI)±1

STOSW(字操作):(SI)←(SI)±2,(DI)←(DI)±2(3)方向標(biāo)志:DF=0時地址“+”,DF=1時地址“-”(4)使用重復(fù)前綴REP相配合(DI)DF=1用AL/AX填充(初始化)數(shù)據(jù)串中所有數(shù)據(jù)附加段ES(DI)DF=0AL(AX)18、串讀出指令LODSB/LODSW(LOaDdatafromStringofByte/Word)

格式:LODSB/LODSW

功能:將源串指針SI所指單元的一個數(shù)據(jù)(字節(jié)或字)傳送到累加器(AL或AX)中,指針作相應(yīng)變化(1)AL(AX)←[DS:SI],不影響標(biāo)志位(2)LODSB(字節(jié)操作):(SI)←(SI)±1,(DI)←(DI)±1

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論