Maquinas de Turing

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Maquinas de Turing por Mind Map: Maquinas de Turing

1. Una máquina de Turing es un autómata que consta de una cabeza lectora y una cinta infinita en la que la cabeza puede leer símbolos, borrarlos, escribirlos y moverse a la derecha o a la izquierda. Por supuesto también consta de una función de estado que determinará los cambios de un estado a otro que se deben producir en función de las instrucciones que reciba. Es un dispositivo de reconocimientos de lenguaje, es más general que cualquier autómata finito y cualquier autómata de pila, debido a que ellas pueden reconocer tanto los lenguajes regulares, como los lenguajes independientes de contexto y además muchos otros tipos de lenguajes.

1.1. Generación de los Lenguajes de Programacion

1.1.1. primera

1.1.1.1. Empieza en los años 1940 - 1950, consiste en un sistema directamente interpretable por un circuito micro programable, compuesto por un conjunto de instrucciones que determinan acciones a ser tomadas por la maquina.

1.1.1.1.1. ejemplo

1.1.2. segunda

1.1.2.1. Constituye la representación mas directa del código maquina especifico para cada arquitectura de computadoras legible por un programador.

1.1.2.1.1. ejemplo

1.1.3. tercera

1.1.3.1. Estos lenguajes son mas fáciles de aprender y usar en los lenguajes maquina y el lenguaje simbólico, pues su similitud con la comunicación y comprensión humana cotidiana es mayor.

1.1.3.1.1. ejemplo

1.1.4. cuarta

1.1.4.1. Su característica distintiva es el énfasis en especificar que es lo que se debe hacer, en vez de como ejecutar una tarea.

1.1.4.1.1. ejemplo

1.1.5. quinta

1.1.5.1. Un lenguaje de programación de quinta generación es un lenguaje de programación basado en la resolución de problemas utilizando restricciones dadas al programa, en lugar de utilizar un algoritmo escrito por un programador

1.1.5.1.1. ejemplo

2. que es una Maquina de Turing

3. Tipos

3.1. los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categorías

3.1.1. Compiladores cruzados

3.1.1.1. se genera código en lenguaje objeto para una máquina diferente de la que se está utilizando para compilar

3.1.2. Compiladores optimizadores

3.1.2.1. lee un código fuente, lo analiza y descubre errores potenciales sin ejecutar el programa.

3.1.3. Compiladores de una sola pasada

3.1.3.1. examina el código fuente una vez, generando el código o programa objeto

3.1.4. Compiladores de varias pasadas

3.1.4.1. requieren pasos intermedios para producir un código en otro lenguaje, y una pasada final para producir y optimizar el código producido durante los pasos anteriores

3.1.5. Ensamblador

3.1.5.1. el lenguaje fuente es lenguaje ensamblador y posee una estructura sencilla

4. Estructura del Compilador

4.1. Analizador Lexico

4.1.1. se encarga de verificar si todas las cadenas pertenecen o no al lenguaje

4.2. Analizador Semantico

4.2.1. se encarga de comprobar que se cumplen las restricciones semánticas del lenguaje.

4.3. Analizador Sintactico

4.3.1. se analiza la estructura de las expreciones con base a la gramatica

5. Alan Mathison Turing

5.1. nació el 23 de Junio de 1912 en Paddington (Londres). Su padre, Julius Mathison, era funcionario del Servicio Civil Indio (cuerpo de funcionarios británicos en la India), y su madre, Ethel Sara Turing, era hija del Ingeniero Jefe de los Ferrocarriles de Madrás. Dio muestras de su ingenio y de su capacidad desde una edad muy temprana (de hecho se cuenta que aprendió a leer por sí sólo en tres semanas), interesándose por la ciencia en general y por la resolución de enigmas y rompecabezas en particular. Una Máquina de Turing es un modelo matemático que consiste en un autómata capaz de implementar cualquier problema matemático expresado por medio de un algoritmo.

5.1.1. Caracteristicas

5.1.1.1. Generalmente un compilador se divide en dos partes

5.1.1.1.1. Front End

5.1.1.1.2. Back End