定义

非终结符X属于NULLABLE集合,当且仅当:

基本:X → ε

归纳:X → Y1…Yn, 且Y1…Yn都是非终结符并且都属于NULLABLE集合

NULLABLE集合表示一个非终结符是否可以推出空串 ε 。

意义

属于NULLABLE意味着不用接受任何输入即可跳过该非终结符。

S → A B C | s
A → a | ε
B → C | a
C → c | εNULLABLE集合{A, C}            //第一轮,只有A,C可以推出空串
{A, C, B}            //第二轮,B可以推出C,然后可以推出空串,所以把B加到NULLABLE集合中
{A, C, B, S}            //第三轮,A,B,C都可以推出空串,所以S也可以推出空串

注意:当且仅当产生式右侧的式子均是非终结字符并且都可以推出 ε ,产生式左侧的非终结符才能加入到NULLABLE集合中。

编译原理中的NULLABLE集合相关推荐

  1. 编译原理中的first集,follow集和selec集的小解

    在看编译原理,对这些集合求法不是很明白,看了某个大神的博客,感觉懂了不少,现把自己的理解贴出来大家共享. 所有大写字母代表非终结符,小写字母代表终结符,省略号代表未知数目(可能为0)的不确定类型的文法 ...

  2. 编译原理中LL(1)分析程序的设计---用c++程序语言实现

    一.前言 作为当代大学生的我,我喜极而泣,最后一个编译原理实验报告了,这次是一个提高性实验报告.肝完这个,编译原理,这门课,再也没有实验报告了,我再也不要担心我没有头发了.行了,废话不多说,我直接呈现 ...

  3. 编译原理中LR(0)项目集规范族的构造

    本文转载自:  http://www.cnblogs.com/lazycoding/archive/2012/05/12/2497065.html 此文略长.我也没想到这写起来这么多,但对构造过程绝对 ...

  4. 编译原理中LL(1)文法求FIRST集和FOLLOW集的方法

    一.求FIRST集 1.右部首个字符是终结符则加入左部字符的FIRST集中,比如对形如U->a-的产生式(其中a是终结符),把a收入到FIRST(U)中. 2.右部首个字符是非终结符, 若此非终 ...

  5. 怎么求编译原理中的first集,follow集和selec集

    所有大写字母代表非终结符,小写字母代表终结符,省略号代表未知数目(可能为0)的不确定类型的文法符号. First集合: First集合顾名思义就是求一个文法符号串所可能推导出的符号串的第一个终结符的集 ...

  6. 【复习资料】编译原理中:短语,直接短语,句柄

    http://blog.csdn.net/it_dream_er/article/details/53612006 短语:一个句型的语法树中任一子树叶结点所组成的符号串都是该句型的短语. 直接短语:如 ...

  7. 微型计算机原理中LEA,微机原理lea指令什么意思_微机原理实训箱

    微机原理 8 关于指令系统 微机原理 8 关于指令系统 微机原理 数据传送指令 微机原理 数据传送指令 微机原理指令 解答 请帮我看看这几个指令设么意思 微机原理题目指令判断对错 int指令微机原理 ...

  8. 【错误记录】Kotlin 编译报错 ( Not nullable value required to call an ‘iterator()‘ method on for-loop range )

    文章目录 一.报错信息 二.解决方案 一.报错信息 Google Play 上架要求 Android 的编译版本 和 目标版本都要高于 30 才可以上传 ; 将 Android 的编译版本 和 目标版 ...

  9. java反编译工具_ReverseTool逆向工具集合

    反向工具 逆向工具集合 真棒骇客 Java和Jar(Android) jd-gui jar包浏览工具,对应的IDE插件,JD-Eclipse / JD-IntelliJ Luyten一个用于Procy ...

最新文章

  1. 下一代安全威胁的内幕故事
  2. 关于微信小程序的尺寸关系
  3. 企业网络运行中,您是否遇到如下问题?——Vecloud
  4. 最新综述:从多个角度介绍多模态对话信息搜索(MMCIS)任务
  5. 布朗大学和FAIR开源LA-MCTS,及其在神经网络结构搜索的应用
  6. Laravel-admin添加模型路由报错出现问题:Model does not exists !
  7. 记录下UIButton的图文妙用和子控件的优先显示
  8. 海量数据处理(一) :位图与布隆过滤器的概念以及实现
  9. Spring声明式事务示例
  10. 字节流复制视频比拼效率
  11. button捕捉回车键
  12. 每隔一段时间执行php_用php脚本,你如何定时更新商品列表
  13. Python把PDF文件中每页内容分离为独立图片文件
  14. GIS案例练习-----------第八天
  15. linux裁剪视频教程,适用于Linux桌面的超简单实用的视频裁剪应用
  16. 群晖(synology)日历与IPhone日历同步
  17. 生日祝福电子贺卡html5,电子生日祝福卡
  18. 搭档之家|新零售:社交电商的光明尽头
  19. Android的holder机制
  20. 2023电工杯数学建模B题思路分析

热门文章

  1. 如何减小电压跟随器输出电阻_外螺纹压电促动器FPSt150/7/120M14的应用分析
  2. 最新爱情经典语录 真爱一个人,就要尽量让他开心
  3. 运维日志 数据备份同步的几个方案
  4. Linux 修改文件(文件夹)的权限 chown 与 chmod
  5. R语言的ggplot2做数据可视化的一些推文合集(文末有福利)
  6. 牛顿插值法 matlab m文件,牛顿插值法matlab程序
  7. 读取json文件 ,将json文件放入数组中 , 将json的数组放到List中
  8. 软件功能测试类型之回归测试
  9. 100行代码教你教务系统自动抢课!
  10. PingCAP 入选 2022 Gartner 云数据库“客户之声”,获评“卓越表现者”最高分