type
status
date
slug
summary
tags
category
icon
password

一、编译概述

1. 翻译程序、解释程序、编译程序的定义
2. 编译程序结构
编译程序每个阶段的任务
表格管理程序和出错处理程序的作用

二、文法和语言的基本知识

1、字母表、符号、符号串的定义
2、符号串的运算:连接、集合的乘积、符号串的幂运算、集合的幂运算
3、文法的定义
4、直接推导、推导、广义推导、句型、句子、语言、规范推导、规范规约、递归规则、递
归文法、文法二义性的定义
5、短语、直接短语、句柄、素短语、最左素短语的定义和灵活应用
6、文法的分类:0 型文法、1 型文法、2 型文法、3 型文法定义及关系
7、给定文法能求出该文法所描述的语言;给定语言能设计表示该语言的文法。

三、词法分析与有穷自动机

1、词法分析程序的功能
2、正规集,正规式,正规文法,确定的有穷自动机、不确定的有穷自动机的定义与二者之
间的区别与联系。
3、正规文法、有穷自动机、正规式三者之间的互相转换方法。不确定有穷自动机到确定自
动机的转换及确定有穷自动机的化简。

四、语法分析

1、语法分析程序的功能
2、自上而下分析方法和自下而上分析方法的思想语法分析
3、FIRST 集、FOLLOW 集、Select 集的构造,LL(1)文法的判别,文法的左递归和回溯的
消除方法,非 LL(1)文法到 LL(1)文法的改写
4、LL(1)文法预测分析表的构造,递归下降分析法
5、算符文法、算符优先文法的定义、素短语、最左素短语的定义,FIRSRVT、LASTVT 集合
求解,算法优先分析表的构造、算符优先分析方法
5、LR 分析器的工作原理和过程,分析表的组成部分和动作,活前缀的定义,项目的分类。
6、LR(0)文法的判别,分析表构造,输入串的分析过程。
7、SLR(1)文法的判别,分析表构造,输入串的分析过程。
8、LR(1)文法的判别,分析表构造,输入串的分析过程。
9、LALR(1)文法的判别,分析表构造,输入串的分析过程。

五、语法制导翻译技术和中间代码生成

1、属性文法的定义,属性的分类
2、语法制导的翻译过程
3、中间语言的形式:逆波兰式、三元式和树形表示,四元式和三地址式

六、符号表的组织与管理

1、符号表的作用
2、符号表的查找方法:顺序查找、二分查找、散列查找
3、符号表可以用不同的数据结构:线性表、各种搜索树和散列表。

七、代码优化

1 基本块的定义:代码优化中,基本块是指程序中一顺序执行的语句序列,它有一个入口和
多一出口。
2、实施循环优化包括:环内的代码外提、度削弱与删除归纳变量等优化。
3、编译中的代码优化分为:局部优化、全局优化和循环优化。
4、与机器无关的优化,常用的优化技术:删除公共子表达式(删除多余运算)、代码外提、
强度削弱、删除归纳变量、合并已知量、复写传播和删除无用赋值。

八、运行时的存储组织与管理

1、程序设计语言使用了以下 3 类存储环境:完全静态存储环境、基于栈的存储环境和基于堆的存储环境。

📎 参考文章

  • 一些引用
  • 引用文章
 
💡
有关问题,欢迎您在底部评论区留言,一起交流~
ROS:SLAM基本概念和原理科研代码环境配置
Loading...