优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx

上传人:b****0 文档编号:13647827 上传时间:2022-10-12 格式:DOCX 页数:10 大小:26.17KB
下载 相关 举报
优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx_第1页
第1页 / 共10页
优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx_第2页
第2页 / 共10页
优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx_第3页
第3页 / 共10页
优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx_第4页
第4页 / 共10页
优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx

《优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。

优质编程培训心得体会精选多篇优秀word范文 12页Word格式文档下载.docx

因为种种原因,今年我没有买笔记本。

没有机器,仅仅靠每周一次的上机练习是绝对不够的。

所以我就插空调程序,在舍友们不用的时候自己再接她们的电脑调。

调上一个web版的通讯录程序时我已经感觉到学的很吃力,好多东西都不懂。

这次做的这个学生成绩管理系统更复杂了,所以一开始调的时候感觉特别吃力.所以我告诉自己不能放弃,慢慢来,就这样我从最基本的sql语句session对象开始学起,我觉得我还有太多不懂得所以要比别人付出更多的努力。

就这样我一点一点的学着?

?

说心里话,在做上一个web版的通讯录时,我就感觉到成功的喜悦。

好多地方我都是一点一点的问的,在问的过程中,我也学会了很多,像:

servlet和jsp之间跳不过去时有两种解决办法,一是关闭底层类中的db.close;

二是将servlet中的throwsexception改成trycatch以捕捉异常;

我还学到了集中查找错误的方法,可以加上两个双斜杠“//”将具体的方法屏蔽掉,一检查是方法错误还是servlet错误,还有就是写上system.out.println()将获得的数据输出,用来检查数据传输过程有没有错误等等

虽然在别人看来,这些方法可能都很常规,但是确实我自己学会的,我觉得很有成就感。

我已经做好计划了,暑假的时候去买本本用自己的本本练习一下java,虽然下学期不学java了,但是我对java的热情不会因为这个而削减的!

做完这个学生成绩管理系统后,我觉得我对java的看法已经改变了。

一前总以为java很繁琐很难,听同学说java不好学,开始又有一些听不懂,所以一直很畏惧java。

但真正做了这个系统以后我才感觉到其实任何事都没有难与不难之分,只要你肯努力的去做,世上无难事只怕有心人!

我现在对java学习充满了热情,我知道我还有很多的不足

还有很多需要努力的地方,所以我的java之旅将继续进行?

第二篇:

socket编程实验心得体会

实验心得体会

在本次实验中,我通过对网络课上所学知识的应用,学到了很多实践中的知识。

并且加深了我对课本知识的理解和认识,在实验过程中,更容易记忆和深入理解各种协议的工作以及在网络编程中应该注意的一系列问题。

我们的第一个实验是对arp、icmp、ftp和http协议的分析和验证。

在利用软件etherpeek抓取在主机通信中的报文,得到了很多的关于这些协议的具体参数。

在课程学习过程中,书本和老师给我的感觉就是太枯燥,通过课本的学习根本没有办法理解各种协议的工作细节。

有很多的细微之处是想不通的。

但是,在本次实验中,我就通过各种报文的分析,看到了网络中不同层次协议之间的协做过程。

对应不同层之间就是通过协议来使用,我对整个网路的大体架构有了一个统筹的了解,虽然对很多的更深入的知识不是很了解,但是比我在课上学的东西要更有趣,而且容易学习,更能够我学习的兴趣。

第二个实验是socket编程实验。

在编写网络程序之前,我对网路通信可以说一无所知,根本不知道那些网路上的程序是怎么通过网路进行通信的。

在本次实验中,终于揭开了他们神秘的面纱。

当然在实验中出现了很多的插曲,我是在linux环境下编写的程序,很多技术方面的问题都无法解决。

查阅书籍和网上咨询才弄懂了他们的来龙去脉,最终是将我的程序编写完了。

开始接触网路编程时,那是一头雾水,根本不知从何下手。

在看了辅导教员给我们程序之后才有了很

多的起色,才能够自己编写程序。

在网络编程中,我最深的体会就是对具体的内部细节不熟悉,导致在调试的过程中感觉到很无力。

在很多函数的作用下,经常就是一团乱麻。

之后,我每次编写之前就是将用到的函数的用法温习一下,最后还是能够解决很多的问题的。

本次试验是我们学习网路的第一次。

以前的课程从来没有接触到网路方面的知识。

这次的新知识对我们的挑战还算不是太大,通过我们的努力,所有的困难时被克服掉了。

其实,实验应该是我们的重点,在以后的工作中要的就是我们的实际的动手能力,如果我们在学习期间就是只学了书本上的知识,那样对理论的了解是不够深刻的,只有通过实验才能激发我们的学习兴趣。

总之,我觉得实验才是检验理论的唯一标准。

第三篇:

vhdl编程的一些心得体会

vhdl编程的一些心得体会(转)

vhdl是由美国国防部为描述电子电路所开发的一种语言,其全称为(veryhighspeedintegratedcircuit)hardwaredescriptionlanguage。

与另外一门硬件描述语言veriloghdl相比,vhdl更善于描述高层的一些设计,包括系统级(算法、数据通路、控制)和行为级(寄存器传输级),而且vhdl具有设计重用、大型设计能力、可读性强、易于编译等优点逐渐受到硬件设计者的青睐。

但是,vhdl是一门语法相当严格的语言,易学性差,特别是对于刚开始接触vhdl的设计者而言,经常会因某些小细节处理不当导致综合无法通过。

为此本文就其中一些比较典型的问题展开探讨,希望对初学者有所帮助,提高学习进度。

一.关于端口

vhdl共定义了5种类型的端口,分别是in,out,inout,buffer及linkage,实际设计时只会用到前四种。

