资源简介
做的作业,pl0编译器,实现带参数传递,可以允许多层嵌套,包括词法分析,语法分析,语义分析,目标代码生成等。。

代码片段和文件信息
#include “MYPL0.h“
int main()
{
char str[] =“t1.txt“; //程序执行的文件
PL0 cp(str“nasm.txt“);
fstream f;
f.open(strios::in);
if(f.fail())
{
cout<<“文件读取失败“;
exit(0);
}
symset fsys;
int i;
char flag1flag2;
char ch;
cout<<“*****************************************************************************“< cout<<“**** 程序完成人:王立春,161110112 ***“< cout<<“**** 注:程序内置执行t1.txt程序 ***“< cout<<“**** 如果想打开其他程序,请在main中修改str[]变量为相应文件 ***“< cout<<“*****************************************************************************“<
fsys.insert(CONSTSYM)fsys.insert(VARSYM)fsys.insert(PROCSYM);
fsys.insert(BEGINSYM)fsys.insert(CALLSYM)fsys.insert(IFSYM)fsys.insert(WHILESYM);
cp.getsym(); // 词法分析,分析一个词
if(cp.checkProgram()) //检测程序入口program是否正确
{
cp.block(000fsys); // 分程序分析处理功能
cp.SaveCode(); // 保存代码
cout<<“是否输出pl0的源程序代码?“< cin>>flag2;
if(flag2==‘y‘||flag2==‘Y‘)
{
f.get(ch);
for(i=0;!f.eof();i++)
{
cout << ch ;
f.get(ch);
}
}
cout< cin>>flag1;
if(flag1==‘y‘||flag1==‘Y‘)
{
cp.listcode(0);
}
cp.interpret(); // 对目标代码的解释执行程序
}
else
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4415 2014-01-02 00:23 pl0编译器\PL0编译器\aaaaaaa.dsp
文件 539 2014-01-02 00:19 pl0编译器\PL0编译器\aaaaaaa.dsw
文件 58368 2014-01-09 23:42 pl0编译器\PL0编译器\aaaaaaa.ncb
文件 49664 2014-01-09 23:42 pl0编译器\PL0编译器\aaaaaaa.opt
文件 248 2014-01-09 23:41 pl0编译器\PL0编译器\aaaaaaa.plg
文件 651349 2014-01-09 23:16 pl0编译器\PL0编译器\Debug\aaaaaaa.exe
文件 910308 2014-01-09 23:16 pl0编译器\PL0编译器\Debug\aaaaaaa.ilk
文件 3079456 2014-01-09 23:13 pl0编译器\PL0编译器\Debug\aaaaaaa.pch
文件 1541120 2014-01-09 23:16 pl0编译器\PL0编译器\Debug\aaaaaaa.pdb
文件 286046 2014-01-09 23:16 pl0编译器\PL0编译器\Debug\main.obj
文件 420049 2014-01-08 19:02 pl0编译器\PL0编译器\Debug\MYPL0.obj
文件 99328 2014-01-09 23:41 pl0编译器\PL0编译器\Debug\vc60.idb
文件 159744 2014-01-09 23:16 pl0编译器\PL0编译器\Debug\vc60.pdb
文件 508 2014-01-09 22:55 pl0编译器\PL0编译器\error1.txt
文件 88 2014-01-09 22:51 pl0编译器\PL0编译器\error2.txt
文件 509 2014-01-09 22:58 pl0编译器\PL0编译器\error3.txt
文件 1633 2014-01-09 23:16 pl0编译器\PL0编译器\main.cpp
文件 21881 2014-01-08 19:02 pl0编译器\PL0编译器\MYPL0.CPP
文件 4542 2014-01-09 23:13 pl0编译器\PL0编译器\MYPL0.H
文件 0 2014-01-09 23:41 pl0编译器\PL0编译器\nasm.txt
文件 509 2014-01-09 23:42 pl0编译器\PL0编译器\t1.txt
文件 399 2014-01-02 23:07 pl0编译器\PL0编译器\t2.txt
文件 128 2013-12-29 15:53 pl0编译器\PL0编译器\t3.txt
文件 106 2013-12-31 16:03 pl0编译器\PL0编译器\t4.txt
文件 206 2014-01-02 20:35 pl0编译器\PL0编译器\t6.txt
文件 508 2014-01-09 22:55 pl0编译器\测试程序\error1.txt
文件 88 2014-01-09 22:51 pl0编译器\测试程序\error2.txt
文件 509 2014-01-09 22:58 pl0编译器\测试程序\error3.txt
文件 509 2014-01-03 10:51 pl0编译器\测试程序\t1.txt
文件 399 2014-01-02 23:07 pl0编译器\测试程序\t2.txt
............此处省略11个文件信息
- 上一篇:绘制Bezier曲面和B样条曲面
- 下一篇:PTAM算法的ppt
相关资源
- 编译原理实验工具及参考源码(lex&
- 类pascal语言编译器(编译原理实验)
- 编译原理课程设计:词法语法编译器
- 中科院 编译原理 习题及解答
- 编译原理四元式和逆波兰式
- 《编译原理》清华大学版中的pl0扩充
- PL/0功能扩充break功能
- 编译原理LR(0)语法分析
- 编译原理中间代码生成程序
- 编译原理:LR分析程序
- 编译原理实验:词法分析,语法分析
- 吉林大学编译原理课件
- 编译原理龙书答案
- 编译原理 第三章课后习题答案
- 易语言变量和数组的编译原理
- 编译原理语法分析器、词法分析器
- 山东大学编译原理PL/0语言 compiler实验
- FOR循环语句的翻译程序设计简单优先
- NFA的确定化NFA->DFA完整可运行代码
- 哈工大威海编译原理实验报告和源代
- 哈工大威海-编译原理实验报告和源码
- 编译原理课设c编译器
- 赋值语句翻译四元式
- 河北工业大学编译原理实验代码及实
- 编译原理课程设计 while do循环语句翻
- 编译原理课程设计do——while简单优先
- 南开大学编译原理课件及作业
- 华工往年编译原理试卷
- 编译原理课程设计for循环LR法三元式
- 哈工程-编译原理课程设计(2016级)
评论
共有 条评论