程序设计的其他方法和技术 - 副本.ppt

程序设计的其他方法和技术 - 副本.ppt

ID:48815722

大小:338.00 KB

页数:84页

时间:2020-01-28

程序设计的其他方法和技术 - 副本.ppt_第1页
程序设计的其他方法和技术 - 副本.ppt_第2页
程序设计的其他方法和技术 - 副本.ppt_第3页
程序设计的其他方法和技术 - 副本.ppt_第4页
程序设计的其他方法和技术 - 副本.ppt_第5页
资源描述:

《程序设计的其他方法和技术 - 副本.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.字符串操作2.宏功能程序设计3.模块化程序设计5.1.2串操作指令(1)MOVS(MoveString):串传送语法格式:MOVSBMOVSWMOVSOPD,OPS功能描述:MOVS(B/W)将DS:SI所指源串的1个元素(字节/字)复制到ES:DI所指的内存单元。然后,SI和DI增加或减少1/2。若DF=0,则增加,否则减少。对标志位的影响:无。(2)CMPS(CompareStrings):串比较语法格式:CMPSOPD,OPSCMPSBCMPSW功能描述:CMPS(B/W)将DS:SI所指源串的1个元素(字节/字)与ES:DI所指目的

2、串的1个元素(字节/字)进行比较,根据比较结果设置标志位。然后,SI和DI增加或减少1/2。若DF=0,则增加,否则减少。对标志位的影响:同CMP。5.1.2串操作指令(3)SCAS(ScanString):串扫描语法格式:SCASOPDSCASBSCASW功能描述:SCAS(B/W)将AL/AX与ES:DI所指目的串的1个字节/字进行比较,根据比较结果设置标志位。然后,DI增加或减少1/2。若DF=0,则增加,否则减少。5.1.2串操作指令(4)LODS(LoadString):串装入语法格式:LODSOPSLODSBLODSW功能描述:LO

3、DS(B/W)将DS:SI所指源串的1个元素(字节/字)复制到AL/AX。然后,SI增加或减少1/2/4。若DF=0,则增加,否则减少。对标志位的影响:无。5.1.2串操作指令(5)STOS(StoreString):串存储语法格式:STOSOPDSTOSBSTOSW功能描述:STOS(B/W)将AL/AX的值复制到ES:DI所指的内存单元。然后,DI增加或减少1/2。若DF=0,则增加,否则减少。对标志位的影响:无。5.1.2串操作指令(6)重复前缀REP;当CX<>0时,重复执行后面的串指令;每执行1次,CX=CX–1;只能用在MOVS、L

4、ODS或STOS(B/W)之前REPZ/REPE;当CX<>0且ZF=1时,重复执行后面的串指令;每执行1次,CX=CX–1;只能用在CMPS(B/W/D)或SCAS(B/W)之前REPNZ/REPNE;当CX<>0且ZF=0时,重复执行后面的串指令;每执行1次,CX=CX–1;只能用在CMPS(B/W/D)或SCAS(B/W)之前说明:若CX初值为0,则不执行任何操作,而且标志位不变。5.1.2串操作指令1.串指令的共性源串:地址由DS:SI表示。目的串:地址由ES:DI表示。自动修改地址:每次数据操作后,SI和DI自动递增或递减,取决于操作

5、的数据类型(字节、字)以及DF的值。若DF=0,则SI和DI自动增加1、2。否则,减1、2。可以使用CLD或STD指令设置DF。计数器:使用重复前缀时,由CX表示数据个数,每重复1次操作,CX减1。5.1.1串操作指令简介(总结)2.串指令的用途串指令主要用于处理连续的内存单元,与重复前缀配合使用更有效。例如:MOVS用于将一个内存块的数据复制到另一块;CMPS用于比较两个内存区的数据;SCAS可以在一个内存区中扫描与给定值首次匹配或不匹配的元素;STOS能将一个内存区的所有单元初始化为给定值。LODS一般不用重复前缀。5.1.1串操作指令简介

6、(总结)5.1字符串操作——实例例1将以STR1为首址的字节存储区中存放的字符串传送到以STR2为首址的字节存储区。DATASEGMENTSTR1DBABCDEFGHIGKLL'COUNT=$-STR1STR2DBCOUNTDUP(0)DATAENDSSTACKSEGMENTSTACKDB100DUP(0)STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKBEGIN:MOVAX,DATAMOVDS,AXMOVES,AXLEASI,STR1LEADI,STR2MOVCX,COUNT

7、CLDREPMOVSBMOVAH,4CHINT21HCODEENDSENDBEGIN5.1字符串操作——实例例2从键盘输入一字符串至STR1为首址的字节缓冲区,试比较该串与字节字符串STR2是否相等,若相等,那么0→BX;否则,0FFFFH→BX。5.1字符串操作——实例例3在字符串STR中搜索子串’AM’,出现的次数送入BX。P:REPNESCASBJEAJMPOUT1A:CMPBYTEPTR[DI],‘M’JNEBINCBXB:CMPCX,0JNEPOUTA:……5.1字符串操作——实例例5在TAB命令存储区中存放着若干条命令,其中每条命令

8、的前一个字节存放着命令串的长度加1,后面一个字存放着该命令处理子程序的入口地址。设计一命令解释程序,其功能为:检查用户输入的命令,如果在TAB存储区能

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。