Professional Documents
Culture Documents
Sintaxis, definicin
Elementos de la sintaxis
Maneras de definirla
BNF
EBNF
Diagramas de flujo
Diagramas de fluo
5e%aso 6lase 7nterior
ex%
term
term ex%
term ex%
9
:
term
elem
elem term
elem term
;
<
Etc3>
identificador
letra
d?gito
letra
d?gito
secuencia
letra
letra secuencia
secuencia
Semntica
!a semntica descri"e el significado de
los s#m"olos$ pala"ras % frases de un
lenguae %a sea lenguae natural o
lenguae informtico
Ejem%los4
&ipos de semntica'
Semntica esttica
Semntica dinmica
Semntica
(emntica esttica
Generar 6digo>
(emntica dinmica>
No es fcil
Semntica axiomtica
Semntica denotacional
Semntica o%eracional
Semntica
(emntica axiomtica
(emntica axiomtica
!recondicin
!oscondicin
Ejem%lo4 a 2
r c
!recondicin4 #2 distinto de cero'
Sentencia funcin Due di@ide a %or 2
!ostcondicin4 #a=2;c9r F r$2'
Semntica
(emntica denotacional
(emntica 8peracional
Es un mHtodo informal
(emntica 8peracional
Ejem%lo4
!enguaes 95uina a"stracta
for i 4= %ri to ul do i 4= %ri
2egin laMo if i & ul goto sal
>>>>>>>> >>>>>>>>>>>>
end i 4= i 9)
goto laMo
sal >>>>>>>>>>
!rocesamiento de un lenguaje
Lnter%retacin F traduccin
On %oco de Eistoria3
7lternati@as de traduccin4
:nterpretaci3n
2ompilaci3n
Lnter%retacin
:nt;rprete'
Kee,
7naliMa
Decodifica F
Ejecuta la accin
INTRPRET
E
E s
!rograma 5esultados
raduccin
6om%ilado a assem2ler
Ensam2lado a cdigo
reu2ica2le
Kin\editado
6argado en la memoria
2ompilador
/ssem"ler
!in<)editor
!oader
raduccin
&ipos de traductores'
2ompilador
/ssem"ler
!in<)editor
!oader
:nt;rprete'
2ompilador'
:nt;rprete'
2ompilador'
&iempo de eecuci3n'
:nt;rprete'
2ompilador'
Eficiencia'
:nt;rprete'
Ms lento en ejecucin
2ompilador'
Espacio ocupado'
:nt;rprete'
2ompilador'
Detecci3n de errores'
:nt;rprete'
2ompilador'
/nlisis
(#ntesis
Es la fase medular
Es la mas im%ortante
(#ntesis'
8ptimiAaci3n (eemplo)'
!osi2les o%timiMaciones locales4
b 6uando EaF dos saltos seguidos se %uede Duedar uno solo
!<E El ejem%lo anterior Duedar?a as?4
K)4 if (a$=(" goto K+ t)4=2;a
t)4=a;, t*4=t):)(
t*4=t):- a4=t*
if (2 &= t*" goto K+ goto K)
K+4 33>
b Eliminar ex%resiones comunes en fa@or de una sola ex%resin
a4=29c9d cuedar?a t)4=29c 24=t)9e
24=29c9e a4=t)9d
K)4 if (a&(" goto K*
goto K+
K*4 t)4=a;,
t*4=t):-
if (2 $ t*" goto K,
goto K+
K,4 t)4=2;a
t*4=t):)(
a4=t*
goto K)
K+4 33>
6om%iladores
>R8GR9/ FHEN&E
/N/!:I/D8R !EJ:28
289>H&/D8R/
8>&:9:I/2:8N
/N/!:I/D8R (:N&/2&:28
28D:G8 :N&ER9ED:8
28D:G8 DE 9/KH:N/
E
(
(E9LN&:2/ E(&/&:2/