返回首页
文学网 > 百科 > 经典报告 > 正文

设计实验报告

2025/09/11经典报告

文学网整理的设计实验报告(精选6篇),供大家参考,希望能给您提供帮助。

设计实验报告 篇1

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新月异,当今计算机应用在是生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术十分重要的。

我的题目是文章处理系统的设计,对于我们这些新手来说,这是很大的考验,我一千次一万次的问自己,怎么才能找到课堂所学与实际应用的最佳结合点?怎么才能让自己的程序在篇幅上简单,在使用价值上丰富?怎样让自己的业余更靠近专业?怎样让自己的计划更具有序性,而不会忙无一用?机会是老师,学校,以及无数代教育工作者给的,而能力是自己的,耐性是需要的。

经过自己的琢磨,听取了师姐,师兄们的建议,还查阅了很多书籍,才做到了心中有数,才了解了C语言课程设计的真正用意——培养自学能力,养成程序编辑的好习惯。我从来不相信车到山前必有路的说法,认为那只是懒惰者自寻懒惰的借口,我要积极,要把握,要努力。

回顾起此次课程设计,至今我仍感慨颇多,的确,从拿到题目到完成整个编程,从理论到实践,在整整半个学期的日子里,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体……通过这次课程设计之后,一定把以前所学过的知识重新温习。

这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在郭老师的辛勤指导下,终于迎刃而解。同时,在郭老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢。

在课程设计过程中,我学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪,黑夜过去了,我们收获的是黎明。

在本次实践中,给我印象最为深刻的是在文件删除程序的编译过程中,我的各个子程序都已经编辑成功,那么这最后的程序就将是我成功的关键。老天不会让我太过顺利,他在这最后的时刻设置的障碍,是要考验我的能力,他要置我于死地?在这个问题的解决上,我打了退堂鼓,我不能忍受长时间的无功而反,时间正在消磨我的意志。没有了柳暗花明的一天,那么我怎么能说经受住了考验?谢谢老师的那句话,她说:人力有所不能及,然而,人的精神是不会败倒的。我鼓起勇气,到处问,到处查资料,黄天不负有心人,在一篇文章上,终于看到了我所特别要求的函数,我实现了组合是关键的理论。不得不说这是精神的胜利,是永不言败的精神让我的程序重见天日。谢谢给我指点迷津的老师。

6月11日,我们的课程设计结束了,但是它留给我的印象是不可磨灭的。无论我以后会不会涉及到C语言程序编译的研究,我想,我至少掌握了一种系统的研究方法,我们学习的目的就在于运用,我们运用这种研究方法的时候会很多,我最后要感谢课程设计,它的确教会我很多。

设计实验报告 篇2

实验六 同步计数器的设计

学号:

姓名:

一、实验目的和要求

1.熟悉JK触发器的逻辑功能。

2.掌握用JK触发器设计同步计数器。

二、实验仪器及器件

三、实验预习

1、复习时序逻辑电路设计方法。

⑴ 逻辑抽象,得出电路的状态转换图或状态转换表

① 分析给定的逻辑问题,确定输入变量、输出变量以及电路的状态数。通常都是取原因(或条件)作为输入逻辑变量,取结果作输出逻辑变量。

② 定义输入、输出逻辑状态和每个电路状态的含意,并将电路状态顺序编号。

③ 按照题意列出电路的状态转换表或画出电路的状态转换图。 通过以上步骤将给定的逻辑问题抽象成时序逻辑函数。

⑵ 状态化简

① 等价状态:在相同的输入下有相同的输出,并且转换到同一次态的两个状态。

② 合并等价状态,使电路的状态数最少。

⑶ 状态分配

① 确定触发器的数目n。因为n个触发器共有2n种状态组合,所以为获得时序电路所需的M个状态,必须取2n1<M2n

② 给每个电路状态规定对应的触发器状态组合。

⑷ 选定触发器类型,求出电路的状态方程、驱动方程和输出方程

① 根据器件的供应情况与系统中触发器种类尽量少的原则谨慎选择使用的触发器类型。

② 根据状态转换图(或状态转换表)和选定的状态编码、触发器的类型,即可写出电路的状态方程、驱动方程和输出方程。

⑸ 根据得到的方程式画出逻辑图

⑹ 检查设计的电路能否自启动

① 电路开始工作时通过预置数将电路设置成有效状态的一种。

② 通过修改逻辑设计加以解决。

⑺ 设计步骤简图

图3 设计步骤简图

2、按实验内容设计逻辑电路画出逻辑图。 设计思路详情见第六部分。电路图如下:

四、实验原理

1.计数器的工作原理

递增计数器----每来一个CP,触发器的组成状态按二进制代码规律增加。 递减计数器-----按二进制代码规律减少。 双向计数器-----可增可减,由控制端来决定。

