Please enable JavaScript.
Coggle requires JavaScript to display documents.
Tecnología de implementation. Lectura 7 - Coggle Diagram
Tecnología de implementation. Lectura 7
Niveles de Abstracción
Lenguaje natural
usado por humanos
semántica ambigua
Lenguaje de programación (HL)
sintaxis/semántica bien definidas
portables
Lenguaje ensamblador
instrucciones mnemónicas específicas de arquitectura
Código máquina
instrucciones binarias ejecutadas por hardware
Aspectos del Diseño
Paradigma de programación
imperativo
funcional
lógico
orientado a objetos
Descriptor del lenguaje
qué lo caracteriza
Tecnología de implementación
compilador
intérprete
máquina virtual
Implementación de Lenguajes
Traducción de abstracciones humanas a código ejecutable.
Balance entre:
velocidad de ejecución
flexibilidad del desarrollador
portabilidad
Uso de:
compiladores (traducción a bajo nivel)
intérpretes (ejecución directa)
Evolución Histórica
Primeros lenguajes
Fortran
F77 en IBM 360
Nuevos lenguajes
C
C++
Java
Evolución del hardware
de CISC (x86) a RISC
luego multi-core y GPUs
Ley de Dennard
necesidad de paralelismo y nuevas arquitecturas
Compiladores y Máquinas Virtuales
Estructura del compilador
Frontend → IR → Backend
LLVM
como infraestructura modular y portable
Máquinas virtuales
bytecode intermedio
portabilidad entre sistemas
Java VM
.NET CLR