摘要: C标准注解 首先解释几个很重要的术语: object:执行环境数据存储区(不只是DATA和BSS,也可能在 stack中)中的一块区域,当被引用的时候,object可能会被解释为相应的类型. expression:在以后的出现中所指的是 C语法中的expression,是一个泛指概念,可以是指一个identifier或者就是任何表达式(例如函数调用,加减...). lvalue:是一个代表object具有类型(object类型或者不完全类型,但是不能是void)的expression. 基础架构 存储管理 存储管理是一般系统里很常见的处理方式,及通过标准库中的malloc(... 阅读全文
posted @ 2011-10-27 06:05 feqin 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 这是我的一系列公开场合自愿发表的关于jac编译器的实现的文章中的第一篇,因为目前的编译器没有写完,当然已经完成了很大部分,就差收关了.所以这里提到的代码可能跟最终jac发布版的代码不同,但是设计思想不会有太大变化,而且对于理解一个编译器的实现来说这里的代码就足够了. 首先介绍一下jac,jac的意思是just a core,及就是一个编译器的内核,没有预处理器与库,至少目前没有.因为我实在没有那么多的时间去写.jac将会生成 AT&T格式的汇编语言,及可以被 gas所编译.准备写jac开始于两年多以前(当时我还快乐地在哈尔滨,有足球和朋友),其中我花了很多的时间在读标准,理解语言.最终 阅读全文
posted @ 2011-10-27 01:59 feqin 阅读(413) 评论(0) 推荐(0) 编辑