终结符与非终结符

✍ dations ◷ 2025-07-03 14:19:44 #终结符与非终结符

终结符和非终结符在计算机科学和语言学的领域是用来指定推导规则的元素。在某个形式语法之中,终结符和非终结符是两个不交的集合。

是一个形式语言的基本符号。就是说,它们能在一个形式语法的推导规则的输入或输出字符串存在,而且它们不能被分解成更小的单位。确切地说,一个语法的规则不能改变终结符。例如说,下面的语法有两个规则:

在这种语法之中,是一个终结符,因为没有规则可以把变成别的符号。不过,有两个规则可以把变成别的符号,所以是非终结符。一个形式语法所推导的形式语言必须完全由终结符构成。

非终结符是可以被取代的符号。一个形式文法中必须有一个起始符号;这个起始符号属于非终结符的集合。

在上下文无关文法中,每个推导规则的左边只能有一个非终结符而不能有两个以上的非终结符或终结符。并非所有的语言都可以被上下文无关文法产生。

一种语法的定义由推导规则构成。每个规则规定什么词位可以重写为什么别的词位。这些规则可以用来剖析字符串,也可以用来产生字符串。每个规则有左边和右边。左边有可以被取代的字符串,而右边有可以取代左边的字符串。规则的写法一般为左边 {displaystyle rightarrow } 右边。比如,z0 → z1 这个规则规定 z0 可以重写为 z1。左边为一个非终结符,但是右边不一定是个终结符。

下面的形式文法代表一个整数。整数可能是有符号,就是说,可能是负数。下面使用巴科斯范式的变种来表示:

<integer> ::=  <digit> {<digit>}<digit> ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'

在这个例子之中,符号 (-,0,1,2,3,4,5,6,7,8,9) 都是终结符,而 <digit> 和 <integer> 都是非终结符。

相关

  • 火腿火腿(英语:Ham),是经过盐渍、烟熏、发酵和干燥处理的腌制动物后腿,一般用猪后腿。或是以猪、牛肉的肉泥,添加淀粉与食品添加剂,压制而成的“三明治火腿”。营养成分主要为蛋白质、
  • 玉山南峰玉山南峰标高3,844米,日治时期名为南山、新高南山,行政区属于高雄市桃源区梅山里。自主峰远眺,山棱蜿蜒,状似游龙,台湾登山家刑天正称其为天龙峰,在某些地图上会注记为玉山三叉峰
  • 第一波士顿瑞士信贷第一波士顿(Credit Suisse First Boston,缩写:CSFB),是瑞士信贷集团的投资银行部门。其母公司瑞士信贷集团是瑞士第二大的银行,仅次于它的长期竞争对手“瑞士联合银行”(UB
  • 支序图分支图(英语:cladogram),也作支序图,是指支序分类学中用于展示生命体互相之间的关系的图表。不过,分支图并不是系统发生树,因为分支图既不展示生物与其祖先的关系,也不展示生物的演
  • 埃米尔·塞纳尔埃米尔·塞纳尔(法语:Émile Charles Marie Senart,1847年3月26日-1928年2月21日),法国印度学家、法兰西文学院院士(1882)、法国亚洲协会会长(1908-1928)、法国东方朋友联谊会创始人(19
  • 2014年罗马尼亚总统选举特拉扬·伯塞斯库 民主自由党克劳斯·约翰尼斯 国家自由党2014年罗马尼亚总统选举举行了两轮,在11月2日和11月16日。分别有14个候选人参加总统竞选,为1996年选举以来的最高人
  • 李子方 (消歧义)李子方可以指:
  • 2006年6月逝世人物列表2006年逝世人物列表:1月 - 2月 - 3月 - 4月 - 5月 - 6月 - 7月 - 8月 - 9月 - 10月 - 11月 - 12月下面是2006年6月逝世的知名人士列表:
  • 国际主义设计风格国际主义设计风格(英语:International Typographic Style),又称为瑞士风格(Swiss Style),是1920年代在俄罗斯、荷兰、德国萌芽,最终于1950年代在瑞士兴起的一种平面设计风格。作为现
  • 雅科波·蒂西 雅科波·蒂西(意大利语:Jacopo Tissi,1995年2月13日-)是一名意大利芭蕾舞者。他早年曾在维也纳国家芭蕾舞团(英语:Vienna State Ballet)与斯卡拉剧院芭蕾舞团(英语:La Scala Theatre Ballet)担任舞者,后于2016年加入俄罗斯莫斯科的波修瓦芭蕾舞团(英语:Bolshoi Ballet)。蒂西在2021年12月成为波修瓦芭蕾舞团的首席舞者,是该舞团历史上少数担任此职的外国舞者。但因为俄罗斯入侵乌克兰,蒂西宣布辞去该职务并离开波修瓦芭蕾舞团。他将在20