Iniciante, dúvida: bytecode

Olá!

Li que Bytecode é o termo dado ao código binário gerado pelo compilador Java (pois existem menos de 256 códigos de operação dessa linguagem, e cada ?opcode? gasta um byte, dando origem ao nome bytecode).

Então bytecode é como se o códifo .exe gerado quando se programa em C, ou C++?

E o que é o opcode?

Fala brow,

Direto das aulas de arquitetura de computador, e agora, do google:

hehehehe

Abraco.

É isso mesmo. O bytecode é o .exe do cpp. Mas ao invés de ser um exe compilado para um sistema operacional real, é um executável compilado para um SO virtual, chamado Java Virtual Machine.

Como a VM simula um sistema operacional padrão, o programador do bytecode não precisa de preocupar com detalhes da arquitetura do SO sobre o qual ela roda, como ordenação dos bytes, tamanho dos tipos primitivos, etc. Essas conversões a VM faz.

Quem tem o compilador de bytecode para o executável da máquina é a VM.