已经实现了lex词法分析,yacc语法分析,得到了中间代码——语法树。 并且对语法树进行了遍历,完成了类型检查。 其实我觉得自己写的代码很烂,但由于事情太多,就不优化了。最终的大作业——实现编译器的代码我就不传了,因为写得我自己都没眼看了。 其实用语法树遍历一遍生成汇编代码就行,不会很难。 对了,我的程序是C语言的,所以vs配C语言环境运行吧。。
2021-07-21 14:55:44 28KB 编译器
1
windows下的gcc编译器,下载后配置windows环境变量就可以使用
2021-07-18 11:00:47 70.41MB gcc/gdb编译调试 c语言 编译器 windows
1
通过程序设计实训,达到以下目的: 理解编译器的工作机制;(2)掌握编译器的构造方法;(3)初步了解软件开发中需求分析、系统设计、程序测试、项目管理、编码风格等基本流程和规范;(4)培养自觉运用程序化思维分析问题、解决问题的习惯。 1、定义一个简单的文法,描述程序设计语言,包括变量说明语句、算术表示和赋值语句;可扩展包括逻辑布尔表达式、选择语句和循环语句等; 设计该文法的编译程序,包括词法分析器、语法分析器、中间代码生成器、中间代码优化器和目标代码生成器、符号表的设计等部分。 设计了五个阶段的分析。 语法分析部分设计的是小C语言文法,对整个代码进行语法分析。 通过文件的读入,和分析结果的读出进行代码的的编译分析。
2021-07-16 18:05:16 56KB C++ 编译原理 简单语言编译器
Plycc 项目简介 在这个项目中,我使用了基于Python的Lex-Yacc库 ,并且全项目使用Python编写 此编译器可以生成包含短路条件的if结构对应四元式,while结构对应四元式 项目总行数约700,其中词法分析100行,语法分析600行 项目使用 Github 进行管理,仓库位于,上面有对应的 commit 记录和代码行数统计 用Python构建项目的原因有如下几点: Python作为解释型语言,它要比C语言这种编译型语言,更加适合快速搭建原型(如我们的编译器) C这类编译型语言适合写一些性能要求较高的程序 Python隐藏了一些底层的编程细节,我们可以更专注于实现功能,而不是调试用C可能会产生的各种语法错误 文法 start_state -> INT ID OPBRAC CLOSEBRAC stmts stmts -> OPENFLR stmts CLOSEFLR
2021-07-12 15:27:50 79KB Python
1
PIC单片机C语言开发利器,与MPLAB配合使用,支持PIC12 16系列单片机,亲测可用
2021-07-09 18:18:54 14.29MB PIC C语言编译器
1
此为VC++6.0的中英文版,Win10可用。使用解压软件解压后,运行SETUP.EXE后会安装,再选择语言。若Win10用户安装后无法使用,就将软件安装文件夹下的MSDEV.EXE使用下载文件夹中的MSDEV.EXE替换掉,就可以正常使用了。
2021-07-05 14:27:08 64.98MB C语言 VC++6.0 C语言编译器
1
# 迷你帕斯卡编译器 minipascal [MOD] 语言编译器的实现。 教育目的。 - UTP ## 使用 minipascal 程序由一个或多个函数组成。 函数示例 FUN foo( arg:INT ) BEGIN PRINT( "Hello World" ) END 一般来说 FUN ( , ,... , ) :; :; BEGIN ; ; END 除最后一条语句外,每个语句都以分号结尾。 例子 FUN main() n:int; BEGIN WHILE i<n-1 do BEGIN
2021-07-04 15:03:13 58KB Python
1
汇编语言编译器纯净版。
2021-07-03 18:00:47 1.03MB 汇编语言
1
c语言编译器c语言编译器c语言编译器c语言编译器c语言编译器
2021-06-30 10:01:02 4.61MB c编译器
1
基于java语言开发的c语言编译器,javafx实现界面化的LR1编译器 支持大部分代码编译 不支持多函数编译 支持while循环,不支持do while循环 不支持goto 一些语句 目标代码可以显示、但是无实际作用,就是一个幌子 还有一部分编译功能未能实现(别问,问就是课设结束了,没写完也就搁在那里了) 测试文件在压缩包里面有,可以在编译界面选择文件进行编译
2021-06-25 13:02:18 104KB LR1 编译器 java javafx
1