软件编译技术课程总结

软件编译技术论文

学号: 姓名: 班级:

摘要

软件编译技术是计算机及相关专业的一门重要专业课程,在计算机科学中有很重要的地位和作用,已被国内外高校列为计算机专业的主要课程。它主要介绍了高级程序设计语言编译程序构造的一般原理、基本设计方法、主要实现技术和一些自动构造工具。通过该课程的学习,对提高我们计算机软件素质,使我们真正认识计算机信息处理实质并综合运用所学的软件设计技术来分析问题等具有很大作用。

课程理论性与实践性都很强,我们在学习是普遍感到内容非常抽象,不易理解,内容多且繁琐,难以完整、全面地掌握软件编译技术的有关知识,更不用说灵活运用软件编译技术知识从事相关设计或应用于其他领域。虽然只有少数人从事编译方面的工作,但是这门课在理论、技术、方法上都对我们提供了系统而有效的训练,有利于提高软件人员的素质和能力。 在我们学习软件编译技术以前,都认为软件编译技术只能应用在写程序语言的编译器上, 觉得用处不大, 学习兴趣不高。而在后来的学习中,我们逐渐认识到计算机专业的我们,除了要会编写程序语言之外,还应该了解它是如何被计算机所识别,这才是真正并且透彻地学习软件。另外,编译器中每一个模块的编写,都能对我们的编程能力的提高有很大帮助。在今后若从事软件工程,这门课程也能够对编写程序有所帮助。

关键字:(1)语言和文法;(2)词法分析;(3)语法分析;(4)语义分析和中间代码生成;(5)代码优化和目标代码生成;

一、语言和文法

语言和文法部分的知识包括文法基本概念及文法的二义性。基本概念有文法定义、推导、句型、句子等等。二义性文法是通过画语法树的方法来证明。

二、词法分析

词法分析相对来说比较简单。可能是词法分析程序本身实现起来很简单吧,很多没有学过软件编译技术的人也同样可以写出各种各样的词法分析程序。不过软件编译技术在讲解词法分析的时候,重点把正则表达式和自动机原理加了进来,然后以一种十分标准的方式来讲解词法分析程序的产生。这样的做法道理很明显,就是要让词法分析从程序上升到理论的地步。

三、语法分析

等学到词法分析和语法分析时候,会出现这样的疑问:“词法分析和语法分析到底有什么?”就从编译器的角度来讲,编译器需要把程序员写的源程序转换成一种方便处理的数据结构(抽象语法树或语法树), 那么这个转换的过程就是通过词法分析和语法分析的。其实词法分析并非一开始就被列入编译器的必备部分,只是我们为了简化语法分析的过程,就把词法分析这种繁琐的工作单独提取出来,就成了现在的词法分析部分。

除了编译器部分,在其它地方,词法分析和语法分析也是有用的。比如我们在DOS,Unix,Linux 下输入命令的时候,程序如何分析输入的命令形式,这也是简单的应用。总之,这两部分的工作就是把不“规则”的文本信息转换成一种比较好分析好处理的数据结构。那么为什么软件编译技术的教程都最终把要分析的源分析转换成“树”这种数据结构呢?数据结构中有Stack, Line,List„这么多数据结构,各自都有各自的特点。但是Tree 这种结构有很强的递归性,也就是说我们可以把Tree 的任何结点Node 提取出来后,它依旧是一颗完整的Tree 。这一点符合我们现在软件编译技术分析的形式语言,比如我们在函数里面使用函树,循环中使用循环,条件中使用条件等等,那么就可以很直观地表示在Tree 这种数据结构上。同样,我们在执行形式语言的程序的时候也是如此的递归性。

在软件编译技术后面的代码生成的部分,就会介绍一种堆栈式的中间代码,我们可以根据分析出来的抽象语法树,很容易,很机械地运用递归遍历抽象语法树就可以生成这种指令代码。而这种代码其实也被广泛运用在其它的解释型语言中。像现在流行的Java,.NET ,其底层的字节码bytecode, 可以说就是这中基于堆栈的指令代码的。

关于语义分析,语法制导翻译,类型检查等等部分,其实都是一种完善前面得到的抽象语法树的过程。比如说,我们写C 语言程序的时候,都知道,如果把一个浮点数直接赋值给一个整数,就会出现类型不匹配,那么C 语言的编译器是怎么知道的呢?就是通过这一步的类型检查。像C++语言这中支持多态函数的语言,这部分要处理的问题就更多更复杂了。大部软件编译技术的教材在这部分都是讲解一些比较好的处理策略而已。因为新的问题总是在发生,旧的办法不见得足够解决。

四、语义分析和中间代码生成

关于本来说,作为一个编译器,起作用的部分就是用户输入的源程序到最终的代码生成。但是在讲解最终代码生成的时候,又不得不讲解机器运行环境等内容。因为如果不知道机器是怎么执行最终代码的,那么当然无法知道如何生成合适的最终代码。

这部分内容我自我感觉其意义甚至超过了软件编译技术本身。因为它会把一个计算机的程序的运行过程都通通排在面前,将来可能不会从事编译器的开发工作,但是只要是和计算机软件开发相关的领域, 都会涉及到程序的执行过程。运行时环境的讲解会让更清楚一个计算机程序是怎么存储,怎么装载,怎么执行的。

关于部分的内容,我建议大家看看龙书上的讲解,作者从最基本的存储组织,存储分配策略,非局部名字的访问,参数传递,符号表到动态存储分配(malloc,new)都作了十分详细的说明。这些东西都是我们编写平常程序的时候经常要做的事情,但是我们却少去探求其内部是如何完成。 关于中间代码生成,代码生成, 代码优化部分的内容就实在不好说了。国内很多教材到了这部分都会很简单地走马观花讲过去,我们听了也只是作为了解,不知道如何运用。不过这部分内容的东西如果要认真讲,单独开一学期的课程都讲不完。

在《软件编译技术及实践》的书上,对于这部分的讲解就恰到好处。作者主要讲解的还是一种以堆栈为基础的指令代码,十分通俗易懂,让人看了后,很容易模仿,自己下来后就可以写自己的代码生成。当然,对于其它代码生成技术,代码优化技术的讲解就十分简单了。如果要仔细研究代码生成技术,其实另外还有本叫做《Advance Compiler Desgin and Implement》, 那本书现在由机械工业出版社引进的,十分厚重,而且是英文原版。不过这本书我没有把它列为推荐书给大家,毕竟能把龙书的内容搞清楚,在中国已经就算很不错的高手了,到那个时候再看这本《Advance Compiler Desgin and Implement》也不迟。代码优化部分在大学本科教学中还是一个不太重要的部分,就是算是实践过程中,相信大家也不太运用得到。毕竟,自己做的编译器能正确生成执行代码已经很不错了,还谈什么优化呢?

五、代码优化和目标代码生成

最后,优化分为局部优化和循环优化,重点理解一些关键词,如基本块、流图等,要学会自己画出程序流图。用DAG 图进行局部优化是重点。

软件编译技术课程的学习是我们可以对程序设计语言的设计和实现有深刻的理解,还可以有助于我们快速理解定位和解决在程序编译、测试与运行中出现的问题。

(1)编译程序规模大。由于软件编译技术是一个极其复杂的系统,程序规模大,导致不可能在一节课或一段时间讲述完,只好将它肢解开来一部分一部分地研究,但是这样容易造成知识体系断裂。不可能在短时间让我们对整个编译系统各部分融会贯通,理清各部分逻辑关系的顺序。我们学习过程中应该注意前后联系,切忌由静止的、孤立的观点看待问题。

(2)理论知识抽象。要完整地构造一个编译系统并不是一件容易的事情,它不仅需要具有较完备的软件知识,并需要掌握现有的软件工具的使用,而且更重

要的是要有丰富的实践经验,了解硬件系统结构和操作系统的功能。这些对于刚学完基础知识的我们来讲,简直如同“天书”,理解难度系数相当大。

(3)算法的理解和实现。软件编译技术这门课包含许多理论知识和算法,这些理论的学习和理解都存在着一定的难度。其中理论知识包括:词法分析器的构造,语法中各种分析器(LR, LL,SLR,LALR等)实现与完成。

六、关于实践

软件编译技术的课程毕竟还只是讲解原理的课程,不是专门的编译技术课程。这两门课程是有很大的区别的。编译技术更关注实际的编写编译器过程中运用到的技术,而原理的课关注讲解其基本理论。但是计算机科学本身就是一门实践性很强的课程,如果能够学以致用,那才叫真正的学会。李阳在讲解疯狂英语的时候就说到,只要当会实际中运用一个单词一个词组的时候才能叫学会了这个单词或者词组,而不是只是知道了它的拼写和意思。其实任何学习都是一样的,如果缺少了实践的结合,不能算学会。

软件编译技术的课程主要就是讲解编译器产生的理论和原理,那么很简单,自己写个编译器就是最好的实践过程了。不过得小心,编译系统可能是所有软件系统中最复杂的系统之一, 不然为什么大学里面还会把编译器的编写开成一门叫做软件编译技术的课程来讲?我很佩服那些学了操作系统原理就开始自己写操作系统,学了软件编译技术就开始自己写编译器的人们,确实,在中国,敢这么做的我们太少了。且不管这样做能不能做成功,至少有了这个尝试,会让的程序设计,系统规划安排的功底增进不少。

做解释型语言比做生成机器代码的编译器简单。虽然说,做解释型的编译器,像Java 那样的,还得自己去写解释器,不过这样就不必去查找机器代码的资料了。如果做生成的最终机器代码编译器可能会遇到问题还有就是寄存器为基础的代码生成方法。前面说过,如果生成的是以堆栈为基础的代码,那么其代码生成过程十分简单,需要考虑的东西也不多,如果考虑最终的机器代码生成的话,必须考虑机器的寄存器如何分配等麻烦的问题。

考虑用别人已经生成的语法文件,尽量不要自己动手写词法文件和语法文件. 以前一个朋友曾经说过, 写出一个好的程序语言的语法定义, 就几乎完成了一个编译器的一半. 确实是这样, 语法文件的编写是个很难的事情. 现在网上到处都可以找到比如C 语言,C++,Java, Tiny C,Minus C等语言的词法文件和语法文件, 完全可以自己下下来来用. 在《软件编译技术及实践》的书中,作者给出了一个Tiny C 的全部代码. 我自我感觉作者的这个编译器做得很不错, 相对于其它php,perl 等语言的源代码来说, 简单得多, 容易看懂, 而且很清晰地展现了一个完成的编译系统的实现过程. 其源代码可以在作者的网站上下载.

结束语:

学本身就是一门实践性很强的课程,如果能够学以致用,那才叫真正的学会。李阳在讲解疯狂英语的时候就说到,只要当会实际中运用一个单词一个词组

的时候才能叫学会了这个单词或者词组,而不是只是知道了它的拼写和意思。其实任何学习都是一样的,如果缺少了实践的结合,不能算学会。

软件编译技术的课程主要就是讲解编译器产生的理论和原理,那么很简单,自己写个编译器就是最好的实践过程了。不过得小心,编译系统可能是所有软件系统中最复杂的系统之一, 不然为什么大学里面还会把编译器的编写开成一门叫做软件编译技术的课程来讲?我很佩服那些学了操作系统原理就开始自己写操作系统,学了软件编译技术就开始自己写编译器的人们,确实,在中国,敢这么做的我们太少了。且不管这样做能不能做成功,至少有了这个尝试,会让的程序设计,系统规划安排的功底增进不少。

软件编译技术论文

学号: 姓名: 班级:

摘要

软件编译技术是计算机及相关专业的一门重要专业课程,在计算机科学中有很重要的地位和作用,已被国内外高校列为计算机专业的主要课程。它主要介绍了高级程序设计语言编译程序构造的一般原理、基本设计方法、主要实现技术和一些自动构造工具。通过该课程的学习,对提高我们计算机软件素质,使我们真正认识计算机信息处理实质并综合运用所学的软件设计技术来分析问题等具有很大作用。

课程理论性与实践性都很强,我们在学习是普遍感到内容非常抽象,不易理解,内容多且繁琐,难以完整、全面地掌握软件编译技术的有关知识,更不用说灵活运用软件编译技术知识从事相关设计或应用于其他领域。虽然只有少数人从事编译方面的工作,但是这门课在理论、技术、方法上都对我们提供了系统而有效的训练,有利于提高软件人员的素质和能力。 在我们学习软件编译技术以前,都认为软件编译技术只能应用在写程序语言的编译器上, 觉得用处不大, 学习兴趣不高。而在后来的学习中,我们逐渐认识到计算机专业的我们,除了要会编写程序语言之外,还应该了解它是如何被计算机所识别,这才是真正并且透彻地学习软件。另外,编译器中每一个模块的编写,都能对我们的编程能力的提高有很大帮助。在今后若从事软件工程,这门课程也能够对编写程序有所帮助。

关键字:(1)语言和文法;(2)词法分析;(3)语法分析;(4)语义分析和中间代码生成;(5)代码优化和目标代码生成;

一、语言和文法

