计算机科学与技术 2.doc

上传人:sccc 文档编号:5233778 上传时间:2023-06-16 格式:DOC 页数:19 大小:56.49KB
返回 下载 相关 举报
计算机科学与技术 2.doc_第1页
第1页 / 共19页
计算机科学与技术 2.doc_第2页
第2页 / 共19页
计算机科学与技术 2.doc_第3页
第3页 / 共19页
计算机科学与技术 2.doc_第4页
第4页 / 共19页
计算机科学与技术 2.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《计算机科学与技术 2.doc》由会员分享,可在线阅读,更多相关《计算机科学与技术 2.doc(19页珍藏版)》请在三一办公上搜索。

1、计算机科学与技术 2计算机科学与技术(2)2010-07-24 10:111专谈计算机系统的学习汇编语言和微机原理是两门特烦人的课。你的数学/理论基础再好,也占不到什么便宜。这两门课之间的次序也好比先有鸡还是先有蛋,无论你先学哪门,都会牵扯另一门课里的东西。所以,只能静下来慢慢琢磨。这就是典型的工程课,不需要太多的聪明和顿悟,却需要水滴石穿的渐悟。有关这两门课的书,计算机书店里不难找到。弄几本最新的,对照着看吧。组成原理推荐计算机组成与结构清华大学王爱英教授写的。汇编语言大家拿8086/8088入个门,之后一定要学80x86汇编语言。实用价值大,不落后,结构又好,写写高效病毒,高级语言里嵌一点

2、汇编,进行底层开发,总也离不开他,推荐清华大学沈美明的IBM-PC汇编语言程序设计。有些人说不想了解计算机体系结构,也不想制造计算机,所以诸如计算机原理,汇编语言,接口之类的课觉得没必要学,这样合理吗?显然不合理,这些东西迟早得掌握,肯定得接触,而且,这是计算机专业与其他专业学生相比的少有的几项优势。做项目的时候,了解这些是非常重要的,不可能说,仅仅为了技术而技术,只懂技术的人最多做一个编码工人,而永远不可能全面地了解整个系统的设计,而编码工人是越老越不值钱。关于组成原理还有个讲授的问题,在我学这门课程时老师讲授时把CPU工作原理誉微程序设计这一块略掉了,理由是我们国家搞CPU技术不如别的国家

3、,搞了这么长时间好不容易出了个龙芯比Intel的还差个十万八千里,所以建议我们不要学了。我看这在各校也未见得不是个问题吧!若真是如他所说,那中国的计算机科学哪个方向都可以停了,软硬件,应用,有几项搞得过美国,搞不过别人就不搞了,那我们坐在这里干什么?教学的观念需要转变的。我们学校现在有一个学弟就专攻CPU设计,平时交流不少,发现他能够将软件的设计思想应用到芯片设计上,我看真的是不错的,比起那些望而生畏的恐怕要强上百倍。模拟电路这个学科,如今不仅计算机系学生搞不定,电子系学生也多半害怕。如果你真想软硬件通吃,那么建议你先看看邱关源的电路原理,也许此后再看模拟电路底气会足些。教材:康华光的电子技术

4、基础(高等教育出版社)还是不错的(我校电子系在用)。有兴趣也可以参考童诗白的书。数字电路比模拟电路要好懂得多。推荐大家看一看北京工业大学刘英娴教授写的数字逻辑。业绩人士都说这本书很有参考价值(机械工业出版社的)。原因很明了,实用价值高,能听听她讲授的课程更是有一种享受科学的感觉。清华大学阎石的书也算一本好教材,遗憾的一点是集成电路讲少了些。真有兴趣,看一看大规模数字系统设计吧(北航那本用的还比较多)。计算机系统结构该怎么教,国际上还在争论。国内能找到的较好教材为Stallings的Computer Organization and Architecture:Designing for Perf

5、ormance(清华影印本)。国际上最流行的则是Computer architecture:aquantitative approach,by Patterson&Hennessy。2一些其他的专业课程操作系统可以选用操作系统的内核设计与实现和现代操作系统两书之一。这两部都可以算经典。我们当时理论方面学习采用的是清华大学出版社操作系统,张尧学教授写的那本。可以说理论涉及的比较全,在有就是他的实验指导书,操作系统这门学科同程序设计结合得很紧密,不自己试着做些什么恐怕很难搞通。我想作为实践类的参考首推的是这本:4.4BSD操作系统设计与实现作为开源文化很重要的一个分支的BSD操作系统家族做得非常出

6、色,其中现在若干出色的分支系统(例如FreeBSD,NetBSD,OpenBSD,DragonflyBSD)都与4.4BSD有着难解的渊源。而4.4BSD的开发者亲自撰写的这本理论设计与实现便是一本绝佳的参考。另外在有一些辅助材料的基础上研究*nix的源代码也是深入操作系统设计与实现的一条绝佳之路。(感谢CSDN网友ffgg的建议,我将Windows操作系统原理这本书去掉,现在看来这本书的确不能算是一个十分优秀的作品)如果先把形式语言学好了,则编译原理中的前端我看只要学四个算法:最容易实现的递归下降;最好的自顶向下算法LL(k);最好的自底向上算法LR(k);LR(1)的简化SLR(也许还有另

7、一简化LALR)。后端完全属于工程性质,自然又是another story。推荐教材:Kenneth C.Louden写的Compiler Construction Principles and Practice即是编译原理及实践(机械工业出版社的译本)学数据库要提醒大家的是,会用VFP,VB,Power builder不等于懂数据库。(这世界上自以为懂数据库的人太多了!)数据库设计既是科学又是艺术,数据库实现则是典型的工程。所以从某种意义上讲,数据库是最典型的一门计算机课程-理工结合,互相渗透。另外推荐大家学完软件工程学后再翻过来看看数据库技术,又会是一番新感觉。至少对一些基本概念与描述方法

8、会有很深的体会,比如说数据字典,E-R图之类的。推荐教材:Abraham Silberschatz等著的Database System Concepts.作为知识的完整性,还推荐大家看一看机械工业出版社的数据仓库译本。计算机网络的标准教材还是来自Tanenbaum的Computer Networks(清华大学有译本)。还有就是推荐谢希仁的计算机网络教程(人民邮电出版社)问题讲得比较清楚,参考文献也比较权威。不过,网络也属于Hardcore System,所以光看书是不够的。建议多读RFC,里可以按编号下载RFC文档。从IP的读起。等到能掌握10种左右常用协议,就没有几个人敢小看你了。再做的工作

9、我看放在网络设计上就比较好了。数据结构的重要性就不言而喻了,学完数据结构你会对你的编程思想进行一番革命性的洗礼,会对如何建立一个合理高效的算法有一个清楚的认识。对于算法的建立我想大家应当注意以下几点:当遇到一个算法问题时,首先要知道自己以前有没有处理过这种问题.如果见过,那么你一般会顺利地做出来;如果没见过,那么考虑以下问题:1.问题是否是建立在某种已知的熟悉的数据结构(例如,二叉树)上?如果不是,则要自己设计数据结构。2.问题所要求编写的算法属于以下哪种类型?(建立数据结构,修改数据结构,遍历,查找,排序.)3.分析问题所要求编写的算法的数学性质.是否具备递归特征?(对于递归程序设计,只要设

10、计出合理的参数表以及递归结束的条件,则基本上大功告成.)4.继续分析问题的数学本质.根据你以前的编程经验,设想一种可能是可行的解决办法,并证明这种解决办法的正确性.如果题目对算法有时空方面的要求,证明你的设想满足其要求.一般的,时间效率和空间效率难以兼得.有时必须通过建立辅助存储的方法来节省时间.5.通过一段时间的分析,你对解决这个问题已经有了自己的一些思路.或者说,你已经可以用自然语言把你的算法简单描述出来.继续验证其正确性,努力发现其中的错误并找出解决办法.在必要的时候(发现了无法解决的矛盾),推翻自己的思路,从头开始构思.6.确认你的思路可行以后,开始编写程序.在编写代码的过程中,尽可能

