编译器是一种特殊类型的计算机程序,它将人类可读的文本文件转换成计算机更容易理解的形式。在最基本的层次上,计算机只能理解两件事:1和0。在这个层次上,人类将非常缓慢地操作并找到包含在1和1的长字符串中的信息0不可理...
编译器是一种特殊类型的计算机程序,它将人类可读的文本文件转换成计算机更容易理解的形式。在最基本的层次上,计算机只能理解两件事:1和0。在这个层次上,人类将非常缓慢地操作并找到包含在1和1的长字符串中的信息0不可理解。编译器是一种弥补这一差距的计算机程序。

编译器是一种特殊类型的计算机程序,它将人类可读的文本文件转换成计算机更容易理解的形式一开始,编译器是非常简单的程序,只能将符号转换成计算机所理解的1和0位,由一系列的步骤组成,这些步骤最初是手工翻译成计算机可以理解的数据。这是一项非常耗时的任务,因此部分任务被自动化或编程,并编写了第一个编译器。这个程序汇编或编译了执行分步程序所需的步骤这些简单的编译器被用来编写一个更复杂的编译器。在新版本中,可以在编译器程序中添加更多的规则,使程序员能够使用更自然的语言结构来操作,这使得编写程序更容易,并允许更多的人开始编写程序随着越来越多的人开始编写程序,关于编写程序的想法也越来越多,并被用来制作更复杂的编译器,改进并变得更容易使用。编译器程序也可以是专门的。某些语言结构比其他语言更适合于特定任务,因此为特定任务或语言开发了特定的编译器。有些编译器是多阶段的或多阶段的。第一次通过可以使用非常自然的语言,使其更接近计算机可理解的语言。第二次甚至第三次传递可以将其带到最后一个阶段,即可执行文件多级编译器中的中间输出通常被称为伪代码,因为它不能被计算机使用。伪代码是非常结构化的,就像一个计算机程序,不像更自然的语言那样自由流动和冗长。最终的输出称为可执行文件,因为它是由计算机实际执行或运行的。像这样将任务拆分,可以更容易地编写更复杂的编译器,因为每个子任务都是不同的。它还可以使计算机更容易地指出它在理解被要求做什么时遇到的困难限制编译器理解程序的错误称为
语法错误。程序函数调用方式的错误称为
逻辑错误。逻辑错误更难发现和更正。语法错误就像拼写错误,而逻辑错误更像是语法错误交叉编译器程序也被开发出来了。交叉编译器允许为一台由特定制造商设计的计算机编写的一组指令文本文件,由另一家制造商为另一台计算机编译和运行。例如,为在英特尔计算机上运行而编写的程序有时可能是交叉的编译后运行摩托罗拉公司开发的一台计算机。这通常不能很好地工作。在计算机程序运行的层次上,计算机硬件可能看起来非常不同,即使它们看起来和你相似。交叉编译不同于让一台计算机模拟另一台计算机。如果一台计算机正在模拟另一台计算机,模拟通常比交叉编译慢,因为两个程序同时运行,假装是另一台计算机的程序和正在运行的程序。然而,要使交叉编译工作,你需要描述程序的原始自然语言文本一种与原始计算机非常相似的计算机,程序可以在另一台计算机上运行。这并非总是可能的,因此这两种技术都在使用。