¿Cómo llegamos desde contar con piedras hasta tener computadoras, Internet e inteligencia artificial?
La historia de la computación es una evolución de miles de años.
Durante gran parte de la historia humana:
La computadora moderna es solo la etapa más reciente de esta evolución.
Las primeras civilizaciones necesitaban calcular para:
Esto llevó a la creación de instrumentos de cálculo.
El ábaco es uno de los instrumentos de cálculo más antiguos, con más de 2000 años de historia.
Permite realizar operaciones aritméticas mediante el movimiento de cuentas.
Es un ejemplo de herramienta que amplía la capacidad humana para calcular.
Con el desarrollo del comercio y la ciencia:
Esto llevó a la creación de máquinas mecánicas.
Inventada por Blaise Pascal (1642).
Permitía realizar sumas y restas automáticamente mediante engranajes.
Gottfried Wilhelm Leibniz (1673) mejoró las máquinas de cálculo.
Su máquina podía realizar:
El matemático Al-Juarismi (820) formalizó la idea de algoritmo.
Un algoritmo es:
una secuencia finita y ordenada de pasos para resolver un problema.
Esta idea es fundamental para la computación moderna.
Leibniz también estudió el sistema binario (0 y 1).
Hoy es la base del funcionamiento de todas las computadoras digitales.
Matemático e inventor inglés del siglo XIX.
Es considerado uno de los pioneros de la computación.
Babbage diseñó una máquina para:
Funcionaba mediante mecanismos mecánicos de engranajes.
prototipo no finalizado
Babbage propuso una máquina mucho más avanzada.
La máquina analítica tenía ideas similares a las computadoras modernas.
La máquina analítica incluía ideas clave:
Es sorprendentemente similar a una computadora actual.
Ada Lovelace trabajó con Babbage (1833).
Es considerada la primera programadora de la historia.
Ada Lovelace escribió un algoritmo para la máquina analítica.
Su trabajo anticipó ideas modernas como:
"[La máquina analítica] podría actuar sobre otras cosas además del número, se encontraron objetos cuyas relaciones fundamentales mutuas podrían ser expresadas por la de la ciencia abstracta de las operaciones, y que también deberían ser susceptibles de adaptaciones a la acción de la notación operativa y el mecanismo del motor…
Suponiendo, por ejemplo, que las relaciones fundamentales de los sonidos en la ciencia de la armonía y de la composición musical fueran susceptibles de tal expresión y adaptaciones, el motor podría componer piezas de música elaboradas y científicas de cualquier grado de complejidad o medida"
Durante el siglo XX ocurrieron avances clave:
Esto llevó a la creación de las primeras computadoras.
Algunas de las primeras computadoras:
Programarlas era extremadamente complejo.
Relés y Válvulas
Algunas de las primeras computadoras:
Primer videojuego
Transistores
Algunas computadoras:
Uso científico o comercial
Circuitos integrados
Algunas computadoras:
Computadoras personales
Microprocesadores
Matemático del siglo XX.
En 1945 propuso un modelo conceptual para organizar las computadoras que se transformó en el estándar de la industria.
La propuesta principal fue:
guardar programas y datos en la misma memoria.
Esto permitió que las computadoras fueran programables y flexibles.
Componentes principales:
La CPU incluye:
La CPU (Central Processing Unit) es el "cerebro" de la computadora.
Se encarga de ejecutar instrucciones y coordinar todo el sistema.
[ Memory Address Register (MAR) | Memory Data Register (MDR) | Stack Count | Instruction | Accumulator ]
La Arithmetic Logic Unit realiza:
Aquí ocurre el procesamiento real.
La unidad de control:
[ Memory Address Register (MAR) | Memory Data Register (MDR) | Stack Count | Instruction | Accumulator ]
Los registros son memorias muy pequeñas y muy rápidas dentro de la CPU.
Se usan para almacenar datos temporales durante la ejecución.
[ Memory Address Register (MAR) | Memory Data Register (MDR) | Stack Count | Instruction | Accumulator ]
La memoria principal almacena:
Ejemplo actual: RAM
[ Memory Address Register (MAR) | Memory Data Register (MDR) | Stack Count | Instruction | Accumulator ]
Permiten introducir información al sistema.
Ejemplos:
Permiten obtener los resultados.
Ejemplos:
Los buses conectan los componentes del sistema.
Transportan:
Las computadoras ejecutan instrucciones mediante un ciclo continuo:
Este ciclo se repite continuamente, en millones de instrucciones por segundo.
el cuello de botella de von Neumann (memoria única datos e instrucciones)
el paralelismo limitado
la eficiencia energética
Es el modelo de arquitectura conceptual dominante
No es la única forma de organizar una computadora
Los procesadores actuales son en realidad híbridos
Problemas:
Idea principal:
separar la memoria de instrucciones de la memoria de datos
Esto permite:
Este tipo de arquitectura se utiliza mucho en:
Ejemplos:
Las computadoras modernas suelen tener varios procesadores trabajando en paralelo.
Ejemplo:
un CPU con
Esto permite ejecutar varias tareas al mismo tiempo real
La idea es dividir un problema grande en muchas partes más pequeñas.
Cada procesador trabaja en una parte.
Ejemplos donde esto es importante:
Las GPUs (Graphics Processing Units) fueron diseñadas originalmente para gráficos.
Pero hoy también se usan para:
Una GPU puede tener miles de núcleos simples.
Algunos investigadores están diseñando computadoras inspiradas en el cerebro humano.
Características:
Los procesadores actuales combinan varias ideas:
Es decir:
la arquitectura real es una combinación de varios enfoques.
https://creativecommons.org/licenses/by/4.0/deed.es