美文网首页
编译和解释的区别

编译和解释的区别

作者: FlyingPig_ | 来源:发表于2019-02-15 22:13 被阅读1次

    过程和结果

    编译器是将 source code 转化成为一种新的目标代码.

    一个现代编译器的主要工作流程如下:
    源代码(source code)→ 预处理器(preprocessor)→ 编译器(compiler)→ 汇编程序(assembler)→ 目标代码(object code)→ 链接器(Linker)→ 可执行文件(executables),最后打包好的文件就可以给计算机去判读运行了。

    解释器对一行行源代码解释运行.

    解释器运行程序的方法有:

    1. 直接运行高级编程语言(如Shell内置的解释器)
    2. 转换高级编程语言码到一些有效率的字节码(Bytecode),并运行这些字节码
    3. 以解释器包含的编译器对高级语言编译,并指示处理器编译后的程序, 如JIT

    优缺点

    例子

    C/C++属于编译型
    Java部分算作解释型

    对比

    解释-直译-编译

    参考

    https://segmentfault.com/a/1190000007536521
    https://zh.wikipedia.org/zh-cn/%E7%B7%A8%E8%AD%AF%E5%99%A8
    https://zh.wikipedia.org/zh-cn/%E7%9B%B4%E8%AD%AF%E5%99%A8
    https://zh.wikipedia.org/wiki/%E5%8D%B3%E6%99%82%E7%B7%A8%E8%AD%AF

    相关文章

      网友评论

          本文标题:编译和解释的区别

          本文链接:https://www.haomeiwen.com/subject/rgsreqtx.html