Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vse_v_1.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
179.9 Кб
Скачать

8. Процессы трансляции и интерпретации. Сравнительная характеристика.

Трансляция – процесс работы специальной программы, выполняющей перевод с 1 языка (в т.ч. высокого уровня) на другой язык.

Транслятор – языковой процессор, воспринимающий программу на некотором языке в качестве входных данных и формирующий в результате работы функциональные эквиваленты программ на другом языке

Интерпретация – программное моделирования некоторой виртуальной ЭВМ.

Основные различия

1. Транслятор

1) В результате формируется программа на объектном языке, которая подлежит выполнению.

2) Операторы обрабатываются последовательно в порядке следования.

3) Каждый оператор обычно обрабатывается однократно (если однопроходный).

4) В результате обработки программы ее размер существенно возрастает (т.к. операторы ЯВУ содержат больше команд, чем в МЯ, насыщается служебными метками и.т.д.).

5) В результате может быть сформирован код, готовый к работе, не требующий дальнейшей работы транслятора.

6) Программа после транслятора выполняется быстро (работает чисто во взамодействии с аппаратными средствами)

2. Интерпретатор

1) В результате происходит фактическое выполнение программы (на выходе не формируется программа).

2) Операторы обрабатываются в соответствии с логикой выполнения программы.

3) Некоторые операторы могут обрабатываться неоднократно или не обрабатываться вовсе.

4) Не расходуется память для хранения длинных последовательность команд МЯ.

5) Для выполнения программы всегда требуется интерпретатор.

6) Программа относительно транслятора выполняется медленно.

При построении реальных системных программ стараются сочетать 1 и 2.

java—1байт-кодjava-машина-2

Транслирует в некоторый универсальный промежуточный код (байт-код). JVM – интерпретатор принимает этот byte-code.

Достоинство подобного способа выполнения программ — в полной независимости байт-кода от операционной системы и оборудования, что позволяет выполнять Java-приложения на любом устройстве, для которого существует соответствующая виртуальная машина. Другой важной особенностью технологии Java является гибкая система безопасности благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером) вызывают немедленное прерывание.

Java script, php – тетрадь

Идеи, заложенные в концепцию и различные реализации среды виртуальной машины Java, вдохновили множество энтузиастов на расширение перечня языков, которые могли бы быть использованы для создания программ, исполняемых на виртуальной машине. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI, заложенной в основу платформы .NET компанией Microsoft.

Программа для .NET Framework, написанная на любом поддерживаемом языке программирования, сначала переводится компилятором в единый для .NET промежуточный байт-код Common Intermediate Language (CIL). Затем код либо исполняется виртуальной машиной Common Language Runtime (CLR), либо транслируется утилитой NGen.exe в исполняемый код для конкретного целевого процессора. Использование виртуальной машины предпочтительно, так как избавляет разработчиков от необходимости заботиться об особенностях аппаратной части.

Идея: порождение универсального кода, который будет поддерживаться любой аппаратной платформой.

байт-код передается клиенту

была идея сделать:

С# --1-->IL--2-->что то не получилось

IL - intermediate language

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]