关于编译原理的学习

能否通过编译原理的学习达到对C、C++编译器的透彻掌握呢?达到对语言本质更深刻的理解以及更加纯熟的使用?大家有什么好的建议、资料、教材?

第1个回答  2012-12-30
在未来的几年大学毕业后,我挖了一个编译器的理论书籍,然后买了一本类似的书,真正有用的。
无论是工作还是业余的,如果你要编译一个点稍微有一些智能的程序必须使用。大家都用正则表达式编译原理,它仅仅是一个小的应用实例。
应用程序可以做一些先进的技术,让您在行业中站稳脚跟。

语法分析可以用来分析它是否包含一些用户上传的代码,使您的网站更可靠。
分析和分解用户输入的SQL语句,了解它是否是危险和SQL注入。
结算业务软件允许用户输入条件表达式和四则运算,允许用户自定义结算公式或条件,使软件上了一个档次。
甚至可??以创建自己的编程语言,由于语言做编程后充分利用,然后编译成一个老板是什么样的语言。有些公司希望一些公司希望JAVA,C#,C + +,VB,等你并不需要各种麻烦。这样做还有一个好处,你因为语言对象的源代码是公认的开源社区,这样你就可以打开。然后,如果这项技术为核心技术,以开公司,具有技术上的先进性这个核心竞争力的更高水平的,是非常有价值的。
想象一下,您的公司的员工只有自我的语言,少的机会,他们就放弃了。你的用户总是可以得到一套完整的源代码,他们认为市场的机会是很大的。其他通用软件公司能不能给一套完整的源代码,始终保持那么一点点。
第2个回答  2012-12-31
在未来的几年大学毕业后,我挖了一个编译器的理论书籍,然后买了一本类似的书,真正有用的。
无论是工作还是业余的,如果你要编译一个点稍微有一些智能的程序必须使用。大家都用正则表达式编译原理,它仅仅是一个小的应用实例。
应用程序可以做一些先进的技术,让您在行业中站稳脚跟。

语法分析可以用来分析它是否包含一些用户上传的代码,使您的网站更可靠。
分析和分解用户输入的SQL语句,了解它是否是危险和SQL注入。
结算业务软件允许用户输入条件表达式和四则运算,允许用户自定义结算公式或条件,使软件上了一个档次。
甚至可??以创建自己的编程语言,由于语言做编程后充分利用,然后编译成一个老板是什么样的语言。有些公司希望一些公司希望JAVA,C#,C + +,VB,等你并不需要各种麻烦。这样做还有一个好处,你因为语言对象的源代码是公认的开源社区,这样你就可以打开。然后,如果这项技术为核心技术,以开公司,具有技术上的先进性这个核心竞争力的更高水平的,是非常有价值的。
想象一下,您的公司的员工只有自我的语言,少的机会,他们就放弃了。你的用户总是可以得到一套完整的源代码,他们认为市场的机会是很大的。其他通用软件公司能不能给一套完整的源代码,始终保持那么一点点。
第3个回答  2012-12-24
在这个问题上,在百度更加难以解释。

教科书的解决方案的详细规则。
这个问题,相关的一些规则,除非你上面列出的方程定义的分析方法是比较简单和直观的映射方法解决。

基本步骤如下:
1第一遍分析语法,生产,非终结符推出空字符串,这可不行。
这一步是非常重要的,不能错过。
2。扫描每个非终结符的制作,设置的第一个传递关系,获得了首发的方程组。
解决这个集合的方程,就可以得到第一次设置每个非终结符(开始符号集合)
扫描所有产生的右边部分,确定每个非终结符号出现在右部的情况,根据规则的后续集(由一组符号),确定后续集之间的关系(方程的集合),计算每个非终结符的后续集。

我不能说更多的细节必要的转录,都可以写在这里在百度公式绘制一个很好的例子。
第4个回答  2012-12-21
编译原理,包括语言和语法,词法分析,语法分析,语法的翻译,中间代码生成,存储管理,代码优化,目标代码的生成。
谈如何做的程序编译器。

需要的数学基础和较强的逻辑思维。字符

编译原理的关闭意味着有限的循环。这些条款的解释就关闭,你当然应该离散数学?将解释这些概念。

编译原理这本书。花老板看到它。每行是至关重要的。如果你忽视的什么部分,或许下一个字母不知道是什么意思。

所以看到重复,重复使用的逻辑思维审查。做练习,练习也有几种类型,熟很简单本回答被网友采纳
相似回答