文档详情

华中科技大学汇编语言程序设计实验报告(八)Win32编程.doc

发布:2019-01-20约2.78万字共42页下载文档
文本预览下载声明
课程实验报告 课程名称:汇编语言程序设计实验实验名称:实验五 课程名称: 汇编语言程序设计实验 实验名称: 实验五 Win32编程 实验时间:2017-5-3, 14: 30-17: 30实验地点: 南一楼804室45号实验台 指导教师: 李专 专业班级:计算机科学与技术 专业班级: 计算机科学与技术201502班 学 号: U201414596 姓 名: 卢振兴 同组学生: 报告日期: 2017年5月3日 原创性声明 本人郑重声明:本报告的内容由本人独立完成,有关观点、方法、数据和文献等的 引用己经在文中指出。除文中已经注明引用的内容外,本报告不包含任何其他个人或集体己 经公开发表的作品或成果,不存在剽窃、抄袭行为。 特此声明! 学生签名:卢振兴 H 期:2017.5.3 成绩评定 实验完成质最得分(70 分)(实验步骤清晰详细深 入,实验记录真实完整等) 报告撰写质量得分(30 分)(报告规范、完整、通 顺、详实等) 总成绩(100分) 指导教师签字: H期: 1?实验目的与要求 熟悉WIN32程序的设计和调试方法; 熟悉宏汇编语言屮INVOKE>结构变量、简化段定义等功能; 进一步理解机器语言、汇编语言、高级语言之间以及实方式、保护方式之间的一?些关系。 2.实验内容 编写一个基于窗口的WIN32程序,实现学生成绩表信息的平均值计算及显示功能(借 鉴前面实验中的一些做法),具体要求如下描述。 功能一:编写一个基于窗口的WIN32程序的菜单框架,具有以下的下拉菜单项: File Action Help Exit Average About List 点菜单File下的Exit选项吋结束程序;点菜单Help下的选项About,弹出一个消息框, 显示本人信息,类似图5.1所示。点菜单Action K的选项Average. List将分别实现计算平 均值或显示所有成绩的功能(详见功能二的描述)。 图5.1菜单示例 功能二:每个学生的相关信息包括:姓名(结尾含1个以上的数值0,共占10个字节), 语文成绩(1个字节),数学成绩(1个字节),英语成绩(一个字节),平均成绩(1个字节), 等级(1个字节)。要求采用结构变量存放学生的相关信息。学生人数至少5人。姓名和各 科成绩直接在数据段中给定,不必运行时输入。成绩表中最后一个学生必须使用自己的姓名。 点菜单项Average时,计算平均成绩并给出等级(等级的定义见实验一,但这里不用单 独显示等级)。平均成绩的计算仍按照实验一的公式进行。平均成绩和等级保存到上述结构 变量的相应字段中。用TD32观察计算结果。 点菜单项List时,耍求能在窗口中列出所有学生信息,包括姓名、各科成绩、平均成 绩、等级等。如图5.2所示。平均成绩尚未计算时,平均成绩及等级显示为空白。 Our First Window I o ||g回 I file Action 上felp List Name Chinese Maths English Average Grade xueba 80 86 87 82 B xuezha 46 55 58 50 F zhangsan 70 86 87 77 C lisigsan 67 76 61 68 D wangwuan 11 56 69 69 D chenliun 99 100 99 99 A 图5. 2成绩单显示示意图 上述任务中,思考或尝试的问题的提示: 安装MASM32软件包,观察MASM32软件包目录结构和环境配置。 试对\masm32\EXAMPLE 1 \3DFRAMES\下的例了,进行汇编、连接、运行和调试 (TD32.EXE观察WIN32执行程序代码的特点和执行流程。体会基于窗口的应用程序所 包含的四个部分Z间的衔接关系。 观察TD32与16位TD的界同。 调试WIN32程序与16位段程序的主要差界是什么? 尝试使川一下汇编语言程序的源码级调试工具和方法,与非源码级调试做个对比, 可以参考文献3。 用TD32观察代码区或数据区时,若所观察的地址范围不是与被调试程序相关的区 间,则对应内存中的数据会因为被系统保护了而读不出来(将用?代替),请通过修改偏移 地址来改变观察的区间,记录此现彖。 编写和处理简单资源脚木,装入菜单,观察效果。 观察收到的消息,记录每个菜单项或按键等操作所对应的消息信息。 比较DOS、Windows输出方式,观察Win32程序的儿种字符串输出方式所用函数的 原型。 观察结构变量的平均成绩等字段的偏移,体会结构变量优点。 观察简化段的效果。 观察Invoke语句翻译成机器码后的特点,记录参数压栈顺序。 本次实验需要突!1! WIN32的框架、调试方法、少16位段程序的区別等几个内容。 参考资料: 许向阳,《80X86汇编语言程序设计
显示全部
相似文档