汇编器与编译器
通常,编译器是一个计算机程序,它读取以一种语言编写的程序,该程序称为源语言,并将其转换为另一种语言,称为目标语言。传统上,源语言是一种高级语言,例如C ++,目标语言是一种低级语言,例如汇编语言。但是,有一些编译器可以转换用汇编语言编写的源程序,并将其转换为机器代码或对象代码。汇编器就是这样的工具。因此,汇编器和编译器最终都会产生可以直接在计算机上执行的代码。
什么是编译器?
编译器是一个计算机程序,它读取以一种语言编写的程序,该程序称为源语言,并将其转换为另一种语言,称为目标语言。最常见的语言是一种高级语言,目标语言是低级语言。因此,总的来说,可以将一般编译器视为翻译器,从一种语言转换为另一种语言。此外,编译器对代码进行了一些优化。典型的编译器由几个主要组件组成。第一个组件是扫描仪(也称为词汇分析仪)。扫描仪读取程序并将其转换为一串令牌。第二个组件是解析器。它将令牌字符串转换为解析树(或抽象的语法树),该树捕获了程序的句法结构。下一个组件是解释句法结构语义的语义例程。 The code optimizations and final code generation follow this.
什么是汇编器?
汇编器是将汇编语言转换为机器代码的软件或工具。因此,汇编器是一种编译器,源代码是用汇编语言编写的。汇编是一种人类可读的语言,但通常与相应的机器代码有一对一的关系。因此,据说汇编器可以执行同构(一对一地图)翻译。高级汇编者提供了支持计划开发和调试过程的其他功能。例如,称为宏汇编器的汇编器类型提供了宏观设施。
汇编程序和编译器有什么区别?
编译器是一种计算机程序,它读取以一种语言编写的程序并将其翻译成另一种语言,而汇编器可以视为一种特殊类型的编译器,该编译器仅将汇编语言转换为机器代码。编译器通常直接从高级语言中直接产生可执行代码,但是汇编器会产生一个对象代码,该对象代码可能必须使用链接程序程序链接才能在计算机上运行。由于汇编语言具有与机器代码的一对一映射,因此可以将汇编器用于生产非常重要的情况下非常有效运行的代码(例如,对于图形发动机,与个人计算机相比,具有有限硬件的嵌入式系统的嵌入式系统像微波,洗衣机等)。
萨尔曼·哈桑·加兹(Salman Hasan Ghazi)说
非常好的信息