搜档网
当前位置:搜档网 › 简易数字逻辑分析仪的程序设计1

简易数字逻辑分析仪的程序设计1

简易数字逻辑分析仪的程序设计1
简易数字逻辑分析仪的程序设计1

得分评卷教师简易数字逻辑分析仪的程序设计

姓名:

分院:机器人科学与技术学院

专业:电子信息工程

班级:电信一班

学号:

摘要:

制作简易逻辑分析仪:具有采集8路逻辑信号的功能,并可设置触发字。信号采样的触发条件为各路被测信号电平与触发字所设定逻辑状态相同。满足触发条件时,能对被测信号进行采集、存储。

能利用模拟示波器清晰稳定地显示所采集并输出的的8路信号波形。

8位输入电路的输入阻抗大于50 K,其逻辑信号门限电压可在0.25V-4V范围内按16级变化,

以适应各种输入信号的逻辑电平。每通道的存储深度为20bit。

设计方案:

利用单片机内的定时器,产生计数溢出中断,从而实现信号频率要达到100Hz的要求。

当改变拨段开关的预设值后,按下数字开关,单片机会重新读入8位数据,并对改变后的数据进行读取和输出。

在中断程序中对信号实现循环右移和输出,每次中断到来的时候,单片机便对输出端口输送一组信号。

解决方案:

利用两个通用寄存器R0、R1作为指针,实现信号的循环存储和输出,深度位20位。

同样采用定时器的中断程序设计,其中内容主要为对信号的采集、比较和输出。

利用一个多路选择器和D/A转换器实现8路信号的并行显示功能,并在主程序中实现对他们的使用。

利用单片机剩余的端口对锁存器、多路选择器和D/A转换器进行选通控制,避免输出总线上的数据冲突

数字逻辑分析仪

程序流程图

编程工具与仿真环境

编程工具:伟福6000(W A VE6000 )

利用此软件对汇编程序进行编写和编译,并生成可写入单片机程序存储器的数据文件。

仿真环境:Qth-8052f

在进行单片机程序写入之前,先利用仿真器进行仿真测试。如果测试结果符合要求,就可以录入程序。

数字逻辑模拟试题

数字逻辑模拟试题 一.单项选择题1.表示任意两位无符号十进制数至少需要()二进制数。 A .6 B.7 C.8 D.9 2.余3码10001000对应的2421码为()。 A .01010101 B.10000101 C.10111011 D. 11101011 3.下列四个数中与十进制数(72)10 相等的是()A.(01101000)2 B. (01001000)2 C.(01110010)2 D. (01001010)2 4.某集成电路芯片,查手册知其最大输出低电平U oLmax =0.5V,最大输入低电平U lLmax =0.8V,最小输出咼电平U oHmi n= 2.7V,最小输入高电平U lHmi n= 2.0V,则其高电平噪声容限U NH=() A.0.3V B.0.6V C.0.7V D.1.2V

