下载此文档

奇偶阶乘求和汇编程序.doc


文档分类:医学/心理学 | 页数:约32页 举报非法文档有奖
1/32
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/32 下载此文档
文档列表 文档介绍
摘要近几十年,随着电子计算机的诞生和高速发展,社会和科技提到了前所未有的高度。计算机技术的发展所带来的信息技术的飞速发展,给人类社会带来了进步,给人们的生活生产发生了巨大深刻的变化。微机技术,在计算机发展过程中发挥了重要的作用。微机技术使计算机在保持速度和性能的基础上,使得机器更加小巧。典型代表是PC机普及到各行各业的各个领域。不管是人们的生产或是生活,都离不开计算机,而且,计算机在以更快的速度在发展,其前途不可估量。从我的的专业电气工程及其自动化来看,学好和灵活应用微机技术对我们来说有着十分重要的意义。在大三上学期我们学习了微机原理和接口技术,对微机有了初步的了解。学期结束后,为提高和巩固专业知识,我们进行了微机原理课程设计,主要是用汇编语言编程序代码使计算机完成相应的任务。关键词:微机汇编程序代码课程设计目录1总体方案分析      12方案流程图                  105心得体会  116参考文献  137程序清单  :??采用16位微处理器8086CPU以及86系列微型计算机的指令系统;??软件设计平台可使用EMU8086软件,仿真设计平台可采用Proteus软件。要求完成的主要任务:??设计汇编语言程序,实现判断闰年的功能,具体功能要求如下:(1)屏幕提示输入一个数字N(1位数);(2)若N为奇数,则计算S=1!+3!+5!+…+N!的和;若N为偶数,则计算S=2!+4!+6!+…+N!的和;(3)可连续输入数字进行计算,直至单击“Q”或“q”,然后求出其阶数之和,并显示出来。但是,不同于直接的递增为1的阶乘求和,此次设计要求每次递增为2,即假如输入5,那么要求出1!+3!+5!,如果为4,那么要求出2!+4!。别看是小小的一点改动,程序设计难度上大有不同。在设计汇编程序过程中,程序代码在求阶数、求阶数之和、将阶数之和输出三个部分的基础上,嵌套了双重循环。考虑到我们用到的是16位汇编语言,而且寄存器有限,本题在编程序过程中会比较麻烦。在进行课设之前,我有两种思路:思路一:首先计算n!并把计算结果存放到相应存储区,然后然后判断n的奇偶来决定进行奇数求阶乘和还是偶数求阶乘和,然后把阶乘和结果转换成十进制,改成对应数字的ASSIC码值后,通过字符形式输出。思路二:首先计算n!并把计算结果存放到相应存储区,形成列表。这时不考虑奇偶的差异性,而是考虑递增2的共性,首先算出各个阶乘和并存放到另一存储区。然后通过调用n对应的存储区间,进行十进制转换,ASSIC码转换,以字符的形式输出。两种方案都是可行的,考虑我们需要重复进行输入输出操作,为了节省计算机的计算时间,提高计算机的工作效率,我们选择第二种方案。,所以,我们需要先将1到9的阶乘分别求出来,并保存在指定的一段存储单元中,然后再从存储单元中调用1到9的阶乘,再把它们进行求和,这时需要注意的是奇数偶数调用的起始位置是不同的。再分别将1到9的对应的阶乘和存储在另一个指定的存储单元中。这两个存储单元都要事先定义好。考虑到算出来的阶乘和比较大,所以要定义的是32位的字空间。在汇编程序代码中,MUL指令的16位乘16位的结果是默认在DX:AX当中,计算时需要多次用到,所以要注意使用;小于或等于8的阶乘小于65536,AX能保存,DX都为零,刚好在9的阶乘时的数才大于65536,需要AX,DX同时保存,这一点给程序的设计和调试过程中需要加以留心。在求阶数之和过程中,只需保存了阶数的存储单元的数调出,再进行计算即可,在本次设计程序中,还是保持将高16为放在DX,低16位放在AX中。值得注意的是,在进行低16位的求和计算中,会出现溢出的可能,所以需要考虑CF的值。当在指定的存储空间段中保存了1到9的阶数之和,要用到的时候只需调用即可。单字符输入指令1号中断中,得到的字符以ASCII码的形式存在AL中,所以还需程序将其ASCII码转换成其所表示的值。然后在用到其值进行偏移地址的计算,取出其阶数之和那个值。在程序结尾十进制的转换需要考虑各个寄存器间的关系。最后进行字符输出的时候特别需要注意判断是否完全输出的方法。,设计出流程图。开始定义各个存储空间si←buf的首地址ax,bx←1ax←ax×bx[si]←ax[si+2]←

奇偶阶乘求和汇编程序 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数32
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小117 KB
  • 时间2019-10-02