Ir al contenido principal

Procesadores de lenguaje: ensamblador, compilador e intérprete

Procesadores de lenguaje: 

El lenguaje ensamblador depende de la máquina, pero los mnemotécnicos que se utilizan para representar instrucciones en él no son directamente comprensibles por la máquina y el lenguaje de alto nivel es independiente de la máquina. Una computadora entiende las instrucciones en código máquina, es decir, en forma de 0s y 1s. Es una tarea tediosa escribir un programa de computadora directamente en código máquina. Los programas están escritos principalmente en lenguajes de alto nivel como Java, C ++, Python, etc. y se denominan código fuente . Este código fuente no puede ser ejecutado directamente por la computadora y debe convertirse al lenguaje de máquina para ser ejecutado. Por lo tanto, un software de sistema de traductor especial se utiliza para traducir el programa escrito en lenguaje de alto nivel al código de máquina que se llama Procesador de lenguaje y el programa luego de traducido a código máquina (programa objeto / código objeto).
Los procesadores de lenguaje pueden ser cualquiera de los siguientes tres tipos:
  1. Compilador:
    el procesador de lenguaje que lee el programa fuente completo escrito en un lenguaje de alto nivel en su conjunto de una sola vez y lo traduce a un programa equivalente en lenguaje de máquina se llama Compilador.
    Ejemplo: C, C ++, C #, Java.
    En un compilador, el código fuente se traduce al código objeto con éxito si está libre de errores. El compilador especifica los errores al final de la compilación con números de línea cuando hay algún error en el código fuente. Los errores deben eliminarse antes de que el compilador pueda volver a compilar correctamente el código fuente.>
  2. Ensamblador:
    el ensamblador se utiliza para traducir el programa escrito en lenguaje ensamblador al código de máquina. El programa fuente es una entrada de ensamblador que contiene instrucciones en lenguaje ensamblador. El resultado generado por el ensamblador es el código objeto o el código de la máquina que la computadora puede entender.
  3. Intérprete:
    la traducción de una sola declaración del programa fuente al código de la máquina la realiza el procesador de idiomas y la ejecuta inmediatamente antes de pasar a la siguiente línea que se llama intérprete. Si hay un error en la declaración, el intérprete finaliza su proceso de traducción en esa declaración y muestra un mensaje de error. El intérprete pasa a la siguiente línea para la ejecución solo después de eliminar el error. Un intérprete ejecuta directamente instrucciones escritas en un lenguaje de programación o scripting sin convertirlas previamente en un código objeto o código máquina.
    Ejemplo: Perl, Python y Matlab.
Diferencia entre compilador e intérprete
COMPILADORINTERPRETE
Un compilador es un programa que convierte todo el código fuente de un lenguaje de programación en código máquina ejecutable para una CPU.El intérprete toma un programa fuente y lo ejecuta línea por línea, traduciendo cada línea a medida que llega.
El compilador tarda mucho tiempo en analizar todo el código fuente, pero el tiempo de ejecución general del programa es comparativamente más rápido.El intérprete tarda menos tiempo en analizar el código fuente, pero el tiempo de ejecución general del programa es más lento.
El compilador genera el mensaje de error solo después de escanear todo el programa, por lo que la depuración es relativamente difícil ya que el error puede estar presente en cualquier parte del programa.Su depuración es más fácil ya que continúa traduciendo el programa hasta que se cumpla el error
Genera código objeto intermedio.No se genera código objeto intermedio.
Ejemplos: C, C ++, JavaEjemplos: Python, Perl

Comentarios

Entradas populares de este blog

Analizando el futuro de las bases de datos en la nube

Una publicación del blog de Gartner cuyo título es « El futuro de los sistemas de gestión de bases de datos es la nube » hace la afirmación de que la nube pública es ahora la plataforma predeterminada para administrar datos. El artículo se basa en una investigación realizada por Donald Feinberg, Merv Adrian y Adam Ronthal, que son veteranos de la industria con una larga experiencia en el mercado de DBMS. El artículo hace las siguientes afirmaciones: La nueva innovación DBMS ahora solo está en la nube o al menos en la nube primero. Si no estás en la nube te lo perderás. Los modelos de precios que evitan los gastos de capital a favor de los gastos operativos están impulsando el movimiento. En otras palabras, esta es una tendencia a largo plazo impulsada por la economía básica, por lo que podemos esperar que continúe y tal vez incluso se intensifique con el tiempo. Estas afirmaciones son potencialmente engañosas. Si está diseñando sistemas para administrar datos, tomarlos al pie ...

Casi 300 incidentes de ciberseguridad afectaron a entidades de la cadena de suministro en 2019

Un estudio de Resilience360 enumeró las amenazas cibernéticas como uno de los mayores problemas que enfrentan las cadenas de suministro mundiales en 2020. Las cadenas de suministro ya se enfrentan a un 2020 potencialmente desastroso, ya que todos los países del mundo trabajan para detener la propagación de COVID-19 . Pero los incidentes de ciberseguridad también son un problema grave para las empresas en las cadenas de suministro mundiales a medida que más empresas adoptan sistemas de gestión digitalizados. Un nuevo informe de la empresa de la cadena de suministro Resilience360 detalla las amenazas cibernéticas que enfrentan las cadenas de suministro en 2020 y el conjunto de incidentes que ocurrieron a lo largo de 2019. El estudio encontró que hubo cerca de 300 incidentes de seguridad cibernética que afectaron a las entidades de la cadena de suministro el año pasado, con los más comunes ataque que viene en forma de ransomware paralizante de la empresa. "A medida que las ...