5 ?标准或-与式是由()构成的逻辑表达式。 A ?与项相或 B.最小项相或 C.最大项相与 D.或项相与 6.根据反演规则, F A C C DE E的反函数为()。 A. F [AC C(D E)]E B.F AC C(D E)E C. F (AC CD E)E D.F AC C(D E)E 7、对于TTL或非门多余输入端的处理,不可以()( A、接电源 B、通过0.5k Q电阻接地 C、接地 D、与有用输入端并联 8?下列四种类型的逻辑门中,可以用()实现三种基本逻辑运算。 A.与门 B.或门 C.非门 D.与非门 9.将D触发器改造成T触发器,图1所示电路中的虚线框内应是()。

A.或非门 B.与非门 C.异或门 D.同或门 10.以下电路中可以实现线与功能的有()。 A. 与非门 B.三态输出门 C.传输门 D.漏极开路门 11 ?要使JK触发器在时钟作用下的次态与现态相反, JK端取值应为()。 A. JK=00 B. JK=01 C. JK=10 D. JK=11 12?设计一个四位二进制码的奇偶校验器,需要()个异或门。 A . 2 B. 3 C. 4 D. 5 13.相邻两组编码只有一位不同的编码是() A. 2421BCD码 B.8421BCD码 C.余3 码 D.循环码14?下列电路中,不属于时序逻辑电路的是() A.计数器 B.全加器 C.寄存器 D.RAM

c语言程序设计课程计算器设计报告

课程设计说明书 题目计算器程序设计 起讫日期2006 年7月3日至2006 年8月6日 所在院系软件学院 专业机械+软件班级04-2 学生姓名偶偶哦学号 指导教师 2006年8 月日

摘要 当今社会是信息社会,科技经济高速发展的社会!为了更方便人们的工作生活和加速人们处理信息的速度,计算器应运而生。由于它体积小巧,携带方便,价格便宜,构造简单等诸多的优点成为人们生活中的必备品! 随着科技的发展计算器的种类变得更多,功能变得更强大,体积变得更小!电脑的出现改变人们的生活习惯,很多事情都可以电脑来完成!电脑的更大一个优点就是可以通过软件的应用无限的延伸电脑功能的外延!下面我们将用我们学习的c语言编写一个简易的计算器程序!实现简单的初步的计算功能! 本程序的编写基础是Tubro C2.0汉化版,它在tubro c的原有基础上实现了多汉字的支持方便了我们的使用。生成的程序可移植性强兼容性好稳定!现在只实现了加、减、乘、除、求幂、求模,求平方根,求Sin,求Cos,求Log10,以及一个时钟原代码。这个系统是基于软件发展的生命周期来研制的,它可以直接输入数学表达式,不需要任何转换,就可以直接输出数学四则运算的结果。但是,每次只能运算一个表达式。不能运算多个表达式。在程序里面在添加一组选择函数即可。本论文主要介绍了本课题的开发背景,开发的过程和所要完成的功能。重点的说明了系统设计思想,设计的步骤、难点技术和解决方案。 关键词:C语言T ubro c 2.0汉化版计算器时钟

目录 第一章综述 (1) 1.1 课题的现实意义 (1) 1.2 软件环境 (1) 1.3 硬件环境 (1) 第二章系统设计流程图 (2) 2.1 系统流程图 (2) 2.2 主要功能表 (2) 第三章系统分析和设计 (3) 3.1 图形的绘制和输出 (3) 3.2 文本的输出显示 (3) 3.3 计算函数的调用 (4) 3.4 程序的运行和退出 (5) 第四章系统测试 (6) 4.1 系统测试 (6) 4.2 调试 (6) 4.3 错误原因分析一 (6) 4.4 错误原因分析二 (6) 第五章用户使用说明书 (8) 5.1 运行Turbo C程序进入计算器界面 (8) 5.2 计算器的使用 (9) 5.3 退出程序 (9) 第六章工作总结 (10) 参考文献 (11) 附录: 源代码

《数字逻辑》试卷2013(样题1)参考答案

华南理工大学 网络学院 《数字逻辑》试卷 考试时间:(120分钟) 班级: 姓名: 总分数: 一、 选择题(每小题1分,) 1 有两个十进制数数字的8421BCD 编码是10010001,则它们的余3码是 A 。 A . 1100 0100 B .1001 0100 C . 1001 0011 D . 1111 0001 2 若输入变量A 、B 全为1时,输出F=1,则其输入与输出的关系是 B 。 A .异或 B .与 C .非 D .或非 3 二进制数1100转换成十六进制数是 D 。 A .12 B .A C .B D .C 4 在求逻辑函数F 的反函数时,下列说法错误的是 C 。 A .“·”换成“+”,“+”换成“·” B .原变量换成反变量,反变量换成原变量 C .原变量不变 D .常数中的“0”换成“1”,“1”换成“0” 5 逻辑表达式(A+B )·(A+C )= B 。 A .AB+AC B .A+B C C .B+AC D .C+AB 6 组合逻辑电路通常是由 A 组合而成。 A .门电路 B .计数器 C .触发器 D .寄存器 7 时序逻辑电路中一定包含 C 。 A .译码器 B .移位寄存器 C .触发器 D .与非门 8 逻辑表达式F=AB+A C ,则它的对偶逻辑表达式F '= D 。 A .))((C A B A ++ B .A+B ·A+C C .A+B ·A+C D .(A+B )(A+C ) 9 设A 、B 、C 为逻辑变量,若已知AB=AC ,则 D 。 A .B=C B .B ≥ C C .B ≠C D .以上都有可能 10 一位十进制计数器至少需要 B 个触发器。 A .3 B .4 C .5 D .6 11 时序电路中必须有 C 。 A .输入逻辑变量 B .计数器 C .时钟 D .编码器 12 同步时序电路的分析与设计的重要工具是 D 。 A .状态表和波形图 B .状态图和特征方程 C .特征方程与波形图 D .状态表和状态图

C语言程序设计之简单计算器

攀枝花学院 学生课程设计(论文) 题目:简易计算器 学生姓名:葛肪瑜学号:201010801018 所在院(系):计算机学院 专业:计算机科学与技术 班级:10计本(1)班 指导教师:陈三清职称:讲师 2011年6月25日 攀枝花学院教务处制

攀枝花学院本科学生课程设计任务书 题目计算器的设计 1、课程设计的目的 本课程设计的目的和任务:(1)巩固和加深学生对C语言课程的基本知识的理解和掌握;(2)掌握C语言编程和程序调试的基本技能;(3)利用C语言进行简单软件设计的基本思路和方法;(4)提高运用C语言解决实际问题的能力。 2、课程设计的内容和要求(包括原始数据、技术要求、工作要求等) 一、用C实现如下功能: 使用C语言编写一个类似于Windows附件提供的计算器软件,实现计算器的基本功能,能进行浮点数的加、减、乘、除、乘方和求模运算。 二、撰写课程设计报告或课程设计总结课程设计报告要求:总结报告包括需求分析、总体设计、详细设计、编码(详细写出编程步骤)、测试的步骤和内容、课程设计总结、参考资料等,不符合以上要求者,则本次设计以不及格记。 3、主要参考文献 [1] 潭浩强,《C程序设计》,清华大学出版社 [2] 王声决,《C语言程序设计》,中国铁道出版社 [3] 潭浩强,《C程序设计题解与上机指导》,清华大学出版社 [4] 刘玲等,《C语言程序设计应用教程》,西南师范大学出版社 4、课程设计工作进度计划 第1天完成方案设计与程序框图 第2、3天编写程序代码 第4天程序调试分析和结果 第5天课程设计报告和总结 指导教师(签字)日期年月日 教研室意见: 年月日 学生(签字): 接受任务时间:年月日注:任务书由指导教师填写。

数字逻辑试卷及答案

计算机学院 第二学期《数字逻辑》 期未考试试卷 A 卷 学号 班级 姓名 成绩 一、填空(每空1分,共14分) 1、(21.5)10=( )2=( )8=( )16 2、若0.1101x =-,则[]x 补=( ) 3、十进制数809对应的8421BCD 码是( ) 4、若采用奇校验,当信息位为10011时,校验位应是( ) 5、数字逻辑电路分为( )和( )两大类 6、电平异步时序逻辑电路的描述工具有( )、( )、( ) 7、函数()()F A B C D =+?+的反函数是( ) 8、与非门扇出系数N O 的含义是( ) 9、若要消除函数(,,)F A B C AB AC =+对应的逻辑电路可能存在的险象,则应增加的冗余项是( ) 二、选择题(每空2分,共16分) 从下列各题的四个答案中,选出一个正确答案,并将其代号填入括号内 1、数字系统采用( )可以将减法运算转化为加法运算 A .原码 B .余3码 C .Gray 码 D .补码 2、欲使J-K 触发器在CP 脉冲作用下的次态与现态相反,JK 的取值应为( ) A .00 B .01 C .10 D .11 3、对完全确定原始状态表中的6个状态,A 、B 、C 、D 、E 、F 进行比简,若有(A ,B ),(D 、E )等效,则最简状态表中只有( )个状态 A .2 B .4 C .5 D .6 4、下列集成电路芯片中,( )属于组合逻辑电路 A .计数器74290 B .寄存器74194 C .三一八译码器74138 D .集成定时器5G555 5、设计一个20进制同步计数器,至少需要( )个触发器 A .4 B .5 C .6 D .20 6、用5G555构成的多谐振荡器有( ) A .两个稳态 B .两个暂稳态

计算器程序设计报告

题目一计算器 1.1 题目简介 用Java语言、MyEclipse工具、设计一个GUI简易计算器,编写计算器的基本运算的程序,用户可以通过鼠标一次输入参加计算的数值,进行加减乘除等混合运算,基本实现计算器的四则运算和三角函数运算功能以及开方和求对数的基本运算。本计算器只适用十进制的运算,不限制十进制的大小。编写本计算器运用java的类得调用和直接在程序中定义类,实现计算器的基本功能,在这个计算器中对于执行的操作可以进行复制和保存以便以后能直接查看运行结果本计算器保存没不得运行结果,只有点清除键是才可以清除每步的结果。 1.2 设计的内容、要求和目标 设计内容:设计一个GUI简易计算器,用户可以通过鼠标一次输入参加计算的数值,进行加减乘除等混合运算。 设计要求:由于现代用户更倾向于由鼠标方便操作的图形用户界面,所以我们采用GUI来实现计算器,并采用Swing组件,AWT事件来处理等实现具体功能。 (1)、应具有相应的界面,可参考下图进行设计:

(2)、操作符号定为:“+”“-”,“*”,“/”等。 (3)、用户通过点击面板中的各种组件输入的表达式,应在上方文本框。 (4)、党用户点击“=”时,文本框中之前的内容应清空,直接显示表达式运算结果。例如:输入表达式“7*8”之后按“=”,显示结果“56”。 (5)、具有菜单栏,内有相应的编辑“复制”、“粘贴”等菜单,提供相应的功能。 设计目标:利用Java语言设计一个简单的计算器,以实现基本的加减乘除功能,还有sin、|cos、tan、log等算术运算;同时实现退格、清零等运算。 1.3总体设计 1)、对计算器面板的整体布局 首先是对计算器的整体面板进行一个简单的设计,整体布局是采用layout (边框布局)布局,对计算器中的一些数字按钮和运算符按钮采用gridlayout 布局(网格布局)。 2)、创建实现程序所需的类 整理思路,确定一个主类CalculatorWindow,然后对Dialog、HandleBack、HandleClear、HandleCos、HandleCot、HandleSin、HandleTan、HandleDigit、HandleDot、HandleDownNumber、HandleEquality、HandleLog、HandleOperation、HandlePOrN、HandlePositiveOrNegative、NumberButton、OperationButton、SelectJTree等类的创建。 3)、对所创建类算法的分析和实现 确定了主类CalculatorWindow,其他类为其所调用。编写各类的实现算法,增加面板所需的按钮,并对程序进行调试运行及分析。

数字逻辑电路试卷(附答案)

1.逻辑函数的两种标准形式分别为。 2.将2004个“1”异或起来得到的结果是(0)。 3.半导体存储器的结构主要包含三个部分,分别是(译码器)、(存储阵列)、(控制逻辑)。 4.A/D转换的四个过程是采样、保持、量化和(编码),其中采样脉冲的频率要求至少是模拟信号最高频率的(2)倍。 5.8位D/A转换器当输入数字量10000000为5v。若只有最低位为高电平,则输出电压为(5/128)v;当输入为10001000,则输出电压为(5*136/128)v。 6.就逐次逼近型和双积分型两种A/D转换器而言,(双积分型)的抗干扰能力强,(逐次逼近型)的转换精度高。 7.(61. 5)10 == (3D.8)16 = (10010001.1000)5421BCD; 8.已知某74ls00为2输入4与非门,I OL=22mA,I OH=2mA,I IL=2mA,I IH=40μA,则其低电平输出的扇出系数N OL=(11),其高电平输出的扇出系数N OH=(50); 9.函数的最小项表达式为F=(4.5.7),最大项表达式为(0.1.2.3.6) 10. 根据对偶规则和反演规则,直接写出的对偶式和反函数, Fd =(),=(); 11. 12.已知X=(-17),则X的8位二进制原码为(10001001),其8位二进制补码为(11110111); 13.T' 触发器的次态方程是(Qn+1 = ~Qn); 14.D触发器的次态方程是(); 15.根据毛刺的不同极性,可以将逻辑险象分为0型险象和1型险象,对于一个逻辑表达式,若在给定其它变量适当的逻辑值后,出现F= ()的情形,则存在1型险象;

