La diferencia entre operaciones de compilación y decodificación
Compilador, intérprete y ensamblador son tres tipos de programas de procesamiento de lenguaje. Sus principales diferencias son las siguientes: Assembler (para servicios de bajo nivel) traduce programas fuente escritos en lenguaje ensamblador en programas de destino compuestos de instrucciones de máquina y otra información. Un intérprete (utilizado para servicios avanzados) ejecuta directamente el programa fuente o una forma interna del programa fuente, generalmente leyendo el programa fuente, traduciendo oraciones y ejecutando las oraciones sin generar código objeto, como un intérprete BÁSICO. Un compilador (que sirve un lenguaje de alto nivel) traduce un programa fuente escrito en un lenguaje de alto nivel a un programa de destino equivalente en un lenguaje de bajo nivel. Una de las mayores diferencias entre un compilador y un intérprete es que el primero genera código objeto, mientras que el segundo no, además, el código objeto generado por el primero se ejecuta más rápido que el segundo tiene una buena interacción persona-computadora y; Es adecuado para uso principiante. Los programas escritos en COBOL, FORTRAN y otros lenguajes generalmente se compilan y ejecutan teniendo en cuenta la velocidad de ejecución.
Explicación: Cuando el programa se está ejecutando, recibe una instrucción, la convierte en una instrucción de máquina y luego ejecuta la instrucción de máquina.
Compilación: antes de ejecutar el programa, compílelo en código de máquina y luego ejecútelo.
Las computadoras no pueden aceptar ni ejecutar directamente programas fuente escritos en lenguajes de alto nivel. Una vez que los programas fuente se ingresan en la computadora, se transforman en programas de destino en forma de lenguaje de máquina a través de un "programa de traducción". antes de que la computadora pueda reconocerlos y ejecutarlos. Esta "traducción" suele realizarse de dos formas, recopilación e interpretación.
El método de compilación se refiere al uso de un programa en lenguaje de máquina preprogramado, llamado compilador, que se almacena en la computadora como software del sistema cuando el usuario ingresa un programa fuente escrito en un alto nivel. lenguaje en la computadora, el compilador El programa de computadora traducirá el programa fuente a un programa de destino equivalente expresado en lenguaje de máquina, y luego la computadora ejecutará el programa de destino para completar el procesamiento del programa fuente y obtener los resultados.
El modo de interpretación significa que después de que el programa fuente ingresa a la computadora, el intérprete lo escanea e interpreta, ingresa y traduce oración por oración, y la computadora lo ejecuta oración por oración sin generar un programa de destino. Los lenguajes de alto nivel como PASCAL, FORTRAN y COBOL implementan un método de compilación; el lenguaje BASIC implementa un método de interpretación; y PASCAL y el lenguaje C son lenguajes de programación de alto nivel que pueden escribir programas compilados.
En pocas palabras, la compilación significa la traducción del texto completo, que se traduce completamente antes de la ejecución. La interpretación equivale a la traducción simultánea, donde la traducción y la ejecución ocurren simultáneamente.
En los lenguajes interpretados, como el anterior Basic, el programa fuente es texto, y hay un intérprete en tiempo de ejecución que lee el programa fuente, lo traduce línea por línea y lo ejecuta. Por supuesto, esto es lento porque debe interpretarse en el momento. Lo mismo ocurre con VBScript, JavaScript, etc.
En un lenguaje compilado como C o C++, puedes escribir un programa, compilarlo con Turbo C, VC u otros compiladores y convertirlo en un archivo de programa ejecutable (en DOS o Windows, con la extensión como .EXE) y luego ejecute el archivo compilado más tarde. Dado que los archivos ya están traducidos, no hay necesidad de interpretación in situ en tiempo de ejecución, lo que por supuesto es mucho más rápido. Los archivos EXE en DOS o Windows se compilan o ensamblan.
Tenga en cuenta también que la compilación o interpretación no tiene nada que ver con el tipo de idioma.
Alguna vez se pensó que Basic era interpretado, pero también se compilaba; a menudo se pensaba que C y Pascal eran compilados, pero he visto a C y Pascal ejecutados de manera interpretada.