📄 asslandat85.dat
字号:
字符串传送指令 MOVS
指令格式:MOVS OPRD1,OPRD2
MOVSB
MOVSW
其中OPRD2为源串符号地址,OPRD1为目的串符号地址。
指令功能:OPRD1<--OPRD2。
对字节串操作时:若DF=0,则作加,即[ES:DI]<--[DS:SI],(SI)<--(SI)+1,(DI)<--(DI)+1。若DF=1,则作减,即 (SI)<--(SI)-1,(DI)<--(DI)-1。
对字串操作时:若DF=0,则作加,即(SI)<--(SI)+2,(DI)<--(DI)+2。若DF=1,则作减,即(SI)<--(SI)-2,(DI)<--(DI)-2。
在指令中不出现操作数时,字节串传送格式为MOVSB、字串传送格式为MOVSW。
本指令不影响标志位。
例如:将存储器中变量A开始的200个数据串传送至B开始的存储区,可用以下程序段实现:
MOV SI,OFFSET A;SI指向源串首址
MOV DI,OFFSET B;DI指向目的串首址
MOV CX,200 ;字节串或字串长度200送CX
CLD;0-->DF
ATOB:MOVS B,A;对字节串传送可用MOVSB
DEC CX;(CX)<--(CX)-1
JNZ ATOB; (CX)<>0,转至ATOB
用指令MOVS B,A究竟是字节传送,还是字传送,取决于A,B的类型定义。若DF=0,则在字传送时,(SI)<--(SI)+2,(DI)<--(DI)+2。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -