1 何谓源程序、目标程序、翻译程序、编译程序和解释程序
它们之间可能有何种关系
2 一个典型的编译系统通常由哪些部分组成
各部分的主要功能是什么
3 选择一种你所熟悉的程序设计语言,试列出此语言中的全部关键字,并通过上机使用该语言以判明这些关键字是否为保留字
4 选取一种你所熟悉的语言,试对它进行分析,以找出此语言中的括号、关键字END 以及逗号有多少种不同的用途
5 试用你常用的一种高级语言编写一短小的程序,上机进行编译和运行,记录下操作步骤和输出信息,如果可能,请卸出中间代码和目标代码
第一章 习题解答 1
解:源程序是指以某种程序设计语言所编写的程序
目标程序是指编译程序(或解释程序)将源程序处理加工而得的另一种语言(目标语言)的程序
翻译程序是将某种语言翻译成另一种语言的程序的统称
编译程序与解释程序均为翻译程序,但二者工作方法不同
解释程序的特点是并不先将高级语言程序全部翻译成机器代码,而是每读入一条高级语言程序语句,就用解释程序将其翻译成一段机器指令并执行之,然后再读入下一条语句继续进行解释、执行,如此反复
即边解释边执行,翻译所得的指令序列并不保存
编译程序的特点是先将高级语言程序翻译成机器语言程序,将其保存到指定的空间中,在用户需要时再执行之
即先翻译、后执行
解:一般说来,编译程序主要由词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序、信息表管理程序、错误检查处理程序组成
解:C 语言的关键字有:auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof stat