Traductor (informática)


De Wikipedia, la enciclopedia libre
  (Redirigido desde Traductor (computadoras) )
Saltar a navegación Saltar a búsqueda

Un traductor o procesador de lenguaje de programación es un término genérico que puede referirse a cualquier cosa que convierta código de un lenguaje de computadora a otro. [1] [2] Un programa escrito en un lenguaje de alto nivel se llama programa fuente. Estos incluyen traducciones entre lenguajes de computadora de alto nivel y legibles por humanos como C ++ y Java , lenguajes de nivel intermedio como el código de bytes de Java , lenguajes de bajo nivel como el lenguaje ensamblador y el código de máquina , y entre niveles similares de lenguaje en diferentesplataformas informáticas , así como de cualquiera de los anteriores a otro. [1]

El término también se usa para traductores entre implementaciones de software e implementaciones de hardware ( microchips ASIC ) del mismo programa, y ​​de descripciones de software de un microchip a las puertas lógicas necesarias para construirlo. [ cita requerida ]

Diferentes tipos de traductores

Hay 3 tipos diferentes de traductores de la siguiente manera:

Compilador

Un compilador es un traductor que se utiliza para convertir un lenguaje de programación de alto nivel en un lenguaje de programación de bajo nivel . Convierte todo el programa en una sesión e informa de los errores detectados después de la conversión. El compilador necesita tiempo para hacer su trabajo, ya que traduce el código de alto nivel al código de nivel inferior de una vez y luego lo guarda en la memoria. Un compilador depende del procesador y de la plataforma . Se ha abordado con nombres alternativos como los siguientes: compilador especial, compilador cruzado y compilador de fuente a fuente. [3] [4] [5]

Interprete

El intérprete es similar a un compilador, ya que es un traductor que se utiliza para convertir un lenguaje de programación de alto nivel en un lenguaje de programación de bajo nivel . La diferencia es que convierte el programa una línea de código a la vez y reporta errores cuando los detecta, mientras también realiza la conversión. Un intérprete es más rápido que un compilador, ya que ejecuta el código inmediatamente después de leerlo. A menudo se utiliza como herramienta de depuración para el desarrollo de software, ya que puede ejecutar una sola línea de código a la vez. Un intérprete también es más portátil que un compilador, ya que es independiente del procesador , puede trabajar entre diferentes hardware arquitecturas . [6] [7] [5]

Ensamblador

Un ensamblador es un traductor utiliza para traducir el lenguaje ensamblador en lenguaje de máquina . Tiene la misma función que un compilador para el lenguaje ensamblador pero funciona como un intérprete. El lenguaje ensamblador es difícil de entender ya que es un lenguaje de programación de bajo nivel. Un ensamblador traduce un lenguaje de bajo nivel , como un lenguaje ensamblador, a un lenguaje de nivel aún más bajo, como el código máquina . [8] [9]

Ver también

  • Traductor binario (binario a binario, típicamente código)
  • Traductor de lenguaje ensamblador (código fuente a fuente de bajo nivel)
  • Traductor de fuente a fuente ( código de fuente a fuente de alto nivel)
  • Reescritura (fuente a fuente, normalmente código)
  • Convertidor de archivos (binario a binario, normalmente datos)
  • Transcodificador (binario a binario, datos)

Referencias

  1. ↑ a b Thornton, Scott (17 de febrero de 2017). "¿Qué son compiladores, traductores, intérpretes y ensambladores?" . Consejos para microcontroladores . Archivado desde el original el 19 de julio de 2019 . Consultado el 2 de febrero de 2020 .
  2. ^ "Traductores y utilidades para el desarrollo de programas". Manual de software (PDF) . Intel Corporation . 1984 [1983]. pag. 3-1. 230786-001. Archivado (PDF) desde el original el 29 de enero de 2020 . Consultado el 29 de enero de 2020 .
  3. ^ https://teachcomputerscience.com/translators/
  4. ^ https://www.microcontrollertips.com/compilers-translators-interpreters-assemblers-faq/
  5. ^ a b Schuerer, Katja; Letondal, Catherine; Deveaud, Eric (4 de febrero de 2008) [6 de enero de 2003]. "Capítulo 5. Ejecución del programa, Sección 5.2. Intérprete y compilador" . Introducción a la programación con Python - Curso de programación para biólogos en el Instituto Pasteur . pasteur.fr . Instituto Pasteur . págs. 37–40. Archivado desde el original el 11 de noviembre de 2015 . Consultado el 7 de enero de 2015 . [1]
  6. ^ https://teachcomputerscience.com/translators/
  7. ^ https://www.microcontrollertips.com/compilers-translators-interpreters-assemblers-faq/
  8. ^ https://teachcomputerscience.com/translators/
  9. ^ https://www.microcontrollertips.com/compilers-translators-interpreters-assemblers-faq/

Otras lecturas

  • Calingaert, Peter (1979) [5 de noviembre de 1978]. Escrito en la Universidad de Carolina del Norte en Chapel Hill . Horowitz, Ellis (ed.). Ensambladores, compiladores y traducción de programas . Serie de ingeniería de programas informáticos (1ª edición, 1ª ed.). Potomac, Maryland, EE. UU .: Computer Science Press, Inc. ISBN 0-914894-23-4. ISSN  0888-2088 . LCCN  78-21905 . Archivado desde el original el 20 de marzo de 2020 . Consultado el 20 de marzo de 2020 . (2 + xiv + 270 + 6 páginas)
  • Pring-Mill, David (4 de marzo de 2018). "¿Por qué la IA no domina la traducción de idiomas?" . Centro de singularidad . Universidad de la Singularidad . Archivado desde el original el 29 de diciembre de 2019 . Consultado el 2 de febrero de 2020 .
  • Edwards, Stephen A. (otoño de 2013). "Procesadores de idiomas" (PDF) . Universidad de Columbia . Archivado (PDF) desde el original el 24 de junio de 2019 . Consultado el 2 de febrero de 2020 .
  • Tucker, Allen; Belford, Ginebra G. "Ciencias de la computación" . Encyclopædia Britannica . Archivado desde el original el 23 de julio de 2019 . Consultado el 2 de febrero de 2020 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=Translator_(computing)&oldid=1039085600 "