当前位置: 首页 > 图文教程 > 开发语言 > VC++ > C-编译器的设计

VC++
一个 C++ 日期类(第二部分)
一个 C++ 日期类(第一部分)
简单快速的哈夫曼编码
URL编码
一道 Google 竞赛题的解法
模拟退火算法求解TSP问题
任意分布的随机数的产生方法—VC程序实现方法
写个过河算法
PL/0语言词法及语法分析系统的设计与实现
九宫问题(八数码)求解过程动态演示
N皇后问题摆法算法描述
实现LZARI压缩算法的C++类
一种快速可预制的随机数组产生方法
利用SDK实现迷宫算法
猫吃老鼠的系统化算法
C-编译器的设计
与/或表达式化简
启程动态数组V2.0
全文信息检索介绍及算法分析
CRC算法与实现

VC++ 中的 C-编译器的设计


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 62 ::
收藏到网摘: n/a

C-编译器的设计

作者:陆晓春

下载设计文档与代码

前言:这个是我们这学期编译课所要求的大程,我做的是一个C-的编译器,功能不多,但运行正常,开发步骤比较明确,希望与大家共享。

编译器运行效果图如下:



设计文档基本内容如下:

1) 整体框架
2) 词法分析
  Class CTokenizer
  Class CScaner
  C关键字表
  标识符词法
3) 语法分析
  Class CParser
  Grammar
  基本树形结构
  支持的语句及运算
4) 建立符号表
  Class LineListRec
  Class BucketListRec
  Class CSymbolTable
  Class CFunArgsCheck
5) 类型检测
  Class CAnalyzer
  类型匹配
  函数调用参数检测
6) 代码生成
  PCode
  80X86 ASM
7) 总结

详细内容请阅读本文提供的设计文档与全部源代码。