hoja 1 de 1 gobierno constitucional del estado libre y soberano de

Anuncio
GOBIERNO CONSTITUCIONAL DEL ESTADO LIBRE Y SOBERANO DE OAXACA
INSTITUTO ESTATAL DE EDUCACIÓN PÚBLICA DE OAXACA
COORDINACIÓN GENERAL DE PLANEACIÓN EDUCATIVA
COORDINACIÓN GENERAL DE EDUCACIÓN MEDIA SUPERIOR Y SUPERIOR
PROGRAMA DE ESTUDIOS
NOMBRE DE LA ASIGNATURA
Lenguaje Ensamblador
CICLO
Sexto Semestre
CLAVE DE LA ASIGNATURA
20602
ANTECEDENTE
NINGUNO
TOTAL DE HORAS
85
TIPO
Teórica-práctica
OBJETIVO(S) GENERAL(ES) DE LA ASIGNATURA
Proporcionar al estudiante los conocimientos fundamentales del lenguaje ensamblador y con esto
pueda explotar las capacidades del hadware de la computadora a bajo nivel en forma eficiente.
TEMAS Y SUBTEMAS
1.
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
1.1. Organización de la computadora
1.2. Lenguaje máquina y lenguaje ensamblador
1.3. Importancia del lenguaje ensamblador
1.4. Aplicaciones del lenguaje ensamblador
1.5. Tipos de lenguajes ensambladores
1.6. Lenguajes Ensambladores y lenguajes de alto nivel
1.7. Estructura de un programa en ensamblador
1.8. Ensamble, enlace y ejecución.
1.9. El entorno de programación
ELEMENTOS DEL LENGUAJE
2.1. Formato de las instrucciones
2.2. Definición de datos
2.3. Instrucciones básicas, de transferencia de datos y Aritméticas
2.4. Manipulación de bits
2.5. Ramas y Lazos
2.6. Interrupciones básicas de E/S
3.
PROCEDIMIENTOS Y MACROS
3.1. Programación modular
3.2. La pila
3.3. Direccionamiento indirecto
3.4. Procedimientos
3.5. Macros
4.
ARREGLOS
4.1. Direccionamiento indexado
4.2. Declaración de arreglos
4.3. Acceso a los elementos del arreglo
4.4. Arreglos multidimensionales
4.5. Cadenas.
5.
MANEJO DE INTERRUPCIONES
5.1. Definición de interrupción
5.2. Interrupciones de video
5.3. Interrupciones de teclado
5.4. Interrupciones de la impresora
5.5. Interrupciones de llamadas a servicios del sistema
HOJA 1 DE 1
6.
PUNTO FLOTANTE
6.1. Representación en punto flotante
6.2. Aritmética de punto flotante
6.3. El coprocesador numérico: Hardware e Instrucciones
7.
PROGRAMACION HIBRIDA
7.1. Directivas para compilación hibrida
7.2. Funciones en ensamblador
7.3. Integración de módulos de ensamblador con lenguajes de alto nivel
8.
MANEJO DE DISPOSITIVOS
8.1. Puerto serial
8.2. Puerto paralelo
ACTIVIDADES DE APRENDIZAJE
Sesiones dirigidas por el profesor. Las sesiones se desarrollarán utilizando medios de apoyo
didáctico como son la computadora portátil, dispositivos de plataformas de ejemplo y el proyector de
video. Asimismo, se desarrollarán programas de cómputo sobre los temas y los problemas del
curso.
CRITERIOS Y PROCEDIMIENTOS DE EVALUACIÓN Y ACREDITACIÓN
Al inicio del curso el profesor indicará el procedimiento de evaluación que deberá comprender al
menos tres evaluaciones parciales que tendrán una equivalencia del 50% y un examen final que
tendrá otro 50%, la suma de estos dos porcentajes dará la calificación final.
Las evaluaciones serán escritas, y prácticas; éstas últimas, se asocian a la ejecución exitosa y la
documentación de la solución de programas asociados a problemas sobre temas el curso. Además
se considerará el trabajo extra clase y la participación durante las sesiones del curso.
BIBLIOGRAFÍA
TEXTOS BÁSICOS:
• Professional Assembly Language (Programmer to Programmer), Blum, Richard, Wrox,
2005.
• Assembly Language Steep-by-steep: Programming with DOS and Linux, Duntemann,
Jeff, Second Edition: Wiley, 2000.
• Guide to Assembly Language Programming in Linux, Sivarama P. Dandamudi, Springer,
2005, 1 edition.
• Linux Assembly Language Programming, Neveln, Bob, Prentice-Hall, 2000.
TEXTOS DE CONSULTA:
• Assembler Language Primer for the IBM PC&XT, Lafore, Robert, 1984.
• Ensamblador Básico, Rojas Ponce, Alberto.
• IBM PC Assembly Language and Programming, Abel, Peter, Prentice-Hall, 1998.
•
IBM PC&XT Assembly Language: A Guide for Programmers, Enhanced and Enlarged,
Scanllon, Leo, Brady Books/Prentice Hall Press, 1985.
PERFIL PROFESIONAL DEL DOCENTE
Ingeniero en computación o en Sistemas computacionales con Maestría en computación o
Doctorado en computación.
HOJA 2 DE 2
Descargar