开发工具:
文件大小: 473kb
下载次数: 0
上传时间: 2009-04-05
详细说明: GNU 编译器家族 GCC 内部探密 内容: GNU 编译器家族 GCC 介绍 关于代码分析 Treelang 的代码框架 对用户源文件进行语法分析 语法分析的细节 GCC 前端的全景图 小结 参考资料 关于作者 在 Linux 专区还有: 教程 工具与产品 代码与组件 项目 文章 探索 GCC 前端的内部结构 赵蔚 (zhaoway@public1.ptt.js.cn) Linux 和自由软件技术独立顾问 2003 年 7 月 我们在本文中说明 GCC 源码包中的例子编程语言 Treelang 的实现细节。主要目的在于辑此说明所谓 GCC 前端的编程方法。限于篇幅,本文只能略略讲一下 GCC 前端的内部结构的框架部分。本文中所涉及到的源程序均位于 GCC 源码包中的 gcc/ 目录和 gcc/treelang/ 目录下。本文的代码分析基于 GCC CVS 中的最新(2003 年六月)的开发版本。 GNU 编译器家族 GCC 介绍 作为自由软件的旗舰项目,Richard Stallman 在十多年前刚开始写作 GCC 的时候,还只是把它当作仅仅一个 C 程序语 言的编译器;GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言,C++ 语言,Java 语言,Objective C 语言,Pascal 语言,COBOL 语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了,而是变成了 GNU Compiler Collection 也即是 GNU 编译器家族的意思了。 另一方面,说到 GCC 对于各种硬件平台的支持,概括起来就是一句话:无所不在。几乎所有有点实际用途的硬件平台,甚至包括有些不那么有实际用途的硬件平台,比如 Don Knuth 设计的 MMIX 计算机,GCC 都提供了完善的支持。 我们在这篇文章中要弄清楚的就是 GCC 是如何做到能够支持这么多种程序语言的。所谓的 GCC 的程序语言前端到底是怎么回事。如果我们要设计实现自己的编程语言的话,应该从何入手。回答这些问题的第一步,就是分析清楚 GCC 源码包中,为了说明 GCC 的程序语言前端的编写方法,而写作的 Treelang 编程语言在 GCC 中的实现细节。 如果把我们自己的程序语言的实现建立于 GCC 之上,也立刻使得我们的程序语言的实现版本可以运行在几乎所有有用的硬件平台之上。这对于程序语言的作者来说,也是一个 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.