07.程序设计语言基础(编译原理)

0.大纲

1.编译过程 (重点)

  • 解释性,就是敲一行代码,就回车,就会告诉你结果   c
  • 编译型,是先编译成机器码,再执行   java
语义分析:例如除0异常之类,有些语义错误,无法用语义分析出来

例题1


2.文法

正则闭包,闭包考的少
  • 非终结符,大写字母,可以推导出其他符号
  • 终结符,用小写字母表示

2.1 语法推导树

根据题目给出的条件,还有根据结果的句型,可以构造出来树
图中 
  • {a,b}  终结符
  • {S,A}为非终结符
  • S是起始服    
  • P是产生式

3.有限自动机和正规式

3.1有限自动机 (重点)

特殊符号后面那个,就是初始值
双圈为代表的的是结束点
这个提考点就是问你 01,或者001,或者00,能不能到终点,我们就看图就行,经过的线,顺次组装起来
如下面 A到C 

3.2正规式 (考的多) (重点)

正规式是有限永动机的另外一种表达形式

| 代表的意思,能推出a,也能推出b , *代表的是循环多次,范围是 0 到 无穷大,0就是一次也不出现,所以会为空


两种题目
1.下面哪种无法识别,就是得不出这个选项    做这种题,就是根据条件,我们自己来推导一下,就可以得出结果
2.求正规式,我们快速做法,就是用这个选项的正规式能不能推出第一题相应的选项,每个选项进行比较即可得出答案

4.表达式(考点)

正常的我们式子,用中缀遍历即可构造出树,符号在中间,括号是不构造进树里面的,但是我们要注意构造树的先后顺序
例如下面的
  • a-b*c+5
  • (a-b)*(c+5)

5.函数调用(考点)

c语言的&就是取地址。有*的代表的是引用类型


6.各类程序语言特点






posted @ 2020-12-21 09:50  超极本online  阅读(240)  评论(0)    收藏  举报