gpt4 book ai didi

parsing - 编译器和解析器的区别?

转载 作者:行者123 更新时间:2023-12-03 12:02:39 31 4
gpt4 key购买 nike

通过概念/功能/实现,编译器和解析器之间有什么区别?

最佳答案

编译器通常由几个组件组成,其中之一是解析器。
编译器中的一组常见组件是:

  • 词法分析器 - 将程序分解成单词。
  • 解析器 - 检查句子的语法是否正确。
  • 语义分析 - 检查句子是否有意义。
  • 优化器 - 为简洁起见编辑句子。
  • 代码生成器 - 使用另一个词汇输出具有等效语义的东西。

  • 补充一点:
    正如在别处提到的,small C 是一个递归的不错的编译器,它在解析时生成代码。基本上一次性完成句法分析、语义分析和代码生成。我记得,它也在解析器中进行词法分析。
    很久以前,我写了一个 C 编译器(实际上有几个:用于微 Controller 的 Introl-C 系列),它使用递归下降并在解析过程中进行语法和语义检查,并生成程序的树表示,从中生成代码。
    今天,我正在处理一个 compiler这确实源 -> token -> AST -> IR -> 代码,就像我上面描述的那样。

    关于parsing - 编译器和解析器的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1921474/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com