计算机的编译原理pdf,计算机编程基础--编译原理.pdf

本文深入解析编译程序的基础,阐述词法分析、语法分析、语义分析及代码生成的过程,并通过与英译对比,帮助理解编译流程。涵盖编译程序结构,重点讲解了五个关键步骤:词法分析、语法解析、语义检查与中间代码生成、优化与目标代码构造。
摘要由CSDN通过智能技术生成

第一章 引论(1)

1.1 什么叫编译程序

编译程序:是指这样的程序,它能够把某种

语言的程序转换成另一种语言的程序,

而后者与前者在逻辑上是等价的。如果

源语言是诸如FORTRAN、Pascal、C、Ada、

Smalltalk或Java这样的 “高级语言”,

而目标语言如汇编语言之类的 “低级语

言”这样的翻译程序则称之为编译程序。

第一章引 论

注意编译程序与解释程序的区别,一个

语言的解释程序是着样的程序:它以该语

言写的源程序作为输入,但不产生目标程

序,而是边解释边执行源程序本身。

术语 “编译”的内涵是实现从源语言表示

的算法向目标语言表示的算法的等价变换。

第一章引 论

1.2 编译过程概述

掌握编译过程的五个基本阶段,

是我们学习编译原理课程的基本内

容,把编译的五个基本阶段与英译

中的五个步骤相比较,有利于对编

译过程的理解:

第一章引 论

英译与编译的比较

1。识别出句子中的一个个 1。词法分析

单字 2。语法分析

2。分析句子的语法结构 3。语义分析中间代

3。初步翻译句子的含意 码生成

4。译文修饰 4。优化

5。写出最后译文 5。目标代码生成

第一章引 论

1。2 。1词法分析

输入源程序,对构成源程序的字符串进行

扫描和分解,识别出一个个单词(也称

单词符号,或简称符号)

在词法分析阶段工作所依循的是语言的词

法规则。描述词法规则的有效工具是正

规式和有限自动机。

第一章引 论

1。2 。2语法分析

语法分析的任务:在词法分析的基础

上,根据语言的语法规则,把单词符号

分解成各类语法单位(语法范畴),如

“短语”、“句子”、“子句”、“程

序段”等。

语法规则通常用上下文无关文法描述。

第一章引 论

1。2 。3语义分析与中间代码的产生

这一阶段通常包括两方面的工作首先

对各种语法范畴进行静态语义检查,如

果正确则进行另一方面的工作,即进行

中间代码的翻译。

通常使用属性文法描述语义规则

所谓“中间代码”是一种含义明确,

便于处理的记号系统。

中间代码除四元式外,还有三元式、

间接三元式、逆波兰记号、树形表示等。

第一章引 论

1。2 。4 优化

优化的任务在于对前段产生的中间代码

进行加工,以期在最后阶段产生更为高

效(省时间和空间)的代码

优化所依循的原则是程序的等价变换

规则

其方法有:公共子表达式的提取、循

环优化、删除无用代码等。

第一章引 论

1。2 。5 目标代码生成

这一阶段的任务:把中间代码(或经优

化处理后)变换成特定机器上的低级语言代

码。它有赖于硬件系统结构和机器指令含义。

第一章引 论

1。3 编译程序的结构

源程序

词法分析器

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《现代编译原理》(也被称为“虎书”)是一本关于编译原理的经典教材。它由美国加州大学伯克利分校的Alfred V. Aho和Monica S. Lam编写,被广泛用于计算机科学及相关专业的本科和研究生教育。 该书的主要特点之一是深入而全面地介绍了编译器的设计与实现。它从编译器的基础知识出发,如词法分析、语法分析和语义分析,然后介绍了更高级的主题,如中间表示、代码优化和代码生成。此外,还包括了常见的编译器工具和技术,如语言处理工具Flex和Bison的使用,以及各种编译器优化技术的实现方法。 另一个值得注意的特点是该书的实用性。作者通过大量的实例和案例研究,帮助读者理解和应用所学概念。此外,书中还包含了大量的习题和项目,供读者巩固所学知识和提升实践能力。 虽然《现代编译原理》已经出版多年,但其内容仍然非常适用于现代编译器设计与实现。编译原理作为计算机科学领域的基础学科,其相关技术和理论一直在不断发展,而《现代编译原理》不仅提供了基础知识,还涵盖了最新的技术和研究成果,使读者能够了解最新的发展动态。 总之,《现代编译原理》是一本深入浅出、全面实用的编译原理教材,适用于学习和研究编译器设计与实现的读者。无论是否从事相关专业,阅读该书都有助于提升理解计算机程序和编译器工作原理的能力,并培养系统化和逻辑思维的能力。 ### 回答2: 《现代编译原理》(通常称为“虎书”),是一本计算机科学领域经典的编译原理教材。该书由美国斯坦福大学教授阿尔弗雷德·奥普克和杰弗里·尤吉斯撰写,首次出版于2002年。 《现代编译原理》详细介绍了编译原理的各个方面,包括词法分析、语法分析、语义分析、优化和代码生成等内容。书中包含了大量的实例和案例分析,以帮助读者更好地理解编译原理的概念和原理。 该书以通俗易懂的语言,结合全面的理论和实践,系统地介绍了编译原理的基本知识和技术。读者可以通过阅读《现代编译原理》,了解编译器的工作原理,学习如何设计和实现一个简单的编译器。 《现代编译原理》作为一本经典教材,广泛应用于计算机科学及相关专业的教学和研究中。读者通过学习该书,不仅可以掌握编译原理的核心概念和方法,还可以培养编译器设计和开发的能力。 总而言之,《现代编译原理》是一本深入浅出、权威可靠的编译原理教材,适用于学术界和工程实践中对编译原理感兴趣的读者。无论是初学者还是专业人士,都可以从中获得知识、理解和实践的指导。无论是从纸质版书籍还是PDF版本,读者都可以通过这本书全面了解编译原理的基本原理和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值