Download - FUNDAMENTOS DE COMPUTACIÓN II
FUNDAMENTOS DE COMPUTACIÓN II
CARACTERÍSTISCAS GENERALES
Identificación: FUNDAMENTOS DE COMPUTACION II
Código: IC322
Régimen de cursado: Cuatrimestral
Crédito Horario Total: 90 horas de reloj
Crédito Horario Semanal: 6 horas de reloj
Año de Aprobación: 2017
Asignaturas Correlativas: Cursado: IC213 (R) y IC103-IC111 (A)
Rendir: IC103-IC213 (A)
MARTES JUEVES
SALA DE
INFORMATICA 17:00 A 19:30 17:00 a 19:30
DOCENTES:
Profesor Responsable: Rendón, Alicia Beatriz
Profesor Ayudante JTP: Gastón Solonyezny
Profesor Ayudante de 1ra: Selleski, Héctor
OBJETIVOS DE LA ASIGNATURA
OBJETIVO GENERAL
• Interpretar los conceptos, notaciones, propiedades y características de
la teoría de Lenguajes, Gramáticas y Autómatas.
• Adquirir la capacidad de evaluar lenguajes de programación desde
distintos puntos de vista, como su diseñador y/o usuario.
CONTENIDOS
Unidad 1:
Paradigmas. Criterios para el estudio de paradigmas. Características de lenguajes de
programación representativos de cada paradigma. Orígenes y evolución.
Paradigmas de Lenguaje.
Unidad 2:
Sistemas de tipos. Encapsulamiento y abstracción, intérpretes y compiladores.
Principios de diseño de los lenguajes. Historia y criterios de diseño. Eficiencia.
Regularidad. Generalidad, ortogonalidad. Principios adicionales sobre el diseño de los
lenguajes: simplicidad, expresividad, extensibilidad, capacidad de restricción, precisión,
seguridad. Criterios de diseño y de implementación de lenguajes de programación.
Unidad 3:
Estructuras algebraicas. Gramáticas y lenguajes formales. Teoría de autómatas.
Expresiones regulares. Autómatas finitos deterministas. Autómatas finitos no
deterministas.
Minimización de autómatas: reducción de un NFA hasta un DFA. Autómatas a pila
reconocedores de lenguaje.
Conceptos básicos de teoría de computabilidad y complejidad: problemas
computable s y no computables. Problemas de la detención. Problemas tratables e
intratables..
Unidad 4:
Lenguajes formales. Expresiones regulares. Gramáticas e isomorfismos. Niveles de
polimorfismo. Jerarquía de Chomsky. BNF (forma normal de Backus-Naur).
Diagramas de sintaxis para lenguajes tipo 2.
Arboles de análisis sintácticos y árboles de sintaxis abstracta. Ambigüedad. EBNF
(formas de Backus-Naur Extendida). Análisis sintáctico descendente. Análisis sintáctico
ascendente.
Unidad 5:
Nociones básicas de semántica formal, semántica operacional. Semántica básica.
Atributos, entidades, ligaduras y funciones semánticas. Declaraciones, bloques y
alcance. La tabla de símbolos. Resolución y sobrecarga de nombres. Asignación,
tiempo de vida y el entorno.
Variables y constantes. Alias, referencias pendientes y basura. Tipos de datos.
Constructores de tipos. Expresiones y enunciados. Procedimientos y ambientes.
Unidad 6:
Conceptos básicos de teoría de computabilidad y complejidad: problemas
computables y no conmutables.
Problemas de la detención. Problemas tratables e intratables.
EVALUACION
Se evalúa mediante parciales y sus recuperatorios durante el cursado de la asignatura.
Aprobar los parciales y/o recuperatorios con una nota igual o superior a 6
(seis).
Asistir al 75 % de las clases.
REQUISITOS PARA LA REGULARIZACION
COMUNICACIONES
TODAS las comunicaciones se realizan a través del aula virtual
disponible en el Moodle de la Facultad:
https://aulavirtual.fio.unam.edu.ar/course/view.php?id=616
Plantel Docente y sus correos electrónicos
Planificación de la asignatura
Horarios de clases y de consultas
Apuntes de la cátedra
Presentaciones utilizadas en clases
Guías de Ejercicios
Fechas y Notas de Parciales
Novedades o cambios que la cátedra necesite comunicar
MATRICULACION
Para matricularse deberán ingresar a:
Materias de grado /
Ingeniería en Computación/
IC322 Fundamentos de Computación II