
1. Modelo Von Neuman
1.1. El Modelo de Von Neumann es una arquitectura de computadora propuesta por John Von Neumann en 1945. Es una descripción abstracta de cómo funciona una computadora digital y se considera uno de los conceptos fundamentales de la informática moderna.
1.1.1. Se basa en la idea de que una computadora digital se compone de cuatro componentes principales:
1.1.1.1. Unidad central de procesamiento (CPU): es el cerebro de la computadora y se encarga de ejecutar las instrucciones y realizar las operaciones lógicas y aritméticas.
1.1.1.2. Memoria: es el lugar donde se almacenan los programas y datos que la CPU necesita para trabajar. La memoria se divide en dos partes: la memoria principal o RAM, que es volátil y se borra al apagar la computadora, y la memoria secundaria o disco duro, que es no volátil y almacena la información de forma permanente.
1.1.1.3. Dispositivos de entrada/salida: son los dispositivos que permiten interactuar con la computadora, como el teclado, el ratón, la pantalla, la impresora, etc.
1.1.1.4. Sistema de interconexión: es el conjunto de buses (canales de comunicación) que conectan los componentes y permiten la transferencia de datos y señales entre ellos.
1.1.2. También se caracteriza por el hecho de que el programa y los datos se almacenan en la misma memoria y se tratan de la misma manera. Esto significa que los programas se ejecutan como una secuencia de instrucciones almacenadas en memoria y se pueden modificar como si fueran datos.
1.1.2.1. Ha sido ampliamente utilizado en la industria de la informática y ha sido la base para el diseño de muchas computadoras modernas. Sin embargo, también tiene algunas limitaciones, como la dependencia de la velocidad de la memoria y la CPU y la falta de paralelismo, lo que ha llevado al desarrollo de arquitecturas de computadoras más avanzadas y complejas.
2. Máquinas de Turing
2.1. Las máquinas de Turing son dispositivos teóricos propuestos por el matemático británico Alan Turing en 1936. Son consideradas la base teórica de la informática moderna y se utilizan para definir formalmente qué problemas son solucionables computacionalmente y cuáles no.
2.1.1. Son una representación abstracta de una computadora, que consta de una cinta infinita dividida en casillas, una cabeza de lectura/escritura que se mueve sobre la cinta y un conjunto de reglas que especifican cómo la máquina debe procesar los símbolos en la cinta.
2.1.2. Las características de las máquinas de Turing son
2.1.2.1. Abstracción: las máquinas de Turing no se preocupan por el hardware físico subyacente, sino que se centran en la lógica subyacente que rige el procesamiento de información.
2.1.2.2. Universalidad: las máquinas de Turing son capaces de simular cualquier otro modelo de computación, incluyendo cualquier algoritmo que se pueda ejecutar en una computadora.
2.1.2.3. Versatilidad: las máquinas de Turing son capaces de realizar cualquier cálculo que se pueda realizar en una computadora, siempre que se pueda expresar en términos de operaciones lógicas y aritméticas simples.
2.1.2.4. Determinismo: las máquinas de Turing siguen un conjunto preciso de reglas que determinan su comportamiento en cada paso, por lo que son deterministas y predecibles.
2.1.2.5. Simplicidad: aunque las máquinas de Turing son una abstracción compleja, el modelo básico es muy simple y se puede entender fácilmente, lo que las convierte en una herramienta útil para el análisis teórico de los algoritmos.
2.1.3. son una herramienta fundamental en el estudio de la teoría de la computación y son utilizadas para demostrar teoremas fundamentales como el teorema de Church-Turing, que establece que cualquier problema solucionable mediante un algoritmo puede ser resuelto por una máquina de Turing