资源简介
做的作业,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
相关资源
- First集和Follow集生成算法模拟
- 实验四LL(1)分析器的生成
- 词法分析器有界面
- 武汉大学国际软件学院解释器构造作
- 编译原理课程设计(词法分析和语法
- 国防科技大学计算机系602教研室王挺
- 编译原理-陈火旺-第三版
- 《编译原理》第二版(陈意云 著)课
- 华工编译原理TINY+
- 上海大学 编译原理实验报告
- 《编译原理教程》习题解析与上机指
- 编译原理课后习题答案
- 《编译原理》胡元义课后习题解析
- 编译原理学习指导与典型题解析
- 程序设计语言编译原理(陈火旺第3版
- 编译原理第二版清华大学
- 基于LR(0)方法的语法分析程序
- 编译原理~金成植版课后答案~
- 《编译原理(第3版).pdf》
- 编译原理的实验12376
- 西电编译原理大作业
- 编译原理实验指导书 河北工业大学
- 编译原理 词法和语法分析
- 清华大学--编译原理--课件,练习题及
- 编译原理 课件 北航计算机学院
- LL(1)的语法分析程序
- Parsing Techs A Practical Guide pdf
- 编译原理 南京大学计算机系
- 河北工业大学编译原理实验报告及源
- 编译原理陈火旺版共十章ppt讲义
评论
共有 条评论