Syllabus

SCM-0420 Lenguaje Ensamblador

MTE. JOSE RAMON CAB CHAN

rcab@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
5 3 2 8

Prerrequisitos
Arquitectura de las computadoras. Conocimientos acerca del funcionamiento de la computadoras. Poseer la capacidad de abstracción, para realizar el planteamiento y su posterior implementación. haciendo uso de éste lenguaje. Poseer habilidades de Análisis de problemas, e identificación de componentes de hardware asociadas al software. Utilizar algún lenguaje de programación de alto nivel.

Competencias Atributos de Ingeniería

Normatividad
El alumno deberá cumplir con el porcentaje de asistencias mínimo requerido por el plantel. • Deberá demostrar en base al contenido del programa el dominio de los conceptos, capacidad de la aplicación de los conocimientos en problemas reales, transferencia del conocimiento. • Participación en actividades individuales y de equipo. • Cumplimiento de los objetivos y desempeño en las prácticas propuestas.

Materiales
Cómputadora personal con procesador 386 o superior. Software de Microsoft TASM 2.0, TLINK 2.0 y Software de interrupciones HELPC.

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares
Parámetros de Examen
PARCIAL 1 Primera unidad
PARCIAL 2 Segunda unidad

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. 1
          1.1. Introducción
                   1.1.1. Uso y aplicaciones del lenguaje ensamblador
                           Introducción a lenguaje ensamblador ( bytes)
                           http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/modulo1/cap_01/leccion202.htm
                          
                   1.1.2. Escalabilidad de los microprocesadores
                           Escalabilidad ( bytes)
                           Escalabilidad de los microprocesadores ( bytes)
                           http://www.monografias.com/trabajos11/lenen/lenen.shtml#ar
                           http://roble.pntic.mec.es/~jcortijo/pag_jacl/I_Basica/micros/micros.htm
                          
                   1.1.3. Tipos de lenguajes ensambladores
                           tipos de lenguajes ( bytes)
                           clasificación de los lenguajes de programación ( bytes)
                           clasificación de lenguajes ( bytes)
                          
                   1.1.4. Clasificación de Memoria
                           organización de memoria ( bytes)
                           http://orbita.starmedia.com/~prog201eq1/AGO-30.HTM
                           http://www.mailxmail.com/curso/informatica/arquitecturaordenadores/capitulo6.htm
                           http://www.mailxmail.com/curso/informatica/arquitecturaordenadores/capitulo3.htm
                          
                   1.1.5. Unidades de entrada y salida
                           Dispositivos de E/S ( bytes)
                           http://www.monografias.com/trabajos33/dispositivos/dispositivos.shtml
                           http://www.itson.mx/die/eromero/biblioelec/bsistdig2/Tipos_ES.pdf
                           http://es.wikipedia.org/wiki/Entrada/Salida
                          
          1.2. El microprocesador
                   1.2.1. Buses
                           microporcesador 80X86 ( bytes)
                           http://www.itson.mx/die/eromero/biblioelec/bsistdig2/Tipos_ES.pdf
                          
                   1.2.2. Registros
                           Procesadores intel ( bytes)
                          
                   1.2.3. Modos de direccionamiento
                           Tipos de direccionamiento ( bytes)
                           Modos de direcionamiento ( bytes)
                          
          1.3. Interrupciones
                   1.3.1. Hardware
                           Interrupciones de hardware ( bytes)
                           Tabla de interrupciones ( bytes)
                          
                   1.3.2. Software
                           int. de software ( bytes)
                          
          1.4. Estructura de un programa en ensamblador
                   1.4.1. Data Segment
                           Estructura básica de un programa ( bytes)
                          
                   1.4.2. Stack segment
                           Pila ( bytes)
                          
                   1.4.3. Code segment
                           Segmento de código ( bytes)
                          
                   1.4.4. Instrucciones del programa
                           instrucciones del programa ( bytes)
                          
                   1.4.5. Directivas
                           tipos de directivas ( bytes)
                          
          1.5. Procedimiento de ensamble, enlace y ejecución
                   1.5.1. Procedimento de ensamble, enlace y ejecución
                           ciclo de programa ( bytes)
                          
          1.6. Entorno de Programación
                   1.6.1. Entorno de programación
                           entorno de programación en ensamblador ( bytes)
                          
