资源简介
能够根据单词的构词规则,完成MiniC语言中的单词的解析(词法分析),如果不符合单词的构词规则,请给出错误信息。如果源语言符合单词的词法规则,请输出二元式。
(注:利用JavaCC实现)
在词法分析的基础上,构造MiniC的LL(1)文法,利用JavaCC实现LL(1)文法,判断源语言是否符合MiniC的语法,如果不符合,请给出语法错误信息。
在语法分析的基础上,根据属性文法制导翻译,进行语义分析,输出四元式。如果源语言不符合MiniC的语义,请指出错误信息。
在平时实习课的基础上,整个编译系统要能够翻译数组(二维)翻译,if..else, for, while,赋值
代码片段和文件信息
#include
#include
void main()
{
int ab=2c=5d=6i=1j=2;
int e[2][3]={{253}{832}};
char s;
scanf(“%d%c“&a&s);//input Statement
a=1+2*(c+4*(5+6*(b+8)))+123;
b=e[1][1];
/*
while(a>3)
{
i++;
j--;
*/
while(aa>3)//while statement
{
i++;
--j;
do{
for(i=2;i<5;i++)
{
switch(a+3)
{
case 1:
{
printf(“%c“s);
}
break;
case 2:
break;
case 3:
break;
default:
c%=2;
break;
}
while(d>3&&c<2||j>1)
{
a*=b+c;
++a;
for(j=5;j>0;j--)
{
c+=5+e[1][0];
}
}
printf(“%d%d%c“abs);
}
}
while(i>2&&j<5);
}
if(a{
for(i=10;i>0;i--)
{
if(a>3)
c=e[1][2];
else if(d>2)
{
d=d+3*4;
}
else
c*=2;
}
}
else if(c*5==d)
{
while(d+2>c%3)
{
a=e[0][0];
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 301 2011-01-12 22:57 Bianyi\.classpath
文件 384 2011-01-14 11:40 Bianyi\.project
文件 629 2011-01-12 22:57 Bianyi\.settings\org.eclipse.jdt.core.prefs
文件 41392 2012-01-06 17:11 Bianyi\bin\bianyi.class
文件 53190 2011-01-14 11:37 Bianyi\bin\bianyi.jj
文件 27640 2011-01-14 15:23 Bianyi\bin\bianyi.jjt
文件 3999 2012-01-06 17:11 Bianyi\bin\bianyiConstants.class
文件 15914 2012-01-06 17:11 Bianyi\bin\bianyiTokenManager.class
文件 1904 2012-01-06 17:11 Bianyi\bin\bianyiTreeConstants.class
文件 2590 2012-01-06 17:11 Bianyi\bin\JJTbianyiState.class
文件 2481 2012-01-06 17:11 Bianyi\bin\MyNode.class
文件 304 2012-01-06 17:11 Bianyi\bin\Node.class
文件 1658 2012-01-06 17:11 Bianyi\bin\NodeList.class
文件 3527 2012-01-06 17:11 Bianyi\bin\ParseException.class
文件 881 2012-01-06 17:11 Bianyi\bin\Record.class
文件 8235 2012-01-06 17:11 Bianyi\bin\SimpleCharStream.class
文件 2736 2012-01-06 17:11 Bianyi\bin\SimpleNode.class
文件 1055 2012-01-06 17:11 Bianyi\bin\Token.class
文件 2757 2012-01-06 17:11 Bianyi\bin\TokenMgrError.class
文件 8429 2011-01-14 15:23 Bianyi\Grammertree.txt
文件 4088 2012-01-05 16:20 Bianyi\Lexical_analysis.txt
文件 0 2012-01-05 16:20 Bianyi\Semantic_analysis.txt
文件 76091 2011-01-14 11:37 Bianyi\src\bianyi.java
文件 53190 2011-01-14 11:37 Bianyi\src\bianyi.jj
文件 27640 2011-01-14 15:23 Bianyi\src\bianyi.jjt
文件 5010 2011-01-14 11:37 Bianyi\src\bianyiConstants.java
文件 33074 2011-01-14 11:37 Bianyi\src\bianyiTokenManager.java
文件 1578 2011-01-14 11:37 Bianyi\src\bianyiTreeConstants.java
文件 3331 2011-01-14 11:37 Bianyi\src\JJTbianyiState.java
文件 1736 2011-01-12 22:58 Bianyi\src\MyNode.java
............此处省略17个文件信息
- 上一篇:端口扫描器的设计与实现 课程设计
- 下一篇:java 银行管理系统
相关资源
- 编译原理课程设计-java版
- 编译原理 C、Java语言词法分析器java实
- 广州大学编译原理实验报告1-3.zip
- 用Java实现的基于SNL语言的词法分析与
- 编译原理实验 词法分析设计 MFC
- 语义分析—编译原理
- java编写的算符优先分析法分析器
- 华中科技大学 编译原理 面向过程的
- 山东大学编译原理实验报告含代码
- Compiler_mean3tmp.rar
- 西安交通大学编译原理实验代码及报
- 编译原理第3版[刘铭][实验程序源代码
- 用Java做编译原理正规式转换成NFA.ra
- 编译原理课程设计含报告和可运行源
- 词法分析器实现java和c++
- 语法分析器Java语言编写附实验报告
- java开发的基于LL1文法的语法分析器
- 编译原理课程设计(附报告和可运行
- 现代编译原理虎书,包含c版和java版中
- 现代编译器的Java实现.(美)Andrew.W
- 编译原理java实现所需jar包-个人博客文
- 编译原理-虎书-龙书-鲸书
- C语言词法分析器(Java版.带界面)
- LL1语法分析代码有详细解释,压缩包
- java编写的LR语法分析器编译原理实验
- java实现的语法分析程序
- 词法分析器Java语言编写附实验报告
- JAVA 编译原理 SLR(1)算法模拟器
- Java实现具有词法匹配、语法分析和中
- java 中间代码生成 编译原理
评论
共有 条评论