11、把各种问题考虑得详细,周密.程序应该具有良好的结构,并且在关键的地方配有注释.7.举一个例子,然后在纸上用笔执行你的程序,进一步验证其正确性.当遇到与你的设想不符的情况时,分析问题产生的原因是编程方面的问题还是算法思想本身有问题.8.如果程序通过了上述正确性验证,那么在将其进一步优化或简化。9.撰写思路分析,注释.对于具体的算法思路,只能靠你自己通过自己的知识和经验来加以获得,没有什么特定的规律(否则程序员全部可以下岗了,用机器自动生成代码就可以了).要有丰富的想象力,就是说当一条路走不通时,不要钻牛角尖,要敢于推翻自己的想法.我也只不过是初学者,说出上面的一些经验,仅供大家参考和讨论。关于人

12、工智能,我觉得的也是非常值得大家仔细研究的,虽然不能算是刚刚兴起的学科了,但是绝对是非常有发展前途的一门学科。我国人工智能创始人之一,北京科技大学涂序彦教授(这老先生是我的导师李小坚博士的导师)对人工智能这样定义:人工智能是模仿、延伸和扩展人与自然的智能的技术科学。在美国人工智能官方教育网站上对人工智能作了如下定义:Artificial Intelligence,or AI for short,is acombination of computer science,physiology,and philosophy.AI is abroad topic,consisting of differ

13、ent fields,from machine vision to expert systems.The element that the fields of AI have in common is the creation of machines that canthink.这门学科研究的问题大概说有:(1)符号主义:符号计算与程序设计基础,知识表达方法:知识与思维,产生式规则,语意网络,一阶谓词逻辑问题求解方法:搜索策略,启发式搜寻,搜寻算法,问题规约方法,谓词演算:归结原理,归结过程专家系统:建立专家系统的方法及工具(2)联接主义(神经网络学派):1988年美国权威机构指出:数据库,网

14、络发展呈直线上升,神经网络可能是解决人工智能的唯一途径。关于神经网络学派,现在很多还是在发展阶段。我想对于人工智能的学习,大家一定不要像学数学似的及一些现成的结论,要学会分析问题,最好能利用程序设计实现,这里推荐给大家ACM最佳博士论文奖获得者涂晓媛博士的著作人工鱼-计算机动画的人工生命方法(清华大学出版社)。搞人工生命的同学不会不知道国际知名的涂氏父女吧。关于人工智能的书当然首选Artificial Intelligence ANew SynthesisNils J.Nilsson.鼻祖嘛!关于网络安全我也想在这里说两句,随着计算机技术的发展,整个社会的信息化水平突飞猛进,计算机网络技术日新

15、月异,网络成了当即社会各个工作领域不可缺少的组成部分,只要有网络存在,网络安全问题就是一个必须解决好的问题,学习网络安全不是简简单单的收集一些黑客工具黑一黑别人的网站,而是要学习他的数学原理,实现原理,搞清底层工作机制,这样才能解决大部分的现有问题和新出现的安全问题。总的来说信息安全学的研究还是非常深奥的,这方面体会比较深的要算是在最近的微软杯程序设计大赛中利用.NET平台开发的那个项目My E-business Fairy.NET过程中了。3闲聊软件工程关于计算机科学的一些边缘科学我想谈一谈软件工程技术,对于一个企业,推出软件是不是就是几个程序员坐在一起,你写一段程序,我写一段程序呢?显然不

16、是。软件工程是典型的计算机科学和数学,管理科学,心理学,社会学等学科的综合。它使我们这些搞理论和技术的人进入了一个社会。你所要考虑的不仅仅是程序的优劣,更应该考虑程序与软件的区别,软件与软件产品的区别,软件软件产品的市场前景,如何去更好的与人交流。这方面我还在学习阶段,以后这方面再写文章吧,先推荐给大家几本书:畅销20年不衰的人月神话(清华大学中文版,中国电力出版社影印版),软件工程-实践者研究的方法(机械工业出版社译本),人件(据说每一位微软公司的部门经理都读过这本书,推荐老总们和想当老总的同学都看看,了解一下什么是软件企业中的人)以及微软公司的软件开发的科学与艺术和软件企业的管理与文化(研

17、究软件企业的制胜之道当然要研究微软的成功经验了!)看完上面的书,结合自己做的一些团队项目,我的一些比较深的体会有这么几点:1.How important aplan is for aproject development.2.How to communicate with your team members in amore effective way.3.How to solve unexpected situations.4.The importance of unification.5.The importance of doing what you should do.6.The im

18、portance of designing before programming.7.The importance of management.8.The importance of thinking what your teammates think.在软件开发过程中我们应当具有以下能力:1.Like it if you would like to do it.We believe that your attitude toward your work will definitely makes great effect on the project.2.The spirit of grou

19、p working.Take myself as an example.I am just apart of the team,just alittle part.You must make it clear that you are just amember of the team,but your effort will change your project alot.3.Passion With passion,you can do your job in amore effective way.4.The ability of solving unexpected problems.

20、5.Learning New things in avery short time It is the basic requirement for we computer major to learn new technology.6.Creativity The tools are changing.As for us,whats more important is to use these new tools and technology to enable people and businesses throughout the world to realize their full p

21、otential.7.The ability to do your work independently.Every member has his own business.In ateam,your work cannot be replaced by othersso you must do your business well in order to assure the project development process.团队开发当中的一些具体精神应当有:1 Success and Failure is not one persons effect.Your teams succe

22、ss is not the contribution of asingle person.Success contributes to the whole team.If your project failed,it also is not just because of one persons poor work.It is also your failure.2 Learn from each other.Every person has his own specialty.Even Bill Gates cannot know all the things about software

23、development.We often learn from each other and gains alot.The old saying goes like this:There must be one out of three who can be your teacher.In our team we say:Every person is your teacher.3 Help those who have problems.Use the group working spirit to overcome all the difficulties.There is no need

24、 to explain it.As the old saying:Two heads are better than one.We always find it difficult to solve all the problems just by oneself.4 Praise them who have got some improvement.In our team,I always praise the members when they have finished something or just solved one problem,and they think that it

25、 is interesting and gains alot.Because they can see their efforts.5 Say something if needed.这个是一次软件大赛当中的体会,和大家也做个交流,不过不能再说了,软件工程学说起来写本2000页的书一点也不多,恕我才疏学浅,不再做过多论述了。4谈谈学习态度的问题关于计算机技术的学习我想是这样的:学校开设的任何一门科学都有其滞后性,不要总认为自己掌握的某门技术就已经是天下无敌手了,虽然现在Java,VB,C,C+用的都很多,怎能保证没有被淘汰的一天,我想.NET平台的诞生和X#语言的初见端倪完全可以说明问题。换言

26、之,在我们掌握一门新技术的同时就又有更新的技术产生,身为当代的大学生应当有紧跟科学发展的素质。举个例子,就像有些同学总说,我做网页设计就喜欢直接写html,不愿意用什么Frontpage,Dreamweaver。能用语言写网页固然很好,但有高效的手段你为什么不使呢?仅仅是为了显示自己的水平高,unique?我看真正水平高的是能够以最快的速度接受新事物的人。高级程序设计语言的发展日新月异,今后的程序设计就像人们在说话一样,我想大家从xml中应是有所体会了。难道我们真就写个什么都要用汇编,以显示自己的水平高,真是这样倒不如直接用机器语言写算了。反过来说,想要以最快的速度接受并利用新技术关键还是在于

27、你对计算机科学地把握程度。当然有一点我们必须指出,就是对于新技术要辩证得看,不能盲从。计算机技术牵扯的内容更为广泛些,一项一项说恐怕没个一年半载也说不清。我只想提醒大家的还是那句话,技术与科学是不能分家的,学好了科学同时搞技术,这才是上上策。犹如英语,原先人们与老外交流必须要个翻译,现在满马路的人都会说英语。就连21世纪英语演讲比赛的冠军都轮不到英语系的学生了。计算机也是一样的,我们必须面对的一个现实就是:计算机真就只是一个工具,如果不具备其它方面的素养,计算机系的学生虽然不能说找不到工作,不过总有一天当其他专业性人才掌握了计算机技术后将比我们出色许多。原因就在于计算机解决的大都是实际问题,实

28、际问题的知识却是我们少有的。单一的计算机技术没有立足之地。我想是时候指出:学习每一个课程之前,都要先搞清这一课程的学习目的。这一学科的应用领域。据我自身所了解到的同龄同学和低年级的同学的学习状况:他们之中很少有人知道学一个学科的学习目的,期末考试结束了也不知道学这科做什么用。这就失去了读计算机科学的意义。当然这与现存的教育思想不能说一点关系都没有。总的来说,从教育角度来讲,国内高校的课程安排不是很合理,强调理论,又不愿意在理论上深入教育,无力接受新技术,想避开新技术又无法避得一干二净。我觉得关键问题就是国内的高校难于突破现状,条条框框限制着怎么求发展。我们虽然认识得到国外教育的优越性,但为什么

29、迟迟不能采取行动?哪怕是去粗取精的取那么一点点。我们需要改变。从我们自身角度来讲,多数人4年下来既没有学习计算机科学的学术水平,也没有学习计算机技术的那种韧劲。在我刚上大一时,我的计算机科学入门导师,淮北煤炭师范学院王爱平教授曾经对我说过这样一番话:当你选择了计算机这一门科学,就意味着你踏上了一条不归路,就意味着你一生都要为之奋斗你的身后是悬崖,只有向前走,不能往后退。有些同学说按照这样学习学的东西太多,有的未见得有用,我想打个形象的比方:学校学出来的人都是一个球体,方方面面的知识都应具备。可是社会上需要球体的地方很少,反而需要的是砖和瓦,即精通某一行的人才。但是对于同等体积的物体,用球体来改

30、造是最方便最省事的。学校的学生很多,为了能够使更多的学生来适应这个社会,学校也就不得以把所有的学生都打造成一个球体,然后让社会对这些学生进行再加工,成为真正能够有用的人才。即使你非常清楚自己的将来要干什么,并且非常下定决心要走自己的路,这一步你也必须走,世界是在不断变化的,你不能预料未来。想清楚,努力去干吧!计算机科学博大精深,我只是个初学者。前面的路还长,计算机科学需要我们为之奋斗.学习计算机科学需要韧性,更需要创新,需要激情。深刻学习理论知识,勇于接受新技术的挑战,这才是我们这一代人应具有的素质。最后送大家一句话Wake up every day with afeeling of pass

31、ion for the difference technology will make in peoples life!。补充日期:2004-10-23 01:19:06计算机科学研究的内涵与外延撰文:曾毅最后更新2004年3月11日声明:本文力图介绍计算机科学研究范畴的概要情况,以对学习和研究计算机科学的读者有一个引论性的介绍,内容将随笔者学习深入与计算机科学发展而更新。要想学好计算机科学,我们认为首先要对计算机科学研究的内涵与外延至少有一个概要性的了解。对于刚刚入学的计算机系学生以及虽然学习了很长时间的计算机,但是还是觉得很迷茫的学生来说,究竟计算机科学研究的是什么大部分人可能还不清楚,本

