程序设计语言与语言处理程序基础
由于这块比较简单,所以就简单看一下,主要关注在正规式、表达式以及传值与传址这三个地方。
1. 编译与解释
- 编译过程
2. 文法
- 一个形式文法是一个有序四元组G=(V,T,S,P),其中:
- V:非终结符。不是语言组成部分,不是最终结果,可理解为占位符。
- T:终结符。是语言的组成部分,是最终结果。V∩T=空集
- S:起始符。是语言的开始符号。
- P:产生式。用终结符替代非终结符的规则。形如α->β
3. 正规式(重)
语法推导树
- 每个结点都有一个标记,此标记是V的一个符号;
- 根的标记是S;
- 若一结点n至少有一个它自己除外的子孙,并且有标记A,则A肯定在V(N)中;
- 如果结点n的直接子孙,从左到右的次序是结点n1,n2,…nk,其标记分别是:A1,A2,…Ak,那么A->A1,A2…Ak,一定是P中的一个产生式
4. 有限自动机
5. 表达式(重)
用到了树的遍历
6. 传值与传址(重)
传递方式 | 主要特点 |
传值调用 | 形参取的是实参的值,形参的改变不会导致调用点所传的实参的值发生改变。 |
引用(传址)调用 | 形参取的是实参的地址,即相当于实参存储单元的地址引用,因此其值的改变同时就改变了实参的值。 |
7. 多种程序语言特点
语言 | 特点 |
Fortran | 科学计算,执行效率高 |
Pascal | 为教学而开发的,表达能力强,Delphi |
C语言 | 指针操作能力强 |
Lisp | 函数式程序语言,符号处理,人工智能 |
C++ | 面向对象,高效 |
Java语言 | 面向对象,中间代码,,NET |
Prolog | 逻辑推理,简洁性,表达能力,数据库和专家系统 |
以上是在学习时做的笔记,后续在做题过程中可能会继续补充