了解编译原理 作业1

1简述编译程序与翻译程序、汇编程序的联系与区别。

解释程序是高级语言翻译程序的一种,就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本,,从终端把命令打入后,就能立即得到计算结果。

编译程序它把高级语言(如FORTRAN、COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。

它把汇编语言源程序翻译成机器语言程序。

编译程序与汇编程序的区别:如果源语言是诸如C、C++、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,这样的一个翻译程序称为编译程序。如果源语言是汇编语言,而目标语言是机器语言,这样的一个翻译程序称为汇编程序。

2编译过程包括哪几个主要阶段及每个阶段的主要功能。

1)识别出句子中的一个个单词;词法分析

2)分析句子的语法结构;语法分析

3)根据句子的含义进行初步翻译;词义分析与中间代码产生

4)对译文进行修饰;优化

5)写出最后的译文。目标代码生成

 

 

3简述解释程序与编译程序的区别

编译程序和解释程序是程序执行的两种不同执行方式。

编译程序不参与用户程序的运行控制,而解释程序则参与

了解新开源的华为方舟编译器(https://www.openarkcompiler.cn/home),理解并谈谈它的基本思想与采用的技术路线,以及它对安卓软件生态会有什么影响。

将同一应用中的不同语言代码联合编译、联合优化,消除语言间的性能“鸿沟”,降低开发者的优化成本,通过编译器的语言实现能力和优化能力增强,应用运行时的开销更小,编译器与芯片实现软硬件协同优化,充分发挥硬件能效,应用体验更佳根据设备特征提供便捷的开发与部署策略,提高开发效率,智能化以手机为中心的只能机器互联网的发展趋势,终端设备多种多样,应用场景层出不穷,编程语言、运行环境多样化,不同编程语言之间的互通效率持续影响应用性能,不同设备平台的差异对开发者带来不便。

你可能感兴趣的:(了解编译原理 作业1)