语言和文法部分的知识包括文法基本概念及文法的二义性。基本概念有文法定义、推导、句型、句子等等。二义性文法是通过画语法树的方法来证明。

二、词法分析

词法分析相对来说比较简单。可能是词法分析程序本身实现起来很简单吧,很多没有学过软件编译技术的人也同样可以写出各种各样的词法分析程序。不过软件编译技术在讲解词法分析的时候,重点把正则表达式和自动机原理加了进来,然后以一种十分标准的方式来讲解词法分析程序的产生。这样的做法道理很明显,就是要让词法分析从程序上升到理论的地步。

三、语法分析

等学到词法分析和语法分析时候,会出现这样的疑问:“词法分析和语法分析到底有什么?”就从编译器的角度来讲,编译器需要把程序员写的源程序转换成一种方便处理的数据结构(抽象语法树或语法树), 那么这个转换的过程就是通过词法分析和语法分析的。其实词法分析并非一开始就被列入编译器的必备部分,只是我们为了简化语法分析的过程,就把词法分析这种繁琐的工作单独提取出来,就成了现在的词法分析部分。

除了编译器部分,在其它地方,词法分析和语法分析也是有用的。比如我们在DOS,Unix,Linux 下输入命令的时候,程序如何分析输入的命令形式,这也是简单的应用。总之,这两部分的工作就是把不“规则”的文本信息转换成一种比较好分析好处理的数据结构。那么为什么软件编译技术的教程都最终把要分析的源分析转换成“树”这种数据结构呢?数据结构中有Stack, Line,List„这么多数据结构,各自都有各自的特点。但是Tree 这种结构有很强的递归性,也就是说我们可以把Tree 的任何结点Node 提取出来后,它依旧是一颗完整的Tree 。这一点符合我们现在软件编译技术分析的形式语言,比如我们在函数里面使用函树,循环中使用循环,条件中使用条件等等,那么就可以很直观地表示在Tree 这种数据结构上。同样,我们在执行形式语言的程序的时候也是如此的递归性。

在软件编译技术后面的代码生成的部分,就会介绍一种堆栈式的中间代码,我们可以根据分析出来的抽象语法树,很容易,很机械地运用递归遍历抽象语法树就可以生成这种指令代码。而这种代码其实也被广泛运用在其它的解释型语言中。像现在流行的Java,.NET ,其底层的字节码bytecode, 可以说就是这中基于堆栈的指令代码的。

关于语义分析,语法制导翻译,类型检查等等部分,其实都是一种完善前面得到的抽象语法树的过程。比如说,我们写C 语言程序的时候,都知道,如果把一个浮点数直接赋值给一个整数,就会出现类型不匹配,那么C 语言的编译器是怎么知道的呢?就是通过这一步的类型检查。像C++语言这中支持多态函数的语言,这部分要处理的问题就更多更复杂了。大部软件编译技术的教材在这部分都是讲解一些比较好的处理策略而已。因为新的问题总是在发生,旧的办法不见得足够解决。

四、语义分析和中间代码生成

关于本来说,作为一个编译器,起作用的部分就是用户输入的源程序到最终的代码生成。但是在讲解最终代码生成的时候,又不得不讲解机器运行环境等内容。因为如果不知道机器是怎么执行最终代码的,那么当然无法知道如何生成合适的最终代码。

这部分内容我自我感觉其意义甚至超过了软件编译技术本身。因为它会把一个计算机的程序的运行过程都通通排在面前,将来可能不会从事编译器的开发工作,但是只要是和计算机软件开发相关的领域, 都会涉及到程序的执行过程。运行时环境的讲解会让更清楚一个计算机程序是怎么存储,怎么装载,怎么执行的。

关于部分的内容,我建议大家看看龙书上的讲解,作者从最基本的存储组织,存储分配策略,非局部名字的访问,参数传递,符号表到动态存储分配(malloc,new)都作了十分详细的说明。这些东西都是我们编写平常程序的时候经常要做的事情,但是我们却少去探求其内部是如何完成。 关于中间代码生成,代码生成, 代码优化部分的内容就实在不好说了。国内很多教材到了这部分都会很简单地走马观花讲过去,我们听了也只是作为了解,不知道如何运用。不过这部分内容的东西如果要认真讲,单独开一学期的课程都讲不完。

在《软件编译技术及实践》的书上,对于这部分的讲解就恰到好处。作者主要讲解的还是一种以堆栈为基础的指令代码,十分通俗易懂,让人看了后,很容易模仿,自己下来后就可以写自己的代码生成。当然,对于其它代码生成技术,代码优化技术的讲解就十分简单了。如果要仔细研究代码生成技术,其实另外还有本叫做《Advance Compiler Desgin and Implement》, 那本书现在由机械工业出版社引进的,十分厚重,而且是英文原版。不过这本书我没有把它列为推荐书给大家,毕竟能把龙书的内容搞清楚,在中国已经就算很不错的高手了,到那个时候再看这本《Advance Compiler Desgin and Implement》也不迟。代码优化部分在大学本科教学中还是一个不太重要的部分,就是算是实践过程中,相信大家也不太运用得到。毕竟,自己做的编译器能正确生成执行代码已经很不错了,还谈什么优化呢?

五、代码优化和目标代码生成

最后,优化分为局部优化和循环优化,重点理解一些关键词,如基本块、流图等,要学会自己画出程序流图。用DAG 图进行局部优化是重点。

软件编译技术课程的学习是我们可以对程序设计语言的设计和实现有深刻的理解,还可以有助于我们快速理解定位和解决在程序编译、测试与运行中出现的问题。

(1)编译程序规模大。由于软件编译技术是一个极其复杂的系统,程序规模大,导致不可能在一节课或一段时间讲述完,只好将它肢解开来一部分一部分地研究,但是这样容易造成知识体系断裂。不可能在短时间让我们对整个编译系统各部分融会贯通,理清各部分逻辑关系的顺序。我们学习过程中应该注意前后联系,切忌由静止的、孤立的观点看待问题。

(2)理论知识抽象。要完整地构造一个编译系统并不是一件容易的事情,它不仅需要具有较完备的软件知识,并需要掌握现有的软件工具的使用,而且更重

要的是要有丰富的实践经验,了解硬件系统结构和操作系统的功能。这些对于刚学完基础知识的我们来讲,简直如同“天书”,理解难度系数相当大。

(3)算法的理解和实现。软件编译技术这门课包含许多理论知识和算法,这些理论的学习和理解都存在着一定的难度。其中理论知识包括:词法分析器的构造,语法中各种分析器(LR, LL,SLR,LALR等)实现与完成。

六、关于实践

软件编译技术的课程毕竟还只是讲解原理的课程,不是专门的编译技术课程。这两门课程是有很大的区别的。编译技术更关注实际的编写编译器过程中运用到的技术,而原理的课关注讲解其基本理论。但是计算机科学本身就是一门实践性很强的课程,如果能够学以致用,那才叫真正的学会。李阳在讲解疯狂英语的时候就说到,只要当会实际中运用一个单词一个词组的时候才能叫学会了这个单词或者词组,而不是只是知道了它的拼写和意思。其实任何学习都是一样的,如果缺少了实践的结合,不能算学会。

软件编译技术的课程主要就是讲解编译器产生的理论和原理,那么很简单,自己写个编译器就是最好的实践过程了。不过得小心,编译系统可能是所有软件系统中最复杂的系统之一, 不然为什么大学里面还会把编译器的编写开成一门叫做软件编译技术的课程来讲?我很佩服那些学了操作系统原理就开始自己写操作系统,学了软件编译技术就开始自己写编译器的人们,确实,在中国,敢这么做的我们太少了。且不管这样做能不能做成功,至少有了这个尝试,会让的程序设计,系统规划安排的功底增进不少。

做解释型语言比做生成机器代码的编译器简单。虽然说,做解释型的编译器,像Java 那样的,还得自己去写解释器,不过这样就不必去查找机器代码的资料了。如果做生成的最终机器代码编译器可能会遇到问题还有就是寄存器为基础的代码生成方法。前面说过,如果生成的是以堆栈为基础的代码,那么其代码生成过程十分简单,需要考虑的东西也不多,如果考虑最终的机器代码生成的话,必须考虑机器的寄存器如何分配等麻烦的问题。

考虑用别人已经生成的语法文件,尽量不要自己动手写词法文件和语法文件. 以前一个朋友曾经说过, 写出一个好的程序语言的语法定义, 就几乎完成了一个编译器的一半. 确实是这样, 语法文件的编写是个很难的事情. 现在网上到处都可以找到比如C 语言,C++,Java, Tiny C,Minus C等语言的词法文件和语法文件, 完全可以自己下下来来用. 在《软件编译技术及实践》的书中,作者给出了一个Tiny C 的全部代码. 我自我感觉作者的这个编译器做得很不错, 相对于其它php,perl 等语言的源代码来说, 简单得多, 容易看懂, 而且很清晰地展现了一个完成的编译系统的实现过程. 其源代码可以在作者的网站上下载.

