# compiler **Repository Path**: tjccc/compiler ## Basic Information - **Project Name**: compiler - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # compiler ##语言结构 函数定义 常量 全局变量 函数实现 ### 语法树节点 前缀表达式 后缀表达式 逗号表达式 函数调用 下标运算符 初始化表达式 选择表达式 限定作用运算符的表达式 基本数据类型 数组类型 指针类型 函数指针类型 结构体或联合体类型 BlocakStmt表示一组语句的组合(花括号里面的代码块) IfStmt节点表示一个if语句 DoWhileStmt节点表示一个do while语句 while语句 for语句 控制语句(break,continue,goto) switch语句 case或default语句 return语句 函数的声明 变量的声明 内联汇编代码块???? File表示一个文件 Package表示一组源文件 语句 > 表达式 实现 while(true) { } 文件 函数体 表达式 逻辑表达式 二元表达式 加法 乘法 一元表达式 cell 三元表达式 函数调用表达式 声明表达式 赋值表达式 语句 if while 123456 1 + 2 函数声明 全局变量 全局常量 全局静态类 Apple.class Apple apple (Apple) object public class Apple ClassType name fileds color,df methods eat() put() return ClassType ClassType a = execute(); a --> Apple String ----- ClassType "Apple" --- new ClassType(); "Apple" --- Apple(); new Apple() apple.setColor(ClassType.fileds[0]); int jnt ObjectCover 1 * (2 + 3) 1 2 + 逆波兰表达式 栈 向左看 递归下降 int x = 1; llvm写编程语言 类型说明符 标识符 ( ... ); 类型说明符 标识符 (...) { }; 类型说明符 标识符 = 值; 类型说明符 标识符; Stanford公开课《编译原理》学习笔记(2)递归下降法 - 华为云技术宅基地的文章 - 知乎 https://zhuanlan.zhihu.com/p/84670706