本人微信公众号"aeolian"~

软件设计师07-程序设计语言与语言处理程序基础

编译原理

《软件设计师07-程序设计语言与语言处理程序基础》

正规式、表达式、传值与传址。

编译过程

解释型:敲一行代码,回车后直接执行,有问题会返回。

编译型:整段程序编写好,按编译运行才会编译成可执行的程序然后进行执行。

区别:

编译型语言,执行速度快、效率高;依靠编译器、跨平台性差些。 
解释型语言,执行速度慢、效率低;依靠解释器、跨平台性好。 

编译型编译过程

《软件设计师07-程序设计语言与语言处理程序基础》

 

词法分析:提醒关键词错误。

语法错误:词法正确,但是词连起来不正确。如if后面没有end if。 

语义分析:循环是否有终止,是否除0等。

中间代码:像java的.class文件即为中间代码,Java、.NET的虚拟机即为中间代码平台,可以用来跨平台。

目标代码:计算机可执行的代码,涉及到操作系统和底层硬件。(不一定所有的语言语义分析后都可以生成计算机可执行的代码,有的会生成中间代码如java,.net)

文法

文法定义

《软件设计师07-程序设计语言与语言处理程序基础》

 

文法类型

《软件设计师07-程序设计语言与语言处理程序基础》

 

有限自动机与正规式

有限自动机

《软件设计师07-程序设计语言与语言处理程序基础》

 正规式

《软件设计师07-程序设计语言与语言处理程序基础》

表达式

《软件设计师07-程序设计语言与语言处理程序基础》

 

函数调用的传值与传址

《软件设计师07-程序设计语言与语言处理程序基础》

各种程序语言特点

《软件设计师07-程序设计语言与语言处理程序基础》

 

点赞

Leave a Reply

Your email address will not be published. Required fields are marked *