Código de bytes
El código de bytes es código de programa que se ha compilado a partir de código fuente en código de bajo nivel diseñado para un intérprete de software. Puede ser ejecutado por una máquina virtual como una (JVM) o compilado posteriormente en código máquina, que el procesador puede reconocer.
Los distintos tipos de código de bytes utilizan diferentes sintaxis, que puede ser leída y ejecutada por la máquina virtual correspondiente. Un ejemplo popular es el código de bytes de Java, que se compila a partir del código fuente de Java y puede ejecutarse en una máquina virtual de Java (JVM). A continuación se muestran ejemplos de instrucciones de código de bytes de Java.
- new (crear un objeto nuevo)
- aload_0 (cargar una referencia)
- istore almacenar un valor (entero)
- ladd sumar un valor (long)
- swap (intercambiar dos valores)
- areturn (devolver un valor de una función)
Aunque es posible escribir código de bytes directamente, es mucho más difícil que escribir código en un lenguaje de alto nivel, como Java. Por lo tanto, los archivos de código de bytes, como los archivos .CLASS de Java, suelen generarse a partir del código fuente mediante un compilador, como javac.
Código de bytes frente a lenguaje ensamblador
El código de bytes es similar al lenguaje ensamblador en que no es un lenguaje de alto nivel, pero sigue siendo relativamente legible, a diferencia del lenguaje máquina. Ambos pueden considerarse «lenguajes intermedios» que se encuentran entre el código fuente y el código máquina. La principal diferencia entre los dos es que el código de bytes se genera para una máquina virtual (software), mientras que el lenguaje ensamblador se crea para una CPU (hardware).
Pon a prueba tu conocimiento