Шаги, выполняемые в случае интерпретатора и компилятора
В чем именно разница между интерпретируемым и скомпилированным языком. Например, я хочу напечатать числа от 1 до 100 . Как именно последовательность операций имеет место в случае интерпретатора и компилятора.
Далее, если возможно, пожалуйста, предоставьте мне шаги в соответствии с языком Java и C
Спасибо
2 ответа
Скомпилированный язык - это язык, который преобразует исходный код в машинный код. Также известен как нативное приложение.
Интерпретируемый язык - это язык, который преобразует исходный код в некоторый промежуточный. Во время выполнения программы интерпретатор запускает исходный код. Интерпретируемые языки, как правило, значительно медленнее, чем скомпилированные языки. Они полезны, однако, для мобильности.
С компилируется, поворачивая исходный код:
for (int i=1;i<=100;i++) { printf("%d",i); }
в сборку, затем в машинный код. Процессор выбирает каждую машинную инструкцию и выполняет ее. Это очень быстро.
Java, однако, преобразует исходный код в промежуточный байтовый код. Во время выполнения он запускается на "виртуальной машине", которая может работать медленнее, чем собственно скомпилированное приложение.
Это уже своего рода FAQ по Stackru:-)
Например, посмотрите следующие ответы:
В чем разница между реализацией компилятора и интерпретатора?