版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、河北工程大学虚拟仪器设计课程设计报告课题:计算器模拟姓 名:需要程序的可以联系我学号: 班级:测控三班完成日期:2012年6月19日.word可编辑.专业.专注目 录 TOC o 1-5 h z HYPERLINK l bookmark5 o Current Document 一、设计思路2二、实现过程2-面板键入感应2运算变量的初始化 2无操作时的默认输出3数字的键入1-9的输入3 数字0的输入4小数点的键入5结果去零操作5+/-”键的设计7+、-、*、/”四则运算710、等号键8开方运算9取倒数倒数运算913、退格键CE的设计10清零键C11-15、停止键OFF12 HYPERLINK l
2、 bookmark25 o Current Document 三、整体程序12 HYPERLINK l bookmark27 o Current Document 四、前面板的设计排版12 HYPERLINK l bookmark29 o Current Document 五、while 循环中寄存器能 13 HYPERLINK l bookmark31 o Current Document 六、此计算器可以实现的功能13一、设计思路完成标准型计算器的一般功能。输入第一数,进行存储并显示输入运算的类型并存储输入第二个数,存储并显示按=或则按其它运算符号+、-、*、/”进行连续的运算,最后显示运
3、算结果。二、具体的实现过程1、面板键入感应在前面板上建立22个布尔量,其中包括0-9十个数字键,1个小数点键,4个+、-、*、/ 运算键,1个等号键,1个开方键,1个符号转换键,1个倒数键,1个清零键,1个退格键,1个 退出键。如下图所示:2、运算变量的初始化在运行程序之前,首先对需要用到的变量进行初始化,如图所示字若禺数直普存喳3、无操作时的默认输出当键盘上的键没有任何一个按下时,系统仅执行顺序结构第一帧,系统处于初始化状态输出4、数字1-9的输入以数字1”为例,当按下数字1”后,布尔量为值改变,进入时间结构结构,将1输出到显示中,布尔量再次改变时。(图1.4.1)若再次输入1,为避免出现0
4、1这样的字符用,先判断之前显 示的数据是否为0,若为0,则直接输出1,(图1.4.2)若不为0,则将这两次输入的数据通过连 接字符串圜可连接到一起,在显示中输出。数字2到9也是同样的道理。(图1.4.3)XLJ LJ 口 LI 口 U 匚匚 LJ L3 LLJLLJ LJ LJ LJ 口 LJ LJ LJ LJ 口 口 U 口 LJ U 口 口 U 匚 U LJ LJJJ1 ULJLJ 口1_11_1 LJLJLJLJLJLJ 口 口口 覆(图 1.4.1)(图 1.4.3)(图 1.4.2)5、数字0的输入当第一次输入0时,与上述真的情况相同,现在就零输入时的多零问题进行设计。虽然以多个零开
5、头不影响输出的结果,但考虑到显示形式的正确性,只在小数点前显示一个零。当数据输入后,通过连接字符与00比较,若不等,则将数据直接输出(图1.5.1)。若相等,则直接输出0 (图1.5.2)(图 1.5.1)(图 1.5.2)6、小数点的输入在小数点的输入时,最多只能显示出一个若直接点击小数点,则以0.”输出(图1.6.1)。若之前已输入数据,此时再输入小数点首先利用判断已输入的数据中是否含有小数点,若不含有,则1后输出T,执行程序真”图1.6.2)若含有小数点,则输出F,执行程序假”图1.6.3)(图 1.6.1)(图 1.6.2)(图 1.6.3)7、结果去零操作在进行+、-、*、/”运算及
6、取负,取百分数,去倒数,开放运算之后程序默认为以保留6位小 数的形式输出。而为了显示结果的简便,将末位不影响结果的零及小数点进行省略。利用层叠式顺序结构,首先将得出的结果经过N-1位的偏移后与零进行比较,若相等,则进 行去零操作,运用while循环结构,直至末位数字不为零,循环结束(图1.7.1 上图表示末位 为零,下图表示末位不为零),产口口口口口口口口口口口口口口口口口呷 口 Eon 吓;口口口口口口口口口口口口(图 1.7.1)在进行去零操作之后,进行层叠式顺序结构的第二层,对无关的小数点进行消除(图1.7.2-上图表示末位为小数点,下图表示末位不是小数点)(图 1.7.2)8、+/-
7、”键的设计首先进行扫描字符用,将字符用数据转换为数值数据,经过取负数后再转换为字符串形式输出。如下图所示 ODnnnoonDDOona !其中的顺序结构为去末尾零和去无关小数点的操作。9、 +、-、*、/四则运算以加法为例,当簇中输出的数据表示进行加法运算时,程序进入五层的层叠式顺序结构,首 先将字符串进行扫描,转换为数值变量(图1.9.1),之后,对之前的数据进行运算,以保证连续 运算时得到正确的结果:当第一次输入时,默认进行空条件下的程序(图1.9.2),若以前已有运 算,以加法为例,先将之前的两个数进行相加运算,并进行去零操作,之后再将本次的运算符号送入运算符号”的局部变量,以便于进行下
8、次运算(图1.9.3)。二 石1 口 口 口目】7 -0 0 4 支. 口 口 口 口 口口口 口 口口口 口 口 口 ejTP口口 口 口 口 口 口 口 口 口 口 口 口 口 口 口 口口口 口 口 口 口 口 口 口 口 口 口 口 口 口一 口 口(图 1.9.1)(图 1.9.2)(图 1.9.3)10、等号键实现最终的运算结果,将结果进行去零操作后输出到显示中,同时将代表运算符号的移位寄存器置为空字符串O以加法为例卜将字符串转换为数值后进行开放运算,再转换为字符串输出,并进行去零操作(顺序结构的后两层为去零操作)取倒数运算原理与上述开方运算相同。(顺序结构的后两层为去零操作)退格
9、键CE的设计在点击退格键时,要实现从末位开始的依次退格,直至输出为0首先,将整数部分与小数部分进行分离叵If回,运用 3实现此功能。连接方式如图1.13.1(图 1.13.1)分离后,将小数部分的字符串长度与0进行比较,若大于0,则进入到条件结构的 真,将字符串 长度减1后与整数部分连接,得到新的显示输出。(图1.13.2)1-三.一(图 1.13.2)若原字符串只有整数部分或者小数部分已经过退格键消除,则进入到条件结构的 假”。、若整数部分的字符串长度大于1,则进入到子条件结构的 假”,将整数的字符串长度减一后输 出(图 1.13.3)。率 191 y:值改变(图 1.13.3)若整数部分的长度不大于1,即小于等于1时,则进入到子条件结构的真”,直接输出0.(图 1.13.4)(图 1.13.4)14、清零键C将程序中所有用到的变量均进行复位,达到清零复位的目的15、停止键OFF程序结束,将T输入到while循环的停止键上三、整体程序四、前面板的设计排版. 0五、while循环中寄存器功能从上到下的寄存器功能依次为:最上面的用来存储 显示”的数据,第二个用来前一次运算后 输出的数值,第三个用来存放四则运算的符号,最底下的用来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/WHAS 061-2023光声断层成像系统
- T/GZJXC 08-2025贵州省岩土工程信息模型技术标准
- T/CIC 421-2025封隔器有限元仿真分析规程 第1部分:密封机构
- T/CAIEC 173-2025盾构隧道主体结构安全检测技术规程
- T/CSAE 408-2025越野汽车断开式电驱动桥总成技术条件及台架试验方法
- AI在运动人体科学中的应用
- AI在朝鲜语中的应用
- 2025-2026学年黑龙江省海伦市初中生物七年级期末上册深度自测黑金考题附答案
- 2025-2026学年甘肃省兰州市初中数学八年级期末下册自测黑金试卷(详细参考解析)
- PHP OOP面向对象面试题及详细答案(实战版)
- 2026年广东省公需课《加快培育发展新质生产力》考试答案
- 2026中国算力网投资发展报告
- 2025年新闻记者职业资格考试真题+答案
- 第7课 《培养德智体美劳全面发展的社会主义建设者和接班人》课件(内嵌视频)2026-2027学年统编版语文九年级上册
- 2026福建平潭综合实验区文旅发展集团有限公司招聘14人笔试参考题库及答案解析
- 浆砌片石排水沟施工技术交底培训
- 矿山生态修复工程监理规划
- 2026年小学青岛版(六三制)六年级科学上册全册教案
- 2026年新疆维吾尔自治区初中学业水平考试生物试卷真题(含答案详解)
- 2026年风险管理中级试题及答案
- 中国伯基特淋巴瘤诊疗指南(2025版)
评论
0/150
提交评论