2. 2
          2.1. Instrucciones lineales
                   2.1.1. Movimiento
                           Instrucciones ( bytes)
                           métodos de direccionamiento ( bytes)
                          
                   2.1.2. Pila
                           http://members.tripod.com/~MoisesRBB/unidad3.htm
                           http://www.it.uc3m.es/ttao/html/ARC.html#arc:sec:stack
                          
                   2.1.3. Matemáticos
                           http://www.it.uc3m.es/ttao/html/ISA.html#isa:sec:arithmetic
                          
                   2.1.4. Ajustes
                           http://www.it.uc3m.es/ttao/html/ISA.html#isa:sec:arithmetic
                          
                   2.1.5. Comparación
                           http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_lenguaje_ensamblador/Primeros_conceptos
                          
          2.2. Saltos
                   2.2.1. Incondicional
                           salto incondicionales ( bytes)
                           http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_lenguaje_ensamblador/Primeros_conceptos
                           http://members.tripod.com/~MoisesRBB/unidad5.htm
                          
                   2.2.2. Condicional
                           Saltos condicionales ( bytes)
                          
          2.3. Tipos de ciclos
                   2.3.1. Loop
                           Tipos de saltos ( bytes)
                           Saltos y ciclos ( bytes)
                          
          2.4. Operadores lógicos
                   2.4.1. And,Or, Not ...
                           operadores lógicos
                           operadores lógicos ( bytes)
                           http://www.gui.uva.es/udigital/05.html
                          
          2.5. Desplazamiento
                   2.5.1. Lineal
                           Desplazamiento lineal ( bytes)
                          
                   2.5.2. Circular
                           Desplazamientos circulares ( bytes)
                           Desplazamiento circular ( bytes)
                          
          2.6. Procesos de control
                   2.6.1. Banderas
                           http://www.legionarteydiseno.250x.com/spn/cursos/asm/unidad5.htm#clc
                           http://148.202.148.5/cursos/cc206/programaciondesistemas_1_4.htm
                           http://wikitec.itnogales.edu.mx/index.php?title=Lenguaje_Ensamblador_Unidad_II&redirect=no
                          
                   2.6.2. Cadenas
                           http://expo.itch.edu.mx/view.php?f=asm_25
                          
                   2.6.3. Cargas
                           http://www.scribd.com/doc/6643575/unidad-2-ensamblador
                          
3. 3
          3.1. Macros
                   3.1.1. Internas
                           ( bytes)
                           Macros ( bytes)
                           http://www.monografias.com/trabajos11/lenen/lenen2.shtml#ma
                          
                   3.1.2. Externas
                          
          3.2. Procedimientos
                   3.2.1. Internos
                           Conceptos de Funciones ( bytes)
                           http://www.iit.upcomillas.es/~cesar/teoria/4.%20ensamblador.pdf
                          
                   3.2.2. Externos
                           Procedimientos externos ( bytes)
                          
4. 4
          4.1. Directivas para compilación hibrida
                   4.1.1. Directivas para compilación híbrida
                           http://www.mitecnologico.com/Main/DirectivasParaCompilacionHibrida
                           http://wiki.gleducar.org.ar/wiki/Manual_FreePascal#Programaci.C3.B3n_de_bajo_nivel
                           http://atc.ugr.es/docencia/udigital/13.html
                           http://www.it.uc3m.es/ttao/html/SUB.html#sub:sec:compile
                          
          4.2. Funciones en ensamblador
                   4.2.1. Funciones en ensamblador
                           Funciones y macros en ensamblador ( bytes)
                           http://www.it.uc3m.es/ttao/html/SUB.html#sub:sec:subroutines
                          
          4.3. Bloques en Ensamblador
                   4.3.1. Bloques en ensamblador
                           http://www.it.uc3m.es/ttao/html/SUB.html#sub:sec:stackframe
                           http://www.legionarteydiseno.250x.com/spn/cursos/asm/unidad7.htm
                          
          4.4. Operadores
                   4.4.1. Operadores
                           operadores ( bytes)
                           http://proton.ucting.udg.mx/mateos/ensamblador/68HC11.html
                          
          4.5. Integrar módulos de ensamblador en lenguajes de alto nivel
                   4.5.1. Módulos de ensamblador en alto nivel
                           http://www.palomatica.info/juckar/sistemas/software/lenguajes.html
                           http://www.hostalruralpuertadecaderechas.com/emilio/ensamblador/programacio%20modular%202.pdf
                          

Prácticas de Laboratorio (20212022P)
Fecha
Hora
Grupo
Aula
Práctica
Descripción

Cronogramas (20212022P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación