- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机课程设计报告 四则运算 计算器
XX工程学院软件学院
题 目: 四则运算
班 级: XX
姓 名: XX
学 号: XX
指导老师: XX
日 期: 年 月 日
目 录
第一章 设计目的 1
第二章 概要设计 1
2.1 系统总体分析 1
2.2 主模块框图及说明 1
第三章 详细设计 2
3.1 主模块及子模块概述 2
3.1.1 主模块 3
3.1.2 子模块 3
3.2 各模块详细设计 4
3.2.1 界面初始化模块 4
3.2.2 菜单选择模块 5
3.2.3 鼠标初始化模块 5
3.2.4 鼠标状态获取模块 5
3.2.5 十进制有符号数输出模块 6
第四章 程序调试 6
4.1 运行界面分析 6
4.2 算法分析 8
4.3 调试过程与分析 8
第五章 心得体会 9
5.1 设计体会 9
5.2 系统改进 9
附 录 1
源程序: 1
设计目的
进行程序设计方法和技能的基本训练,巩固在课堂上学到的有关程序设计的基本知识和基本方法,通过实际动手能力的培养,进一步熟悉汇编语言的结构和使用方法,达到能独立阅读、编制和调试一定规模的汇编语言程序的水平。
概要设计
系统总体分析
本程序以windows XP下的自带计算器为参考模型进行设计。模仿其界面、操作模式及计算模式(支持鼠标)。
程序可输入的数值范围大小为十进制的0到65535。
在执行计算时程序内部均以一个字大小无符号数进行四则运算,当程序输出结果时则以一个字有符号数进行输出(即范围从-32768到32767)。例如,在执行5600-6120时程序会输出结果-520,而执行65534+1时程序输出-1。
可以执行多个数的按序运算。例如可以输入100*2+299+5-4再按等号按钮,程序则输出500。
可以利用上次运行结果进行追加运算。例如上次运行结果为500此时输入减号再输入499(这里也可以是一连串的计算)按下等号,程序输出结果1。
主模块框图及说明
见图2.2。
图2.2
详细设计
主模块及子模块概述
程序中先调用WindowInit函数进行初始化窗口界面。再调用MenuChoose函数对各按钮进行侦听,单鼠标点击各按钮时,程序对其进行处理并调用各子模块执行各对应动作。
主模块
函数名称:WindowInit。功能:初始化窗口界面。
函数名称:MenuChoose。功能:侦听菜单按钮。
函数名称:MouseInit。功能:初始化鼠标。
函数名称:GetMouse。功能:获取鼠标状态。
函数名称:OutInterger。功能:在当前位置输出有符号十进制数。
子模块
DrawButton 入口参数:CX=左上角坐标,DX=右下角坐标。
功能:在对应坐标位置画按钮
DrawRect 入口参数:BH=前、背景色,CX=左上角坐标,DX=右下角坐标。
功能:在对应坐标位置画对应颜色的矩形框。
DrawChar 入口参数:DX=坐标,AL=字符
功能:在对应坐标位置输出字符。
ButtonDown 入口参数:DX=按钮编号值
功能:使对应按钮出现按钮下凹效果。
DrawButtonDown 入口参数:CX=左上角坐标,DX=右下角坐标
功能:在对应位置画下凹的按钮。(为ButtonDown模块调用,简化代码量)
DrawButtonFram 入口参数:AL=边框种类,BL=字符,CX=上边框坐标,DX=下边框坐标。
功能:在各种类按钮上对应画边框和字符。
ButtonUp DX=按钮编号值
功能:使下凹的按钮出现上浮(复位)效果。并返回AX=按钮功能值
GetCursor 入口参数:无
功能:获取光标的坐标值,存放在DX寄存器中。
Roll 入口参数:无
功能:使显示区域的内容向上翻滚一行。
GetSign 入口参数:无
功能:读取内存中所保存的运算符号,并存放在Al中。
AddInterger 入口参数:无
功能:对NumberTemp和Number中的内容进行求和,并将结果保存在Number内存单元中。
SubInterger 入口参数:无
功能:对NumberTemp和Number中的内容进行求差,并将结果保存在Number内存单元中。
MulInterger 入口参数:无
功能:对NumberTemp和Number中的内容进行求积,并将结果保存在Number内存单元中。
DivInterger 入口参数:无
功能:对NumberTemp和Number中的内容进行求和,并将结果保存在Number内存单元中。
各模块详细设计
界面初始化模块
函数名称:WindowInit。
入口参数:无
返回值:无
功能:设置显示器模式,40*25大小,16色文本模式。在左边按钮区域,设置按钮上的字符为蓝色,按钮为灰色,底层背景为深灰色,以
您可能关注的文档
最近下载
- 转正合同协议.docx VIP
- 糖尿病优秀ppt课件.pptx VIP
- 《区域地理-东南亚(第课时)》-公开课件(设计).ppt VIP
- 2025年农村环保问题解析:十种废弃物资源化利用创新模式研究.docx
- 药食同源-公开课件.ppt VIP
- 回收废弃农作物秸秆项目备案申请可行性研究报告.docx
- 消食类药食同源中药的合理应用教材(PPT 74页).ppt VIP
- 犀牛角及其制品鉴定识别方法的研究.doc VIP
- 药食同源食物介绍PPT课件.pptx VIP
- Unit 1 Helping at home Part A (3) Let's spell 课件2025-2026学年度人教PEP版英语四年级上册.pptx VIP
文档评论(0)