c面向对象程序设计MFC简单计算器实验报告

计算机与信息工程学院 《程序设计基础》课程设计报告 题目名称:60.编写一个能实现简单功能的计算器学生姓名:刘沛东 学生学号:2011508154 专业班级:电子信息工程(1)班 指导教师:高攀

1 课程设计的题目 编写一个能实现简单功能的计算器 2 题目要求 1. 有一个计算器图形。 2. 能实现加、减、乘、除及乘方的运算。 3. 当输入题目时,屏幕上要在指定位置上显示出相应的题目内容,且相应的数字键要改变颜色 例如:输入数字1 时,在计算器图形上的1键变为红色。 4. 屏幕、图形颜色、形状自定 3 总体设计 3.1 总体框架 图1 系统框架

3.2 系统功能说明 在VC++6.0中绘制计算器界面,各控件的设置 对0~9控件设定相应的ID和其他属性: 图2 “1”控件设置 对“+、-、*、\”控件设定相应的ID和其他属性: 图2 “+”控件设置 对其它控件设定相应的ID和其他属性: 图3 其它控件设置

主要使用到Layout菜单中的Align功能对各个按钮进行对其,使界面更加整洁。拖出的控件有上面的一个Edit控件用于显示数字,Button控件用于处理鼠标的消息。 4 程序详细设计 4.1系统主调模块 图5 程序流程图

4.2各模块详细设计 4.2.1 建立的变量,控件的命名,对应的消息处理函数对应表 double poz; //保存小数点的位置,初始化为1,表示poz-1个小数点。 double m_Dis; //Edit控件上需要显示的数字 BOOL point_flag; //小数点表示位,判定是否是小数,是小数为1,不是小数为0。 double numfirst; //保存计算过程中的前一个数字, double numsecond;//保存计算过程中的第二个数字 char op;//记录当前的计算符号,可以为’+’,’-’,’*’,’/’,’=’,’c’,’n’ 变量初始化: poz=1; m_Dis = 0.0; numfirst=0; numsecond=0; op=0;

数字逻辑试卷(A)

数字逻辑试卷(A) 1.十进制数的特点一是( 逢十进一 ),二是有( 十 )个计数符号 2. R 进制数R M 可表示为R M = ∑--=1 n m i i a ( R ) 3. (15.75)10 =( 1111.11 )8 4. (562)10 =( 0101 0110 0010 )8421BCD 5.(1010.10)2 =( (A.8)16 )16 6.每位八进制数可用( 3 )位二进制数表示。 7.ASCII 码是七位二进制代码,最多可以表示( 128 )个字符。 8.最基本的逻辑门电路是( 与 )门、( 或 )门和( 非 )门。 9.8个变量有( 28 )个最小项。 10.施密特触发器V +≠V -称之为( 滞后 )特性。 二、判断(每小题1分,本大题10分) 1.循环码也是BCD 码。( n ) 2. 同或是异或的反。( y ) 3. 1=+ABCD D C B A ( n ) 4.组合电路是各种门电路构成的,不包含触发器。( y ) 5.二进制译码器给定输入,所有输出中只有一个是有效电平。( y ) 6.优先编码器允许多个输入同时有效。( y ) 7.边沿触发器的状态变化只能发生在CP 有效边沿到达的一瞬间,在CP 的高电平、低电平期间以及无效边沿时触发器状态不变。( y ) 8.异步时序电路无统一的时钟。( y ) 9.Mealy 型时序电路的输出是输入和现态的函数。( y ) 10.多谐振荡器需要外加触发信号才能产生矩形波输出。( n ) 三、单项选择(将正确选择的编号填入括号中,每小题1分,本大题10分) 1.下列BCD 码哪个是无权码?(B .余3码 ) 2.逻辑函数的哪种表示方式是唯一的?(B .真值表) 3.下列哪种门输出端不能直接并联?( C .普通与非门) 4.下列哪种电路在输出端可以得到输入变量的全体最小项?(A .二进制译码器 ) 5.二——十进制编码器有十个输入,有几个输出?( B.4个 )

《计算器程序设计》课程设计

成都理工大学 C#计算器 课程设计报告(计算机科学与技术学院) 题目:计算器 班级:XX 姓名:XXX 指导教师:XXX 2013-2014学年度第二学期

