新建
上传
首页
助手
最?/div>
资料?/div>
工具

《编译原理》之常规知识?/p>

 

一?/p>

 

编译程序

 

1

?/p>

 

编译?/p>

是一种翻译程序,

它用于将

源语言

(即用某种程序设计语言写成的)

程序翻译?/p>

目标语言

(即用二进制数表示的伪机器代码写成的)程序。后者在

windows

操作系统平台

下,其文件的扩展名通常?/p>

.obj

。该文件通常还要经过进一步的连接,生?/p>

可执行文?/p>

(机

器代码写成的程序,文件扩展名?/p>

.exe

?/p>

。通常有两种方式进行这种翻译,一种是

编译

,另

一种是

解释

?/p>

后者并不生成可执行文件?/p>

只是翻译一条语句?/p>

执行一条语句。这两种方式?/p>

编译比解释运行的速度要快得多?/p>

 

2

?/p>

 

编译过程?/p>

5

个阶?/p>

:词法分析;语法分析;语义分析与中间代码产生;优化;目标?/p>

码生成?/p>

 

3

?/p>

 

在这五个阶段中,

词法分析

的任务是识别源程序中的单词是否有误,编译程序中实现这

种功能的部分一般称为词法分析器?/p>

在编译器中,

词法分析器通常仅作?/p>

语法分析程序

的一

个子程序以便在它需要单词符号时调用?/p>

在这一编译阶段中发现的源程序错误,

称为

词法?/p>

?/p>

?/p>

 

4

?/p>

 

语法分析

阶段的目的是识别出源程序的语法结构(即语句或句子)是否错误,所以有?/p>

又常?/p>

句子分析

。编译程序中负责这一功能的程序称?/p>

语法分析?/p>

?/p>

语法分析程序

。在?/p>

一阶段中发现的错误称为

语法错误

?/p>

 

5

?/p>

 

C

语言的(源)程序必须经过编译才能生成目标代码,再经过链接才能运行?/p>

PASCAL

语言?/p>

FORTRAN

语言的源程序也要经过这样的过程。通常?/p>

C

?/p>

PASCAL

?/p>

FORTRAN

?/p>

样的语言统称?/p>

高级语言

。而将最终的可执行程序称?/p>

机器语言程序

?/p>

 

6

?/p>

 

在编?/p>

C

语言程序的过程中?/p>

发现源程序中的一个标识符过长?/p>

超过了编译程序允许的

范围,这个错误应在词法分析阶段发现,这种错误通常被称作词法错误?/p>

 

?/p>

 

词法分析器的

任务

是以词法规则为依据对输入的源程序进行单词及其属性的识别?/p>

识别

出一个个单词符号?/p>

 

?/p>

 

词法分析?/p>

输入

是源程序?/p>

输出

是一个个单词的特殊符号,称为

Token

(标记或符号?/p>

?/p>

 

?/p>

 

有两种方法可?/p>

实现

词法分析器:

一?/p>

手工编写

词法分析程序?/p>

二,由词法分析器

自动

生成

程序生成?/p>

 

?/p>

 

语法分析器的

类型

?/p>

:

自下而上、自上而下。常用的语法分析器有?/p>

递归下降分析方法

是一种自上而下分析方法

, 

算符优先分析?/p>

属于自下而上分析方法?/p>

LR

分析?/p>

属于?/p>

下而上分析方法等等?/p>

 

?/p>

 

为了方便语法分析程序的使用,词法分析过程中通常对所识别出的

单词符号进行分类

?

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

《编译原理》之常规知识?/p>

 

一?/p>

 

编译程序

 

1

?/p>

 

编译?/p>

是一种翻译程序,

它用于将

源语言

(即用某种程序设计语言写成的)

程序翻译?/p>

目标语言

(即用二进制数表示的伪机器代码写成的)程序。后者在

windows

操作系统平台

下,其文件的扩展名通常?/p>

.obj

。该文件通常还要经过进一步的连接,生?/p>

可执行文?/p>

(机

器代码写成的程序,文件扩展名?/p>

.exe

?/p>

。通常有两种方式进行这种翻译,一种是

编译

,另

一种是

解释

?/p>

后者并不生成可执行文件?/p>

只是翻译一条语句?/p>

执行一条语句。这两种方式?/p>

编译比解释运行的速度要快得多?/p>

 

2

?/p>

 

编译过程?/p>

5

个阶?/p>

:词法分析;语法分析;语义分析与中间代码产生;优化;目标?/p>

码生成?/p>

 

3

?/p>

 

在这五个阶段中,

词法分析

的任务是识别源程序中的单词是否有误,编译程序中实现这

种功能的部分一般称为词法分析器?/p>

在编译器中,

词法分析器通常仅作?/p>

语法分析程序

的一

个子程序以便在它需要单词符号时调用?/p>

在这一编译阶段中发现的源程序错误,

称为

词法?/p>

?/p>

?/p>

 

4

?/p>

 

语法分析

阶段的目的是识别出源程序的语法结构(即语句或句子)是否错误,所以有?/p>

又常?/p>

句子分析

。编译程序中负责这一功能的程序称?/p>

语法分析?/p>

?/p>

语法分析程序

。在?/p>

一阶段中发现的错误称为

语法错误

?/p>

 

5

?/p>

 

C

语言的(源)程序必须经过编译才能生成目标代码,再经过链接才能运行?/p>

PASCAL

语言?/p>

FORTRAN

语言的源程序也要经过这样的过程。通常?/p>

C

?/p>

PASCAL

?/p>

FORTRAN

?/p>

样的语言统称?/p>

高级语言

。而将最终的可执行程序称?/p>

机器语言程序

?/p>

 

6

?/p>

 

在编?/p>

C

语言程序的过程中?/p>

发现源程序中的一个标识符过长?/p>

超过了编译程序允许的

范围,这个错误应在词法分析阶段发现,这种错误通常被称作词法错误?/p>

 

?/p>

 

词法分析器的

任务

是以词法规则为依据对输入的源程序进行单词及其属性的识别?/p>

识别

出一个个单词符号?/p>

 

?/p>

 

词法分析?/p>

输入

是源程序?/p>

输出

是一个个单词的特殊符号,称为

Token

(标记或符号?/p>

?/p>

 

?/p>

 

有两种方法可?/p>

实现

词法分析器:

一?/p>

手工编写

词法分析程序?/p>

二,由词法分析器

自动

生成

程序生成?/p>

 

?/p>

 

语法分析器的

类型

?/p>

:

自下而上、自上而下。常用的语法分析器有?/p>

递归下降分析方法

是一种自上而下分析方法

, 

算符优先分析?/p>

属于自下而上分析方法?/p>

LR

分析?/p>

属于?/p>

下而上分析方法等等?/p>

 

?/p>

 

为了方便语法分析程序的使用,词法分析过程中通常对所识别出的

单词符号进行分类

?

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

《编译原理》之常规知识?/p>

 

一?/p>

 

编译程序

 

1

?/p>

 

编译?/p>

是一种翻译程序,

它用于将

源语言

(即用某种程序设计语言写成的)

程序翻译?/p>

目标语言

(即用二进制数表示的伪机器代码写成的)程序。后者在

windows

操作系统平台

下,其文件的扩展名通常?/p>

.obj

。该文件通常还要经过进一步的连接,生?/p>

可执行文?/p>

(机

器代码写成的程序,文件扩展名?/p>

.exe

?/p>

。通常有两种方式进行这种翻译,一种是

编译

,另

一种是

解释

?/p>

后者并不生成可执行文件?/p>

只是翻译一条语句?/p>

执行一条语句。这两种方式?/p>

编译比解释运行的速度要快得多?/p>

 

2

?/p>

 

编译过程?/p>

5

个阶?/p>

:词法分析;语法分析;语义分析与中间代码产生;优化;目标?/p>

码生成?/p>

 

3

?/p>

 

在这五个阶段中,

词法分析

的任务是识别源程序中的单词是否有误,编译程序中实现这

种功能的部分一般称为词法分析器?/p>

在编译器中,

词法分析器通常仅作?/p>

语法分析程序

的一

个子程序以便在它需要单词符号时调用?/p>

在这一编译阶段中发现的源程序错误,

称为

词法?/p>

?/p>

?/p>

 

4

?/p>

 

语法分析

阶段的目的是识别出源程序的语法结构(即语句或句子)是否错误,所以有?/p>

又常?/p>

句子分析

。编译程序中负责这一功能的程序称?/p>

语法分析?/p>

?/p>

语法分析程序

。在?/p>

一阶段中发现的错误称为

语法错误

?/p>

 

5

?/p>

 

C

语言的(源)程序必须经过编译才能生成目标代码,再经过链接才能运行?/p>

PASCAL

语言?/p>

FORTRAN

语言的源程序也要经过这样的过程。通常?/p>

C

?/p>

PASCAL

?/p>

FORTRAN

?/p>

样的语言统称?/p>

高级语言

。而将最终的可执行程序称?/p>

机器语言程序

?/p>

 

6

?/p>

 

在编?/p>

C

语言程序的过程中?/p>

发现源程序中的一个标识符过长?/p>

超过了编译程序允许的

范围,这个错误应在词法分析阶段发现,这种错误通常被称作词法错误?/p>

 

?/p>

 

词法分析器的

任务

是以词法规则为依据对输入的源程序进行单词及其属性的识别?/p>

识别

出一个个单词符号?/p>

 

?/p>

 

词法分析?/p>

输入

是源程序?/p>

输出

是一个个单词的特殊符号,称为

Token

(标记或符号?/p>

?/p>

 

?/p>

 

有两种方法可?/p>

实现

词法分析器:

一?/p>

手工编写

词法分析程序?/p>

二,由词法分析器

自动

生成

程序生成?/p>

 

?/p>

 

语法分析器的

类型

?/p>

:

自下而上、自上而下。常用的语法分析器有?/p>

递归下降分析方法

是一种自上而下分析方法

, 

算符优先分析?/p>

属于自下而上分析方法?/p>

LR

分析?/p>

属于?/p>

下而上分析方法等等?/p>

 

?/p>

 

为了方便语法分析程序的使用,词法分析过程中通常对所识别出的

单词符号进行分类

?

Ͼλ">
Ͼλ
Ŀ

《编译原理》之常规知识? - 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

《编译原理》之常规知识?/p>

 

一?/p>

 

编译程序

 

1

?/p>

 

编译?/p>

是一种翻译程序,

它用于将

源语言

(即用某种程序设计语言写成的)

程序翻译?/p>

目标语言

(即用二进制数表示的伪机器代码写成的)程序。后者在

windows

操作系统平台

下,其文件的扩展名通常?/p>

.obj

。该文件通常还要经过进一步的连接,生?/p>

可执行文?/p>

(机

器代码写成的程序,文件扩展名?/p>

.exe

?/p>

。通常有两种方式进行这种翻译,一种是

编译

,另

一种是

解释

?/p>

后者并不生成可执行文件?/p>

只是翻译一条语句?/p>

执行一条语句。这两种方式?/p>

编译比解释运行的速度要快得多?/p>

 

2

?/p>

 

编译过程?/p>

5

个阶?/p>

:词法分析;语法分析;语义分析与中间代码产生;优化;目标?/p>

码生成?/p>

 

3

?/p>

 

在这五个阶段中,

词法分析

的任务是识别源程序中的单词是否有误,编译程序中实现这

种功能的部分一般称为词法分析器?/p>

在编译器中,

词法分析器通常仅作?/p>

语法分析程序

的一

个子程序以便在它需要单词符号时调用?/p>

在这一编译阶段中发现的源程序错误,

称为

词法?/p>

?/p>

?/p>

 

4

?/p>

 

语法分析

阶段的目的是识别出源程序的语法结构(即语句或句子)是否错误,所以有?/p>

又常?/p>

句子分析

。编译程序中负责这一功能的程序称?/p>

语法分析?/p>

?/p>

语法分析程序

。在?/p>

一阶段中发现的错误称为

语法错误

?/p>

 

5

?/p>

 

C

语言的(源)程序必须经过编译才能生成目标代码,再经过链接才能运行?/p>

PASCAL

语言?/p>

FORTRAN

语言的源程序也要经过这样的过程。通常?/p>

C

?/p>

PASCAL

?/p>

FORTRAN

?/p>

样的语言统称?/p>

高级语言

。而将最终的可执行程序称?/p>

机器语言程序

?/p>

 

6

?/p>

 

在编?/p>

C

语言程序的过程中?/p>

发现源程序中的一个标识符过长?/p>

超过了编译程序允许的

范围,这个错误应在词法分析阶段发现,这种错误通常被称作词法错误?/p>

 

?/p>

 

词法分析器的

任务

是以词法规则为依据对输入的源程序进行单词及其属性的识别?/p>

识别

出一个个单词符号?/p>

 

?/p>

 

词法分析?/p>

输入

是源程序?/p>

输出

是一个个单词的特殊符号,称为

Token

(标记或符号?/p>

?/p>

 

?/p>

 

有两种方法可?/p>

实现

词法分析器:

一?/p>

手工编写

词法分析程序?/p>

二,由词法分析器

自动

生成

程序生成?/p>

 

?/p>

 

语法分析器的

类型

?/p>

:

自下而上、自上而下。常用的语法分析器有?/p>

递归下降分析方法

是一种自上而下分析方法

, 

算符优先分析?/p>

属于自下而上分析方法?/p>

LR

分析?/p>

属于?/p>

下而上分析方法等等?/p>

 

?/p>

 

为了方便语法分析程序的使用,词法分析过程中通常对所识别出的

单词符号进行分类

?



ļ׺.doc޸Ϊ.docĶ

  • Ϸ͸½ڴ
  • 2018곬ǶšҸѧĩ100ִ𰸽
  • ۼִҵԴеñҵ
  • ʩ֯
  • 뾺ĸҪʵ¼
  • IJϰ
  • ֵӿƼѧģԾ(һ)
  • 꼶ϲ 15Ρĸġ̰
  • ɱ
  • Stataѧϰʼ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@) ICP20003344-4