- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编随机点名大作业
《汇编语言程序设计》
综合程序设计实验报告
题 目: 随机点名
完成日期: 2013.11.23
项目简介
本项目的名称是随机点名,主要用于大学老师上课期间对上课的 学生进行随机的点名抽查,优点是方便快捷。
小组成员具体分工
组长:杨波
主要负责的工作:获得随机数的代码编写,输出字体带颜色的代码编写,后期代码的修改,系统的整合操作,信息的搜集和整理,实验报告的检验及修改
组员:崔海营
主要负责的工作:通过所获得的随机数得到输出学号的代码编写,实验报告的初步编写,信息的搜集和整理
需求分析与设计
项目设计背景及意义:
当今社会上大学已经成为一种潮流趋势,而随着大学生人
数的增多,每堂课的人数也随之增多。这就给许多大学老师带
来了问题,课程时间一定而考勤却占去了相当一部分时间,同
时老师并不能记清所有人的名字或是学号,找学生回答问题成
为了老师们的一块心病。种种原因下对课程进度也造成了一定
的影响。
而我们设计的随机点名项目极具针对性的解决了这个问
题。该项目通过随机的显示学生信息进而达到点名的目的,方
便快捷,有效的节约了课程时间。
2. 编译及运行环境:
Masm for Windows 集成实验环境 2012.5
3.项目的设计过程
3.1小组讨论
通过具体的项目分析,决定各自分工以及所有可遇
到难点的处理办法。本项目需要解决的最大问题就是
随机数的获取。在计算机中获得完全的随机数几乎是 不可能的,所以随机数的生成实际上是伪随机数的生 成。本项目我们采用IBM公司首创的线性同余法,取 系统时间为随机种子,进而获得随机数。
3.2信息的收集及整合
通过上网查找以及对书本上知识的研究,初步得
出基本的代码框架,包括首先通过线性乘同余法来获
得随机数,然后根据随机数来选择输出的学号,进而
达到随机点名的需求。
3.3代码的编写
通过所学的知识以及所查询的知识进行代码的初步
编写。主要参考书目:IBM-PC汇编语言程序设计
沈美明 温冬婵; 汇编语言程序设计教程 王庆生
3.4实验报告的书写
代码及分析
4.1知识点及特色
4.1.1知识点
1.字符串,数组,常量的定义以及初始化
2各种寄存器寻址方式
2.栈的定义及初始化
4.子程序的定义及调用
5.系统时间的调用及使用
6.加减乘除四则运算
7.栈的操作,包括压栈和弹栈
8.bios功能调用使字符串带颜色显示
9.dos 功能调用
10. 字符比较指令及跳转指令的操作
4.1.2特色及流程
该程序的所有代码是自主编写的,其中随机数的代码是通过 对线性乘同余法的分析,调用系统时间实现四则运算而获得。
具体有以下子程序:
main主程序. 实现获取当前输出模式并改变当前输出格式和 像素的功能.接下来,在选项选择时,若选择1则程序继续输 出学号,若选择2则结束输出.
Random子程序,调用系统时间为随机种子,利用公式
In=(a*In-1)mod m
其中a=37d,m=63553d .
然后In作与运算,将In数值限制在20以内, 最后存于v_random中.
Search_disp子程序,根据v_random传给num的数值,利用 comper子程序,选择与num数值相应的string(num),在
跳转后调用display子程序。
comper子程序.包含和num比较与跳转的具体指令,调用 display子程序的前提.
Display子程序.通过调用BIOS功能在0行0列以彩色输出一 串字符,具体见BIOS功能13h.
Clrfpro子程序.其主要任务就是实现换行.
具体流程图如下:(此处流程图给出的是总体流程,关于整个项目涉及到的各
文档评论(0)