资源简介
编译原理实验,目的把用户输入的代码转化成汇编语言的代码。一个简单的编译器的实现。主要采用算符优先的算法。开发环境VS2013,语言C++
在 BYYL.cpp中的读取文件路径中添加案例,如在a.txt中写上
program test
var a : real ;var b:bool ;
begin
while A<C and B<D do
if A=1 then C:=C+1
else while A<=D do A:=A*2;
B := A+C+D+(-2)
end
在 BYYL.cpp中的读取文件路径中添加案例,如在a.txt中写上
program test
var a : real ;var b:bool ;
begin
while A<C and B<D do
if A=1 then C:=C+1
else while A<=D do A:=A*2;
B := A+C+D+(-2)
end

代码片段和文件信息
// BYYL.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
#include
#include
#include “lastProduce.h“
using namespace std;
void printGens()
{
for (int i = 0; i < genStructs.size(); i++)
{
cout << genStructs[i].label << “:(“ << genStructs[i].op << ““ << genStructs[i].addr1 << ““ << genStructs[i].addr2 << ““ << genStructs[i].result << “)\n“;
}
}
int _tmain(int argc _TCHAR* argv[])
{
printReadtext(“F:/a.txt“);
flTable t;
printTokenResult2(); //输出token集
string Error;
bool b = t.Match(tokens Error); //完成优先关系表,语法树,输出符号栈
if (!b) { cout << Error << endl; return 0; }
else cout << “规约成功“ << endl;
printGens(); //输出四元式
codeTable ct;
ct.printcodes(); //输出代码生成
system(“pause“);
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-01-21 18:03 BYYL\
目录 0 2018-01-21 18:03 BYYL\BYYL\
文件 8912896 2018-01-21 18:03 BYYL\BYYL.sdf
文件 958 2018-01-21 18:03 BYYL\BYYL.sln
文件 44032 2018-01-21 18:03 BYYL\BYYL.v12.suo
文件 843 2018-01-21 16:00 BYYL\BYYL\BYYL.cpp
文件 4914 2018-01-21 13:37 BYYL\BYYL\BYYL.vcxproj
文件 2146 2018-01-21 13:37 BYYL\BYYL\BYYL.vcxproj.filters
目录 0 2018-01-21 18:00 BYYL\BYYL\Debug\
文件 6497 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.log
文件 1845634 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.obj
文件 1638400 2018-01-17 10:37 BYYL\BYYL\Debug\BYYL.pch
目录 0 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\
文件 188 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\BYYL.lastbuildstate
文件 1566 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\cl.command.1.tlog
文件 9332 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\CL.read.1.tlog
文件 1366 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\CL.write.1.tlog
文件 1460 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\li
文件 2728 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\li
文件 736 2018-01-21 18:00 BYYL\BYYL\Debug\BYYL.tlog\li
文件 11306 2018-01-17 10:37 BYYL\BYYL\Debug\stdafx.obj
文件 371712 2018-01-21 18:00 BYYL\BYYL\Debug\vc120.idb
文件 692224 2018-01-21 18:00 BYYL\BYYL\Debug\vc120.pdb
文件 12896 2018-01-20 19:39 BYYL\BYYL\Fristvt.h
文件 3619 2018-01-21 18:03 BYYL\BYYL\GenStruct.h
文件 6838 2018-01-21 17:11 BYYL\BYYL\lastProduce.h
文件 3606 2018-01-19 16:33 BYYL\BYYL\prog.h
文件 1489 2018-01-17 09:13 BYYL\BYYL\ReadMe.txt
文件 1002 2018-01-21 16:16 BYYL\BYYL\register.h
文件 210 2018-01-17 09:13 BYYL\BYYL\stdafx.cpp
文件 234 2018-01-17 09:13 BYYL\BYYL\stdafx.h
............此处省略11个文件信息
- 上一篇:地铁售票程序 c++
- 下一篇:VC++网络聊天室源代码和程序说明
相关资源
- 通信过程中的RS编译码程序(c语言)
- 算符优先语法分析器(C语言编写)
- 编译原理c语言编译器
- c语言小学生自然数四则运算测试程序
- 编译原理实验-词法分析(c语言代码)
- 北邮-编译原理-词法分析
- C语言编译器的设计与实现.doc
- c++curllib传输json使用
- 现代编译原理-C语言描述
- Delphi反编译工具
- VC经典教程等chm格式学习资料包
- tiny+编译器C++实现
- 缩短循环码(2616)编译码程序-C语言
- 编译原理实验报告+代码+使用说明
- 编译原理课程设计-C语言子集编译器
- 一个C语言编译器源码
- 可以将C语言转变为汇编的编译器
- 赋值语句翻译c语言实现四元式
- 语法分析c语言实现程序代码+实验报告
- 编译原理用C++消除左递归
- LL1语义分析的C语言子集编译器
- 编译原理简易C编译器
- 实现语法分析器-编译原理
- plo编译器 c语言 含测试 以及实验报告
- 编译原理 LR分析器 c++代码
- 设计并实现TINYC语言的扫描程序TINYC
- VC++2010(VC++最新版!)
- SpiderMonkey1.61.7 编译文件全部libdllh文件
- LL(1)文法分析全过程(FIRST/FLLOW/S
- 编译原理 LR0项目集规范族的构造 L
评论
共有 条评论