大坡3D软件开发

关注3D软件技术

蔡军生ID:caimouse
1064559次访问,排名22好友197人,关注者223
C++,3D,VC++软件开发,写技术文章,操作系统开发
caimouse的文章
原创 572 篇
翻译 0 篇
转载 41 篇
评论 702 篇
蔡军生的公告

点击这里给我发消息

MSN: caimouse1976 at sina.com

最近评论
ASP_lover:

www.soAsp.net编程技术资料网很不错,
对我的技术提高很大!推荐给大家!















ASP_lover:www.soAsp.net编程技术资料网很不错,
对我的技术提高很大!推荐给大家!
thezoner:不错,学习到东西了

QQ日志
csdas22as:蔡军生先生才对。
csdas22as:蔡军生,对不起呀,名字写错了。
文章分类
收藏
相册
3D引擎
第二人生
开发板
历史回忆
常用连接
C++大师Stan Lippman(RSS)
MCU连接(RSS)
REACTOS开发网(中国)
人生历程
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky
2007年05月

原创 LCC编译器的源程序分析(19)全局函数的定义

函数定义funcdefn处理里,已经准备好调用参数和参数返回,接着就是调用全局函数声明来处理。阅读全文>

发表于 @ 2007年05月30日 22:26:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(18)函数定义

激动人心的时刻就要开始了,从这节开始,就进入处理实际的代码了。由于C语言是函数式的语言,也就是每个程序都是有一个一个的函数组成的,一个C源程序至少包含一个函数(main函数),也可以包含一个main函数和若干个其它函数。因此,函数是C程序的基本单位阅读全文>

发表于 @ 2007年05月29日 23:26:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(17)参数变量的声明

函数里的参数变量个数不固定,因此也需要检查这些参数的名称是否相同,还需要检查类型的合法性。现在就来分析上次提到的函数dclparam阅读全文>

发表于 @ 2007年05月28日 22:13:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(16)函数的声明

在第一节介绍的例子里,就需要使用到函数声明。比如下面的语句: printf("nTest3 = %d\r\n",nTest3); 如果没有预先的声明,编译器是找不到它的类型定义,所以编译不通过。因此就需要了解什么是函数的声明,在LCC里又是怎么样处理函数的声明的。阅读全文>

发表于 @ 2007年05月27日 18:49:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(15)结构类型成员的声明

上次只介绍到开始分析结构类型的定义开始部分,接着就要去分析它的成员类型定义了。它调用函数来处理结构的成员阅读全文>

发表于 @ 2007年05月26日 20:05:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(14)结构类型的声明

以前都是简单类型的识别和语法分析,现在来分析结构的声明,它是比较复杂的一种数据类型,但结构在编写程序中使用是非常多的。由于程序的方程式就是: 数据结构+算法=程序 现在面向对象的方程式是: 数据结构+算法=对象 对象+对象=程序阅读全文>

发表于 @ 2007年05月25日 21:38:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(13)指针类型的声明

在C语言里,指针是最灵活的数据类型,它具有低级语言的特点,高效快速,不过学会它就不是那么容易了。由于指针是直接面向机器的,也就是它是指向内存的地址,因此使用C来编写嵌入式软件,或者操作系统的软件是比较合适的选择。阅读全文>

发表于 @ 2007年05月23日 22:54:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(12)自定义类型的声明

语法分析是比较复杂的处理,下面再来分析一个例子,它的代码如下: typedef unsigned short wchar_t; typedef wchar_t wint_t; 第一句语句在LCC里的处理,前面已经解释清楚,主要生成wchar_t保存符号表里,并且记录这个ID的类型属性。阅读全文>

发表于 @ 2007年05月22日 22:10:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(11)声明与符号表

前一次已经分析了声明的函数,但还有一个声明函数没有分析的,它就是dclr函数,这个函数是大内总管,分别调用前面两个声明函数来处理所有的声明语句,接着又会保存声明的ID和属性到符号表,当然它需要调用处理函数定义的函数,接着在那里把函数生成汇编代码并写到输出文件里。阅读全文>

发表于 @ 2007年05月21日 22:31:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(10)声明类型

上一次把声明的说明符已经分析得很清楚,也就是把C的变量和函数声明都已经了解了。最后还剩下一个问题没有解决,这个问题就是声明后面的ID是变量呢?还是函数?或者是指针?为了识别后面的ID,下面来看一个例子。阅读全文>

发表于 @ 2007年05月20日 13:15:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(9)声明分析

在语法分析里,最主要的组成部份是声明分析,并且这是C语言编译器最复杂的组成部分。由于任何变量都需要声明,那么怎么样知道这个变量声明是合法的呢?现在带着这个问题去分下面的代码。阅读全文>

发表于 @ 2007年05月19日 23:26:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(8)语法分析的开始

准备好词法分析之后,接着的工作就是检查源程序是否合法,以及源程序表达的意思是什么。这两个问题就是语法和语义的分析,也就是把源程序里所包含的属性分析出来,并保存到符号表里。下面就来仔细地分析LCC编译器是怎么样处理这两个问题的。阅读全文>