目录 1.需求分析 (1) 1.1计算器应用软件的功能分析(二级标题,四号黑体) (1) 1.2计算器软件的功能图 (1) 2.界面设计 (1) 3.功能实现 (2) 3.1计算数字现实的功能代码 (2) 3.2小数点设置的功能代码 (3) 3.3连续运算的功能代码 (3) 3.4实现键盘控制的功能代码 (4) 3.5删除的功能代码 (5) 4.设计总结 (5) 参考文献 (6)

计算器的开发与应用 摘要:计算器的产生和发展是建立在电子计算机基础之上的,现代社会很需要一个健全、高效率的计算器。为了提高自己的实践能力和将来开发一个更实用更全能更智能的计算器,以设计与实现计算器为课题。此次设计的计算器应用软件从visual studio 2012编程环境中开发,是一个简单的窗体应用程序,实现简单的计算器功能。以微软自带的计算器为模板,设计了简单易懂的计算器。这款计算器不仅实现了简单的四则运算的功能,还能连续运算,实现小键盘的操作,光标的转移。虽然这个简单的计算器只能实现这些功能,但是具有简洁的图文外观,即时准确的获得所需要要计算的结果,充分降低了数字计算器的难度和所需要的时间,对人们生活和学习具有有很大的帮助。 关键词:计算器;功能;界面;窗口;事件。 1.需求分析 通过对微软附件计算器软件进行调研、分析,研究,使用。我们了解到了作为一个计算器所应该有的一些简单功能和界面的排版,我们知道了怎样使编写的计算器程序向微软附件计算器靠拢。 1.1计算器应用软件的功能分析 计算器软件的主要功能是: 1)可以显示计算数字 2)可以进行加减乘除四则运算 3)可以实现键盘操控的功能 4)可以进行清零运算 5)可以进行退格键运算 6)可以进行连续计算 1.2计算器软件的功能图 根据以上需求分析,计算器软件功能如图1-1所示。 2.界面设计计算器主界面 显示 计算 数字 连 续 计 算 功 能图1-1计算器功能图 进 行 四 则 运 算 键 盘 操 控 清 零 运 算 退 格 键 功 能

数字逻辑考题及答案

数字逻辑试题1答案 一、填空:(每空1分,共20分) 1、()8 =( )16 2、 10= ( )2 3、(FF )16= ( 255 )10 4、[X]原=,真值X= ,[X]补 = 。 5、[X]反=,[X]补= 。 6、-9/16的补码为,反码为 。 7、已知葛莱码1000,其二进制码为1111, 已知十进制数为92,余三码为1100 0101 8、时序逻辑电路的输出不仅取决于当时的输入,还取决于电路的状态 。 9、逻辑代数的基本运算有三种,它们是_与_ 、_或__、_非_ 。 10、1⊕⊕=B A F ,其最小项之和形式为_ 。AB B A F += 11、RS 触发器的状态方程为_n n Q R S Q +=+1_,约束条件为0=SR 。 12、已知B A F ⊕=1、B A B A F +=2,则两式之间的逻辑关系相等。 13、将触发器的CP 时钟端不连接在一起的时序逻辑电路称之为_异_步时序逻辑电路 。 二、简答题(20分) 1、列出设计同步时序逻辑电路的步骤。(5分) 答:(1)、由实际问题列状态图 (2)、状态化简、编码 (3)、状态转换真值表、驱动表求驱动方程、输出方程 (4)、画逻辑图 (5)、检查自起动 2、化简)(B A B A ABC B A F +++=(5分) 答:0=F 3、分析以下电路,其中RCO 为进位输出。(5分) 答:7进制计数器。 4、下图为PLD 电路,在正确的位置添 * , 设计出B A F ⊕=函数。(5分)

5分 注:答案之一。 三、分析题(30分) 1、分析以下电路,说明电路功能。(10分) 解: ∑∑==) 7,4,2,1()7,6,5,3(m Y m X 2分 A B Ci X Y 0 0 0 0 0 0 1 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 8分 2、分析以下电路,其中X 为控制端,说明电路功能。(10分) 解:XABC C B A X ABC X C B A X C B A X C B A X F ++++?+?= 4分 )()(ABC C B A X C B A X F ++⊕⊕= 4分 所以:X=0 完成判奇功能。 X=1 完成逻辑一致判断功能。 2分

简单计算器c++课程设计讲解

简单计算器 1 基本功能描述 简单计算器包括双目运算符和单目运算符。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦、阶乘、对数、开方、倒数等运算。可对输入任意操作数包含小数和整数及正数和负数进行以上的所有运算并能连续运算。出现错误会给出提示,同时包含清除、退格、退出功能以及有与所有按钮相对应的菜单项。 2 设计思路 如图1,是输入数据子函数的流程图。打开计算器程序,输入数据,判断此次输入之前是否有数字输入,如果有,则在之前输入的数字字符后加上现有的数字字符;如果没有,则直接使编辑框显示所输入的数字字符。判断是否继续键入数字,如果是,则继续进行前面的判断,如果否,则用UpdateData(FALSE)刷新显示。 如图2,是整个计算器的流程图。对于输入的算式,判断运算符是双目运算符还是单目运算符。如果是双目运算符,则把操作数存入数组a[z+2]中,把运算符存入b[z+1]中;如果是单目运算符,则把字符串转化为可计算的数字,再进行计算。下面判断运算符是否合法,如果合法,则将结果存入a[0],不合法,则弹出对话框,提示错误。结束程序。

输入一个数字 在之前输入的数字字符后面加上现在的数字字符。 Eg :m_str+=”9”。 直接使编辑框显示所输入的数字字符。 Eg :m_str=”9”。 pass3=1表示已有数字输入 开始 之前是否有数字输入? pass3==1? 继续键入数字? 用UpdateData(FALSE)刷新显示 图1 输入数据子函数流程图 Y N Y N

输入开始 双目运算符 是否每一个操作数都存入a[]数组? 把操作数存入a[z+2],把运算符存入b[z+1]。 单目运算符 将字符串转换 为可计算的数进行运算 运算是否合法? 将结果存入a[0] 弹出对话框提示错误 结束Y Y N N 图2 简单计算器总流程图

数字逻辑试卷

东莞理工学院(本科)试卷(A 卷) 2008 --2009 学年第一学期 《数字逻辑》试卷 开课单位: 计算机学院 ,考试形式:闭卷,允许带 入场 题序 一 二 三 四 五 六 七 八 总 分 得分 评卷人 一、 填空题(共40分,每题2 分) 1、十进制数126.625的二进制编码 ,十六进制编码 。 2、十进制数15的BCD 码 ,余3码 。 3、已知[N]补= 10100000,则其[N]原= 。 4、逻辑函数F=A ⊕B 和G=A ⊙B 满足关系 。(填选项代号) A 、G F = B 、G F =' C 、G F =' D 、1G F ⊕= 5、某存储器地址线为A 0-A 11,数据线为D 0-D 7,该存储器容量为 字节。 6、消除函数 的竞争冒险,应增加冗余项 。 7、实验时,TTL 芯片发烫,不可能的原因是 。 A 、插反芯片 B 、电源使用12V C 、电源与地短路 D 、电源使用4V 8 、 常 用 两 种 集 成 同 步 时 序 电 路 器 件 、 。 9、脉冲异步时序电路中,触发器状态的变化 (是、不是)同时发生的。 10、某同步时序电路,状态转移图如图所示,其功能 得分

是。 11、555定时器的功能有、、。 12、超前进位加法器与串行进位加法器相比,速度。 13、8位ADC输入满量程为10V,当输入5V电压值,数字输出量为。 14、芯片74LS32如下图所示,内含个输入端的门。 15、若要某共阴极数码管显示数字“5”,则显示代码abcdefg为。(0000000~1111111) 16、与TTL门电路相比,CMOS门电路功耗(大、小),速度(快、慢)。 17、电可擦可编程存储器是。 A.ROM B.PROM C.EPROM D.EEPROM 18、在下列电路中不是组合逻辑电路的是。 A、译码器 B、编码器 C、全加器 D、寄存器 19、触发器按结构可分为基本触发器、触发器、触 发器、触发器等。 20、与普通门电路不同,OC门在工作时需要外接和。 二、逻辑函数简化(共14分)得分

my计算器程序设计报告

计算器程序设计报告 计算器是一种在日常生活中很常用的计算工具,它在计算方面给了我们提供很大的方便。本程序的功能包括:(1)加,减,乘,除运算,正弦,余弦,正切,余切,反正切,反余切,反正弦,反余弦,自然对数,以10为底的对数还有阶乘等函数功能。(2)还包括存储清,存储显示,存储相加。 “计算器”是一个关于多种控件,以及控件数组应用的程序,它包含许对字符串的处理,多模块程序设计,数学函数的使用。它所需知识点较多,必须对各个方面都有所了解. 数学模型:主界面 界面:进制转化界面 数学函数代码 代码:存储清代码 进制转化代码 第一步,要编辑计算器界面,如右图, 对于界面上的按钮较多,我们可以分成四组,这就是控件数组的使用,而且每个按钮的属性都一一设置,而且要调入图片.第二个界面如右图 比较简单,只是一些普通的控件. 计算器是一个输入原始数据,运算中间数据和结果数据都显示在窗口顶部的同一个文本框的工具,这就要求我们可以把文本框的内容付给两个不同的变量,对于这一点我们就可以用一个逻辑变量来实现.比如, If not boolean str1=str Else str2=str 计算器的主要功能就是运算,但是任何一个数值的输入都是以字符串的形式进行的,而字符串是无法参与运算的,所以必须用CInt()转换成整形变量,而输出时必须用CStr()转化成字符串的形式输出,更为麻烦的是,在进行进制转换时,两种变量之间的转换更为频繁。在编程过程中要时刻注意!就拿一个简单的程序中的一部分来说吧:

If not boolean then str=str1 Else str=str2 Str=text1.text n=CInt(str) ‘“将其转换成整形变量" ……. t4 =str( ) ‘“ 将返回值转换成字符串" 计算器的功能程序简单易懂,但编制过程极为烦琐,我在编程的过程中,体会最深的就是其过程有重复,但又不得再编,在这里尤其要注意,有些过程虽然相似,但它们却存在着质的区别,就拿删除按扭来说吧, "C","0->M","CE","->"按扭都有删除的功能,在这里我就它们的区别作一下详细介绍: 将"C","CE","->"作为一个控件数组,其程序如下: If not boolean str1=str else str2=str Select Case Index Case 0 str1=" ",str2=" ", Text1.text=" " "C"键 Case1 str=" " "CE"键 Case2 str=Left(str,len(str)-1) "->"键 而"0->M"在另一个数组控件中,其程序的一部分如下: Case0 n4=0: Text1.text="0" 可见它们的代码是存在区别的,这就要求在编程时弄清楚它们的区别,不可想当然把同一种代码复制过来. 这里我再介绍一下小数点的使用 Private Sub Command2_Click(Index As Integer) If Index<10 Then str=str+CStr(Index) "输入数字" Else If InStr(str,".")=0 Then str=str+"." "输入小数点" End If If Len(str)>1 And Left(str,1)="0" And Mid(str,2,1)<>"."Then str=Right(str,Len(str)-1) "删除前面多余的0" End If Text1.text=str "显示输入的数据 " If not boolean Then str1=str Else str2=str "用两个字符串变量存放" End Sub 计算器虽复杂,但大部分还是比较简单的,最难的地方就是进制转换器的编码了,要编好这一部分必须对各进制之间的转换关系了如指掌.其中各个进制都和二进制有着直接的转换关系.而其他三个之间都不可直接进行转换.对于不能直接转化的,可以间接转化,例如,可以将十六进制先转化成十进制然后再转化成八进制. ElseIf Option4 = True Then t4 = "" str = Text1.Text

数字电路(第二版)贾立新1数字逻辑基础习题解答

自我检测题 1.(26.125)10=(11010.001)2 =(1A.2)16 2.(100.9375)10=(1100100.1111)2 3.(1011111.01101)2=( 137.32 )8=(95.40625)10 4.(133.126)8=(5B.2B )16 5.(1011)2×(101)2=(110111)2 6.(486)10=(010*********)8421BCD =(011110111001)余3BCD 7.(5.14)10=(0101.00010100)8421BCD 8.(10010011)8421BCD =(93)10 9.基本逻辑运算有 与 、或、非3种。 10.两输入与非门输入为01时,输出为 1 。 11.两输入或非门输入为01时,输出为 0 。 12.逻辑变量和逻辑函数只有 0 和 1 两种取值,而且它们只是表示两种不同的逻辑状态。 13.当变量ABC 为100时,AB +BC = 0 ,(A +B )(A +C )=__1__。 14.描述逻辑函数各个变量取值组合和函数值对应关系的表格叫 真值表 。 15. 用与、或、非等运算表示函数中各个变量之间逻辑关系的代数式叫 逻辑表达式 。 16.根据 代入 规则可从B A AB +=可得到C B A ABC ++=。 17.写出函数Z =ABC +(A +BC )(A +C )的反函数Z =))(C A C B A C B A ++++)((。 18.逻辑函数表达式F =(A +B )(A +B +C )(AB +CD )+E ,则其对偶式F '= __(AB +ABC +(A +B )(C +D ))E 。 19.已知CD C B A F ++=)(,其对偶式F '=D C C B A +??+)(。 20.ABDE C ABC Y ++=的最简与-或式为Y =C AB +。 21.函数D B AB Y +=的最小项表达式为Y = ∑m (1,3,9,11,12,13,14,15)。 22.约束项是 不会出现 的变量取值所对应的最小项,其值总是等于0。 23.逻辑函数F (A ,B ,C )=∏M (1,3,4,6,7),则F (A ,B ,C )=∑m ( 0,2,5)。 24.VHDL 的基本描述语句包括 并行语句 和 顺序语句 。 25.VHDL 的并行语句在结构体中的执行是 并行 的,其执行方式与语句书写的顺序无关。 26.在VHDL 的各种并行语句之间,可以用 信号 来交换信息。 27.VHDL 的PROCESS (进程)语句是由 顺序语句 组成的,但其本身却是 并行语句 。 28.VHDL 顺序语句只能出现在 进程语句 内部,是按程序书写的顺序自上而下、一条一条地执行。 29.VHDL 的数据对象包括 常数 、 变量 和 信号 ,它们是用来存放各种类型数据

(完整word版)C语言简易计算器课程设计.doc

C语言课程设计报告书题目:简易计算器 院系: 班级: 学号: 姓名:

摘要 该软件为用户提供在windows 系统上的简易计算器,能进行简单的加、减、 乘、除四则运算与混合运算。目的是为了巩固和加深 C 语言课程的基本知识的理 解和掌握,利用 C语言进行基本的软件设计,掌握 C 语言的编程和程序调试 的基本技能,掌握书写程序设计说明文档的能力,提高运用 C 语言解决实际问 题的能力。 关键词: C; 简易计算器 ; 程序 ; 基本算法;混合运算 SUMMARY the software provides a simple calculator in Windows system for users ,can be a simple add,subtract,multiply,divide.The purpose is to consolidate and deepen the basic knowledge of C language courses to understand and master, The use of C language for software design basic, To master the basic skills of C language programming and program debugging, Master the writing program design documentation ability,improve the ability to use C language to solve practical problems.

C#计算器程序设计

C#计算器程序设计 1)创建项目 ①单击文件-》新建-》项目,弹出如下对话框 ②模板中选择“windows窗体应用程序”-》名称中输入“jsq”-》位置单击“留了”-》选择“J:\新建文件夹”-》单击确定按钮 2)计算器界面设计

①向Form1中添加1个TextBox控件,1个Label控件和27个Button控件,控件布局如图所示 ②修改27个Button控件的Text属性,结果如图 ③Label控件的BorderStyle属性选择“Fixed3D”-》Text属性设置为“”-》Form1的Text属性设置为“计算器”-》Backspace控件、CE控件等的ForeColor属性选择“Red”,结果如图:

3)显示窗口数据对齐方式设置 TextBox控件的TextAlign属性选择“Right”;4)数字键程序设计 ①双击”0”按钮控件-》编写代码如下: if (textBox1.Text != "0")//不能连续多个0出现 { textBox1.Text += "0";//添加“0”数字 } ②双击”1”按钮控件-》编写代码如下: if (textBox1.Text == "0")//数字前面不能出现多个0 { textBox1.Text = "1"; } else { textBox1.Text += "1";//添加“1”数字 } ③双击”2”按钮控件-》编写代码如下: if (textBox1.Text == "0")//数字前面不能出现多个0 { textBox1.Text = "2"; } else { textBox1.Text += "2";//添加“2”数字 } ④双击”3”按钮控件-》编写代码如下: if (textBox1.Text == "0")//数字前面不能出现多个0 { textBox1.Text = "3";

