一个编译原理的问题
创始人
2025-06-25 22:40:41
0
一个编译原理的问题书上说了个终结首符集FIRST(a)还有一个FOLLOW(A)这个follow是什么集合这两个集合的交集是什么意思麻烦大神用通俗的语言解析一下谢谢
First(α) 是符号串α的开始符号集合。
也就是说,用推导的方法对α进行推导,一次次地使用产生式,用产生式右部的符号串替换一个非终结符,所有那些可能出现在第一个符号位置的终结符,就构成了开始符号集。
比如,在C语言中,对于符号串“语句”来说,标识符(赋值语句)、if(条件语句)、printf(输出函数)这些单词(终结符)都是它开始符号集合中的元素,而+(加号)、}(右花括号)不可能出现在“语句”的开头,所以不是它的开始符号集合中的元素。

Follow(A)是非终结符A的后跟符号集合。
它是指在所有可能的句型中,一切可能出现在非终结符A后面的一个终结符。
这里要特别注意是在“句型”中。

你可以自己举例,比如分析一下C语言中“表达式”后面可能跟哪些单词,它们就是非终结符“表达式”后跟符号集合中的元素。

你说的这两个集合的交集问题不存在。
因为它们针对的是不同类型的对象(一个是符号串,另一个是某个非终结符)。
实际上,在选择集合问题中,考虑的不是它们的交集,而是一个产生式右部符号串的First集跟这个产生式左端非终结符的Follow集的并集。

考虑交集的,发生在相同左部的不同产生式的选择集合之间。

相关内容

热门资讯

原创 东... 心悸心慌是临床常见病症,李成卫主任在其著作《心悸诊治精要》中明确指出:"治心慌不能只见'心'而不见'...
怎么样才算是极品男人?真有这样... 你有没有想过,一个真正完美的男人,到底是什么样子?在社交平台上,关于‘极品男人’的讨论从未停止。有人...
甲状腺疾病与老年心理健康 人生暮年本应闲适,甲状腺疾病却可能悄然打破平静。这一重要内分泌器官的功能异常,不仅引发身体不适,更与...
贯彻全会精神 云岭一线见闻|云... 亿万年地质变迁造就的奇观,彝族撒尼人世代传唱的阿诗玛文化,北纬24°的“天然氧吧”馈赠——这是世人熟...
粤黔山海牵手 贵州在穗发布“小... 中新网广州12月19日电 (记者 王坚)旅游资源丰富的贵州,近年来文旅产业发展迅速,作为贵州旅游最主...