免费ppypp网站唐山做企业网站
web/
2025/10/7 18:45:13/
文章来源:
免费ppypp网站,唐山做企业网站,基于python网站开发,上海到北京多远题目说明#xff1a;
语法定义涉及数字、括号和运算符和-的表达式的语法。起始符号为Expression。一个表达式应该对应于以下之一#xff1a;一个数字标记Expression ExpressionExpression - Expression- Expression( Expression ) level help
通过语法来描述高级语言的…题目说明
语法定义涉及数字、括号和运算符和-的表达式的语法。起始符号为Expression。一个表达式应该对应于以下之一一个数字标记Expression ExpressionExpression - Expression- Expression( Expression ) level help
通过语法来描述高级语言的语法。语法是一组规则其中每个规则命名语法的一部分
并定义了它如何组成。例如这是一个非常简单的语法
用于允许两个数字相加如“2 2”Expression → Number Number
Number和是在标记定义阶段定义的标记。
此语法将允许任意两个数字的加法
但不会允许多次加法如2 3 4。
为了支持任意多次加法我们使用引用自身的规则Program → Expression
Expression → Expression Number
Expression → Number
此语法将允许无限次加法
因为左边的Expression本身可以是加法。**术语**
语法中使用的术语称为符号。
规则定义了一个符号箭头左侧
由一个或多个其他符号箭头右侧组成。
箭头右侧的符号要么是通过标记规范在前一步中定义
定义的标记
要么是由同一语法中的规则定义的符号本身。代表标记的符号如Number和称为终结符
像Program和Expression这样由语法中
其他规则定义的符号称为非终结符。用作非终结符号的名称是任意的 - 您可以使用对您有意义的名称。
唯一的条件是必须有一个“起始符号”称为Program
它表示整个程序。**解析算法**
在这个级别上我们不编写实际的解析器
该解析器根据语法规则处理源文本并生成语法树。
解析器算法是计算机科学的一个整个分支
超出了本游戏的范围。
也就是说最简单的解析器形式
递归下降解析器易于编写并且对于大多数目的而言已经足够了。
如果您想探索编写自己的解析器这是一个很好的起点。本游戏使用Earley解析器它不是最快的解析器
但它灵活且易于编写语法。Grammar 语法规则
Specify the rules for parsing the token into a syntax tree.
On the left is the name of a production.
On the right is one or more names of productions or tokens
指定将标记解析为语法树的规则。
左侧是产生式的名称。
右侧是一个或多个产生式或标记的名称。The syntax tree of the source code parsed by the grammar.
源代码由语法解析生成的语法树。最终题目期望的答案如下 需要注意的是 Expression 与 符号 之间记得加空格。
根据错误提示 Error when parsing ‘8 (-4)’. Parse error: Unexpected ‘(’ 把 Expression ( - Expression ) 穷举出来。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88627.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!