компилятор



Компилятор это

Автор Look in the future... задал вопрос в разделе Компьютеры, Связь

Кто может объяснить, что такое Компилятор? и получил лучший ответ

Ответ от Пользователь удален[мастер]
Компилятор, это такая штука, которая собирает исходный код написанный на каком либо языке программирования в исполняемый файл. По простому в exe файл.

Ответ от ЂАХИР ИСАКОВИЧ[гуру]
Большая часть компиляторов переводят программу с некоторого высокоуровневого языка программирования в машинный код, который может быть непосредственно выполнен центральным процессором. Как правило, этот код также должен выполняться в среде конкретной операционной системы, поскольку использует предоставляемые ей возможности (системные вызовы, библиотеки функций) . Архитектура (набор программно-аппаратных средств) , для которой производится компиляция, называется целевой машиной.Некоторые компиляторы (например, Java) переводят программу не в машинный код, а в программу на некотором специально созданном низкоуровневом языке. Такой язык — байт-код — также можно считать языком машинных команд, поскольку он подлежит интерпретации виртуальной машиной. Например, для языка Java это JVM (язык виртуальной машины Java), или так называемый байт-код Java (вслед за ним все промежуточные низкоуровневые языки стали называть байт-кодами) . Для языков программирования на платформе .NET Framework (C#, Managed C++, Visual Basic .NET и другие) это MSIL (Microsoft Intermediate Language, «Промежуточный язык фирмы Майкрософт») .Программа на байт-коде подлежит интерпретации виртуальной машиной, либо ещё одной компиляции уже в машинный код непосредственно перед исполнением. Последнее называеется «Just-In-Time компиляция» (JIT), по названию подобного компилятора для Java. MSIL-код компилируется в код целевой машины также JIT-компилятором, а библиотеки .NET Framework компилируются заранее) .Для каждой целевой машины (IBM, Apple и т. д. ) и каждой операционной системы или семейства операционных систем, работающих на целевой машине, требуется написание своего компилятора. Существуют также так называемые кросс-компиляторы, позволяющие на одной машине и в среде одной ОС получать код, предназначенный для выполнения на другой целевой машине и/или в среде другой ОС. Кроме того, компиляторы могут быть оптимизированы под разные типы процессоров из одного семейства (путём использования специфичных для этих процессоров инструкций) . Например, код, скомпилированный под процессоры семейства i686, может использовать специфичные для этих процессоров наборы инструкций — MMX, SSE, SSE2.Существуют программы, которые решают обратную задачу — перевод программы с низкоуровневого языка на высокоуровневый. Этот процесс называют декомпиляцией, а программы — декомпиляторами. Но, поскольку компиляция — это процесс с потерями, точно восстановить исходный код, скажем, на C++ в общем случае невозможно. Более эффективно декомпилируются программы в байт-кодах — например, существует довольно надёжный декомпилятор для Flash.

Ответ от Џсик[новичек]
Компиля́тор — транслятор, который осуществляет перевод всей исходной программы в эквивалентную ей результирующую программу на языке машинных команд (микропроцессора или виртуальной машины).

Ответ от Reanimator[гуру]
Программа для перевода команд (более понятный человеку) в машиный код (для компьютера)

Ответ от Ётанислав $$$$$$$$[активный]
Прога для сборки или разборки, других прог и т. п.

Ответ от Андрей С[гуру]
транслятор, который осуществляет перевод всей исходной программы в эквивалентную ей результирующую программу на языке машинных команд

Ответ от Дарья Кажидуб[гуру]
Человек, к-рый занимается компиляцией, соединением результатов чужих исследований, идей без самостоятельной обработки источников, а также сама работа, составленная таким методом.

Ответ от Bssdj[гуру]
Прога для сборки чего либо по определенным меткам.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Кто может объяснить, что такое Компилятор?
Компилятор на Википедии
Посмотрите статью на википедии про Компилятор
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*