东北大学汇编语言第07章 循环结构程序ppt课件.ppt

东北大学汇编语言第07章 循环结构程序ppt课件.ppt

ID:58857131

大小:522.00 KB

页数:84页

时间:2020-09-30

东北大学汇编语言第07章 循环结构程序ppt课件.ppt_第1页
东北大学汇编语言第07章 循环结构程序ppt课件.ppt_第2页
东北大学汇编语言第07章 循环结构程序ppt课件.ppt_第3页
东北大学汇编语言第07章 循环结构程序ppt课件.ppt_第4页
东北大学汇编语言第07章 循环结构程序ppt课件.ppt_第5页
资源描述:

《东北大学汇编语言第07章 循环结构程序ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章循环结构程序7.1循环结构程序的提出7.2循环结构程序的组成7.3循环控制指令7.4数据串操作指令7.5循环程序的控制方法7.6单重循环程序举例7.7多重循环程序设计7.8循环程序的效率7.1循环结构程序的提出在许多实际应用问题中,经常遇到某一段操作需反复进行的情况。例7.1设内存DATA1和DATA2开始分别存放50个无符号字数据,编制程序将两个存储区对应字数据求和并存入SUM开始的单元。利用顺序结构编写求和程序,首先设置源操作数和目的操作数指针,设置存放结果指针,接着从源指针指出的字单元取出数据,与目的指针指出的字单

2、元的数据相加,和存入结果的字单元,然后,修改各地址指针,使之指向下一个字数据,求和,保存结果,...直至50对字数据全部求和后,程序结束。7.1循环结构程序的提出1:;*****EXAM7.1.1*****2:SSEGSEGMENTSTACK3:STACKDB 50DUP(0)4:SSEGENDS5:DATASEGMENT6:DATA1DW15H,36H,45H,27BH,...7:DATA2DW174H,03H,5BCH,390H,26H,...8:SUMDW50DUP(0)9:DATAENDS10:CSEG

3、SEGMENT11:ASSUMECS:CSEG,DS:DATA12:ASSUMESS:SSEG13:START:MOVAX,DATA14:MOVDS,AX15:MOVAX,SSEG16:MOVSS,AX17:MOVSP,SIZESTACK18:LEABX,DATA119:LEASI,DATA220:LEADI,SUM21:MOVAX,[SI]22:ADDAX,[BX]23:MOV[DI],AX24:ADDBX,225:ADDSI,226:ADDDI,227:MOVAX,[SI]28:ADDAX,[

4、BX]29:MOV[DI],AX30:ADDBX,231:ADDSI,232:ADDDI,2:315:MOVAX,[SI]316:ADDAX,[BX]317:MOV[DI],AX318:MOVAH,4CH319:INT21H320:CSEGENDS321:ENDSTART7.1循环结构程序的提出1:*****EXAM7.1.2*****:....;第2~20行与EXAM7.1.1相同21:MOVCX,5022:AGAIN:MOVAX,[SI]23:ADDAX,[BX]24:MOV[DI],AX2

5、5:ADDBX,226:ADDSI,227:ADDDI,228:DECCX29:JNZAGAIN30:MOVAH,4CH31:INT21H7.2循环结构程序的组成1.初始化部分初始化部分是为循环程序做好准备、以保证循环程序能够正常运行的部分。这一部分往往在循环程序的开头,逻辑上先从这部分开始执行。这一部分一般设置地址指针的初值、计数器的初值及程序中用到的某些寄存器和某些内存单元的初值,初始化部分只执行一遍。2.工作部分工作部分是循环程序的主体,它从初始化部分设置的初值开始,动态地反复执行相同的操作。这一部分完

6、成循环程序所要实现的功能,即需要重复进行的工作。3.修改部分这一部分与工作部分协调配合,对参加运算的数据或地址指针以及结果单元的地址指针进行恰当的修改,以保证循环程序在循环的过程中,每次循环都能正确地得到参加运算的数据,并正确地存放运算结果。4.控制部分控制部分是保证循环程序按预定的循环次数或某种预定的条件正常循环,且能控制循环程序正常退出循环的部分。7.3循环控制指令1.LOOP重复控制2.LOOPE/LOOPZ条件重复控制3.LOOPNE/LOOPNZ条件重复控制4.JCXZCX为0转1.LOOP重复控制指令汇编格

7、式:LOOPshortlabel操作:计数寄存器CX减1,如果新的CX值不为0,则转向shortlabel指定的循环入口执行;若CX=0,则退出循环,执行后续指令。受影响的状态标志位:没有。举例:1.LOOP重复控制21:MOVCX,5022:AGAIN:MOVAX,[SI]23:ADDAX,[BX]24:MOV[DI],AX25:ADDBX,226:ADDSI,227:ADDDI,228:DECCX29:JNZAGAIN30:MOVAH,4CH31:INT21HLOOPAGAIN2.LOOPE/LOO

8、PZ条件重复控制指令汇编格式:LOOPE/LOOPZshortlabel操作:计数寄存器CX减1,如果零标志位ZF=1且CX≠0时,转向shortlabel指定的循环入口执行,如果ZF=0或CX=0则执行后续指令。受影响的状态标志位:没有。例子:比较两个数据

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

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

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