——程序语言和语言处理程序知识
Posted Yolanda94
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了——程序语言和语言处理程序知识相关的知识,希望对你有一定的参考价值。
【背景】
软考系列博客第三篇。关于程序语言和语言处理程序的知识
【内容】
程序语言和语言处理程序基础知识
- 汇编、编译、解释系统基础
- 解释与编译
- 编译型
- 接受所输入的用程序语言编写的源程序,然后直接解释执行。(BASIC)
- 解释型
- 将用某种程序语言编写的源程序直接翻译成另一种语言(目标程序语言),而且两者在逻辑上等价(C语言)
- 编译型
- 编译过程
- 词法分析
- 从左到右逐字符读入源程序,识别出一个个单词符号;它是根据语言的词法规则(单词结构规则)进行的。
- 语法分析
- 在词法分析的基础上将单词符号序列分解成各类,诸如“程序”,“语句”,“表达式”等语法单位。
- 语义分析
- 审查源程序有无语义错误,为代码生成阶段收集类型信息
- 中间代码生成
- 逆波兰
- 三元式
- 四元式
- 树形
- 代码优化
- 定义
- 对程序进行等价变换,使其生成更有效的目标代码
- 局部优化
- 循环优化
- 全局优化
- 定义
- 目标代码生成
- 把经过语法分析或优化后的中间代码作为输入,将其转换成特定机器的机器语言或汇编语言作为输出,这样的转换程序称为代码生成器
- 词法分析
- 形式语言基本知识
- 字母表∑
- 非空的有穷集合
- 字符串
- 由∑的符号组成的有穷系列成为子母表∑上的字符串
- 包含的字符数称为长度
- ε(有一个元素)
- 长度为0的为空串
- ∅是没有元素的空串
- 形式语言
- ∑上的字符串的全体记为∑*,∑*上的任何自己都成为字母表∑上的形式语言,简称语言
- 前缀、后缀
- 连接
- 连续重复
- 把n个a的链接记为aⁿ
- 字集运算
- 或操作
- A∪B=α|α∈A或α∈B
- 积运算
- AB=αβ|α∈A且β∈B
- 幂运算
- 正则闭包
- 闭包
- 或操作
- 形式文法
- 文法分类
- 0型文法
- 1型文法
- 2型文法
- 3型文法
- 右线性文法
- 左线性文法
- 字母表∑
- 词性分析
- 有限自动机
- 确定的
- 不确定的
- 正规式
- 有限自动机
- 语法分析
- 自底向上
- 自顶向下
- 解释与编译
- 程序设计语言基础
- 表达式
- 前缀表达式
- 后缀表达式
- 中缀表达式
- 程序语句基本控制结构
- 程序调用的实现机制
- 表达式
- 各种程序语言的特点
- FORTRAN语言
- PASCAL语言
- C语言
- Lisp语言
- C++语言
- Java语言
- C#语言
- Prolog语言
以上是关于——程序语言和语言处理程序知识的主要内容,如果未能解决你的问题,请参考以下文章