用LABVIEW实现简单计算器的设计.docx
- 文档编号:26582281
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:19
- 大小:1.27MB
用LABVIEW实现简单计算器的设计.docx
《用LABVIEW实现简单计算器的设计.docx》由会员分享,可在线阅读,更多相关《用LABVIEW实现简单计算器的设计.docx(19页珍藏版)》请在冰豆网上搜索。
用LABVIEW实现简单计算器的设计
计算机虚拟仪器技术
设计综合报告
题
目:
简单计算器设计
学生
姓名:
学
院:
自动化学院
专业及班级:
学
号:
日
期:
2015年1月18日
课程设计任务书
学生姓名:
专业班级:
电气1206班
指导教师:
刘金根工作单位:
信息工程学院
题目:
简单计算器设计
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写
等具体要求)
用LABVIEV实现简单计算器的设计,能够实现简单的加减乘除运
时间安排:
任务
时间(天)
审题、查阅相关资料:
1
分析、计算
3
编写程序
1
撰写报告
2
论文答辩
0.5
指导教师签名:
系主任(或责任教师)签名:
计算器的设计
设计内容
形如WINDOWS带的标准型计算器。
一、设计思路
完成标准型计算器的一般功能。
输入第一个数,进行存储并显示输入运算的类型并存储k输入第二个数,存储并显示按“=”或则按其它运算符号“+、-、*、/”进
行连续的运算,最后显示运算结果。
二、具体的实现过程
1、键入感应
数字键,1个小数点键,4个“+、-、*、/”运算键,1个等号键,1个开方键,
1个符号转换键,1个倒数键,1个求百分数键,1个清零键,1个退格键,1个退出键。
如下图所示:
然后通过二L将簇中元素按产生的顺序组成一个一维数组,这样就实现了每
个键与数字(1--23)之间的对应。
每次按下一个键时,通过并把其"后对应的数字连接到一个case结构,然后执行对应case结构中的程序,至此就完成了对一个键的感应过程。
如下图所示:
运算变量的初始化
无操作时的默认输出
2、数字1--9的输入
以数字“1”为例,当第一次输入数字“T后,波尔量为真,进入case结构,将1输出到display中,波尔量变为假。
(图1.4.1)若再次输入1,为避免出现01这样的字符串,先判断之前显示的数据是否为0,若为0,则直接输出1,(图1.4.2)若不为0,则将这两次输入的数据通过连接字符串匚也连接到一起,在display中输出。
数字2到9也是同样的道理。
(图1.4.3)
(图1.4.1)
(图
(图1.4.2)
143)
3、数字0的输入
当第一次输入0时,与上述真的情况相同,现在就零输入时的多零问题进行
设计。
虽然以多个零开头不影响输出的结果,但考虑到显示形式的正确性,只在
小数点前显示一个零。
当数据输入后,通过连接字符与00比较,若不等,则将数据直接输出(图
1.5.1)。
若相等,则直接输出0(图1.5.2)。
(图1.5.1)(图1.5.2)
4、小数点的输入
在小数点的输入时,最多只能显示出一个。
若直接点击小数点,则以“0.”
输出(图1.6.1)。
若之前已输入数据,此时再输入小数点首先利用
判断已输入的数据中是否含有小数点,若不含有,则卜“后输
出T,执行程序“真”(图1.6.2);若含有小数点,则输出F,执行程序“假”
(图1.6.3)
(图1.6.1)
(图
(图1.6.2)
1.6.3)
5、结果去零操作
在进行“+、-、*、/”运算及取负,取百分数,去倒数,开放运算之后程序默认为以保留6位小数的形式输出。
而为了显示结果的简便,将末位不影响结果的零及小数点进行省略。
利用层叠式顺序结构,首先将得出的结果经过N-1位的偏移后与零进行比
较,若相等,则进行去零操作,运用while循环结构,直至末位数字不为零,循
环结束(图1.7.1——上图表示末位为零,下图表示末位不为零)
屮口口□口口口口口口口口口口口□口匚门必1]卄卩
(图1.7.1)
在进行去零操作之后,进行层叠式顺序结构的第二层,对无关的小数点进行
清除
(图1.7.2------上图表示末位为小数点,下图表示末位不是小数点)
8、“+/-”键的设计
首先进行扫描字符串,将字符串数据转换为数值数据,经过取负数后再转换
为字符串形式输出。
如下图所示
其中的顺序结构为去末尾零和去无关小数点的操作
9、“+、-、*、/”四则运算
以加法为例,当簇中输出的数据表示进行加法运算时,程序进入五层的层叠
式顺序结构,首先将字符串进行扫描,转换为数值变量(图1.9.1),之后,对之前的数据进行运算,以保证连续运算时得到正确的结果:
当第一次输入时,默
认进行firstrun条件下的程序(图1.9.2),若以前已有运算,以减法为例,先将之前的两个数进行相减运算,并进行去零操作,之后再将本次的运算符号送
入“运算符号”的局部变量,以便于进行下次运算(图1.9.3)。
爪非口口口口|<|42】卄旧切匚口口口口口P"口口口口TFtTTJ
运舁符号
JULLJ_JJ-IJJJUuUUUUUUI-l_I_J_IJJUUUUUUUUUL
(图1.9.3)
10、等号键
实现最终的运算结果,将结果进行去零操作后输出到display中,同时将代表运算符号的移位寄存器置为空字符串。
以加法为例。
11、百分数运算
将字符串转换为数值输出后除以100即可得到百分数输出,并对其进行去
零。
(顺序结构的后两层为去零操作)
6、开方运算
将字符串转换为数值后进行开放运算,再转换为字符串输出,并进行去零
操作。
(顺序结构的后两层为去零操作)
7、取倒数运算
原理与上述开方运算相同。
(顺序结构的后两层为去零操作)
8、退格键的设计
在点击退格键时,要实现从末位开始的依次退格,直至输出为0。
首先,将整数部分与小数部分进行分离,运用••实现此功能。
连接方式
如图1.13.1
(图1.13.1)
分离后,将小数部分的字符串长度与0进行比较,若大于0,则进入到条件结构的“真”,将字符串长度减1后与整数部分连接,得到新的display输出。
(图
1.13.2
(图1.13.2)
若原字符串只有整数部分或者小数部分已经过退格键清除,则进入到条件结构的
“假”。
、
若整数部分的字符串长度大于1,则进入到子条件结构的“假”,将整数的字符
串长度减一后输出(图1.13.3)
(图1.13.3)
若整数部分的长度不大于1,即小于等于1时,则进入到子条件结构的“真”,
直接输出0.(图1.13.4)
'眉
E
□
(图1.13.4)
9、清零键
将程序中所有用到的变量均进行复位,达到清零复位的目的
10、停止键
四、簇中的各元素在条件结构中代表的序号
簇中元素
默认
1
2
3
4
5
条件结构中
序号
0
1
2
3
4
5
簇中元素
:
6
7
8
9
0
.
条件结构中
序号
6
7
8
9
10
11
簇中元素
+/-
+
-
*
/
=
条件结构中
序号
12
13
14
15
16
17
簇中元素
%
sqrt
1/x
Backspace
EXIT
C
条件结构中
序号
18
19
20
21
22
23
五、整体程序
六、前面板的设计排版
七、while循环中寄存器功能
从上到下的寄存器功能依次为:
最上面的用来存储display中的数据,第二个用来前一次运算后输出的数值,第三个用来存放四则运算的符号,最底下的用来给出控制变量。
八、此计算器可以实现的功能
经过调试,此计算器可以实现基本的四则运算,开放,取负数,取百分数,取倒数的运算。
同时,它还可以实现四则运算的连续运算,并输出正确结果;对结果进行报错(对0取倒数,报错Inf;对负数开放,报错NaN;对结果进行修正(第一位为零或多零,多小数点,结果末位不影响结论的零)。
具体操作与功能与WINDOWS
带的计算器类似。
7、参考文献
[1]《LabVIEW8.20程序设计从入门到精通》随书课件,作者:
陈锡辉.
[2]杨乐平等编著。
LabVIEW程序设计与应用。
电子工业出版社,2001
[3]王福明等.LabVIEW程序设计与虚拟仪器.西安电子科技大学出版社,2009
[4]侯国屏,王坤,叶齐鑫.LABVIEW7.1编程与虚拟仪器设计.北京:
清华大学出版社,2006
⑸王磊,陶梅.精通LABVIEW8.0北京:
电子工业出版社,2007
[6]刘立,陈淑珍.虚拟仪器系统与VXI、VXIplug&play[J].国外电子测量技术,1999,
(2):
28—29
本科课程论文评阅表
学号
0121204930823
班级
电气1206班
姓名
刘猛
课程名称
计算机虚拟仪器技术
论文题目
简单计算器设计
评阅点
评分依据
得分
论点
论据
论证
结构
深度和广度
规范化
总分
教师签名:
时间:
年月
日
注:
1、此表的论点、论据、论证部分可以由学生根据自己论文内容填写,教师参考“课程
论文评阅标准”进行评阅。
2、此表按人填写,与学生课程论文一并存放。
3、以文字和数字填写内容。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LABVIEW 实现 简单 计算器 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)