第5章循环与分支程序设计

第5章循环与分支程序设计

ID:38422545

大小:192.00 KB

页数:5页

时间:2019-06-12

第5章循环与分支程序设计_第1页
第5章循环与分支程序设计_第2页
第5章循环与分支程序设计_第3页
第5章循环与分支程序设计_第4页
第5章循环与分支程序设计_第5页
资源描述:

《第5章循环与分支程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章循环与分支程序设计1.教学目的:掌握DOS系统功能调用的字符I/O及微型汇编语言程序分析和设计方法。2.教学要求:①会使用DOS系统功能调用输入输出字符及字符串②掌握汇编语言的顺序、分支、循环程序的设计。3.教学重点:①循环、分支程序的设计。4.掌握难点:①循环程序设计②分支程序设计5.教学进程安排:P160~P1926.教学方法:课堂讲授7.教学内容摘要:5.1DOS系统功能调用--字符I/O5.1.1DOS系统功能调用表5.1DOS系统功能调用--字符I/OAH功能调用参数返回参数1H从键盘输入一个字符并回显在屏幕上 AL=字符2H在显示器上显示一个字符DL=字符0AH键盘输入

2、到缓冲区DS:DX=缓冲区首址(DS:DX)=缓冲区最大字符数(DS:DX+1)=实际输入的字符数09H显示字符串DS:DX=串地址字符串以‘$’结尾AL=字符4CH带返回码终止,返回到DOSAL=返回码 5.1.2DOS系统功能调用指令格式1、输入单个字符(AH=01H)格式:movah,01hint21h出口参数:al<-输入字符的ASCII码例:从键盘上输入数字5...movah,1;设置功能号int21h;系统功能调用subal,30h;字符的ASCII码->二进制...;5的ASCII码35h-->05h2、输出单个字符(AH=02H)格式:movah,02hint21h入口参

3、数:dl<-输出字符的ASCII码例:输出3+5的和8...moval,3;al<-一个加数addal,5;两数相加movdl,al;dl<-和adddl,30h;ASCII码<-和的二进制movah,2;设置功能号int21h;输出字符83、输入字符串(AH=0AH)格式:movah,0Ahint21h入口参数:ds:dx<-缓冲区首地址(ds:dx)=设计的最大字符数出口参数:(ds:dx+1)=实际输入的字符数例:输入一个字符串(最多20个字符)bufdb20db?db20dup(?)...movax,segbuf;movds,ax;leadx,buf;等同于movdx,offse

4、tbufmovah,0Ah;设置功能号int21h;4、输出字符串(AH=09H)格式:movah,09hint21h入口参数:·ds:dx<-字符串首地址·字符串必须用'$'作为结束符例:输出一个字符串str1db'computer.',0dh,0ah,'$'str2db'3+5=','$'...movax,segstr1;取str1的段地址movds,axleadx,str1;取str1的偏移地址;等同于movdx,offsetstr1movah,09h;设置功能号int21h;输出computer.leadx,str2;取str2的偏移地址;等同于movdx,offsetstr2m

5、ovah,09h;设置功能号int21h;输出3+5=5、返回DOS(AH=4CH)格式:movah,4chint21h例:codesegmentassumecs:code...movah,4ch;设置功能号int21h;系统功能调用codeendsend5.2汇编语言程序设计结构5.2.1汇编语言程序设计的基本结构三种基本结构:①顺序结构②循环结构③分支结构图5.1顺序结构图图5.2循环结构图图5.3分支结构图5.3循环程序设计5.3.1循环程序结构循环程序结构可以总结为两种结构形式,如图5.4所示。1.DO_WHILE结构2.DO_UNTIL结构⑴DOWHILE结构⑵DOUNTIL结

6、构图5.4循环程序的结构形式构成循环程序的三部分:①设置循环的初始状态②循环体③循环控制部分5.3.2循环程序设计方法例:试编制一个程序把BX寄存器内的二进制数用十六进制数的形式在屏幕上显示出来。例:在附加段中,有一个首地址为LIST和未经排序的字数组。在数组的第一个字中,存放着该数组的长度,数组的首地址已存放在DI寄存器中,AX寄存器中存放着一个数。要求编制一程序:在数组中查找该数,如果找到此数,则把它从数组中删除。5.3.3多重循环程序设计循环可以有多重结构。多重循环程序设计的基本方法和单重循环程序设计是一致的,应分别考虑各重循环的控制条件及其程序实现,相互之间不能混淆。另外,应该注

7、意在每次通过外层循环再次进入内层循环时,初始条件必须重新设置。下面举例加以说明。【例5-15】有一个首地址为A的N字数组,编制程序使该数组中的数按照从大到小的次序排序,采用起泡排序算法完成。5.3.4串操作程序【例5-16】位串插入程序。程序要求把一个小于32位的位串插入存储器内的一个大位串中的任意位置中去。欲插入的位串存放在BITSG中,它是一个右对齐的位串,可称其为子串,其长度用BITSG_LENGTH为符号名的=伪操作来说明。

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

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

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