汇编语言指令集之串处理指令讲解

串处理指令

串处理指令分类情况如下:

指令类型
MOVSmove string传传送
CMPScompare string串比较
SCASscan string串扫描
LODSload from string从串取
STOSstore in to string存入串
INSinput from port to string串输入
OUTSoutput string to port串输出
REPrepeat重复
REPE/REPZrepeat while equal/zero相等/为零则重复
REPNE/REPNZrepeat while not equal/zero不相等/不为零则重复

1.MOVS

格式:

   MOVS  DST,SRC

   MOVSB  (字节)

   MOVSW   (字)

   MOVSD  (双字)(386及其后继机型可用)

 

用法:

  指令可以把SI指向的数据段中的一个字节、字或双字(DS:SI)传递到由DI指向的附加段中的一个字节、字或双字(ES:DI)中去,不影响条件标志位,并根据DF以及数据格式对SI和DI进行修改。

2.CMPS

格式:

   CMPS  SRC,DST

   CMPSB  (字节)

   CMPSW   (字)

   CMPSD  (双字)(386及其后继机型可用)

 

用法:

  指令把DS:SI指向的存储单元中的数据与ES:SI指向的存储单元中的数据相减,不保存结果但影响条件标志位,并根据DF的值对SI和DI进行修改。

3.SCAS

格式:

   SCAS     DST

   SCASB  (字节)

   SCASW   (字)

   SCASD  (双字)(386及其后继机型可用)

 

用法:

  指令把AL、AX或EAX中的数据与ES:DI指向的存储单元中的数据相减,不保存结果但影响条件标志位,并根据DF的值对SI和DI进行修改。

4.LODS

格式:

   LODS     SRC

   LODSB  (字节)

   LODSW   (字)

   LODSD  (双字)(386及其后继机型可用)

 

用法:

  指令把DS:SI指向的存储单元中的数据送到AL、AX或EAX中,并根据条件标志位DF的值和数据类型来修改SI。

5.STOS

格式:

   STOS     DST

   STOSB  (字节)

   STOSW   (字)

   STOSD  (双字)(386及其后继机型可用)

 

用法:

  指令把AL、AX和EAX中的内容存入由DS:SI指向的存储单元,并根据DF的值及数据类型修改SI。

6.INS

格式:

   INS  DST,DX

   INSB  (字节)

   INSW   (字)

   INSD  (双字)(386及其后继机型可用)

 

用法:

  指令把端口在DX寄存器中的I/O空间的数据送到由ES:DI指向的存储单元,并根据DF的值和数据类型修改DI。

7.OUTS

格式:

   OUTS  DX,SRC

   OUTSB  (字节)

   OUTSW   (字)

   OUTSD  (双字)(386及其后继机型可用)

 

用法:

  指令把由DS:SI指向的存储单元中的数据送到端口号在DX寄存器中的I/O端口中,并根据DF的值和数据类型改变SI。

以上是 汇编语言指令集之串处理指令讲解 的全部内容, 来源链接: utcz.com/z/323400.html

回到顶部