结束语:

学本身就是一门实践性很强的课程,如果能够学以致用,那才叫真正的学会。李阳在讲解疯狂英语的时候就说到,只要当会实际中运用一个单词一个词组

的时候才能叫学会了这个单词或者词组,而不是只是知道了它的拼写和意思。其实任何学习都是一样的,如果缺少了实践的结合,不能算学会。

软件编译技术的课程主要就是讲解编译器产生的理论和原理,那么很简单,自己写个编译器就是最好的实践过程了。不过得小心,编译系统可能是所有软件系统中最复杂的系统之一, 不然为什么大学里面还会把编译器的编写开成一门叫做软件编译技术的课程来讲?我很佩服那些学了操作系统原理就开始自己写操作系统,学了软件编译技术就开始自己写编译器的人们,确实,在中国,敢这么做的我们太少了。且不管这样做能不能做成功,至少有了这个尝试,会让的程序设计,系统规划安排的功底增进不少。


相关文章

  • 编译原理课程教学研究
  • [摘 要]目前的编译原理课程的教学中存在以下问题:1.教学内容偏重于原理:2.实验内容的语言不合理:3.实践环节太薄弱.针对此做出了如下的改变:1.区分不同层次的学生合理组织教学:2.灵活应用多种教学方法:3.加强学生动手能力. [关键词] ...查看


  • 软件文档写作宿舍管理系统
  • 辽 宁 工 业 大 学 实训报告 题目: 宿舍管理系统软件文档 院(系): 软件学院 专业班级: 电子商务112班 学 号: 111401049 学生姓名: 傅 瑶 指导教师: 闫海龙 教师职称: 助 教 起止时间: 2013.12.03- ...查看


  • 智能抢答器设计
  • 能力拓展训练 题 目 学 院 专 业 班 级 姓 名 指导教师 智能抢答器设计 2013年6月24日 能力拓展训练任务书 学生姓名: 专业班级: 指导教师: 工作单位: 自动化学院 题 目: 智能抢答器设计 初始条件:计算机.Max+plu ...查看


  • 流水灯设计
  • 新能源与动力工程学院 课程设计报告 单片机系统课程设计 专 业: 班 级: 姓 名: 学 号: 指导教师: 2014年 7 月 新能源与动力工程学院课程设计任务书 课程名称: 单片机系统课程设计 指导教师(签名): 班级: 姓名: 学号: ...查看


  • 计算机专业课程表
  • 2007计算机科学与技术专业教学计划 一.培养目标 本专业培养适应海峡西岸经济区,尤其是厦门市经济建设与社会发展需要,具有良好的科学素养,系统扎实地掌握计算机科学与技术基本理论.基本知识和基本技能与方法,符合计算机发展规律要求,能综合运用知 ...查看


  • 2016编译原理课程设计心得体会 2篇
  • 2016编译原理课程设计心得体会 2篇 经过一个星期的编译原理课程设计,本人在刘贞老师的指导下,顺利完成该课程设计.通过该课程设计,收获颇多. 一.对实验原理有更深的理解 通过该课程设计,掌握了什么是编译程序,编译程序工作的基本过程及其各阶 ...查看


  • [机电控制系统仿真与软件设计]
  • 机械与车辆学院 <机电控制系统仿真与软件设计> 报告 (2014-2015学年第一学期) 课程设计题目:水塔水位机电控制系统设计与仿真 一.课程设计性质和目的 机械电子工程专业是一个对实践.应用能力要求很强的专业,机电控制系统设 ...查看


  • 微机原理与汇编程序
  • 微机原理与汇编技术 课程设计(论文) 图形变换程序设计 院(系)名称 专 学 学 指 生导 姓教业 班 级 号 名 师 电子与信息工程学院 计算机科学与技术 120401 教授 起 止 时 间: 2014.12.15-2014.12.26 ...查看


  • 交通灯课程设计内容
  • 硬件大型实验周设计说明书11.1引言设计背景 自从 1886 两个德国人发明了第一辆汽车交通灯改变了交通路况,交通问题也渐渐被人们所重视.从英国伦敦街头的第一个以燃煤气为光源的红,蓝两色的机械 扳手式信号灯,到现在以电为光源的红黄绿三色交通 ...查看


热门内容