【软件设计师07】程序设计语言与语言处理程序基础
程序设计语言与语言处理程序基础
编译与解释、文法、正规式、有限自动机、表达式、传值与传址、多中程序语言特点
1. 编译过程
2. 文法定义
(逐渐降低考察比例,很少考察)
概念
文法类型
语法推导树
有限自动机与正规式(重点)
常见问题:给一个串比如01、10、001等,看图中起点到终点能否连起来得到这样的串
正规式 是有限自动机到另一个表达形式
正规式例题:(1)A. S -> aA -> abS -> abaA -> ababS -> ababaA -> ababab 成立
同理推出B、C成立,D无法识别
(2)(*表示可以组合任意次数)常规解法很慢,用代入法可以快速推理
看(2)中哪一个能把刚刚(1)中正确的串(ACB)都表示出来但又不能把错误的串(D)表示出来就“可能”是正确答案
A. a|b随意组合后ABCD都可以表示,排除
B. ab A可以,BCD不可以,排除
C. ab|ba A,B,C都可以,D不可以;(2)ABD都排除后选择C
D ab|ba 表示前面任意个ab连接若干个ba串,不能组合出(1)中的C,所以排除
**有限自动机例题:**C ;判断从初态A输入四个数能否到达终态C
3. 表达式
先构造表达式的树,注意括号限制的顺序,然后得出D
如果没有括号,a - b * c + 5;先看乘法,组成结点,再看a - b * c,再加上6结点构成树
4. 函数调用 - 传值与传址
基本操作…