Trabajod de Introduccion 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

“UNIVERSIDAD NACIONAL DEL ALTIPLANO”

FACULTAD DE INGENIERIA MECANICA ELECTRICA


ELECTRONICA Y SISTEMAS
ESCUELA PROFECIONAL DE INGENIERIA DE SISTEMAS
Ejercicios de Introducción 2
CURSO: COMPILADORES
DOCENTE: FERNANDEZ CHAMBI, MAYENKA
NOMBRE: GOMEZ ALANOCA, JOEL SANTOS
GRUPO: B
FECHA DE ENTREGA:27/11/2020
HORA DE ENTREGA: 05:30 PM

PUNO-2020
1. Ejercicios para la sección 1.6
a. Para el código en C estructurado por bloques de la figura
1.13(a), indique los valores asignados a w ,x, y y x.
empezamos declarando variables w,x,y,z
seguimos declarando y asignando valor
declaramos y asignamos un valor a j
asignamos a i un valor de 6
a w asignamos valores de i y j

a x asignamos lo valores de i +j
declaramos y asignamos 8 a i
asignamos a y el valor de i +j

z tiene el calor de i+j

Para:
w=13
x=9
y=13
z=9
b. Repita el ejercicio a para el código de la figura 1.13(b)
declaramos enteros w,x,y,z
declaramos i y j seguida asignándole
declaramos asignándole valor a 5
asignamos a w la suma de i+j

asignamos a x la suma de i+j


declaramos j igual a 6
reemplazamos a i en 7
asignamos a y la suma de i+j

asignamos a z valores de i+j


para la salida:
w=9
x=7
y=13
z=7
c. Para el código estructurado por bloques de la figura 1.14,
suponiendo el alcance estático usual de las declaraciones, de
el alcance para cada una de las doce declaraciones

Declaración Alcance
W1 B1,B3,B4
W2 B3
W2 B4
X1 B1,B2,B3,B4
X2 B2,B3
X3 B3
X4 B4
Y1 B1,B5
Y1 B5
Z1 B1,B2,B5
Z2 B2
Z3 B5

d. ¿Qué imprime el siguiente código en C?

3 Y 1 en reglones porque tienen \n salto de líneas y centrados


2. Resumen del capítulo 1
Los lenguajes de programación son muy importantes para el mundo en que
vivimos
a) Procesadores y lenguajes: Un compilador es un programa que lee y
traduce a otro lenguaje y que nos reporta los errores del programa
fuente, también tenemos al interprete que y compiladores híbridos.
b) Fases de compiladores: Se compone internamente de varias etapas,
o fases, que realizan operaciones lógicas como analizador léxico,
analizador sintáctico, analizador semántico, etc.
c) Lenguajes máquina y ensamblador: Empieza a evolucionar desde
1940 a 1950 con leguajes de primera generación seguida cuarta
generación, etc.
d) Modelado en el diseño de compiladores: Tienen una gran
utilizada en el campo de autómatas, gramáticas, expresiones regulares,
árboles y muchos otros.
e) Optimización e código: Años tras años siempre la computación a
buscado la optimización como lo hace los compiladores, y para eso está
hecho los compiladores
f) Lenguajes de alto nivel: Al pasar los años, los lenguajes de alto nivel
tienden siempre a ser más utilizados por su forma optimizada
g) Compiladores y arquitectura de computadoras: Durante años
desde hace años en exigir que los sistemas operativos sean más
eficientes, así los procesadores empiezan a optimizarse
h) Productividad y seguridad del software: La misma tecnología que
evoluciona año tras año exige una optimización, que va desde la
detección e errores en cada compilación
i) Reglas de alcance: El alcance de una declaración de x es el contexto
en el cual los usos de x se refieren a esta declaración. Un lenguaje
utiliza el alcance estático o alcance léxico si es posible determinar el
alcance de una declaración con sólo analizar el programa. En cualquier
otro caso, el lenguaje utiliza un alcance dinámico.
j) Entornos: La asociación de nombres con ubicaciones en memoria y
después con los valores puede describirse en términos de entornos, los
cuales asignan los nombres a las ubicaciones en memoria, y los
estados, que asignan las ubicaciones a sus valores.
k) Estructura de bloques: Si se permite anidar de estructura de bloques
l) Paso de parámetros: Se pueden hacer de dos maneras atreves de
registro y pila, donde esta comunicación entre la función y el mundo
exterior, puede ser atreves de registro y microprocesador
m) Uso de alias: Para declarar un nombre que se usará como sinónimo
de un tipo declarado previamente. (Este mecanismo también se
denomina informativo como un alias de tipo).
3. Preguntas.
a. ¿Cuál es la utilidad de un compilador, aparte de
traducir un programa?
Tiene muchas utilizados como lo menciona en el libro
como de, ver errores al par de un código a otro código.
Otra de las funcionalidades es la de exigencia a los
microprocesadores que desarrollen la optimización de
sus procesos para poder resolverlo en menor tiempo y
también no olvidarse al diseño, productividad de software
y lo más importante que es el potencial de su traducción
de binario.
b. ¿El compilador está relacionado a las características
de la arquitectura de un computador?, Explique su
respuesta
Sabiendo que los compiladores se desarrollaron después
de las computadoras, dándole un giro a las nuevas
tecnologías por el explotar de un compilador a las
características de un computador, pasando RISC Y CISC
fueron un gran motor para que los microprocesadores
puedan hacer en cuestión de segundos una compilación
hasta llegar al famoso x86 que la mayoría usamos que
tiene un gran potencial en nivel de compilación, como
hemos enunciando en lo anterior.
c. ¿El compilador está relacionado a las características
de un lenguaje de programación?, Explique su
respuesta
Si y siempre estará relacionado por el hecho de que el
compilador es su propiamente dicho traductor que
transforma un programa entero o código fuente a otro.
Adicionalmente para cada lenguaje de programación un
compilador separado.

También podría gustarte