zoukankan      html  css  js  c++  java
  • 第一次作业

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    SSH深度历险(五) 深入浅出-----IOC AND AOP
    Hbuilder X下载及安装教程
    如何用Prometheus监控十万container的Kubernetes集群
    使用并部署Flutter Web的步骤实例
    回顾 Android 11 中的存储机制更新
    移动端UI一致性解决方案
    使用 tail 结合 grep 查找日志关键字并高亮及显示所在行上下文
    Nginx PHP 报504 Gateway time-out错误的解决方法
    SPSS 24 安装详细教程及下载
    CoRL 2020奖项公布,斯坦福获最佳论文奖,华为等摘得最佳系统论文奖
  • 原文地址:https://www.cnblogs.com/zqy1004/p/11457899.html
Copyright © 2011-2022 走看看