in和out端口的使用相对简单。

这里,我们主要讲述关于buffer和inout使用时的注意事项。

与out端口比,buffer端口具有回读功能,也即内部反馈,但在设计时最好不要使用buffer,因为buffer类型的端口不能连接到其他类型的端口上,无法把包含该类型端口的设计作为子模块元件例化,不利于大型设计和程序的可读性。

若设计时需要实现某个输出的回读功能,可以通过增加中间信号作为缓冲,由该信号完成回读功能。

双向端口inout是四种端口类型中最为特殊的一种,最难以学习和掌握,为此专门提供一个简单程序进行阐述,部分程序如下:

...?

①datab<

=dinwhence=’1’andrd=’0’else

②(others=>

’z’);

③dout<

=databwhence=’1’andrd=’1’else

④(others=>

’1’);

?

程序中datab为双向端口,编程时应注意的是,当datab作为输出且空闲时,必须将其设为高阻态挂起,即有类似第②行的语句,否则实现后会造成端口死锁。

而当datab作为有效输入时,datab输出必须处于高阻态,对于该例子中即,当ce=’1’andrd=’1’时,

二.信号和变量

常数、信号和变量是vhdl中最主要的对象,分别代表一定的物理意义。

常数对应于数字电路中的电源或地;

信号对应某条硬件连线;

变量通常指临时数据的局部存储。

信号和变量功能相近,用法上却有很大不同。

表1信号与变量主要区别

号变量

赋值延迟至少有△延时无,立即变化

相关信息有,可以形成波形无,只有当前值进程敏

感是否全局性具有全局性,可存在于多个进程中只能在某个进程或子程序中有效相互赋值关系信号不能给变量赋值变量可以给信号赋值

对于变量赋值操作无延迟,初学者认为这个特性对vhdl设计非常有利,但这只是理论上的。

基于以下几点原因,我们建议,编程时还是应以信号为主,尽量减少变量的使用。

(1)变量赋值无延时是针对进程运行而言的,只是一个理想值,对于变量的操作往往被综合成为组合逻辑的形式,而硬件上的组合逻辑必然存在输入到输出延时。

当进程内关于变量的操作越多,其组合逻辑就会变得越大越复杂。

假设在一个进程内,有关于变量的3个级连操作,其输出延时分别为5ns,6ns,7ns,则其最快的时钟只能达到18ns。

相反,采用信号编程,在时钟控制下,往往综合成触发器的形式,特别是对于fpga芯片而言,具有丰富的触发器结构,易形成流水作业,其时钟频率只受控于延时最大的那一级,而不会与变量一样层层累积。

假设某个设计为3级流水作业,其每一级延时分别为10ns,11ns,12ns,则其最快时钟可达12ns。

因此,采用信号反而更能提高设计的速度。

(2)由于变量不具备信息的相关性,只有当前值,因此也无法在仿真时观察其波形和状态改变情况,无法对设计的运行情况有效验证,而测试验证工作量往往会占到整个设计70%~80%的工作量,采用信号则不会存在这类问题。

(3)变量有效范围只能局限在单个进程或子程序中,要想将其值带出与其余进程、子模块之间相互作用,必须借助信号,这在一定程度上会造成代码不够简洁,可读性下降等缺点。

当然,变量也具有其特殊的优点,特别是用来描述一些复杂的算法,如图像处理,多维数组变换等。

三.位(矢量)与逻辑(矢量)

bit或其矢量形式bit_vector只有’0’和’1’两种状态,数字电路中也只有’0’和’1’两种逻辑,因此会给初学者一个误区,认为采用位(矢量)则足够设计之用,而不必像std_logic那样出现’x’,’u’,’w’各种状态,增加编程难度。

但实际情况却并非如此,以一个最简单d型触发器设计为例

①process(clk)

②begin

③ifclk’eventandclk=’1’then

④q<

=d;

⑤endif;

⑥endprocess;

实际中clk对数据端d的输入有一定的时间限制,即在clk上升沿附近(建立时间和保持时间之内),d必须保持稳定,否则q输出会出现亚稳态,如下图所示。

当clk和d时序关系不满足时,由于bit只有’0’或’1’,系统只能随机的从’0’和’1’中给q输出,这样的结果显然是不可信的;

而采用std_logic类型,则时序仿真时会输出为一个’x’,提醒用户建立保持时间存在问题,应重新安排d和clk之间时序关系。

此外,对于双向总线设计(前面已提及)、fpga/cpld上电配置等问题,如果没有’z’,’x’等状态,根本无法进行设计和有效验证。

四.关于进程

进程(process)是vhdl中最为重要的部分,大部分设计都会用到process结构,因此掌握process的使用显得尤为重要。

以下是初学和使用process经常会出错的例子。

1.多余时钟的引入

在设计时往往会遇到这种情况,需要对外部某个输入信号进行判断,当其出现上跳或下跳沿时,执行相应的操作,而该信号不像正常时钟那样具有固定占空比和周期,而是很随机,需要程序设计判断其上跳沿出现与否。

这时,很容易写出如下程序:

①process(ctl_a)--ctl_a即为该输入信号

③ifctl_a’eventandctl_a=’1’then

④?

;

--执行相应操作

⑤endif;

由于出现第③行这类语句,综合工具自动默认ctl_a为时钟,某些fpga更会强行将该输入约束到时钟引脚上。

而设计者的初衷只是想将其作为下位机的状态输入以进行判断。

上面的程序容易造成多时钟现象,增加设计的难度。

解决的办法可以如下,将ctl_a增加一级状态

ctl_areg寄存,通过对ctl_a和ctl_areg状态判断上跳与否,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1