数字逻辑试卷及答案

数字逻辑试卷及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

《数字电子技术基础》期终考试试题(110分钟)一、填空题:(每空1分,共15分) =+的两种标准形式分别为()、 1.逻辑函数Y A B C ()。 2.将2004个“1”异或起来得到的结果是()。 3.半导体存储器的结构主要包含三个部分,分别是()、()、()。 4.8位D/A转换器当输入数字量为5v。若只有最低位为高电平,则输出电压为 ()v;当输入为,则输出电压为()v。 5.就逐次逼近型和双积分型两种A/D转换器而言,()的抗干扰能力强,()的转换速度快。 6.由555定时器构成的三种电路中,()和()是脉冲的整形电路。7.与PAL相比,GAL器件有可编程的输出结构,它是通过对()进行编程设定其()的工作模式来实现的,而且由于采用了()的工艺结构,可以重复编程,使它的通用性很好,使用更为方便灵活。 二、根据要求作题:(共15分) 1.将逻辑函数 P=AB+AC写成“与或非”表达式,并用“集电极开路与非门”来实现。2.图1、2中电路均由CMOS门电路构成,写出P、Q 的表达式,并画出对应A、 B、C的P、Q波形。 三、分析图3所示电路:(10分) 1)试写出8选1数据选择器的输出函数式; 2)画出A2、A1、A0从000~111连续变化时,Y的波形图; 3)说明电路的逻辑功能。

