【编译原理龙书笔记】(二)一个简单的语法制导翻译器(仍未完成) 您所在的位置:网站首页 b翻译器 【编译原理龙书笔记】(二)一个简单的语法制导翻译器(仍未完成)

【编译原理龙书笔记】(二)一个简单的语法制导翻译器(仍未完成)

2023-07-22 21:38| 来源: 网络整理| 查看: 265

这篇博客是根据自己学习龙书,因为博主习惯了英语环境,在强行从英语转化为中文的时候难免会有些不自然,请大家谅解。

配套的练习题答案可以在 https://github.com/Oh233/Dragon_book_exercise 看到。

感谢沉鱼姐姐,很多答案都是参考了她的github,虽然无缘认识,但也算是一位领路人。

正文:

一个简单的语法制导翻译器

在本章中,要先给一个编译器大致的idea,而并非一开始就专注于各种编译器过程的细节。

2.1 引言

首先快速浏览一下编译器的前端模型,也就是词法分析,语法分析,中间代码生成的这三个过程。

源程序通过词法分析器得到了一个个的词法单元,之后这些词法单元通过语法分析器被构造成了一棵抽象语法树。之后传给中间代码生成器,会产生树或者三地址形式的中间形式表达。

2.2 语法定义

我们要介绍的是一种用于描述程序设计语言语法的表示方法——“上下文无关文法”。

2.2.1 文法定义

一个上下文无关文法(context free grammar)由以下四个元素组成:

一个终结符号集合。终结符号是该文法所定义的语言的基本符号的集合。 一个非终结符号集合。每个非终结符号表示一个终结符号串的集合。 一个产生式集合。产生式的结构包括产生式头(左部)的非终结符号,一个箭头,和一个产生式体(右部)的由终结符号和非终结符号组


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有