![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
03. 人工智能
文章平均质量分 78
hifrog
技术码农,做Solaris内核协议栈中网络新特性研发。
展开
-
算术表达式的自上而下语法分析及其实现(中)
(接上篇)3. 产生式函数的改进前两节我们已经实现了自上而下语法分析算法和产生式函数的构造,在这一节,我着重阐述对产生式函数的运行效率和占用空间进行优化的方法。首先考察一下产生式E -> T+E | T-E | T的分析函数:void E_AddSub(){ T_MulDiv(); //调用非终结符T的产生式函数分析T If(ch==’+原创 2004-01-30 19:22:00 · 3429 阅读 · 6 评论 -
算术表达式的自上而下语法分析及其实现(上)
学过编译原理的同学大概都知道对一个句子进行自上而下语法分析的方法。我参考了陈火旺院士的《高级程序设计语言编译原理》,在这篇文章里我主要是站在编译原理的角度讲述一种语法分析程序的实现的方法,通过对一个典型的例子——算术表达式的分析,从而使大家了解构造一个实用的语法分析程序的方法,同时,也为广大程序员提供一种解决实际问题的思路。本文包括以下内容:1. 算术表达式的产生式;2. 自上而下语法分析的算原创 2004-01-30 19:22:00 · 6499 阅读 · 10 评论 -
算术表达式的自上而下语法分析及其实现(下)
(接中篇) 5. 自上而下语法分析程序的实现 经过上面4步精心的准备,最令人激动的时刻到了。一般《编译原理》课本上的代码大都是无法在机器上运行的伪代码,在这里,你将要看到的是一个实用的可以检查错误的可以执行求值的基于自上而下语法分析算法的计算算术表达式的程序。 不失一般性,我们规定算术表达式只可以进行整数的四则运算(含括号),这样我们需要扩充下面3个函数: int E_AddSub();原创 2004-01-30 19:22:00 · 4952 阅读 · 12 评论 -
[C++][源代码]后缀表达式转化为前缀表达式
撰文/周翔本人开源代码页:http://blog.csdn.net/hifrog/category/131301.aspx功能:用户输入一个字符串,判断这个字符串是否是后缀表达式,并把它转化为前缀表达式,并显示。原理:利用S属性文法的制导翻译生成语法树节点,其中该语法树为二叉树。非叶节点保存运算符,叶节点保存数字或变量。制导翻译公式请参考《编译原理》(高等教育出版社,陈意云著,2003年版)一书。原创 2005-07-31 23:11:00 · 3009 阅读 · 1 评论