1简述编译程序与翻译程序、汇编程序的联系与区别。
解释程序是高级语言翻译程序的一种,就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本,,从终端把命令打入后,就能立即得到计算结果。
编译程序它把高级语言(如FORTRAN、COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。
它把汇编语言源程序翻译成机器语言程序。
编译程序与汇编程序的区别:如果源语言是诸如C、C++、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,这样的一个翻译程序称为编译程序。如果源语言是汇编语言,而目标语言是机器语言,这样的一个翻译程序称为汇编程序。
2编译过程包括哪几个主要阶段及每个阶段的主要功能。
1)识别出句子中的一个个单词;词法分析
(2)分析句子的语法结构;语法分析
(3)根据句子的含义进行初步翻译;词义分析与中间代码产生
(4)对译文进行修饰;优化
(5)写出最后的译文。目标代码生成
3简述解释程序与编译程序的区别
编译程序和解释程序是程序执行的两种不同执行方式。
编译程序不参与用户程序的运行控制,而解释程序则参与
了解新开源的华为方舟编译器(https://www.openarkcompiler.cn/home),理解并谈谈它的基本思想与采用的技术路线,以及它对安卓软件生态会有什么影响。