小白说编译原理-1-前提简介

基础介绍

大学选修编译原理课,内容较浅,没有听说过“龙书”,考试靠背诵。 工作以及读研主要搞c++,没系统学习过编译原理。上学期,帮王老师带过一次编译原理上机课,本人主要负责打酱油,完全由实验室的另一个姓黄的小伙伴挑大梁。

这个系列准备说啥?

1,lex和yacc工具,编写
2,将lex,yacc工具生成的代码与外部编写的代码联合起来,组装简单的编译器
3,能实现了一个mini的c的编译器, 不要求实现函数,不要求实现指针以及数组,不要求实现汇编,其实它更像一个解释器,能将下面的代码编译并执行(不用生成汇编);能支持变量定义,变量连续定义,能支持for,while循环,能支持if-else条件判断,能支持+-*/能算术运算,能支持逻辑运算符,能支持比较运算

    int main()
    {
        int a = 3, b =2, total = 0, i;
        for(i = 0; i < 100; ++i){
            total += i;
        }
        output total;
    }

4,不阐述具体的编译器的原理(自身没有系统阅读过龙书,没这能力)

本文的读者群

1,像我这样的小白,对编译器有一些简单的了解,但不知道具体怎么实现
2,想以一种装逼的姿态实现一个简单的编译器(借助于额外的工具lex,yacc,而不是全部自己开发)

文章进度安排

1,一直很忙,忙得不知所以,因此写文章完全没有章法了。
2,权尽力而为,欢迎拍砖。

本人lpstudy,转载请注明出处 http://blog.csdn.net/lpstudy/article/details/51210384

你可能感兴趣的:(编译原理)