2.集成J-K触发器74LS73

⑴ 符号:

图1 J-K触发器符号

⑵ 功能:

表1 J-K触发器功能表

⑶ 状态转换图:

图2 J-K触发器状态转换图

⑷ 特性方程:

Qn1JQnKQn

⑸ 注意事项:

① 在J-K触发器中,凡是要求接“1”的,一定要接高电平(例如5V),否则会出现错误的翻转。

③ 触发器的两个输出负载不能过分悬殊,否则会出现误翻。

④ J-K触发器的清零输入端在工作时一定要接高电平或连接到实验箱的清零端子。

3.时序电路的设计步骤 内容见实验预习。

五、实验内容

1.用J-K触发器和门电路设计一个特殊的12进制计数器,其十进制的状态转换图为:

图4

12进制计数器状态转换图

六、实验设计及数据与处理

⑴ 设计

在12进制同步计数器中,输出的状态只由前一周期的状态决定,而与外来输入无关,因此目标电路为Moore型。而数字电路只有0和1两种状态,因此目标电路要表达12种状态需要用4个变量Q1、Q2、Q3、Q4的16种组合中的12种。现定义十进制数01~12的对应二进制数为输出状态,可得目标电路的状态转换表如下:

表2 12进制同步计数器状态状态转换表

本实验选择J-K触发器,根据状态转换表以及J-K触发器特性方程:

Qn1JQnKQn

得到目标电路方程如下:

nnn

输出方程:Y0nQ0n、Y1nQ1n、Y2nQ2、Y3Q3

驱动方程:Q0一个CP发生一次变化,因此J0K01。

Q1每当Q0为1时,发生变化,因此n

J1K1Q0。

Q2在Q1Q0都为1以及12(即1100的时候)发生变化,因此 J2 = K2 =Q1nQ0n+Q3nQ2n

Q3在Q2 Q1Q0都为1的时候,以及12的时候发生变化,因此 J3=K3=Q0nQ1nQ2n+Q3nQ2n。

状态方程:Q0n1J0Q0nK0Q0n

Q1n1J1Q1nK1Q1n

设计实验报告 篇3

实验1 加法器设计

1) 实验目的

(1) 复习加法器的分类及工作原理。

(2) 掌握用图形法设计半加器的方法。

(3) 掌握用元件例化法设计全加器的方法。

(4) 掌握用元件例化法设计多位加法器的方法。

(5) 掌握用Verilog HDL语言设计多位加法器的方法。

(6) 学习运用波形仿真验证程序的正确性。

(7) 学习定时分析工具的使用方法。

2) 实验原理

加法器是能够实现二进制加法运算的电路,是构成计算机中算术运算电路的基本单元。目前,在数字计算机中,无论加、减、乘、除法运算,都是化为若干步加法运算来完成的。加法器可分为1位加法器和多位加法器两大类。1位加法器有可分为半加器和全加器两种,多位加法器可分为串行进位加法器和超前进位加法器两种。

(1)半加器

如果不考虑来自低位的进位而将两个1位二进制数相加,称半加。实现半加运算的电路则称为半加器。若设A和B是两个1位的加数,S是两者相加的和,C是向高位的进位。则由二进制加法运算规则可以得到。

(2)全加器

在将两个1位二进制数相加时,除了最低位以外,每一位都应该考虑来自低位的进位,即将两个对应位的加数和来自低位的进位三个数相加,这种运算称全加。实现全加运算的电路则称为全加器。

若设A、B、CI分别是两个1位的加数、来自低位的进位,S是相加

的和,C是向高位的进位。则由二进制加法运算规则可以得到:

3)

(1)

(2)

(3) 实验内容及步骤 用图形法设计半加器,仿真设计结果。 用原件例化的方法设计全加器,仿真设计结果 用原件例化的方法设计一个4为二进制加法器,仿真设计结果,进行定时分析。

(4) 用Verilog HDL语言设计一个4为二进制加法器,仿真设计结果,进行定时分析。

(5) 分别下载用上述两种方法设计4为加法器,并进行在线测试。

4)设计

1)用图形法设计的半加器,如下图1所示,由其生成的符号如图2所示。

2)用元件例化的方法设计的全加器如图3所示,由其生成的符号如图4所示。

图三:

图四:

5)全加器时序仿真波形如图下图所示

6)心得体会:

第一次做数字系统设计实验,老师给我们讲了用图形法设计的全过程。在这次过程中,我进一步加强对理论知识的学习,将理论与实践结合起来。实验过程中遇到了一个小问题是生成半加器符号,后来发现缺了File/Create Default这一步。通过这一次的失误,我明白了做事要认真!最后将实验做出来了,体味了成功的喜悦!通过这次实验我复习了加法器的分类及工作原理,

并掌握了用图形法设计半加器的方法,掌握了用元件例化法设计全加器的方法,掌握了用元件例化法设计多位加法器的方法,掌握了用Verilog HDL语言设计多位加法器的方法,学习了运用波形仿真验证程序的正确性,学习定时分析工具的使用方法。

设计实验报告 篇4

实验项目名称程序控制

一、实验目的与要求

1、掌握python语言的for循环语句的基础知识。

2、熟悉实训平台循环程序的编码方式。

3、掌握python语言的while循环语句的基本用法。

4、掌握if语句的基本用法,熟练实现编程

二、实验原理与内容

1、从求1到n之间奇数的和、求数列前n项的和到打印九九乘法表三个方面来展开,并设置了三个相应关卡来在线考察大家对for循环的掌握情况。

2、编写一个输入整数n,计算n!的小程序。

3、掌握循环输入,直到正确为止,同时完成猜数字游戏python代码的编写。

4、从将输入的三个整数x,y,z按由小到大的顺序排列,其中:x,y,z是进行排序的三个数字

5、判断输入的年份是否是闰年

6、从求1到n连续整数的和、求由1、2、3、4能组成多少个互不相同且无重复数字的三位数到判断一个不小于2的正整数是否是质数三个方面来展开

三、预习遇到的问题

成绩:

实验报告1

项目

名称

程序控制

指导

教师

黄国华

实验

日期

一、实验仪器与设备

1、求是楼211实验室教学使用电脑。

2、头歌实践教学平台。

二、实验步骤

1、打开头歌实践教学平台。

2、根据本节实验课的安排,完成“Python控制结构之for循环I”、“python基础(4—2)程序控制—循环结构:while”和“Python——if条件语句”三个题目,认真阅读并理解每个题目的“任务描述”、“相关知识”、“编程要求”和“测试说明”。

3、根据具体的题目要求补充相应的代码。

4、完成所有的评测,并对评测结果进行截图。

三、实验过程原始记录

四、实验结果分析及心得体会

成绩:

设计实验报告 篇5

在我们整个软件工程过程中,我体会到了许多,也学到了许多。

在项目要进行自由分组后,我们的项目小组便诞生了。我们小组由3个成员组成,在相互商量后我们也确定了我们组的项目,是做一个校园文件管理系统。我们也随即做了分工,。我们的项目也正式开始了。

需求调研和分析对于软件开发过程至关重要。我们在开发时如果不进行调研和分析,那么对于后来的项目进展将产生致命的后果。我们在项目的开发中便遇到了这样的问题。我们开始自己随意的计划整个系统的设计,然后报给老师,老师作为一个客户并不是全部认同,随后我们也必须按着客户的要求更改我们的设计报告。我也明白了,再做一个系统时,必须随时和客户保持沟通,随时了解他们需要什么,他们想要什么功能。如果我们不去和客户沟通,不去调研客户的需求,做出来的系统即使在我们看来是一个很好,很完美的产品,但是如果客户不认同,那么我们所做的一切都是徒劳,还要返工去修改,费时费力。所以在做任何一个项目时,前期的需求调研和需求分析都是必须的,这是在做一个项目的基本,是关系成败的重要一环。

对于一个项目,它的需求设计也非常重要。在我们的文件管理系统开发的过程中,遇到了一些问题,出现的这些问题很多都是非常棘手的,我们为了解决这些棘手的问题浪费了大量的时间,我们不得不在工程代码上改了又改,在数据库里增表、删表、加数据、减数据,当然,在文档里也要做出相应的修改以适应新的功能。还好,我们能及时地发现问题,通过相互沟通讨论,问题也得到了解决。通过总结,我们也意识到,我们大家在做需求分析和进行需求了解时仅仅考虑了一些基本的功能,而至于管理员和客户之间的联系,以及具体的一些流程我们都没有深究,而导致我们到后期花费了大量的时间用于修复之前没有考虑周全而带

来的问题。如果我们的需求设计能够比较清晰和完善,那么我们在开发过程中便会很明白的知道我们应该实现什么样的功能,在数据库里应该怎样建表,以什么方式插入数据,从而可以避免反复修改工程的问题,也能避免出现可能毁坏整个工程的问题。整个工程的需求设计对于一个项目的顺利进展至关重要。

对于文档在软件工程中的作用,我在这次项目开发过程中有了更加深刻的理解。文档在软件开发过程中是很有用的,文档是一项必不可少的东西,但文档也不能太多,太过繁琐,如果是那样就不太好了。首先我们要明确开发过程中为什么要写这些文档,文档的最根本的作用是为了更好的沟通。一个项目或产品可能需要延续很长的时间,开发过程中可能需要很多的环节,可能会遇到很多的问题和很多的解决的方法,这时,我们需要文档的帮助,我们需要有一个东西来记录,我们需要有一个共同的声音。文档只不过是一个准绳,将开发中的各个树枝树叶扶正。如果,这个准绳太多太紧,大树可能会发育的很高很直,但是就是有些畸形,如果这个准绳太少太松,大树可能就会变成灌木丛。文档的多少、繁简是有度的,绝对不能说越多越好。我觉得,文档需要说明解决问题的方法而不是解决问题的理论,因为解决问题的理论是在文档形成中做到的。文档完整即可,每一份文档说明一个问题,无需将多个文档的内容放在一个文档的里面。除了重要阶段形成文档,其它部分都只是讨论或者说是想法。不要让文档成为累赘,如果真是这样,我认为就是该考虑写这些文档的必要性的时候了。 我们在文档的时候,一定要明白为什么要写这些。

在整个项目开发过程中,我们也同时遇到了许多程序接口问题,页面和功能相结合的问题,数据库建表的问题,这些问题都是源于我们项目小组成员之间的沟通不足。我深刻认识到,在项目开发时,项目小组中各个成员之间的相互沟通是非常重要的。如果我们要在功能方面作出修改,那么程序人员和页面人员及数据库人员就必须相互沟通,共同对整个程序作出相应的修改,这样才能避免最终整合时出现问题。

在这十个周里,我还对软件工程有了新的理解。在我以前的理解当中,软件工程,无非就是一个人或者几个人或一个团队集中在一起进行编写代码的工作,以实现开发出所用的软件。但现在我明白了,软件工程的作用,就是告诉人们怎样去开发软件和管理软件。具体地讲,它表现在与软件开发和管理有关的人员和过程上。所以,软件工程就不仅仅是单一的编程过程了。它包括了系统分析->建模->概要设计->详细设计->编码->测试->维护。编码可以理解为编程,这个只占总时间的20%左右。编程只是其中的一小部分。

在这次项目里我完成了许多工作,在界面设计上我完成了,首页、全部的商品页面、全部的用户页面及部分管理员页面的制作,在后期项目整合过程中修改了功能和界面结合时出现的bug,还有数据库插入数据及解决数据库集中整合时出现的问题。这些工作我都顺利完成了,虽然并不能算是非常的出色,但也算是尽力了。现在看到自己辛劳的成果,我感到很欣慰。

当然,在这次项目过程中我也发现了自己的一些问题。如现在的网站开发技术还不够强,在和小组成员相互沟通上还不够积极等。我希望以此为契机,在将来的项目开发中能做得更好。

设计实验报告 篇6

一、实验目的

1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。

2. 使用本学期学习的Java SE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以Java SE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。

3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。

二、实验要求

1.问题描述准确、规范。

2.程序结构合理,调试数据准确、有代表性.。

3.界面布局整齐,人机交互方便。

4.输出结果正确。

5.正确撰写实验报告。

三、实验内容

编写一个GUI程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。

四、实验步骤

1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。

2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。

3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。

4. 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。

5.详细的上机实验步骤见任务分工及程序设计进度表。

五、实验结果

经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。

下面是程序运行效果截图:

日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):

备忘录主界面(实现备忘录的添加,及当前日历的显示):

备忘录主界面(实现备忘录的显示,及对当前备忘录的修改删除等):

时钟主界面(显示当前时间,实现报整点报时功能):

六、实验总结

两周的课程设计结束了,在这其中历尽酸甜苦辣咸各种滋味,不过收获颇丰。从学习C语言、数据库等等计算机编程类课程开始,自己始终有种感觉,那就是太理论化了、缺少实践。而这次的Java程序设计可以说与以往大不相同,先是在课堂上老师讲述了有关的基础理论、基本语法知识,而后再加上这两周的课程设计,可以说是真正能够体会到程序编程的乐趣,也第一次发现自己原来对程序设计是如此的感兴趣。尤其是由于课程时间较紧,课上时间老师只是简单给我们讲述了一下Java Swing的基础知识,并没有去深入,而在此次课程设计中大量用到的监听事件的有关知识需要自己去查标准文档,去网上找相关系料,这无疑对自己是一个挑战。但是两周下来,我做到了,我独立完成了对备忘录程序的编写,累积下来这部分共涉及到包括Action Listener,Mouse Listener,Menu Listener,Document Listener等各种各类监听18个监听,分为6个类,累计完成程序千余行。而给我印象最深刻的便监听了,可以说是整个备忘录的大部分代码都是与监听相关,这也是让我我学会了对程序监听的运用,当然只是学会远远谈不上精通。

我编写的类有Test、MainWin、MyMenuListener1、PoliceListen、PoliceListen2、MyWindowListener。其中Test类主要是用来定义备忘录主窗口的各种组件以及在相关组件上添加监听以实现备忘录添加、修改、删除等功能。MainWin类主要是用来创建Test对象,用以显示窗口的。