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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    python3----数据结构
    Java的同步容器和并发容器
    Java基础——IO
    JVM(2)——GC算法和收集器
    Java集合(2)——深入理解ArrayList、Vector和LinkedList
    java线程(7)——阻塞队列BlockingQueue
    JVM(1)——简介
    java泛型——基本使用
    java线程(6)——线程池(下)
    java线程(5)——线程池(上)
  • 原文地址:https://www.cnblogs.com/zqy1004/p/11457899.html
Copyright © 2011-2022 走看看