汇编语言程序设计讲解ppt课件.ppt

汇编语言程序设计讲解ppt课件.ppt

ID:59450497

大小:63.00 KB

页数:33页

时间:2020-09-18

汇编语言程序设计讲解ppt课件.ppt_第1页
汇编语言程序设计讲解ppt课件.ppt_第2页
汇编语言程序设计讲解ppt课件.ppt_第3页
汇编语言程序设计讲解ppt课件.ppt_第4页
汇编语言程序设计讲解ppt课件.ppt_第5页
资源描述:

《汇编语言程序设计讲解ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章简单程序设计应用7.1串操作程序7.2代码转换7.3冒泡排序举例7.4多精度数运算举例7.1串操作程序串操作指令:对串中的字节/字/双字进行传送、比较、搜索等。串:由连续存放于内存的若干个字节/字/双字组成的数据块。注意:串操作指令寻址与其他指令有很大不同,其源操作数(源串)和目的操作数(目的串)分别隐含由DS:[SI]和ES:[DI]提供。其中源串可以是DS以外的其他段,但目的串只能在ES段。一、串操作指令1、与REP匹配使用的MOVS、STOS、LODS指令。MOVS串传送指令格式:MOVS目的串,源串其中源串为SI指向

2、的数据单元,目的串为DI所指向的附加段的数据单元。所执行操作:字节操作:[DI]←[SI],SI←SI±1,DI←DI±1字操作:[DI]←[SI],SI←SI±2,DI←DI±2MOVSB(字节传送指令)功能:[DI]←[SI],SI←SI±1,DI←DI±1MOVSW(字传送指令)功能:[DI]←[SI],SI←SI±2,DI←DI±2MOVSD(双字传送指令)功能:[DI]←[SI],SI←SI±4,DI←DI±4STOS(串存储指令)格式:STOS目的串其中目的串必须为DI所指向的数据单元。执行的操作:字节操作:[DI]←

3、AL,DI←DI±1字操作:[DI]←AX,DI←DI±2若已确定为字节操作或字操作,可采用无操作数指令。STOSB(字节存储指令)功能:[DI]←AL,DI←DI±1STOSW(字存储指令)功能:[DI]←AX,DI←DI±2STOSD(双字存储指令)功能:[DI]←EAX,DI←DI±4LODS(串读取指令)格式:LODS源串其中源串为SI所指向的数据单元。执行的操作:字节操作:AL←[SI],SI←SI±1字操作:AX←[SI],SI←SI±2若已确定为字节或字操作,可采用无操作数指令。LODSB(字节读取指令)功能:AL←

4、[SI],SI←SI±1LODSW(字读取指令)功能:AX←[SI],SI←SI±2LODSD(双字读取指令)功能:EAX←[SI],SI←SI±4REP(重复串操作指令)操作:①先判断CX=0?,若CX=0,退出REP操作,否则转②执行②CX←CX-1③执行相配合的串指令重复①→③CLD清除方向标志指令格式:CLD功能:DF←0,可使地址自动增1、增2或增4。2、与REPE/REPZ和REPNE/REPNZ联合工作的CMPS和SCAS指令。STD清除方向标志指令格式:STD功能:DF←1,可使地址自动减1、减2或减4。REPE/

5、REPZ(相等或为零时重复)即CX=0或ZF=0时退出,否则CX←CX-1,重复执行。REPNE/REPNZ(不相等或不为零时重复)即CX=0或ZF=1时退出,否则CX←CX-1,重复执行。CMPS(串比较指令)格式:CMPS源,目;[SI]-[DI]CMPSB字节比较指令功能:[SI]-[DI],SI←SI±1,DI←DI±1CMPSW字比较指令功能:[SI]-[DI],SI←SI±2,DI←DI±2CMPSD双字比较指令功能:[SI]-[DI],SI←SI±4,DI←DI±4SCAS(串搜索指令)格式:SCAS目用于搜索在数据

6、块中是否存在某一关键字。SCASB(字节搜索指令)功能:AL-[DI],DI←DI±1SCASW(字搜索指令)功能:AL-[DI],DI←DI±2SCASD(双字搜索指令)功能:AL-[DI],DI←DI±4例:要把数据段1000开始的200个字节内容传送到1100H开始处。用串处理指令来完成的程序段如下:MOVSI,1000HMOVDI,1100MOVCX,200MOVAX,DSMOVES,AXCLDREPMOVSB不用串处理指令,可用下列程序段代替REPMOVSBAGAIN:JCXZSTOPMOVAL,[SI]MOV[DI],

7、ALINCSIINCDIJMPAGAINSTOP:……二、串操作程序例:数据串传送程序,把SI缓冲区的数据依次传送到S2缓冲区中。DATASEGMENTS1DB‘AGIGDFSAASLJSFJSL’LENEQU$-S1DATAENDSEXTRASEGMENTS2DBLENDUP(?)EXTRASEGMENTCODESEGMENTASSUMECS:CODE,DS:DATA,ES:EXTRASTART:MOVAX,DATAMOVDS,AXMOVAX,EXTRAMOVES,AXMOVSI,OFFSETS1MOVDI,OFFSETS2MO

8、VCX,26CLDREPMOVSBMOVAH,4CHINT21HCODEENDSENDSTART例:比较两个字符串,若相同,标志单元FLAG置0,否则置-1。DATASEGMENTSTR1DB‘ABCDEFGH’STR2DB‘ABCDEFGH’CO

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

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

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