开源C编译器 UCC

分享到:

ucc是一款遵从ANSI C89标准的编译器,大约15,000行C代码。目前支持x86平台上的

Linux和Windows系统,能正确编译自身并成功运行。它有下面一些特点:

  • 代码结构清晰直观,有比较详细的中文文档讲述它的实现
  • 使用三地址码作为中间码,构建了由基本块组成的控制流图,适合很多优化算法
  • 编译速度快。词法分析,语法分析和目标代码生成器都是手写的(其中的代码生成器本想用burg这样的工具自动生成,但这样可能会给代码的理解带来难度,最后手写了一个简单的代码生成器)

项目主页:http://www.open-open.com/lib/view/home/1339545890506

昵    称:
验证码:

相关文档:

  • C++ STL set集合容器常用用法
    set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每...
  • C/C++ 和 FORTRAN 的集成开发环境 Open Watcom
    Open Watcom 给C/C++ 和 FORTRAN程序员带来了一个集成的开发环境,包括了开发工具, SDK,以及库文件。可以用来开发强大的16位和32位应用程序...
  • 6个开源的cpp开发库
    6个开源的cpp开发库...
  • 轻量级CPP开发框架 RLIB
    RLIB是一款轻量级的C++开发框架, 提供一些常见的编程任务, 采用类似C#的命名方式....
  • 强大稳定的字符串分割 C++ 类:StringSpliter
    一个强大稳定的字符串分割 C++ 类,是对 c_tokenizer 的封装。...
  • Command Line Progress Bar
    这是一个在 Linux 下用 C 语言写的控制台下的进度条,如下图所示:...
  • C++ 异常堆栈跟踪器:libcsdbg
    libcsdbg 是一个 C++ 异常堆栈跟踪器。当异常被抛出、捕获和处理时,libcsdbg 提供可工具来创建和处理异常堆栈的跟踪,并通过调用堆栈来...
  • C语言高级编程库:Cello
    Cello的高级结构受到了Haskell的启发;而语法与语义受到Python,Obj-C的启发。它不是关于C语言的面向对象的,而是提供一种工具将C语言转...
  • 可移植的C++标准库 Boost
    Boost库是一个经过千锤百炼、可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。 Boost库由C++标准委员会库...
  • C++轻量级通用插件框架平台 X3C
    X3 C++ PluginFramework 代号为X3的C++轻量级通用插件框架平台是一套通用的C++轻量级插件体系,没有使用MFC、ATL、COM。可在Windows和Linux下编译...
  • C++11 中的双重检查锁定模式
    双重检查锁定模式(DCLP)在无锁编程方面是有点儿臭名昭著案例学术研究的味道。直到2004年,使用java开发并没有安全的方式来实现它。在c...
  • C++11语言扩展:常规特性
    本节内容:auto、decltype、基于范围的for语句、初始化列表、统一初始化语法和语义、右值引用和移动语义、Lambdas、noexcept防止抛出异常、...
  • C 语言常用工具包 LibUtillery
    LibUtillery是一个免费的,使用BSD授权程序员工具箱;一个轻量级和彻底记载收集分库,以解决一般和经常性任务。...
  • 使用 C++ 的 StringBuilder 提升 4350% 的性能
    经常出现客户端打电话抱怨说:你们的程序慢如蜗牛。你开始检查可能的疑点:文件IO,数据库访问速度,甚至查看web服务。 但是这些可...
  • C++的Twitter开发包 twitlib
    twitlib 是一个 C++ 的 Twitter 客户端开发包,现已改名为 QTwitLib。...
  • CC++调试技巧
    在调试代码时,有时会遇到报错的的函数是没问题,而是调用它的函数传入的参数是异常的,而又没法通过代码准确定位到具体调用的位...
  • C++11的并发框架:Async++
    Async++是一个轻量级的C++11并发框架。...
  • 专用于游戏开发的C++数学库:mathfu
    MathFu是专为游戏开发的C ++数学库,侧重于简单和高效开发。...
  • GCC的图形化前端 wxgcc
    wxgcc 的全称是:wxpython gcc compiling toolkit ,它是一个在Linux环境下使用的,基于 wxpython 的GCC 编译器图形前端软件,可以用来快速的编译验...
  • C语言中间语言 CIL
    CIL 是 C 编程语言的前端工具,用来执行程序分析和转换。CIL 对程序进行解析和类型检查并将它编译和简化为 C 语言的子集。例如,在 CIL...