形式语言jflap操作用户控制解析.docx

上传人:b****6 文档编号:8665900 上传时间:2023-02-01 格式:DOCX 页数:12 大小:297.16KB
下载 相关 举报
形式语言jflap操作用户控制解析.docx_第1页
第1页 / 共12页
形式语言jflap操作用户控制解析.docx_第2页
第2页 / 共12页
形式语言jflap操作用户控制解析.docx_第3页
第3页 / 共12页
形式语言jflap操作用户控制解析.docx_第4页
第4页 / 共12页
形式语言jflap操作用户控制解析.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

形式语言jflap操作用户控制解析.docx

《形式语言jflap操作用户控制解析.docx》由会员分享,可在线阅读,更多相关《形式语言jflap操作用户控制解析.docx(12页珍藏版)》请在冰豆网上搜索。

形式语言jflap操作用户控制解析.docx

形式语言jflap操作用户控制解析

用户控制解析

内容

介绍

受限制的语法的示例

无限制语法的示例

介绍

在以前版本的JFLAP中,对于给定的语法用户无法控制如何推导出一个特定的字符串。

用户依靠蛮力解析器以确定字符串是否被语法接受。

此外,蛮力解析器对于输入的字符串只显示一个推导或分析树。

用户控制解析,现在用户可以选择产生式来运用和执行解析。

受限制的语法的示例

我们将开始加载在前面的教程中输入的语法。

你可以输入文法(在下面显示)或者加载文件restrictedGrammar.jff。

点击Input,然后User Control Parse。

再点击User Control Parse后,你应该看到一个非常类似与Brute Force Parse的窗口。

现在您可以输入一个字符串,并通过选择生产规则来导出那个字符串。

输入字符串“aababb”,点击 Start或者按回车键。

根节点S将被绘制在树状面板中。

现在,点击你要应用的规则。

现在我们应用产生式“S->aSSb”,从左边的面板中点击产生式“S->aSSb”。

注意现在你已经点击Step。

点击Step后你的窗口应该如下:

注意:

在窗口的底部有一个消息,“导出当前字符串使用S-> aSSb产生式”。

这个消息告诉我们上一个产生式被应用。

现在有在我们的叶子中有两个变量中“S”。

如果我们不指定我们将应用哪一个S-产生式,错误信息将弹出。

假设我们希望将产生式“S->Bb” 应用到第一个S。

我们可以通过点击在窗格底部的字符串“aSSB”的最左边的变量S来指定我们要应用的关于S的哪个规则。

我们可以简单地点击最左边的S和点击产生式规则 “S->Bb”。

然后点击 Step。

现在我们已经将我们需要的产生式应用到我们字符串中的第一个S。

你的窗口现在应该看起来像:

现在,如果我们想应用产生式“B->a”到变量 “B”,我们可以点击这个产生式并点击 Step。

我们没有必要指明哪一个B去应用产生式,因为在字符串“aBbSb”只有一个B。

通过点击Previous你可以返回到到前一步骤,现在我们可以回到上一步骤的字符串“aSSb”。

假设我们想对于字符串中的“aSSb”所有S采用相同的产生式。

我们可以通过在面板底部点击两个S变量来获得,然后选择一个生产式规则 “S->Bb”。

然后点击Step,在这种情况下,两个产生式从左到右应用,但只有最后的结果示出。

注意:

当您在面板的底部选择多个项目,你只需要简单的点击。

没有必要Ctrl+click了,如果你想取消选择项目,只要点击该项目,它将不再被选择。

我们的新树看起来应该像这样:

在对两个变量B应用产生式“B->a”后,我们可以获得我们的输入字符串。

最终屏幕应该类似于下面其中一个:

无限制语法的示例

我们以加载在前面的教程中输入的语法为开始。

你可以输入文法(在蛮力解析 - 无限制语法教程中显示)或者加载文件unrestrictedGrammar.jff。

   在点击用户控制解析后,你可以输入字符串 “aabbcc”来解析。

你的窗口应该如下:

现在我们要运用三种产生式:

“S->AX”, “A->aAbc”, “A->aBbc”。

一次点击一个产生式和点击 Step。

经过三个步骤之后,你的窗口应该如下:

现在假设我们想应用产生式 “Bb->bB”。

由于只有一个 “Bb”出现在我国目前的字符串“aaBbcbcX”中,我们可以点击产生式并点击 Step。

然而如果在字符串中有多于一个的 “Bb”,我们不得不通过在面板底部点击所需的“Bb” 来指定他们。

在面板底部点击“Bb”后再应用产生式“Bb->bB”。

你的窗口应该如下:

我们可以继续应用更多的产生式来获得输入字符串。

然而这些步骤是相当漫长的,它是不包括在本教程中的(最终推到在蛮力解析-无限制语法教程网页中显示)。

我们就这样结束简短的关于用户控制解析教程。

感谢您的阅读!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1