Diferencia Entre Ensamblador E Intérprete

Diferencia Entre Ensamblador E Intérprete
Diferencia Entre Ensamblador E Intérprete

Vídeo: Diferencia Entre Ensamblador E Intérprete

Vídeo: Diferencia Entre Ensamblador E Intérprete
Vídeo: Curso de Java #3: Compiladores e intérpretes 2024, Noviembre
Anonim

Ensamblador vs Intérprete

En general, el compilador es un programa informático que lee un programa escrito en un idioma, que se denomina idioma de origen, y lo traduce a otro idioma, que se denomina idioma de destino. Tradicionalmente, el lenguaje de origen es un lenguaje de alto nivel como C ++ y el lenguaje de destino es un lenguaje de bajo nivel como el lenguaje ensamblador. Sin embargo, existen compiladores que pueden convertir un programa fuente escrito en lenguaje ensamblador y convertirlo a código máquina o código objeto. Los ensambladores son esas herramientas. Por otro lado, los intérpretes son herramientas que ejecutan instrucciones escritas en algún lenguaje de programación. El intérprete puede ejecutar directamente código fuente de alto nivel o traducirlo a código intermedio y luego interpretarlo o ejecutar código precompilado.

¿Qué es un ensamblador?

Assembler es un software o una herramienta que traduce el lenguaje ensamblador a código de máquina. Entonces, un ensamblador es un tipo de compilador y el código fuente está escrito en lenguaje ensamblador. El ensamblaje es un lenguaje legible por humanos, pero normalmente tiene una relación uno a uno con el código de máquina correspondiente. Por lo tanto, se dice que un ensamblador realiza una traducción isomórfica (mapeo uno a uno). Los ensambladores avanzados proporcionan características adicionales que respaldan el desarrollo de programas y los procesos de depuración. Por ejemplo, el tipo de ensambladores llamados ensambladores de macros proporciona una facilidad de macro.

¿Qué es un intérprete?

Un intérprete es un programa de computadora o una herramienta que ejecuta instrucciones de programación. Un intérprete puede ejecutar el código fuente directamente o convertir el código fuente en un código intermedio y ejecutarlo directamente o ejecutar código precompilado producido por un compilador (algunos sistemas de interpretación incluyen un compilador para esta tarea). Los lenguajes como Perl, Python, MATLAB y Ruby son ejemplos de lenguajes de programación que utilizan un código intermedio. UCSD Pascal interpreta un código precompilado. Los lenguajes como Java, BASIC y Samlltalk primero compilan el código fuente en un código intermedio llamado bytecode y luego lo interpretan.

¿Cuál es la diferencia entre un ensamblador y un intérprete?

Un ensamblador puede considerarse un tipo especial de compilador, que solo traduce el lenguaje ensamblador a código de máquina. Los intérpretes son herramientas que ejecutan instrucciones escritas en algún idioma. Los sistemas de intérpretes pueden incluir un compilador para precompilar el código antes de la interpretación, pero un intérprete no puede ser llamado un tipo especial de compilador. Los ensambladores producen un código objeto, que puede tener que vincularse mediante programas vinculadores para poder ejecutarse en una máquina, pero la mayoría de los intérpretes pueden completar la ejecución de un programa por sí mismos. Un ensamblador normalmente hará una traducción uno a uno, pero esto no es cierto para la mayoría de los intérpretes. Debido a que el lenguaje ensamblador tiene un mapeo uno a uno con código de máquina, se puede usar un ensamblador para producir código que se ejecute de manera muy eficiente para ocasiones en las que el rendimiento es muy importante (por ejemplo, motores gráficos,sistemas integrados con recursos de hardware limitados en comparación con una computadora personal como microondas, lavadoras, etc.). Por otro lado, se utilizan intérpretes cuando se necesita una alta portabilidad. Por ejemplo, el mismo código de bytes de Java se puede ejecutar en diferentes plataformas utilizando el intérprete apropiado (JVM).

Recomendado: