资源描述:
《微机原理成绩统计类课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、各专业全套优秀毕业设计图纸课程设计课程名称微机原理课程设计题目名称学生成绩的统计学生学院应用数学学院专业班级12信息安全2班学号学生姓名指导教师2015年1月2日18一、实验内容31.实验任务32.构思猜想3二、实验设计31.实验工具:MASM32、ResEd32.实验过程42.1.图形设计42.2.应用程序代码52.3.程序资源的准备91)修改Var.bat的地址92)修改MakeFile103)生成RC文件104)生成OBJ文件115)生成EXE程序123.实验结果13三、实验完整代码14四、实验心得体会18(1)本实验程序缺点18(2)本实验程序优点18
2、(3)开发心得体会1818一、实验内容1.实验任务输入十个学生某门课的成绩,统计低于60分,60~69分,70~79分,80~89分,90~99分和100分的人数,并输出统计结果。要求学生成绩的输入和统计结果的输出使用图形界面。2.构思猜想成绩统计是用于统计学生成绩的的简单的应用程序,所以正常的成绩统计程序,不能局限于统计一个固定人数(或不可变的),因为如果固定人数的话,当我们要用于不同的班级或专业时,对于不同的人数我们要做更多重复的操作,而造成无谓了人员或者资源的浪费。因此一个成绩统计软件必须要能应用于不同人数,而且能将统计结果呈现出来的。二、实验设计1.实
3、验工具:MASM32、ResEd(1)MASM32:MASM32并非是指Microsoft的MASM宏汇编器。MASM32是一个由个人开发的包含了不同版本工具组建的汇编开发工具包。它的汇编编译器是MASM6.0以上版本中的Ml.exe,资源编译器是MicrosoftVisualStudio中的Rc.exe,32位链接器是MicrosoftVisualStudio中的Link.exe,同时包含有其他的一些如Lib.exe和DumpPe.exe等工具。本实验主要通过MASM开发环境,使我们的代码生成EXE。(2)ResEd:ResEd是一个图形界面编辑工具,它不但
4、可以用来编写程序所图形界面(如修改图标、菜单、鼠标。版本信息等),还支持了对exe、dll等执行文件内的资源(图标、菜单、鼠标指针、位图、版本信息)等进行修改、替换。本程序不适用VC++的MFC设计程序的图形界面,因为VC++是被其开发者封装过的开发工具,里面的工作空间与开发工具本身的内部指令有关,因此,若用MFC生成的图形界面然后再取其生成RC文件,里面则会混淆许多我们不知的且对我们应用无用的代码段。使用ResEd,其本身是一个只用来设计图形界面的软件,负责的只是一个界面设计块,不用考虑该图形界面是否能成为应用或者被开发者如何使用,其生成的RC文件,只包含必
5、要的控件的代码和设定,这让我们开发的时候能够更加的清晰且避免许多不必要的错误。181.实验过程2.1.图形设计使用ResEd设计我们需要的图形图一:图二:然后按“Ctrl+S”对我们的图形界面进行保存操作,然后就能生成(我取名为Rengar,名字又用户自行定义)Rengar.rc,我们右键文件“编辑”打开文件,这能清晰的看到我们的rc文件,并且在文件最顶端加上一句“#include”,如图示182.2.应用程序代码这里我使用的是老师给出的代码作为模板,添加修改自己的代码进去,完整代码在下面会给出,这里我们只对部分关键代码进行解析1)我们
6、将刚刚生成的RC文件打开后,将我们控件的ID放进模板中18控件ID部分:放入模板的Equ定义中:2)本程序录入成绩与导出成绩结果是在两个不同的对话框上,因此我们要对两个对话框进行设定结果对话框代码:_ProcDlgMainlprocusesebxediesi,hWnd,wMsg,wParam,lParam18local@szBuffer[5]:bytemoveax,wMsg.ifeax==WM_CLOSEinvokeEndDialog,hWnd,NULL.elseifeax==WM_INITDIALOGmovesi,[fail]invokeSetDlgItem
7、Int,hWnd,IDC_EDT2,esi,TRUEmovesi,[sixty]invokeSetDlgItemInt,hWnd,IDC_EDT3,esi,TRUEmovesi,[seventy]invokeSetDlgItemInt,hWnd,IDC_EDT4,esi,TRUEmovesi,[eighty]invokeSetDlgItemInt,hWnd,IDC_EDT5,esi,TRUEmovesi,[ninety]invokeSetDlgItemInt,hWnd,IDC_EDT6,esi,TRUEmovesi,[hundred]invokeSetDlgI
8、temInt,hWnd,IDC_EDT