2015-05-02 5 views
0

Во-первых, я хочу, чтобы вы проверили лучший ответ здесь.Является ли компиляция кода действительно быстрее, чем интерпретация кода?

Compiled vs. Interpreted Languages

Как вы можете видеть, это говорит, скомпилированные языки быстрее. Однако я знаю, что компиляторы принимают весь исходный код, компилируют его в машинный код и затем выполняют его. Интерпретатор принимает одно утверждение за раз, переводит его на машинный код или код виртуальной машины, а затем выполняет его немедленно. Таким образом, мы получаем выход «на лету» во время выполнения.

Тогда не интерпретируются языки быстрее, чем скомпилированные языки?

+2

Как этот вывод вытекает из его предпосылки? – harold

+0

Компиляция - это однократное действие, которое не учитывается во время выполнения, потому что вам не нужно компилировать каждый раз при запуске. – RaGe

+0

Компилятор не выполняет код после компиляции. Он просто генерирует двоичный файл, который может быть выполнен снова и снова. –

ответ

1

Вы пытаетесь сравнить "Code Compiling" против "Code Interpreting"

«Код Компиляция» не выполняет код, он только создает двоичный или независимо от платформы код, который может быть запущен снова и снова без необходимости повторного -compilation или минимальный сборник, который имеет гораздо меньше накладных расходов, чем интерпретировать как в Java

«код Устный перевод» - компилирует код построчно в память и запускает его на лету

Таким образом, скомпилированные языки быстрее выполняются в исполнении как на момент выполнения, не требуется компиляция, но в интерпретируемых языках каждый шаг выполнения каждый раз предшествует шагу компиляции, что делает его медленным.