程序语言与语言处理程序

软考-软件设计师

程序语言与语言处理程序

1.高级语言

解释型 编译型
解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢 编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了

C/C++ 等都是编译型语言,而Java,C#等都是解释型语言
虽然Java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。
在运行的时候,由JVM将字节码再翻译成机器语言。
脚本语言是一种解释性的语言。
编译程序生成源代码的目标代码,而解释程序则不参生源代码的目标代码

2.程序语言分类

命令式程序设计语言 函数式程序设计语言
基于动作的预言。代表有:c语言,Fortran,Pascal 一种对应规则,主要应用于人工智能,是一种非冯·诺伊曼式的程序设计语言。代表:Lisp,ML
面向对象式程序设计语言 逻辑程序设计语言
面向对象和类的概念。面向对象的核心:封装,继承,多态,抽象。代表:Java,C++ 以形式逻辑为基础的语言。适用于书写自动定理证明、专家系统、和自然语言理解等问题的程序。关键词:Prolog

3.注释的分类

序言性注释 功能性注释
通常位于程序的开头,给出程序的整体说明,可以包括程序对硬件、软件资源的要求,重要变量和参数的说明,程序的作者、审查者、变成日期、修改日期等,程序实现的功能描述 一般嵌于程序体之中,描述程序中相关语句的作用或注释后程序段的要实现什么功能

4.编译型语言,编译过程
源程序–>词法分析–>语法分析–>语义分析–>中间代码生成–>代码优化–>目标代码生成
词法分析:非法字符,关键字,标识符拼写错误。
语法分析:语法结构出错,缺分号,判断语句不匹配
语义分析:死循环,除数为0,其他逻辑错误
注:中间代码生成,代码优化并不是每种编译器都必须有。

5.有限自动机
确定的有限自动机A和不确定的有限自动机B等价,则:
A和B可是别的记号完全相同。
例题:程序语言与语言处理程序
解析程序语言与语言处理程序
技巧:代入数据挨个走,最后到终点则对

5.正则式
例题:程序语言与语言处理程序
解析:程序语言与语言处理程序
程序语言与语言处理程序
注:初入软考,写着自我方便复习,自己觉得容易考的就写上面了,后面补充