软件设计师-程序设计语言基础1

程序设计语言分类

        

命令式和结构化程序设计语言(过程式) Fortran,PASCL,C语言......
面向对象程序设计语言 Java,C++,C#......
函数式程序设计语言 lisp,scala
逻辑型程序设计语言 Prolog
脚本语言 PHP,js,Python

低级语言     面向机器的语言            由0、1组成的机器指令序列或汇编语言

                    可读性差,难以修改和维护

高级语言      面向应用程序的语言    Java,C,C++,Python......

                     接近人类语言,提高程序设计效率

解释型        不产生目标程序;效率低;灵活性好;可移植性好

编译型        生成目标程序;效率高;灵活性差;可移植性差

编译程序过程

词法分析:对构成源程序的字符串扫描、分解,识别成单词,删除无用信息

语法分析:在词法分析的基础上,根据语法规则将单词分解成各类语法单位

                  通过语法分析确定整个语句串是否构成语法正确的程序

                                词法,语法分析本质上是对源程序结构分析。

语义分析:检查是否存在语义错误,收集类型信息供后面代码生成阶段使用。

                  分为:静态分析;动态分析两个部分

中间代码:不依赖于具体计算机   表现形式如下

                        后缀式(逆波兰式)

                        树型表示

                        三元式

                        四元式

错误类型

        静态错误        编译时出现,语法错误;静态语义错误

        动态错误        程序运行时出现,变量取0做除数;引用数组下标越界

例题:()阶段的主要任务是对各条语句的结构进行合法性分析

                语法分析器,以单词符号作为输入,分析是否符合语法规则,检查逻辑结构。

猜你喜欢

转载自blog.csdn.net/weixin_40165004/article/details/121530186
今日推荐