gpt4 book ai didi

java - 即时编译器和解释器有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 20:59:23 24 4
gpt4 key购买 nike

Just-in-Time-Compiler 和 Interpreter 有什么区别,.NET 和 Java JIT 编译器有什么区别?

最佳答案

我一直发现,更抽象的解释有时会有所帮助。假设您想问墨西哥的每个人“你好。你好吗?” (您的源语言)当然,您首先需要将其翻译成西类牙语(该国的母语)。那个翻译应该是“Hola. Como estas?”

如果您懂西类牙语,则无需翻译( native 代码/汇编程序)。你只是问“Hola. Como estas?”

如果你不懂西类牙语,有 3 种方法可以解决。

首先是获取一个西类牙语词典(一个编译器),然后在你去之前查一下西类牙语单词是什么。也许你意识到“Hola. Que tal?”是一个音节短(编译器优化),而是使用它。这是语言编译;您事先将信息转换为母语。

第二个是当您站在第一个人面前时查找西类牙语词典中的单词,然后存储结果(查找单词just-in-time)。这样做的好处是你可以得到一本普通话词典,然后在中国做同样的实验,而不必保留十个翻译短语的便笺(针对不同平台的二进制文件)。

第三个是当你站在每个人面前时查找单词的地方。从本质上讲,您为每个人单独解释单词(您充当解释器)。这里的好处是任何更改都会立即反射(reflect)到下一个人(您可以改为询问“你好。你的狗是什么颜色的?”而无需飞回家并重新启动 - 你不需要重新编译 短语)。

  • 预先翻译意味着您可以最快地询问他人(预编译);您甚至不需要随身携带字典。
  • 在每个国家/地区看到第一个人时进行翻译几乎与事先翻译一样快,但仍然可以让您前往多个国家/地区而无需回家拿字典,但这意味着您需要随身携带几本字典( 独立于平台的运行时)。
  • 按需翻译速度要慢得多,但允许您在不回家的情况下更改单词(源分布式语言)。

关于java - 即时编译器和解释器有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2426091/

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