domingo, 6 de mayo de 2007

La maquina de turing


Bueno ya hablamos un poco de lo que es karel el robot, y le abrimos un campo a una de las grandes invenciones de la historia, la maquina de turing realizada por Alan Turing y se puede decir que fue el primer modelo del computador, aunque muy basico, fue muy importante para el desarrollo de las actuales tecnologias.

En realidad la máquina de Turing es más una abstracción matemática que un dispositivo físico o mecánico. El hecho que se le denomine "máquina" se debe a que su funcionamiento puede ser descrito en términos de operaciones individuales muy sencillas que sugieren una implementación real muy simple, lo que ha motivado que existan muchas versiones prácticas del mismo.

Existen diversas "variedades" de una máquina de Turing, pero la más simple puede ser descrita diciendo que es cualquier dispositivo que cumple las siguientes condiciones:

Tiene una cinta sobre la que puede desplazarse a izquierda y derecha un cabezal de lectura/escritura. La cinta contiene una serie de celdas, y en cada una de ellas puede escribirse un símbolo de un conjunto finito; este conjunto de símbolos se denomina el alfabeto de la máquina. En principio todas las celdas que no se hayan escrito antes contienen un carácter especial nulo o vacío (que se representa por 0 o #). La cinta puede contener tantas celdas a derecha e izquierda del cabezal como sean necesarias para el funcionamiento de la máquina.

El cabezal puede moverse a derecha a izquierda de su posición actual, así como leer el contenido de una celda o escribir en ella cualquier carácter de su alfabeto.

Existe un registro de estado que almacena el estado de la máquina. El número de estados posibles es finito, y no se exige ningún estado especial con el que sea iniciada la máquina.

Existe una tabla de acción, que contiene las instrucciones de lo que hará el autómata. Estas instrucciones representan en cierta forma el "programa" de la máquina. Las ejecución de cada instrucción de la tabla de acción incluye cuatro pasos:

Leer un carácter en la posición actual.

Escribir un nuevo símbolo en esta posición (puede ser el mismo que había). El símbolo a escribir es alguno del alfabeto de la máquina, y depende del carácter leído y del estado actual.

Desplazar el cabezal una celda a derecha o izquierda; en algunos modelos el desplazamiento puede ser nulo.

Decidir cual será el nuevo estado en función del carácter que se acaba de leer y del estado actual. Si la tabla de acción no contiene ninguna correspondencia con el estado actual y el símbolo leído, entonces la máquina detiene su funcionamiento.

informacion tomada de http://www.zator.com/Cpp/E0_1_1.htm#[2]

Es increible como apartir de esta maquina, atravez del tiempo las cosas hayan venido evolucionando tanto, que hoy en dia utilizamos computadores de tan alto rendimiento, y todo estas tecnologias, gracias a la invencion de la maquina de Turing, por eso es que esta es tan importante actualmente, y que hace parte de la historia.

A continuación se muestra el modelo del software desarrollado en la Escuela Colombiana De Ingenieria por el ingeniero Raul Chaparro.

No hay comentarios: