Un compilador es un software que generalmente toma un código de lenguaje de alto nivel (como C++ y Java) como entrada y convierte la entrada a un lenguaje de nivel inferior a la vez. Enumera todos los errores si el código de entrada no sigue las reglas de su idioma. Este proceso es mucho más rápido que el intérprete pero se vuelve difícil depurar todos los errores juntos en un programa.
Un compilador es un programa de traducción que traduce las instrucciones del lenguaje de alto nivel al lenguaje de nivel de máquina. Un programa que se ingresa al compilador se llama programa fuente . Este programa ahora se convierte a un lenguaje de nivel de máquina por un compilador que se conoce como el código de objeto.
Hay diferentes compiladores:
- Compilador cruzado: el programa compilado puede ejecutarse en una computadora cuya CPU o sistema operativo sea diferente de aquel en el que se ejecuta el compilador.
- Bootstrap Compiler: el compilador escrito en el idioma que pretende compilar.
- Descompilador: el compilador que traduce de un lenguaje de bajo nivel a uno de nivel superior.
- Transcompiler: el compilador que traduce lenguajes de alto nivel.
Un compilador puede traducir solo aquellos programas fuente que han sido escritos en el lenguaje para el que está destinado el compilador. Cada lenguaje de programación de alto nivel requiere un compilador separado para la conversión.
Por ejemplo, un compilador FORTRAN es capaz de traducirse a un programa FORTRAN . Un sistema informático puede tener más de un compilador para trabajar con más de un lenguaje de alto nivel.
Principales compiladores más utilizados según los lenguajes informáticos:
- C – Turbo C, Compilador Tiny C, GCC, Clang, Compilador C portátil
- C++ -GCC, Clang, Dev C++, Intel C++, Bloque de código
- JAVA : IntelliJ IDEA, Eclipse IDE, NetBeans, BlueJ, JDeveloper
- Kotlin : IntelliJ IDEA, Eclipse IDE
- Python : CPython, JPython, Wing, Spyder
- JavaScript : WebStorm, Atom IDE, Visual Studio Code, Komodo Edit
Publicación traducida automáticamente
Artículo escrito por harleenk_99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA