Documentos de Académico
Documentos de Profesional
Documentos de Cultura
• Desarrollado en China.
Ábaco • Permitía Sumar, Restar,
Multiplicar y Dividir.
• Es aún utilizado en la
Regla de Cálculo educación Oriental.
• Proviene de la palabra
ABAX, que significa tabla
cubierta de Polvo.
Pascalina
Computador
Mecánico
Evolución del Computador
Ábaco
Computador
Mecánico
Evolución del Computador
Ábaco
Regla de Cálculo
• Creado por Blaise Pascal
• Suma y Resta.
Pascalina • Gottfried Leibniz crea
versión que multiplica.
Computador
Mecánico
Evolución del Computador
Ábaco
Regla de Cálculo
• Creado por Charles
Babbage en 1833.
Pascalina • Uso de los cartones
perforados como
entradas.
Computador • Tenía impresora.
Mecánico • No pudo terminarla.
Evolución del Computador
Aritmómetro
Término Bit
Evolución del Computador
Nace IBM
Aritmómetro
Término Bit
Evolución del Computador
Álgebra de Boole
Nace IBM
• Creada en 1920
Aritmómetro • Presentada en Paris.
• Calculadora conectada a
maquina de escribir.
Término Bit
Evolución del Computador
Álgebra de Boole
Nace IBM
Aritmómetro
• Claude Shannon en 1937
• Programación en álgebra de Boole.
• Sistema de Conmutación
Término Bit • Bit como unidad de datos.
Evolución del Computador
• Computadora Programable
electromagnética.
Ordenador Z3 • Nace en 1941.
• Recibe instrucciones por cinta
perforada.
Colossus • Rapidez de 0,7 a 3
segundos.
Mark I
ENIAC
Evolución del Computador
Ordenador Z3
• Nace en Gran Bretaña.
Colossus • Descifraba mensajes secretos de los
Nazis.
• Desarrollada por la milicia.
Mark I
ENIAC
Evolución del Computador
Ordenador Z3
Colossus
Mark I
• Por Howard Aiken en 1944.
• Procesadora
de Información
ENIAC • Funciona
Eléctricamente
.
Evolución del Computador
Ordenador Z3
Colossus
Mark I • Desarrollada en
Pennsylvania.
• Introducida en 1946
ENIAC • Electronic Numeral
Integrator and Calculador.
Gran Consumo de Energía.
Conceptos previos
Evolución del Computador
Compatibilidad de Información.
Multiprogramación y Aplicaciones
Instrumentación de Sistemas.
Evolución del Computador
En base de Microprocesadores
SOFTWARE
ALGORITMOS
SISTEMA ORDENADOR
INFORMATIC
O
SOFTWARE
DATO
S
INFORMACIÓN
HARDWARE
PROGRAMAS
1.27
Qué es un sistema informatico
1.31
Lenguajes
a = (b + c)/(d + e)
Pasos x
sumar b y c, y guardar el resultado en unay dirección de memoria temporal X
sumar d y e, y guardar el resultado en una dirección de memoria temporal Y
dividir el contenido de X por el de Y y guardar el resultado en la dirección de
memoria de a
Inconvenientes
Grandes posibilidades de error
Portabilidad: máquina-dependiente
No se puede llevar el programa a otra máquina porque, entre otras
cosas, el repertorio de instrucciones es distinto
Tedioso
Nula capacidad de abstracción
Es muy complicado formular una solución a problemas del mundo real
con ese lenguaje tan específico
1.35
Lenguaje ensamblador
a = (b + c)/(d + e)
SUM B, C, X
SUM D, E, Y
DIV X, Y, A
1.36
Lenguaje ensamblador (cont.)
Cuestiones
¿Cómo entiende la máquina el lenguaje ensamblador?
Si las direcciones de memoria son simbólicas ¿en qué
direcciones de memoria se colocan los datos?
Programa ensamblador
Traducción a código binario de códigos simbólicos de operación
Traducción de las direcciones simbólicas a direcciones reales de
memoria
1.37
Lenguajes de alto nivel
1.38
Abstracción
Abstracción de datos
Tipos de datos
Elementales (HW)
• Enteros
• Reales
• Booleanos
• Caracteres
Nivel:Lenguaje de la máquina
Primitivos
Tipo básico
Proporcionados por el Hw
1.39
Abstracción
Abstracción de datos
Tipos de datos
Estructurados (LP)
• Arreglos
• Registros
Nivel: Del Lenguaje de Programación
Proporcionado por los LP
Con base en tipos elementales
Se utilizan constructores de tipo que pertenece al LP
Abstractos (U)
• Stacks
• Colas, etc
1.40
Abstracción
Abstracción de control
• Asignación
• Decisión
• Iteración
Unidades de Programas
Permiten programación modular
Generalizan la noción de operador
Permiten encapsular parte de un algoritmo
Tienen una única definición
Tienen múltiples activaciones
1.41
Clasificación de los Lenguajes de Programación
Evolución de los Lenguajes de Programación
Lenguajes interpretados vs Lenguajes Compilados
Lenguaje Compilado
Término para referirse a un lenguaje de programación que
típicamente se implementa mediante un compilador. Esto
implica que una vez escrito el programa, éste se traduce a
partir de su código fuente por medio de un compilador en
un archivo ejecutable para una determinada plataforma (por
ejemplo Solaris para Sparc, Windows NT para Intel, etc.).
1.44
Lenguajes interpretados vs Lenguajes Compilados
Lenguaje Interpretado
En el que las instrucciones se traducen o interpretan una a
una en tiempo de ejecución a un lenguaje intermedio o
lenguaje máquina o a través de una máquina virtual,
siendo típicamente unas 10 veces más lentos que los
programas compilados.
Lenguajes de Programación
Ranking de los lenguajes de programación más utilizados en 2011
1.47
Bibliografía
1.48
Discusión, preguntas...