Lenguajes de alto nivel
“Abuelita, abuelita, que dientes tan grandes tienes.” Caperucita roja (hoy sra. De Feroz).
Hagamos arqueología.
Prestaciones bajas precios altos (no hablo de FAW)
100 khz . Velocidad de proceso. RAM= 20 números de 10 dígitos. Aire acondicionado GIGANTE. Cientos de miles de dólares.
No contaban con sistema operativo.
La administración de la memoria estaba a cargo del
programador. no “debug”, no interfase, Cada instrucción, dato, operador, resultado, etc. Era una cadena de 1 y 0 (tabla de códigos conocida por el programador). 10100010101010101010…..¿=el misil caerá…..AHORA?” ¡booooom!
Gentlemen….¡START YOUR ENGINES!”
Ensamblador, primer acercamiento
Uso de MNEMÓNICOS (MOV, ADC…). Interfases primitivas (tableros, teclados). SUS COMENTARIOS SON VALIOSOS. Para programar se requiere un programa. Totalmente dependiente del computador
donde se ejecuta (portabilidad NULA)
Un ejemplo La persistencia de la “memoria”
Alto nivel
Se escriben en lenguaje humano (inglés en
todo caso) Requieren ser traducidos al lenguaje máquina. Los traductores son intérpretes o compiladores.
Translate please….. (intérprete)
Los intérpretes son interactivos Los intérpretes no generan ejecutables. Los intérpretes son independientes de la
plataforma. Los intérpretes requieren estar presente en memoria siempre que se desea ejecutar el programa.
Jack el destripador (de un compilador).
Análisis Lexicográfico. Análisis sintáctico Análisis semántico Generador de código. optimizador de código.
Análisis lexicográfico.
Analiza el código fuente de izquierda a
derecha determinando si los “tokens” (palabras separadas por espacios) existen dentro de la tabla de códigos del lenguaje y de ser asi, las clasifica
resX := x^3 – 3*x^2 + 4 (id:resX) (op:=) (id:x) (op:^)………. ...
Regístrate para leer el documento completo.