2016-06-21 113 views
0

Java,C或C++等一些語言是非常便攜的/多平臺的。但爲什麼呢?可以在翻譯中使用哪些策略來提高解釋的總體表現?我想過JIT(及時編譯)。既然它翻譯了一條指令,然後在它再次出現時重新使用它。但是JIT可以用來證明多平臺的合理性?其他策略是什麼?提高口譯員績效的策略

回答

1

像Java,C或C++這樣的語言是非常便攜的/多平臺的。但爲什麼呢?

它們是便攜式的,但方式不同。 Java是二進制可移植的,因爲相同的可執行二進制文件可以在許多體系結構上運行。這是通過解釋或JIT編譯實現的。 C/C++的源代碼是可移植的,因爲有很多平臺的編譯器,所以你可以編譯相同的源代碼來爲不同的平臺生成不同的二進制文件。

可以在翻譯中使用哪些策略,將提高解釋的整體性能?

關於提高解釋性能的研究已經有大量的研究,並且可以寫一本關於它的非常厚的書。我建議閱讀關於解釋器的Wikipedia頁面作爲介紹。

既然它翻譯一個指令一次,然後重新使用它,只要 它再次出現。

JIT編譯器將多條指令一起轉換,而不僅僅是一條。例如,JIT編譯器可能一次編譯一個函數。