发表于 @ 2007年05月18日 23:06:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(7)词法分析

下面开始关键字、ID等识别,采用这种词法分析,是最高效的,由于在识别的过程里,就已经区分它是什么关键字,而不像其它的词法分析程序,需要查找才能决定是否是关键字。阅读全文>

发表于 @ 2007年05月17日 22:17:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(6)词法分析

在最开始的例子程序里,程序是由一些单词和符号组成的。其实程序就是一串长长的字符串,这些字符串是按一定的规则编写的,那么就需要检查这些单词和符号是否符合定义的规则。在C语言里,就是定义了C语法和语义。阅读全文>

发表于 @ 2007年05月16日 22:34:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(5)行号同步与类型初始化

上面已经介绍打开文件输入,并且分析了读取到缓冲区里的代码,接着下来就是分析行号同步的处理,还有类型初始化。阅读全文>

发表于 @ 2007年05月15日 23:00:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(4)处理文件参数

上面已经介绍选择不同的目标输出的参数处理,那么接着下来,自然的事情就是处理剩下的两个参数的问题,当然LCC是可以处理更多其它参数的,但这里只介绍两个文件参数的处理。阅读全文>

发表于 @ 2007年05月14日 22:17:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(3)选择不同的目标代码接口

在LCC里,最重要的一个特征是可以输出不同的目标代码。比如同一个C程序,可以生成MIPS,X86等汇编代码,只需要选择不同的目标参数。这里只分析生成X86的代码,所以命令行的参数如下: 阅读全文>

发表于 @ 2007年05月13日 21:46:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(2)LCC编译器的预处理

上面已经介绍了C编译器的目标,其实在实现这个目标之前,是经历了很多阶段处理的,其中第一个阶段的处理,就是预处理。预处理的任务是做什么呢?在LCC里预处理里主要是把所有包含的头文件和源程序生成一个中间文件,并且把所有宏展开,替换为真实的值。阅读全文>

发表于 @ 2007年05月12日 21:37:00|评论(loading...)|编辑

原创 LCC编译器的源程序分析(1)C编译器的目标

先从简单的目标来分析这个大规模的C编译器,毕竟它的功能比较复杂,并且源程序的行数也是非常多的。因此,把简单的目标定出来,然后再分析它,这样才会有的放矢。接着再跟着编译运行的主线来分析它的源程序。下面先看一下简单的C例子,如下:阅读全文>

发表于 @ 2007年05月07日 20:01:00|评论(loading...)|编辑

转载 [龙讯8号]龙芯产品再开新花

### 本期推荐 ### 新闻:龙芯产品再开新花 评论:绝不仅仅用于PC/笔记本 聊天:为什么电脑两三年就要换? 阅读全文>

发表于 @ 2007年05月04日 18:02:00|评论(loading...)|编辑

转载 [龙讯7号]国芯发布龙芯电脑引争议

### 本期推荐 ### 新闻:国芯发布龙芯电脑 评论:龙芯潜龙勿用 聊天:龙芯目前广告不够阅读全文>

发表于 @ 2007年05月04日 18:01:00|评论(loading...)|编辑

转载 [龙讯增刊2号]龙芯能干啥?

### 本期内容 ### 内容提要:本期为截止到2006年各公司出品的龙芯产品集合,精选了十种基于龙芯处理器的不同用途的产品,不是十分的全面,但都比较有代表性,希望能给你一个对当前龙芯产品相对全面的认识。 [1] 龙芯商用通 [2] 基于龙芯CPU的网络计算机 [3] 龙芯嵌入式网络音视频服务器 [4] 龙芯嵌入式POS系统 [5] 基于龙芯的网络信息安全设备 [6] 基于龙芯一号的金融终端 [7] 基于龙芯的nHD卡 [8] 龙芯一号税控收款机 阅读全文>

发表于 @ 2007年05月04日 18:00:00|评论(loading...)|编辑

转载 [龙讯6号]龙芯2E首次公布设计细节

### 本期推荐 ### 新闻:龙芯I号笔记本即将发布 评论:龙芯笔记本为何紧盯学生? 聊天:爸爸教我用龙芯电脑 阅读全文>

发表于 @ 2007年05月01日 21:46:00|评论(loading...)|编辑

转载  [龙讯增刊1号]龙芯哪里来

### 本期内容 ### [1] 龙芯是什么? [2] 龙芯发展及规划 [3] 龙芯相关组织阅读全文>

发表于 @ 2007年05月01日 21:45:00|评论(loading...)|编辑

转载 [龙讯5号]龙芯电脑将亮相常熟春节晚会

### 本期推荐 ### 新闻:龙芯笔记本扩大规模内测 评论:三大课题考验中国芯片行业发展 聊天:我冷眼看中共的CPU神話阅读全文>

发表于 @ 2007年05月01日 21:43:00|评论(loading...)|编辑

Csdn Blog version 3.1a
Copyright © 蔡军生