假设我们有一种语言X,它的编译器是用Y语言设计的,而Y语言的编译器是用汇编语言设计的。现在,为了执行一段用X编写的代码,指令在Y语言的帮助下被编译,也就是说,X中的指令作为输入呈现给Y(它用作X的编译器),其中Y的编译器执行它们并产生用于X.But的编译代码。这里,呈现给Y的指令也必须由汇编语言编译。
在这里,为了编译X中的指令,必须编译Y中的指令。为什么这是必要的?
当我们直接使用汇编代码编译X中的指令时,不是比上面的情况更容易吗?
发布于 2017-09-30 17:25:39
在汇编中,没有什么比更简单的更重要的了。汇编只是另一种语法,它本身必须最终编译才能产生机器码。
回到语言“X”:取决于你想要的结果。这门语言会自我引导吗?如果是这样的话,这是递增完成的,中间或初始编译可以用任何合适的语言完成。最终,您将逐步淘汰中间语言,因为您的语言接管了这项工作。如果你从来没有计划过引导和/或自托管,那么最明显的选择将是最灵活和可移植的语言,需要最少的努力来管理更改,这通常是一种比“”更高级的语言。
https://stackoverflow.com/questions/46500549
复制相似问题