有人可以用非专业人士的说法解释:
什么是无上下文语法?
Backus Naur表格是什么?
如何使用这种表示法?
如何进行字符串派生?
如何描述语言语法?
答案 0 :(得分:6)
无上下文语法(CFG)G是四元组(V,Σ,R,S)其中
CFG示例:
据我了解,Backus Naur Form(BNF)是另一种表示Context Free Grammar(CFG)中显示的事物的方式
BNF的例子:
[number] :: = [digit] | [编号] [数字]
[digit] :: = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
可以读作以下内容: “数字是一个数字,或任何数字后跟一个额外的数字” (这是一种扭曲但精确的方式,表示数字由一个或多个数字组成) “一个数字是字符0,1,2,...... 9中的任何一个”
的差:强> 的
这两种表示的符号有点不同,i-e
- > equals :: =
|等于或
必须有其他一些差异,但说实话,我不知道其他任何差异:)
字符串派生:
让S成为开始的“符号
字符串派生示例:
这个语法是否生成字符串000111?
是的,它确实!
这一切都在我身边,我也正在努力,如果我开始了解有关定义语言语法的详细信息,我一定会分享。
喝彩!
答案 1 :(得分:4)
无上下文语法是一种形式语言。
Backus Naur形式是这种语法的规范语言。它用于描述语言语法
你应该阅读:
http://en.wikipedia.org/wiki/Formal_language_theory
http://en.wikipedia.org/wiki/Context-free_grammar
http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form