1)简述编译程序与翻译程序、汇编程序的联系与区别。
编译程序是翻译程序的一种,另外一种则是解释程序。
翻译程序具体是把一种语言所写的源程序翻译成与之等价的另一种语言的目标文件。
而编译程序则是将高级语言所写的源程序翻译成等价的机器语言或汇编语言的目标文件。
汇编程序则是将汇编语言翻译成机器语言的程序。
如果源语言是诸如C、C++、Java等等,而目标语言是诸如汇编语言或机器语言之类的,这样的一个翻译过程称为编译。如果源语言是汇编语言,而目标语言是机器语言,这样的一个翻译过程称为汇编。
他们的目标都是将语言翻译成机器语言。
2)编译过程包括哪几个主要阶段及每个阶段的主要功能。
包括词法分析、语法分析、中间代码生产、代码优化、目标代码生成这5个主要阶段。
词法分析:都由字符组成的单词进行处理,逐个字符进行对源程序进行扫描,把作为字符的源程序改造成单词字符号串的中间程序。
语法分析:分析单词字符串是否符合语法规则的语法单位。最后看是否能够构成一个合法的程序。
中间代码生成:
3)简述解释程序与编译程序的区别。
编译程序是将源代码完整翻译后执行的程序,解释程序则是逐句逐句翻译并执行的程序。