四、设计“一位十进制数”的四舍五入电路(采用8421BCD码)。要求只设定一个输出,并画出用最少“与非门”实现的逻辑电路图。(15分) 五、已知电路及CP、A的波形如图4(a) (b)所示,设触发器的初态均为“0”,试画出输出端B和C的波形。(8分) B C 六、用T触发器和异或门构成的某种电路如图5(a)所示,在示波器上观察到波形如图5(b)所示。试问该电路是如何连接的?请在原图上画出正确的连接图,并标明T的取值。(6分) 七、图6所示是16*4位ROM和同步十六进制加法计数器74LS161组成的脉冲分频电路。ROM中的数据见表1所示。试画出在CP信号连续作用下的D3、D2、D1、D0输出的电压波形,并说明它们和CP信号频率之比。(16分) 表1: 地址输入数据输出 A3 A2 A1 A0 D3 D2 D1 D0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0

简单计算器编程

计算器程序 包括4个数字按钮,1个小数点按钮,+-*/= 5个计算按钮 不接受键盘输入 计算规则:当前正在输入的数存储到字符串变量 用户输入操作符,存储已经输入的数,作为第一个数,存储操作符 用户输入第二个数 用户输入操作符,与第一个数计算,并存储为第一个数,存储操作符 小数点只能输入一次 1 创建基于对话框的程序 2 打开对话框模板,增加控件: 编辑框1个 按钮4个,文字1-4 按钮1个,文字:小数点 按钮5个,文字:+ - * / = 按钮1个,文字:关闭 3 打开类向导 为编辑框加成员变量,CString m_edit 为所有按钮加消息映射

注意:以上都加再对话框类中。 4 打开对话框类的声明,加成员变量 double m_result; //前面的结果,即第一个数 int m_opt; //前面的操作符,0=,1+,2-,3*,4/ int ,m_dot; //是否输入了小数点 CString m_string; //当前正在输入的数,存为字符串 5 继续在话框类,声明2个函数 void calculation(void); //执行计算 void NumInput(CString x) //执行数字按钮输入 6 打开函数OnInitDialog(),加初始化代码 m_result = 0; m_opt = 0; m_dot = 0; m_string = ""; 6 “关闭按钮”消息映射代码: OnOK(); 8 分别打开数字按钮1-4的消息映射函数,分别输入代码: NumInput("1");

NumInput("2"); NumInput("3"); NumInput("4"); 9 打开小数点按钮的消息映射函数,输入代码: if ( m_dot==0 ) { m_dot = 1; NumInput("."); } 10 分别打开 + - * / 按钮的消息映射函数,分别输入代码: calculation(); m_opt = 0; calculation(); m_opt = 1; calculation(); m_opt = 2; calculation();

相关主题