第一次作业

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

①编译的过程就是将源代码文件以字符流的形式进行处理,进行词法和语法的分析,然后通过汇编器将源代码指令转变成汇编指令,然后交由机器识别。汇编过程实际上指把汇编语言代码翻译成目标机器指令的过程。

②编译程序:由编译器将源代码转变成汇编代码

③汇编程序:由汇编器将汇编代码转变成目标代码

④翻译程序:被翻译的程序,会经过处理翻译成一个目标文件,也就是机器语言代码。

 

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

①词法分析:将源程序转化为字符流,输出单词符号

②语法分析:将单词符号以语法单位输出

③语义分析与中间代码生成:将语法单位与中间代码形式输出

④中间代码优化:为了节省空间和方便管理代码,把中间代码变换成依赖具体机器的目标代码。

⑤目标代码生成:将优化后的中间代码形式生成目标程序供机器识别。

 

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

①解释程序:边解释边执行,并不用形成目标程序就能运行程序。

②编译程序:需要编译源程序为目标程序提供给机器识别才能运行。

 

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

①基本思想:方舟编译器是为支持多种编程语言、多种芯片平台的联合编译、运行而设计的统一编程平台,包含编译器、工具链、运行时等关键部件。

②技术路线:当前方舟编译器支持Java/Kotlin程序字节码的前端输入,其它编程语言的支持(如 C/C++/JS 等)还在规划中,方舟编译器的中间表示(IR)转换器将前端输入转换成方舟IR,并输送给后端的优化器,最终生成二进制文件,二进制文件与编译器运行时库文件链接生成可执行文件,在方舟的运行环境中就可执行该文件。

③影响:华为方舟编译器的开源很大程度帮助了各行各业将Android优化的更好,让大家更好的将方舟编译器运用的更好!

转载于:https://www.cnblogs.com/zqy1004/p/11457899.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值