32、文着力论述计算机科学的研究范畴,以对同学们有所启发。谈到计算机的历史中对计算机科学方向性的确定最应当提的就是美国计算机协会,1946年,美国在华盛顿哥伦比亚大学成立了美国计算机协会ACM(Association for Computing Machinery)他们对计算机学科的发展做出了前瞻性的预测:将计算机学科的发展方向分为三个部分:一计算机基础问题的研究:(1)计算理论:(theory of computation)计算理论是关于计算和计算机械的数学理论。主要内容包括:1.算法(algorithm):解题过程的精确描述2.算法学(algorithmics):系统的研究算法的设计,分析与验证

33、的学科3.计算复杂性理论(computational complexity theory):用数学方法研究各类问题的计算复杂性学科。4.可计算性理论(computability theory):研究计算的一般性质的数学理论。5.自动机理论(automata theory):以研究离散数字系统的功能和结构以及两者之关系为主要内容的数学理论。6.形式语言理论:用数学方法研究自然语言和人工语言的语法理论。(2)计算几何学:(Computational geometry)研究几何外形信息的计算机表示,分析和综合的新兴边缘学科,它是计算机辅助几何设计(CAGD)的数学基础。主要内容如:1.贝塞尔曲线和曲

34、面2.B样条曲线和曲面3.孔斯曲面(3)并行计算问题:(parallel computation)所谓并行计算就是同时执行多个计算问题他的延伸学科有:并行编译程序(parallel zing compilers)并行程序设计语言(parallel programming language)并行处理系统(parallel processing system)并行数据库(parallel database)并行算法(parallel algorithm)(4)形式化方法(formal method)建立在严格数学基础上的软件开发方法。软件开发的全过程中,从需求分析,规约,设计,编程,系统集成,测试

35、,文档生成,直至维护各个阶段,凡是采用严格的数学语言,具有精确的数学语义的方法,都称为形式化方法。(5)程序设计语言理论:(Theory of programming language)研究书写计算机程序语言的学科。主要内容:研究语法,语义,语用以及程序设计语言的优劣。(6)人工智能:我国人工智能创始人之一,北京科技大学涂序彦教授对人工智能这样定义:人工智能是模仿、延伸和扩展人与自然的智能的技术科学。在美国人工智能官方教育网站上对人工智能作了如下定义:Artificial Intelligence,or AI for short,is acombination of computer scie

36、nce,physiology,and philosophy.AI is abroad topic,consisting of different fields,from machine vision to expert systems.The element that the fields of AI have in common is the creation of machines that canthink.研究的问题:(1)符号主义:(符号学派)符号计算与程序设计基础知识表达方法:知识与思维,产生式规则,语意网络,一阶谓词逻辑问题求解方法:搜索策略,启发式搜寻,搜寻算法问题规约方法谓词

37、演算:归结原理,归结过程专家系统:建立专家系统的方法及工具(2)联接主义(神经网络学派)神经网络学派通过研究模拟生命神经组织的工作状况,力求突破人工智能的一些前沿问题。1988年美国权威机构指出:数据库,网络发展呈直线上升,神经网络可能是解决人工智能的唯一途径。二系统:(7)体系结构:众所周知计算机界的摩尔定律:计算机硬件性能每18个月翻一番,现在基本上还可以保持这个速度,高计算机体系结构需要大量的人力物力,我们国内只有清华,国防科大,哈工大搞这方面的工作。目前的新型计算机有:光计算机,量子计算机,生物计算机。(8)网络与通讯:目前美国已经铺遍了第二代英特尔网,用于远程教学,远程诊断(如机械诊

38、断)我国第二代Inter网上的协同国家重点实验室的评估由北航软件所负责单位,关于具体的研究内容我们在今后的文章会涉及。(9)面向对象:(OOA,OOD,OOP)设计类及由类构造程序的方法与过程,用计算机对象模拟现实世界对象。(10)约束程序设计:含有变量的关系表达式称为约束。(11)软件工程:应用计算机科学,数学及管理科学等原理,开发软件的工程学科CMM划分将软件工程的等级划分为0-9级,中国的软件设计处于3级(12)软件质量控制:软件质量:反映软件系统或软件产品满足明确或隐含需求能力的特性总和。(13)实时系统与嵌入式系统:实时系统:时间标准完全等于系统原模型的系统。嵌入式系统:作为一个信息

39、处理部件嵌入到其他系统当中的系统。(14)数据库系统(Database System)简称DBS.DBS是实现有组织地、动态地存储大量相关的结构化数据,方便各类用户使用数据库的计算机软件/硬件资源的集合。即采用了数据库技术的计算机系统。(15)大规模计算中的I/O在大规模计算中实现计算机主机与外围设备进行信息交换的技术。三计算机应用:(16)科学与工程计算:这个范围很广,简单说说就有:生物信息处理,天气预报等等(17)电子商务与数字化图书馆(18)人机交互:三维虚拟现实:应用方面比较突出的比如说外科手术(19)计算机教育:用于教学,培养计算机人才关于未来的计算机究竟向何方向发展,我们不妨了解一

40、下,中国科学院前不久对中国计算机科学发展趋势作出了如下论断:概括起来即是:MMOON即:超大规模计算机+多媒体处理能力+开放式的系统结构+面向对象+网络上的计算将会创造一个人机和谐的计算环境。下面再谈谈计算科学研究的主线,看看对大家有没有一定的启发:从最底层往上谈起应用层:移动计算与全球定位计算机自动控制计算机辅助制造计算机集成制造系统机器人学计算可视化与虚拟现实数据与信息检索计算机创作计算机网络应用软件科学计算多媒体信息系统计算机辅助设计信息管理与决策系统自然语言处理模式识别与图像处理技术计算机图形学计算几何人工智能与知识工程数据表示与存储网络与开放系统互连标准软件测试技术人机工程学(人机界

41、面)计算科学专业基础层:软件开发方法学:软件工程技术,程序设计方法学,软件开发工具和环境,软件开发规范编码理论密码学计算机体系结构程序理论数据表示理论与数据库系统电子计算机系统基础计算机接口与通信计算机网络与数据通信技术自动推理故障诊断与器件测试技术容错技术汇编技术操作系统高级语言程序设计数字系统设计符号计算与计算机代数数据结构技术算法设计与分析编译与解释技术计算科学基础层:控制论基础数字系统设计基础信息论基础网论(Petri网理论等)形式语义学框图理论算法理论可计算性(递归论)计算复杂性程序设计语言理论计算模型(各种抽象机)模型论与非经典逻辑公理集合论形式语言与自动机数学与物理层:光电子技术

42、基础电路基础电子线路基础数字与模拟电路基础数值分析与计算方法大学物理学函数论基础(复变函数,演算,泛函分析)泛代数概率论与数理统计常微分方程偏微分方程集合论与图论组合数学抽象代数数理逻辑基础空间解析几何数学分析布尔代数高等代数数论前些阵子发表的计算机科学与技术学习反思录引起了一些同学的思索,也收到了很多来信,大家把问题都集中在了到底计算机能干什么,计算机科学研究的领域到底有多宽,我自知没有能力回答这样的问题,只是就我所知的范围作了简单的介绍。谈及这么大的题目就像原来写的那篇计算机科学与技术学习反思录,乃是万言难尽,可以写书,甚至可以出书系,然而我觉得只要大家在开始的时候有个概要性的了解,文中方方面面都有所涉及,但是都是概念性的介绍,也是限于篇幅的考虑,我的观点就是以后学到什么看什么,站在高出以后愿意向什么方向看就向什么方向看,但首先要站得高一点,我们思考清楚以后,需要更多就的是去做,而不再是去想了,虽然这个想的过程会很长,但是我们要先想清楚,不要让我们的学习与研究输在起点之上,最后祝大家在计算机科学与技术的学习道路上学业有成。特别声明:1:资料来源于互联网,版权归属原作者2:资料内容属于网络意见,与本账号立场无关3:如有侵权,请告知,立即删除。105103105822

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

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号