¿Cómo funcionan los lenguajes de programación?
Durante nuestra vida diaria utilizamos una gran variedad de programas (navegador de Internet, vídeo juegos, ofimática, ... , etc). Tras un simple clic ocurre una variedad de eventos en nuestro computador, pero ¿cómo lee el computador un programa?.
Lenguaje Maquina
Compiladores e Interpretes
Compiladores e Interpretes
Ambos, compiladores e interpretes son usados para que un programa escrito en un lenguaje de programación pueda ser ejecutado. Aun cuando tienen el mismo propósito no son totalmente iguales, mientras que el compilador lee un archivo y produce un nuevo archivo en lenguaje de maquina, el interprete no genera un archivo nuevo, mas bien traduce linea por linea y envía las lineas traducidas a la computadora, una por una, para ser ejecutada.
Puede no parecer una gran diferencia, pues ambos cumplen la función de traducir el programa a lenguaje de maquina para que la computadora pueda ejecutarlo. Aun así ambos tienen ventajas y desventajas:
Compilador
ventajas
- El programa no sera traducido hasta que este exento de errores de programacion, entonces puedes estar seguro que el programa funcionara (siempre y cuando la lógica del programa no sea errónea)
- Mas veloz, debido a que todo el programa ya esta traducido la computadora no tiene que esperar a que una parte sea traducida, por lo tanto es mas rapido.
desventajas
- limitación de transferencia, el lenguaje de maquina es muy complicado, por consecuencia es muy complicado que un programa escrito en lenguaje de maquina funcione en otra computadora. Esto quiere decir que, para ejecutar el mismo programa en otra computadora tiene que ser compilado de nuevo.
Interprete
ventajas
- No hay otro archivo, al traducir y ejecutar en tiempo real, no se generan archivos aparte, esto también quiere decir que hay un ahorro en el espacio de almacenamiento de la maquina.
- Programa y ejecuta, al traducir y ejecutar linea por linea, es posible que se pueda porgramar mientras se ejecuta el programa de fondo. Esta funcionalidad es usada en los python con el "entorno interactivo".
desventajas
- mayor lentitud, como el programa es traducido en tiempo real, este es ejecutado mas lento
Conclusión
Ya sea usando un compilador o un interprete el programa es traducido para que la computadora pueda entender que hacer, Ambos caminos tienen sus respectivas ventajas, desventajas y campos de uso. Ahora solo queda responder ¿cómo se lleva acabo la traduccion de programas?
Comentarios
Publicar un comentario