汇编语言程序设计基本方法

汇编语言程序设计基本方法

ID:15771316

大小:110.50 KB

页数:4页

时间:2018-08-05

汇编语言程序设计基本方法_第1页
汇编语言程序设计基本方法_第2页
汇编语言程序设计基本方法_第3页
汇编语言程序设计基本方法_第4页
资源描述:

《汇编语言程序设计基本方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第七章汇编语言程序设计基本方法1.教学目的:掌握微型汇编语言程序分析和设计方法2.教学要求:①熟悉汇编语言程序设计的基本步骤。②掌握程序流程图的使用,会利用其分析问题。③掌握汇编语言的顺序、分支、循环程序的设计。④了解实模式下80386及其后继机型的汇编语言的程序设计3.教学重点:①利用流程图分析问题。②顺序、分支、循环程序的设计。4.掌握难点:①分支程序设计②循环程序设计5.教学进程安排:P137~P1686.教学方法:课堂讲授7.教学内容摘要:7.1汇编语言程序设计概述7.1.1汇编语言程序设计的基本步骤1.分析问题,

2、抽象出描述问题的数学模型2.确定算法3.绘制流程图4.分配存储空间和工作单元5.编写程序6.静态检查7.上机调试运行7.1.2程序流程图1.用自然语言表示算法2.流程图的组成⑴执行框(矩形框)⑵判别框(菱形框)⑶开始框和终止框⑷指向线⑸连接点3.三种基本结构和改进的流程图⑴传统流程图的弊端⑵三种基本结构①顺序结构②选择结构③循环结构图7.4顺序结构图图7.5选择结构图4.结构化程序设计的特点⑴只有一个入口⑵只有一个出口⑶各功能框均可执行⑷结构中无死循环7.2顺序程序设计顺序结构程序是最简单的程序,在顺序结构程序中,指令按照

3、先后顺序一条条执行。【例7-3】将—个字节压缩BCD码转换为两个ASCII码。7.3分支程序设计7.3.1分支程序的结构形式分支程序结构可以有两种形式,如图7.6所示。(1)IF_THEN_ELSE结构(2)CASE结构7.3.2分支程序设计方法程序的分支一般用条件转移指令来产生,利用转移指令不影响条件码的特性,连续地使用条件转移指令使程序产生了多个不同的分支,而对于数组中的每一个数,它只能是多个分支中的某一个。【例7-5】在附加段中,有一个按从小到大顺序排列的无符号数数组,其首地址存放在DI寄存器中,数组中的第一个单元存

4、放着数组长度,在AX中有一个无符号数,要求在数组中查找(AX),如找到,则使CF=0,并在SI中给出该元素在数组中的偏移地址;如未找到,则使CF=1。【例7-6】折半查找算法程序7.3.3跳跃表法分支程序的两种结构形式都可以用上面所述的方法来实现。此外,在实现CASE结构时,还可以使用跳跃表法,使程序能根据不同的条件转移到多个程序分支中去,【例7-7】试根据AL寄存器中哪一位为1(从低位到高位)把程序转移到8个不同的程序分支中去。7.4循环程序设计7.4.1循环程序结构循环程序结构可以总结为两种结构形式,如图7.8所示。1

5、.DO_WHILE结构2.DO_UNTIL结构⑴DOWHILE结构⑵DOUNTIL结构图7.8循环程序的结构形式构成循环程序的三部分:1.设置循环的初始状态2.循环体3.循环控制部分7.4.2循环程序设计方法【例7-9】试编制一个程序把BX寄存器内的二进制数用十六进制数的形式在屏幕上显示出来。【例7-11】在附加段中,有一个首地址为LIST和未经排序的字数组。在数组的第一个字中,存放着该数组的长度,数组的首地址已存放在DI寄存器中,AX寄存器中存放着一个数。要求编制一程序:在数组中查找该数,如果找到此数,则把它从数组中删除

6、。7.4.3多重循环程序设计循环可以有多重结构。多重循环程序设计的基本方法和单重循环程序设计是一致的,应分别考虑各重循环的控制条件及其程序实现,相互之间不能混淆。另外,应该注意在每次通过外层循环再次进入内层循环时,初始条件必须重新设置。下面举例加以说明。【例7-15】有一个首地址为A的N字数组,编制程序使该数组中的数按照从大到小的次序排序,采用起泡排序算法完成。7.4.4串操作程序【例7-16】位串插入程序。程序要求把一个小于32位的位串插入存储器内的一个大位串中的任意位置中去。欲插入的位串存放在BITSG中,它是一个右对

7、齐的位串,可称其为子串,其长度用BITSG_LENGTH为符号名的=伪操作来说明。大位串存放在STRING中,并为要插入的子串准备了一个符号名为SG_END的双字单元。7.5在实模式下发挥80386及其后继机型的优势7.5.1充分利用高档机的32位字长特性80X86系列从80386起就把机器字长从16位增加到32位。字长的增加除有利于提高运算精度外,也能提高编程效率。【例7-17】如有两个4字长(64位)数分别存放在DATA1和DATA2中,请用8086指令编写一程序求出它们的和,并把结果存放于DATA3中。7.5.2通用

8、寄存器可作为指针寄存器前面的讨论已经说明386及其后继机型除提供16位寻址外,还提供了32位寻址。在实模式下,这两种寻址方式可同时使用。并且列出了16位寻址和32位寻址所允许使用的寄存器情况。可以看出,在使用32位寻址时,32位通用寄存器可以作为基址或变址寄存器使用。也就是说,允许32位通用寄存器作指针

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

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

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