
蒋立源编写的《编译原理》课后习题答案(第三版)。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
1解:源程序指的是采用特定编程语言编写的代码,而目标程序则是编译程序(或解释程序)经过处理后生成的,并以另一种语言(目标语言)表达的程序。翻译程序则是一个将一种语言转换为另一种语言的通用术语。编译程序和解释程序都属于翻译程序的范畴,但它们的工作方式却存在显著差异。解释程序的运作方式是,它不会事先将整个高级语言程序全部翻译成机器代码,而是逐行读取高级语言语句,并立即将其翻译成机器指令执行,然后再读取下一条语句继续解释和执行,如此循环往复。因此,它实现边解释边执行的模式,且翻译产生的指令序列不会被保存下来。与之相对的是,编译程序的流程是先将高级语言程序完整地翻译成机器语言程序,并将结果存储在指定的内存空间中,然后在用户需要时再进行执行。也就是说,它先进行翻译操作,随后再进行执行操作。
2解:通常情况下,编译程序主要由一系列模块构成,包括词法分析器、语法分析器、语义分析器、中间代码生成器、代码优化器、目标代码生成器、信息表管理程序以及错误检查处理程序等。
3解:C 语言中包含以下关键字:auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、int、long、register 、return 、short 、signed 、sizeof 、static 、struct 、switch 、typedef 、union 、unsigned 、void 、volatile 和 while。这些关键字在 C 语言中被定义为保留字,不可用于标识符的创建。
4解:C 语言中使用了三种类型的括号:{}(用于语句块)、[](用于数组访问)和() (用于函数定义与调用以及表达式运算)。{}主要用于界定语句块;[]主要用于访问数组元素;而()则在函数定义和调用过程中使用,同时也可以用于改变表达式运算的优先级。值得注意的是, C 语言中没有 END 关键字。此外, 逗号在 C 语言中既可以作为分隔符来分隔不同的表达式, 也可以作为运算符来参与运算, 其优先级最低, 计算结果为逗号表达式最右边的子表达式的值 (例如: (a, b, c, d) 的结果为 d)。
全部评论 (0)


