Результаты (
английский) 1:
[копия]Скопировано!
Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений языки программирования могут быть разделены на компилируемые и интерпретируемые Программа на компилируемом языке при помощи специальной программы компилятора преобразуется(компилируется)в набор инструкций для данного типа процессора(машины код) и далее записывается в исполняемый фал, который может быть запущен на выполнение как отдельная программа. Другими словами, компилятор переводит программу с языка высокого уровя на низкоyровневый язык, понятный процессору. If the program is written in an interpreted language, the interpreter directly executes (interprets) its text without prior translation. While the program remains in the original language and can not be started without the need for an interpreter. You can say that my computer's processor-the interpreter native code. In short. the compiler translates the program on machine language immediately and uemzhom, creating a separate scrap program and interpreter translates into machine language directly at runtime. Разделение на компилируемые и интерпретируемые языки является несколько условным. Так, для любого традиционно компилируемого языка, как, например, Паскаль, можно написать интерпретатор. Кроме того, большинство современных "чистых" интерпретаторов не исполняют конструкции языка не- посредственно, а компилируют их в некоторое высокоуровневое промежуточное представление(например, с разыменованием переменных и раскрытием макросов) Для любого интерпритируемого языка можно создать компилятор -например, язык Лисп, изначально интерпретируемый. может компилироваться без бы то ни было ограничений каких Создаваемый во время исполнения программы кол может так же динамически компилироваться во время исполнения.Как правило, скомпилированные программы выполняются быстрее и не требуют для выполнения дополнительных про- грамм, так как уже переведены на машинный язык. Вместе с тем при каждом изменении текста программы требуется ее перекомпиляция, что создает трудности при разработке. Кроме того, скомпилированная программа может выполняться только на том же типе компьютеров и, как правило, под той же операционной системой, на которую был рассчитан компилятор чтобы создать исполняемый файл для машины другого типа требуется новая компиляция интерпретируемые языки обладают некоторыми специфическими дополнительными возможностями. Кроме того программы на них можно запускать сразу же после изменения что облегает разработку. Программа на интерпретируемом языке может быть зачастую запущена на разных типах машин и операционных систем без дополнительных усилий. Однако интерпретируемые программы выполняются заметно медлен- нее, чем компилируемые, кроме того, они не могут выполняться без дополнительной программы-интерпретатора Некоторые языки, например, Java и C# находятся между компилируемыми и интерпретируемыми. А именно, программа компилируется не в машинный язык, а в машинно-независимый код низкого уровня байт-код. Далее байт-код выполняется виртуальной машиной. Для выполнения байт-кода обычно используется интерпретация. Хотя отдельные его части для ускорения работы программы быть транслированы в машинный код могут непосредственно во время выполнения программы по технологии компиляции "на лету» (Just-in-time compilation, Jit) Для Java байт-код исполняется виртуальной машиной Java(ava virtual C# Machine, JVM), для C# - Common Language Runtime Подобный подход в некотором смысле позволяет использовать плюсы как интерпретаторов, так и компиляторов. Следует упомянуть также оригинальный язык Форт(Forth), который является как бы одновременно интерпретируемым и компилируемым
переводится, пожалуйста, подождите..
