B3-Lenguajes de programación Flashcards

1
Q

¿Qué es un compilador?

A

Es un programa que traduce código escrito en un lenguaje de programación (llamado fuente) a otro lenguaje (conocido como objeto).
​El lenguaje fuente es generalmente un lenguaje de alto nivel y el objeto un lenguaje de bajo nivel, como assembly o código máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Fases del proceso de compilación

A

Análisis del programa fuente
Léxico (que consiste en la descomposición del programa fuente en componentes léxicos),
sintáctico (agrupación de los componentes léxicos en frases gramaticales ) y
semántico (comprobación de la validez semántica de las sentencias aceptadas en la fase de análisis sintáctico).

Síntesis del programa objeto: suele estar formado por una o varias combinaciones de
generación de código (normalmente se trata de código intermedio o de código objeto) y
de optimización de código: (en las que se busca obtener un programa objetivo lo más eficiente posible).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Compiladores optimizadores

A

Realizan cambios (minimiza ciertos atributos) en el código para mejorar su eficiencia y rendimiento, pero manteniendo la funcionalidad del programa original.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Compiladores de una sola pasada

A

Generan el código máquina a partir de una única lectura del código fuente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Compiladores de varias pasadas

A

Necesitan leer el código fuente varias veces antes de poder producir el código máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Compiladores JIT (just in time)

A

Compilación en tiempo de ejecución. Técnica para mejorar el rendimiento de sistemas de programación que compilan a bytecode, consistente en traducir el bytecode a código máquina nativo en tiempo de ejecución.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué es un transpilador?

A

Es un tipo especial de compilador que traduce de un lenguaje fuente a otro fuente también de un nivel de abstracción parecido.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Compilador cruzado

A

Generan código para una plataforma distinta a aquella en la que están funcionando. Son útiles cuando quiere compilarse código para una plataforma a la que no se tiene acceso, o cuando es incómodo o imposible compilar en dicha plataforma (como en el caso de los sistemas embebidos).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué es Bytecode o código intermedio?

A

Es un lenguaje de programación que sirve como puente entre un lenguaje de programación de alto nivel y el código máquina que leen los microprocesadores en los ordenadores.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Ejemplos de Bytecode en lenguajes de programación

A

Java: El código fuente de Java se compila en bytecode para que después la Máquina Virtual Java lo interprete a código máquina.

C#: El código fuente de C# se compila en CIL (Common Intermediate Language), también conocido como MSIL (Microsoft Intermediate Language). El Common Language Runtime ejecuta el código, la máquina virtual de .NET.

JavaScript: En motores avanzados como V8 en Google Chrome y Node.js, JavaScript también compila el código fuente en bytecode.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Paradigmas de programación

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly