预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共27页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第一章 1.解答: 程序设计语言:程序设计语言是遵守一定规范的、描述“计算”(Computing)过程的形式语言。一般可以划分为低级 语言和高级语言两大类。低级语言是面向机器的语言,它是为特定的计算机系统设计的语言,机器指令、汇编语言是低级语 言。高级语言是与具体计算机无关的“通用”语言,它更接近于人类的自然语言和数学表示,例如FORTRAN、Pascal、C等 等我们熟悉的语言是高级语言。 语言处理程序:由于目前的计算机只能理解和执行机器语言,因此必须有一个程序将用程序设计语言书写的程序等价(执 行效果完全一致)地转换为计算机能直接执行的形式,完成这一工作的程序称为“语言处理程序”。它一般可分为解释程序 和翻译程序两大类。 翻译程序:翻译程序(Translator)是一种语言处理程序,它将输入的用程序设计语言书写的程序(称为源程序)转换 为等价的用另一种语言书写的程序(称为目标程序)。若源语言是汇编语言,目标程序是机器语言,称这种翻译程序为汇编 程序。若源语言是高级语言,目标程序是低级语言,称这种翻译程序为编译程序。 解释程序:解释程序(Interpreter)是一种语言处理程序,它对源程序逐个语句地进行分析,根据每个语句的含义执 行语句指定的功能。 2.解答: 编译程序的总框图见图1.2。其中词法分析器,又称扫描器,它接受输入的源程序,对源程序进行词法分析,识别出一 个个的单词符号,其输出结果是单词符号。 语法分析器,对单词符号串进行语法分析(根据语法规则进行推导或归约),识别出程序中的各类语法单位,最终判断 输入串是否构成语法上正确的“程序”。 语义分析及中间代码产生器,按照语义规则对语法分析器归约出(或推导出)的语法单位进行语义分析并把它们翻译成 一定形式的中间代码。编译程序可以根据不同的需要选择不同的中间代码形式,有的编译程序甚至没有中间代码形式,而直 接生成目标代码。 优化器对中间代码进行优化处理。一般最初生成的中间代码执行效率都比较低,因此要做中间代码的优化,其过程实际 上是对中间代码进行等价替换,使程序在执行时能更快,并占用更小的空间。 目标代码生成器把中间代码翻译成目标程序。中间代码一般是一种机器无关的表示形式,只有把它再翻译成与机器硬件 直接相关的机器能识别的语言,即目标程序,才能在机器上运行。 表格管理模块保持一系列的表格,登记源程序的各类信息和编译各阶段的进展状况。编译程序各个阶段所产生的中间结 果都记录在表格中,所需要的信息也大多从表格中获取,整个编译过程都在不断地和表格打交道。 出错处理程序对出现在源程序中的错误进行处理。如果源程序有错误,编译程序应设法发现错误,把有关错误信息报告 给用户。编译程序的各个阶段都有可能发现错误,出错处理程序要对发现的错误进行处理、记录,并反映给用户 Chapter2 1.试写出V={0,1}上下述集合的正则表达式: T ⑴所有以1开始和结束的符号串。 ⑵恰含有3个1的所有符号所组成的集合。 ⑶集合{01,1}。 ⑷所有以111结束的符号串。 解答:⑴1(0|1)*1|1 ⑵0*10*10*10* ⑶01|1 ⑷(0|1)*111 2.⑴试写出非负整数集的正则表达式。⑵试写出以非5数字为头的所有非负整数集的正则表达式。 解答:⑴0|(1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)* ⑵0|(1|2|3|4|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)* 3.试将2.8中所示的有限状态自动机M最小化。 分析:只能对确定的有限状态自动机进行最小化,本题的自动机已经是确定的。 最小化采用状态分离法,具体做法如下: ①进行0等价类的划分:Q划分为Q与Q-Q ff ②若已进行了k等价划分,即Q已被划分成(Q,Q,„Q),再进行k+1划分,对Q(i=1„n),若q、q’Q,使得 12nii 对某一个aV,(q,a)Q和(q’,a)Q,j≠l或(q,a)存在而(q’,a)不存在或反之。则将Q划分为二个 Tjli 子集Q,Q,使qQ,q’Q。 i1i2i1i2 ③重复②直至无法进一步划分为止。对最后划分得到的状态子集中每一个子集,选择该子集中任何一个状态作为该状态子 集的代表,然后修改原来的有限状态自动机的状态转换函数,凡在作用下转向某状态子集中任何一个状态的一律改成转向 该状态子集的代表。若一个状态子集中某一状态是原来的开始状态,则该状态子集的代表就是新的有限状态自动机的开始状 态。同理,若一个状态子集中的状态均是最终状态,则该状态子集的代表就是新的有限状态自动机的最终状态。 ④抹去可能存在的无用状态与不可及状态。 解答:此有限状态自动机的状态转换表如表3.1所示: 表2.1的状态M转换表