分类
发现
榜单
服务器优惠
AI论文
免费AI编程助手
搜索
注册
登录
分类
发现
榜单
服务器优惠
AI论文
免费AI编程助手
搜索
注册
登录
搜索
书栈网 · BookStack
本次搜索耗时
0.018
秒,为您找到
39
个相关结果.
搜书籍
搜文档
2.7 典型 TinyC 程序
2125
2020-01-27
《自己动手写编译器》
2.7 典型 TinyC 程序 2.7 典型 TinyC 程序 好了,以上就是 TinyC 的全部了,够简单吧。典型的 TinyC 程序如下: #include "for_gcc_build.hh" // only for gcc, TinyC will ignore it. int main () { int ...
16.1 改进 TinyC 前端
1742
2020-01-27
《自己动手写编译器》
16.1 改进 TinyC 前端 16.1 改进 TinyC 前端 上一章的 TinyC 后端中,为了降低 Pcode 命令的翻译难度,对 arg / var / ENDFUNC 命令的格式进行了改写,因此需要改进 TinyC 前端,使之能生成能被 TinyC 后端所识别的新格式 Pcode 命令。具体来说,对于下面这段源程序 test.c : ...
16.2 TinyC 编译器
2490
2020-01-27
《自己动手写编译器》
16.2 TinyC 编译器 16.2 TinyC 编译器 现在可以将 TinyC 前端和 TinyC 后端整合起来了。新建一个空的 tinyc 目录,然后 cd 到此目录,之后新建一个 sources 目录,然后将以下 7 个文件放到 sources 目录下: scanner.l , 词法分析文件,和上一节相同; parser.y ...
第15章 TinyC 后端
1315
2020-01-27
《自己动手写编译器》
第15章 TinyC 后端 第15章 TinyC 后端 至此我们的 TinyC 前端已经完成,可以将 TinyC 源程序编译成中间代码 Pcode ,且可以用 Pcode 模拟器来运行 TinyC 前端生成的 Pcode 。接下来编写 TinyC 后端,将中间代码编译、链接成可执行源程序。我们将针对所有 Pcode 命令编写同名的 NASM 宏将 P...
第14章 TinyC 前端
1554
2020-01-27
《自己动手写编译器》
第14章 TinyC 前端 第14章 TinyC 前端 上一章介绍了 bison 中一些常用功能的使用方法,bison 是一个非常强大的语法分析工具,读者还可以阅读一下 bison 的文档进行更深入的学习。本章介绍如何利用 flex 和 bison 实现 TinyC 编译器的前端,建议读者先复习一下 第 5 章 手工编译 TinyC ,再来看本章的...
第05章 手工编译 TinyC
1678
2020-01-27
《自己动手写编译器》
第05章 手工编译 TinyC 第05章 手工编译 TinyC 前面 3 章介绍了 TinyC 编译器的源程序 TinyC 和中间代码 Pcode 的语法结构,介绍了部分 Pcode 命令和 TinyC 语句的对应关系,本章介绍如何手工将 TinyC 源程序翻译成 Pcode ,因为只有我们对翻译的过程和细节都了如指掌后,才可能编写出程序来进行自动翻...
第02章 源程序 TinyC
3744
2020-01-27
《自己动手写编译器》
第02章 源程序 TinyC 第02章 源程序 TinyC TinyC 只用到了 C 语言中非常小的一部分,是 C 语言中非常小的子集,所有 C 语法的规则均适用于 TinyC 语法, TinyC 源程序可直接用 gcc 编译。 C 语法本书不介绍,仅介绍 TinyC 特有的部分。
第16章 TinyC 编译器
1653
2020-01-27
《自己动手写编译器》
第16章 TinyC 编译器 第16章 TinyC 编译器 在第 14 章中,完成了 TinyC 前端,可以将 TinyC 源程序编译成中间代码 Pcode;在第 15 章中,完成了 TinyC 后端,可以将改写后的中间代码 Pcode 翻译、汇编并链接成可执行程序;现在,是时候将二者结合起来形成最终的 TinyC 编译器了。
8.2 使用 flex 对 TinyC 源文件进行词法分析
1911
2020-01-27
《自己动手写编译器》
8.2 使用 flex 对 TinyC 源文件进行词法分析 8.2 使用 flex 对 TinyC 源文件进行词法分析 上一节的第二个例子 word-spliter 就是一个原始的分词器,在此例的框架上加以扩展就可以做为 TinyC 的词法分析器了。 word-spliter 中只有 WORD 这一种类型的 token ,所有连续的非空格字符串都...
6.3 TinyC 编译器的工作流程
1618
2020-01-27
《自己动手写编译器》
6.3 TinyC 编译器的工作流程 6.3 TinyC 编译器的工作流程 TinyC 编译器是一个非常 “tiny” 的编译器,仅保留了编译器中最基本的功能,只保留了词法分析、语法分析、中间代码生成以及目标代码生成,其中中间代码是在语法分析的过程中同步进行的,TinyC 编译器的工作流程如下: 图6.8 TinyC 编译器的工作流程 从下一章开...
1
2
3
4
»
..4