Байт код java
Автор Антон Алиев задал вопрос в разделе Другие языки и технологии
В чем отличие байт кода от машинного? и получил лучший ответ
Ответ от Капитан Гугл[гуру]
Байт-кодом называется машинный код для виртуальной машины.
Ответ от Николай Коваленко[новичек]
Незнаю!
Незнаю!
Ответ от Alex Z[активный]
Байткод требует трансформации в машинный (JIT- или AOT-компиляция) или интерпретации чтобы быть выполненым, т. к. процессоры, за редким исключением (ARM Jazelle, ThumbEE), ничего не знаю о байткоде и о том, как его выполнять. Поскольку байткод не привязан к аппаратной архитектуре он 100% переносим - нужно лишь реализовать компилятор/интерпретатор для целевой платформы. Зачастую байткод обладает более развитой системой типов и поддерживает высокоуровневые инструкции типа "создать объект", "вызвать виртуальный метод" и т. п.
Байткод требует трансформации в машинный (JIT- или AOT-компиляция) или интерпретации чтобы быть выполненым, т. к. процессоры, за редким исключением (ARM Jazelle, ThumbEE), ничего не знаю о байткоде и о том, как его выполнять. Поскольку байткод не привязан к аппаратной архитектуре он 100% переносим - нужно лишь реализовать компилятор/интерпретатор для целевой платформы. Зачастую байткод обладает более развитой системой типов и поддерживает высокоуровневые инструкции типа "создать объект", "вызвать виртуальный метод" и т. п.
Ответ от Gixxer[эксперт]
Байт-код это промежуточный код. Он в свою очередь транслируется в машинный код виртуальной машиной.
Например, исходный код программы на C# компилируется в байт-код, после чего виртуальная машина-CLR интерпретирует и исполняет этот промежуточный код.
Байт-код это промежуточный код. Он в свою очередь транслируется в машинный код виртуальной машиной.
Например, исходный код программы на C# компилируется в байт-код, после чего виртуальная машина-CLR интерпретирует и исполняет этот промежуточный код.
Ответ от Леонид Олейник[гуру]
Байт-код — это промежуточный подход, при котором программа преобразуется в промежуточный двоичный вид, интерпретируемый некой «виртуальной машиной» во время исполнения. Причиной вновь вспыхнувшего интереса к компиляторам стало появление быстрых и сложных 64-разрядных микропроцессоров, типичным представителем которых можно считать Intel Itanium. Все усовершенствования в архитектуре процессоров, такие как
распараллеливание и предсказание ветвления, а также возможность резкого
увеличения производительности, окажутся бесполезны до тех пор, пока программисты
не начнут их реально использовать. .Байт-код Java преобразуется в машинный код с помощью специального
интерпретатора, называемого виртуальной машиной Java (Java Virtual Machine —
JVM). JVM формирует выделенное пространство в памяти, которое отделено от памяти
основной системы, для хранения байт-кода и порождаемых структур. Для программирования на языке Java или других JVM-совместимых языках, знание особенностей байт-кода не обязательно. Однако, как следует из публикации в журнале IBM developerWorks, «понимание байт-кода и понимание механизмов его генерации компилятором Java помогает Java-программисту так же, как и знание языка ассемблера помогает программисту, пишущему на Си или С++».
Байт-код — это промежуточный подход, при котором программа преобразуется в промежуточный двоичный вид, интерпретируемый некой «виртуальной машиной» во время исполнения. Причиной вновь вспыхнувшего интереса к компиляторам стало появление быстрых и сложных 64-разрядных микропроцессоров, типичным представителем которых можно считать Intel Itanium. Все усовершенствования в архитектуре процессоров, такие как
распараллеливание и предсказание ветвления, а также возможность резкого
увеличения производительности, окажутся бесполезны до тех пор, пока программисты
не начнут их реально использовать. .Байт-код Java преобразуется в машинный код с помощью специального
интерпретатора, называемого виртуальной машиной Java (Java Virtual Machine —
JVM). JVM формирует выделенное пространство в памяти, которое отделено от памяти
основной системы, для хранения байт-кода и порождаемых структур. Для программирования на языке Java или других JVM-совместимых языках, знание особенностей байт-кода не обязательно. Однако, как следует из публикации в журнале IBM developerWorks, «понимание байт-кода и понимание механизмов его генерации компилятором Java помогает Java-программисту так же, как и знание языка ассемблера помогает программисту, пишущему на Си или С++».
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: В чем отличие байт кода от машинного?