第一范文网 - 专业文章范例文档资料分享平台

东北大学编译原理实验报告材料二

来源:用户分享 时间:2025/8/2 20:08:57 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

实用文档

void Error() //出错函数 {

cout<<\语法错误\}

void T(void) //子程序T {

F(); //进入子程序F if(ch=='*') { i++; ch=str[i];

T();} //递归子程序T }

void F(void) //子程序F { if(ch=='(') {

i++; ch=str[i];

E(); //回到子程序E if(ch==')') { i++; ch=str[i]; }

else {Error();a=0;} }

else if((ch>='0'&&ch<='9')||(ch>='a'&&ch<='z')) { i++; ch=str[i]; } else { Error(); a=0; } }

void E(void){ //子程序E T(); if(ch=='+') { i++;

ch=str[i];

标准

实用文档

E(); //递归子程序E } }

int main() //主函数 {

system(\

cout<<\

cout<<\ 输入表达式以#号结束 |\cout<<\cin>>str; ch=str[0];

while(ch!='#') { E(); if(!a) break; }

if((ch=='#') && ( a != 0)) //遇#且a不等于零时语法正确 cout<<\语法正确\return 0; }

程序运行结果:(截屏)

LL(1)分析法:

标准

实用文档

递归下降:

思考问题回答:

语法分析的任务是什么?

语法分析的任务是在词法分析的基础上将单词序列组合成各类语法短语,语法分析程序判断源程序在结构上是否正确。通过接受词法分析程序识别出来的单词符号串,判断它们是否由某种语言的文法产生,即判断被识别符号串是否为某语法成分,同时进行语法检查,为后面的语义分析和代码生成作准备。

标准

搜索更多关于: 东北大学编译原理实验报告材料二 的文档
东北大学编译原理实验报告材料二.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c271172cnmb8jj329nz0t2wkqq4mjdl00m3q_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top