Не убивайте, я пробовал понять через вики но не даётся, вот спрашиваю у вас господа. Хотябы дайте подсказку с чего начать, понимание. В вики я проста зарылся среди информации которые не могу свзяать. :/
Это вроде машинного кода, но не для реального процессора, а для виртуальной машины, например, для JM (виртуальной Java-машины).
Сам недавно рыл о подобном... Единственным "плюсом" на мой взгляд является кроссплатформенность... На Вики вроде норм расписано... =\
Вообщем значит по сути Байт-код он же П-код, это виртуальная машина так? Но как она выглядит? пример есть? строчка кода? Что внутри неё происходит? Я как понимаю она имеет транслятор и интерпритатор. Т.е. если взять как пример ПХП я пишу команду типа echo "Heloo world";. Тогда транслятор переводит мной написанное в байт-код, а интерпритатор этот байт код исполняет? т.е. компилирует в машиный код? или эта уже и есть машиный код? байт-код он я как понимаю разный? Вообщем не по детски занесло.
Сталкивался с Java ? Вот это оно и есть... Ставится Java машина, которая и инерпритирует сам код... причем налету его же компиля.. M$ естевствено, что б не упустить еще одну технологию, тож сделали свое... Дот Нет... Вроде мыслишь правельно... %)
Как я счас понял виртуальная машина не компилирует байт-код в машиный код, байт-код он по сути и есть машиный код для виртуальной машины. Не ява была давно в универе, я нашёл себя в ПХП, работа такая хочу начать писать расширения, для этого надо познания Си и самого ядра ПХП т.е. Зенда. Вот и шарю по терминам и пытаюсь понять сущности.
байткод это программа на языке, который понимается только машиной его исполняющей, байткодом можно назвать как код для определенной физической машины так и для виртуальной, разница лишь в том - что в первом случае код выполняется на "гипотетической" виртуальной машине, а во втором на "реальной" физической.
Сорри ступил, запутался не обращайте внимания. Вкратце: Как я панимаю машиный код эта система команд. Система команд эта список инструкций и других процессоров которые могут быть исполненны. Системы команд в свою очередь определяют опкод это нативные инструкции?
operation code просто какое то число ассоциируемое с определенной макро-операцией система команд - множество макро-операций(инструкций) машины программа(код) написанная для выполнения на конкретной машине (физической или виртуальной, без разницы)
Я тут не очень понял... Первый случай выходит что, физическая машина как бы для байт кода предполагаемая виртуальная, а второй, что виртуальная но для байт кода она является физической т.е. радной? Это из вики: Как это понять? Что за элемент? не очень доходит По сути инструкция вклчает в себя не толька опкод? Спасибо за вашу помощь.
угу в инструкции также кодируются используемые операнды(регистры или память), тип их адресации и тп. в первом случае - программа выполняется на виртуальной машине во втором - на реальной простым языком, в обоих случаях это какая-то машина(или программа) с некоторыми характеристиками, умеющая выполнять поданные ей в виде инструкций, операции.
А насчёт элементов я правельно выразился? Спасибо огромное за помощь и терпение, другие вопросы уже подразумевает, что мне надо читать об CPU и всё что с ним связанно. Может подскажите литературу на вашь взгляд самую толковую. Спасибо
я хз что там в вики за элемент имеется в виду. так а, что не ясно то? если просто терминология, то это наверное словарь нужен какой-то? либо, если иначе, то литературу о чем?
Ну о цпу я думаю найти без проблем, а вот о машином коде и всё что с ним связанно, хотя думаю и это тоже уже по ходу изучения найду. А вот байт-код как он создаётся? как он делается? какие правила?