求1-5000之间的素数课程设计.docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
求1-5000之间的素数课程设计

学 号: 0120810340621 汇编课程设计 题 目 求1-5000之间的素数 学 院 计算机科学与技术学院 专 业 计算机科学与技术专业 班 级 计算机科学与技术0902班 姓 名 庞竞强 指导教师 刘伟 2011 年 12 月 30 日 课程设计任务书 学生姓名: 庞竞强 专业班级: 计算机0902班 指导教师: 刘伟 工作单位:计算机科学与技术学院 题目: 求1-5000之间的素数 初始条件: 理论:完成了《汇编语言程序设计》课程,对微机系统结构和80系列指令系统有了较深入的理解,已掌握了汇编语言程序设计的基本方法和技巧。 实践:完成了《汇编语言程序设计》的4个实验,熟悉了汇编语言程序的设计环境并掌握了汇编语言程序的调试方法。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 进一步理解和掌握较复杂程序的设计方法,掌握子程序结构的设计和友好用户界面的设计。具体的设计任务及要求: 熟悉汇编语言循环结构; 打印出1-5000之间的素数; 程序采用子程序结构,结构清晰; 友好清晰的用户界面,能识别输入错误并控制错误的修改。 在完成设计任务后,按要求撰写课程设计说明书;对课程设计说明书的具体要求请见课程设计指导书。 阅读资料: 1)《IBM—PC汇编语言程序设计实验教程》实验2.4 2)《IBM—PC汇编语言程序设计(第2版)》例6.11 时间安排: 设计安排一周:周1、周2:完成系统分析及设计。 周3、周4:完成程序调试,和验收。 周5:撰写课程设计报告。 指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 1. 设计题目 1. 1 题目:求1~5000之间的所有素数 1. 2 初始条件及参数: 1.2.1 初始条件 理论:学完汇编课程,掌握汇编语言的使用。 实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。 1.2.2 参数 所求素数范围应为1~5000,而且是在此范围内的所有素数。 2. 设计要求 本次课程设计着重于运用设计,同时培养动手能力。要求运用自己所学知识进行设计实现,体现自己的知识掌握水平,严禁抄袭(发现后抄袭者和被抄袭者一律不及格)。所作设计需进行论证,一方面是从理论上进行推理验证,另一方面是实验论证。具体如下: 2.1 运用自己所学知识进行设计实现 2.2 熟悉开发工具MASM 2.3 进一步理解汇编语言的应用,巩固所学的知识 2.4了解及初步学会汇编程序的调试、测试 2.5 能够成功地完成设计要求,通过适当的算法查找到1~5000之间的素数并能正确输出,其格式如下: XXXX XXXX XXXX ...... 3. 设计思路 3.1设计总体思路与分析 题目只要求输出1~5000之间的素数,然而由于屏幕的大小限制,不可能使得1~5000之内的素数都同时显示给用户,所以应该分批地显示,让用户输入要查找的素数的范围,例如用户可以输入1000,2000等等的数值范围,程序在屏幕上打印出数值范围内的素数,这样的话既灵活,又能够达到题目的要求,还扩展了程序的功能。程序总体分析如下: 3.1.1 模块的层次设计 程序由三个模块组成,分别是主程序模块main,接受数值并转化运算模块check和查找素数模块,他们的模块框图如下所示: 3.1.2 各功能模块的设计说明 3.1.2.1 模块名:main 为总控制模块 输入:从键盘输入一个数字0或1,分别代表退出和进入查找。 输出:屏幕上提示用户选择相应的选项。 功能:总体控制界面显示,提示用户选择是否进入查找, 如果用户选择查找则: 调用模块check完成接受用户输入的查找范围并完成ASCII码到数字的转换的功能。 调用模块 outputNumList完成查找输入范围内的素数的查找并在屏幕上显示的功能。 如果用户选择查找则退出程序。 3.1.2.2 模块名:check 输入:用户从键盘输入一个10000以内的数字字符串,保存在缓冲区buf内。 输出:将转换得到的查找范围放在BX内,并置是否含有非数字字符的标志just。 功能:将用户输入的数值字符串转换为数字,同时检查是否输入了非数字字符,其算法如下: 依次从buf内取出输入的各个字符,检查它是否为数字字符,如果是的话根据其位置乘以相应的权值,加到BX,继续取下一个;如果为否的话,则

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档