计算机编译原理

程序设计语言是为了书写计算机程序而认为设计的符号语言,用于对计算机过程进行、描述、组织和推导。程序语言的发展是一个不断 演化的过程,根本的推动动力是更高的抽象机制以及对程序设计思想的更好地支持。

一、程序设计的概念

计算机程序设计语言是一个不断发展的过程,是一个由低级语言到高级语言的发展过程。计算机的硬件只能够识别0/1组成的机器指令序列,即机器指令程序,因为机器指令是最基本的计算机语言。后来产生的汇编语言也是一种机器语言。后来人们越来越聪明,在以前的基础上开发了功能更加强大的、抽象级别更高的语言以支持程序设计,成为高级语言。高级语言和人们使用的自然语言比较接近,提高了程序设计的效率。

计算机只能够理解0和1,因此高级程序设计语言需要翻译,担任这个任务的程序成为“计算机处理程序”。 语言翻译的方式有多种,基本方式有汇编、解释和编译。解释程序也成为解释器,它或者直接解释执行源程序,或者将程序翻译成为某种中间代码。编译程序是将源程序翻译成为目标语言程序,然后在计算机上运行目标程序。简答对比:解释程序,翻译源程序不生成独立的目标程序。编译时将源程序翻译成为目标程序。

程序语言的发展过程中,产生了很多的语言。第一个被广泛进行科学计算的高级语言是FORTRAN,COBOL是面向事务处理的高级语言,PASCAL结构化的程序设计语言,C语言是兼顾编译语言和汇编语言。Java和C++是面向对象的。PHT是一种在服务器上执行的、嵌入html文档的动态网页,作用是可以快速的执行动态网页。Python面向对象的解释性程序设计语言,也是一种脚本语言。

二、程序设计语言基本成分

分为四种,分别为数据、运算、控制、传输。

1.数据成为分为常量和变量、全局量和局部量 、数据类型。常量、变量区别已经很熟悉了,不再赘述。

2.传输成分

分为值调用和引用调用,已经很熟悉,不在赘述。

三、语言处理程序基础

语言处理程序是一种系统软件的总称,主要作用是将高级语言或汇编语言编写的程序翻译成为某种机器语言程序。主要分为三类:汇编程序、编译程序、解释性程序。

编译的过程又分别为,词法分析、语法分析、语义分析,语义分析是检查源程序是否包括静态语义错误。只有语法和语义都正确的时候,编译过程才能够完成。词法分析、语法分析、语义分析是必须的,其他的不是必须的。

总结:

本章节的部分考的很细碎,但是仔细梳理起来,还是挺有联系的。本章也有很多概念,对照看,也就容易区分了。学习本章,也再次知道了计算机语言的来龙去脉。

时间: 2024-08-09 19:53:35

计算机编译原理的相关文章

关于计算机编译原理

从我个人理解,计算机编译原理,顾名思义,就是关于计算机编程翻译的相关原理,即对计算机编程的,更为深入.更为详细的去解读计算机语言.上网看了许多个人解读编译原理,发现最令我信服的,就是把编译原理类比成人体解剖:只有认真解剖.研究人体各部位,才能在手术中.医治中做到更好的处理.因此,唯有理解编译原理,才能更好地进行计算机的编程等一系列的操作. 博客上有人说到,学习编译原理能够更加容易理解算法之间的关系.能培育自己的观点.提高学习语言的效率.但在我个人看来,学好编译原理,能让我们有一个更强的临时变换的

计算机编译原理---文法

乔姆斯基把方法分成四种类型,即0型.1型.2型和3型.这几种文法类型的概念一定要掌握,是一个非常重要的考点.对于这几种文法,一般书上都只有简单的 概念介绍,比较抽象,所以很多学员都没有真正理解.下面我将把概念结合例题进行讲解. 0型文法 设G=(VN,VT,P,S),如果它的每个产生式α→β是这样一种结构:α∈(VN∪VT)*且至少含有一个非终结符,而β∈(VN∪VT)*,则G是一个0型文法.0型文 法也称短语文法.一个非常重要的理论结果是:0型文法的能力相当于图灵机(Turing).或者说,任

编译原理123

1.编译原理就是什么? 个人理解,编译就是像翻译一样,将一种语言翻译成另一种语言,编译就是将高级语言或汇编语言翻译成电脑能识别的二进制机器语言,编译原理就是讲解这 个编译的过程.内容包括语言和文法.词法分析.语法分析.语法制导翻译.中间代码生成.存储管理.代码优化和目标代码生成. 编译原理是计算机专业设置的一门重要的专业课程.虽然只有少数人从事编译方面的工作,但是这门课在理论.技术.方法上都对学生提供了系统而有效的训练,有 利于提高软件人员的素质和能力. 2.学习编译原理有什么好处? 学习编译原

编译原理简单介绍

编译原理学习导论 大学课程为什么要开设编译原理呢?这门课程关注的是编译器方面的产生原理和技术问题,似乎和计算机的基础领域不沾边,可是编译原理却一直作为大学本科的必修课程,同时也成为了研究生入学考试的必考内容.编译原理及技术从本质上来讲就是一个算法问题而已,当然由于这个问题十分复杂,其解决算法也相对复杂.我们学的数据结构与算法分析也是讲算法的,不过讲的基础算法,换句话说讲的是算法导论,而编译原理这门课程讲的就是比较专注解决一种的算法了.在20世纪50年代,编译器的编写一直被认为是十分困难的事情,第

编译原理之我见

经过网上的调查,我发现编译原理并不像我所想象的那样简单,我以为编译原理其实就是像塑造一个翻译师一样,赋予它翻译的架构即可,但是经过调查后,结果却不是我所想,编译原理就是将高级语言翻译成计算机语言(即计算机所能识别的二进制代码)所遵守的规律,让电脑可以懂得高级语言所能表达的东西,内容包括语言和文法,词法分析,语法分析,语法制导编译,中间代码生成,存储管理,代码优化和目标代码生成.编辑原理是计算机专业的一门重要课,旨在介绍编译程序构造的一般原理和方法.编译原理及技术从本质上来讲就是一个算法问题而已,

学习编译原理

刚刚进入大二,初学习到编译原理,一门新的技术,而且学习起来会比较抽象,不过好在大一曾学习到VC这一门东西,在学习此门课程之前,已在网上了解到不少学习这门课该提前遇到道德东西,也了解到很多人学习这门课的问题,在他们的经验中知道了不少学习方法,希望自己能在日后中用得上.例如这个就觉得很不错:删繁就简,避重就轻.网上流传较广的一篇<编译原理学习导论>(作者四川大学唐良)就基本是这种思路,对于词法分析,作者避免了自动机理论和集合论推演的介绍,直接搬出源码来,大大降低了理解难度,对于语法分析,作者介绍了

程序员的三大浪漫之一——编译原理

编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法.内容包括语言和文法.词法分析.语法分析.语法制导翻译.中间代码生成.存储管理.代码优化和目标代码生成. 编译原理是计算机专业设置的一门重要的专业课程.虽然只有少数人从事编译方面的工作,但是这门课在理论.技术.方法上都对学生提供了系统而有效的训练,有利于提高软件人员的素质和能力. 我认为,既然编译过程是将一种语言翻译为另一种语言的计算机程序的过程,顾名思义,编译原理就是为我们解释计算机是如何将一种语言翻译成另一种语言这

对编译原理的一些看法

编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法.内容包括语言和文法.词法分析.语法分析.语法制导翻译.中间代码生成.存储管理.代码优化和目标代码生成. 编译原理是计算机专业设置的一门重要的专业课程. 编译:就是将程序语言进行翻译,生成可供用户直接执行的二进制代码,即可执行文件. 学习编译原理有好多好处:1.可以更加容易的理解在一个语言种哪些写法是等价的,哪些是有差异的                                               2.

对编译原理的初步了解

编译原理就是什么? 编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法.内容包括语言和文法.词法分析.语法分析.语法制导翻译.中间代码生成.存储管理.代码优化和目标代码生成. 编译原理是计算机专业设置的一门重要的专业课程.虽然只有少数人从事编译方面的工作,但是这门课在理论.技术.方法上都对学生提供了系统而有效的训练,有利于提高软件人员的素质和能力. 学习编译原理的好处是什么? 可以更加客观的比较不同语言的差异,更加容易的理解在一个语言种哪些写法是等价的,哪些是有差异的