UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIERÍAS

Anuncio
UNIVERSIDAD DE GUADALAJARA
CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIERÍAS
DIVISIÓN DE ELECTRÓNICA Y COMPUTACIÓN
DEPARTAMENTO DE CIENCIAS COMPUTACIONALES
DATOS GENERALES
CLAVE DE MATERIA
:
CC207
NOMBRE DE LA MATERIA
:
TALLER DE PROGRAMACIÓN DE SISTEMAS
TIPO
:
TALLER
CARÁCTER DEL CURSO
:
OBLIGATORIO
ÁREA DE FORMACIÓN
:
BASICA PARTICULAR
PREREQUISITOS
:
RECOMENDADO SIMULTANEO O POSTERIOR CON CC206
DEPTO. DE ADSCRIPCIÓN
:
CIENCIAS COMPUTACIONALES
ACADÉMIA
:
SOFTWARE DE SISTEMAS
CARGA HORARIA GLOBAL
:
60 HORAS
CARGA HORARIA SEMANAL
:
3 HORAS
VALOR EN CRÉDITOS
:
4 CRÉDITOS
FECHA DE ACTUALIZACIÓN
:
JULIO/2004
Aplicar en el Calendario: 2006-A
OBJETIVO GENERAL
:
EL ALUMNO DISEÑARÁ Y PROGRAMARÁ UN
ENSAMBLADOR APLICANDO LAS PRINCIPALES TÉCNICAS DE DISEÑO Y GENERACIÓN DE
PROGRAMAS DE SISTEMAS POR COMPUTADORA, EMPLEANDO ALGUN LENGUAJE DE ALTO
NIVEL.
OBJETIVOS ESPECIFICOS:
EXPRESADOS EN CADA MODULO DEL CONTENIDO
UNIVERSIDAD DE GUADALAJARA
CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIERÍAS
DIVISIÓN DE ELECTRÓNICA Y COMPUTACIÓN
DEPARTAMENTO DE CIENCIAS COMPUTACIONALES
TALLER DE PROGRAMACION DE SISTEMAS
CONTENIDO TEMÁTICO PRINCIPAL
Aplicar en el Calendario: 2006-A
Habilidades requeridas:
Aplicar y emplear algún estilo de programación
Manejar y programar en algún lenguaje de alto nivel
Conocer la Arquitectura básica de una computadora
Aplicar y emplear la estructura de datos (algoritmos de búsqueda y ordenación)
Aplicar y emplear archivos
Aplicar y emplear bases numéricas
Aplicar y emplear combinacional
Aplicar y emplear diseño de autómatas
Aplicar y emplear el manejo de cadenas de caracteres
Aplicar y emplear aritmética binaria
Módulo 1: Modelo de programación de la arquitectura de la computadora.
Objetivo: El alumno identificará con detalle los procesos lógicos que suceden
en la arquitectura de una computadora para que pueda ejecutar un programa en
lenguaje máquina.
1.1.
1.2.
1.3.
El alumno identificará el lenguaje máquina de la arquitectura mediante
ejercicios (1hr).
1.4.
El alumno identificará el modelo de programación de la arquitectura,
analizando la arquitectura de la máquina (2hr).
MÓDULO 2: ENSAMBLADORES
Objetivo: el alumno diseñará un ensamblador de 2 pasos manejando los
diferentes esquemas de ensamblado.
2.1.
El alumno implementara el algoritmo del 1er paso del ensamblador
empleando los archivos auxiliares.
2.1.1.
El alumno implementara un algoritmo para separar las partes de
una línea de lenguaje ensamblador previo análisis de la misma (3hr).
2.1.2.
El alumno Modificará el programa que se solicitó en el punto
(3hr) 2.1.1 para que se busque el conjunto de instrucciones identificado y
determine cuales modos de direccionamiento le corresponde a cada
instrucción de acuerdo a la tabla de códigos de operación.
2.1.3.
El alumno complementará el programa del punto 2.12 para que se
obtenga el modo de direccionamiento de acuerdo al operando,
considerando las diversas bases numéricas y tamaño de la instrucción en
bytes de acuerdo al modo de direccionamiento (3hrs).
2.1.4.
El alumno Completará el programa del punto 2.1.3 para el uso de
las directivas; generación de contador de localidades; y generación de
archivos auxiliares Usando la relación existente entre los archivos
auxiliares: temporal o de listado; y tabla de símbolos (3hr).
2.2.
El alumno implementará el algoritmo del 2do paso del ensamblador
empleando los archivos auxiliares.
2.2.1.
El alumno modificará el programa del punto 2.1.4 para que sea
capaz de obtener el código máquina de los direccionamientos simple previo
calculo manual de los mismos (6hr).
2.2.2.
el alumno obtendrá el código máquina de direccionamientos
compuestos (todos los IDX, [IDX], rel 8 y 16) de acuerdo a la arquitectura
2.2.2.1. El alumno modificará el programa del punto 2.2.1 para que sea
capaz de obtener el código máquina de los direccionamientos indexados
simples (5, 9,16 bits) previo análisis manual (algoritmo) (6hr).
2.2.2.2. El alumno modificará el programa del punto 2.2.2.1 para que sea
capaz de obtener el código máquina de los direccionamientos indexados
complejos previo análisis manual (algoritmo) (3hr).
2.2.2.3. El alumno modificará el programa del punto 2.2.2.2 para que sea
capaz de obtener el código máquina de los direccionamientos relativos
previo análisis (algoritmo) (6hr).
2.2.3.
El alumno modificará el programa del punto 2.2.2.3 para que sea
capaz de obtener el código objeto interpretando el uso de etiquetas y su
sustitución en el ensamblador (3hr).
2.2.4.
El alumno modificara el programa del punto 2.2.3 para la
obtención del archivo objeto, previo análisis del mismo (6hr).
MÓDULO 3: Cargador - ligado.
Objetivo: el alumno diseñará el algoritmo de un cargador evaluando el
funcionamiento de los esquemas de cargado y ligado de módulos de código
objeto. (2 semanas)
3.1.
El alumno implementará el simulador del cargador absoluto
desarrollando el Algoritmo del mismo (cargador absoluto) (3hr).
3.2.
El alumno ubicará al ligador para la arquitectura (1hr).
3.3.
El alumno reconocerá las ventajas del uso del ligado analizando las
mismas (5hr).
RECOMENDACIONES PARA EL APRENDIZAJE
Se le recomienda al alumno reforzar todas las habilidades sugeridas al principio
del programa.
Se contempla una semana para la presentación del curso.
Software a utilizar Lenguaje de programación C++ 3.0, Máquina virtual de java, y
equipo de cómputo.
BIBLIOGRAFÍA BÁSICA:
System Software
An Introduction to systems programming
Leland L. Beck
3rd Edition
Addison - Wesley
1997
ISBN 0-201-42300-6
Software de sistemas
Introducción a la programación de sistemas
Leland L. Beck
1988
ISBN 0-201-64402-9
Addison Wesley Iberoamericana
Primera Edición
Lenguaje ensamblador y programación para PC IBM y compatibles
Tercera Edición y compatibles
Peter Abel
Prentice Hall
1996
ISBN 968-880-708-7
Los microprocesadores Intel
Arquitectura,
programación
e
interfaz
de
los
procesadores
8086/8088/80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro y Pentium
II
Quinta Edición
Barry B. Brey
Pearson Educación
2001
ISBN 970-17-04-24-X
Lenguaje ensamblador para microcomputadoras IBM
Para principiantes y avanzados
J. Terry Godfrey
Prentice Hall Hispanoamericana, S.A
1991
ISBN 968-880-204-2
Primera edición
MATERIAL DE APOYO ACADÉMICO
- Pizarrón y gis
- Equipo de cómputo ( PC y estaciones de trabajo )
CRITERIOS DE EVALUACIÓN
PROYECTO FINAL
40%
PRACTICAS-TAREAS (12) 60%
 5 puntos por practica con su reporte (3 practica, 2 reporte), reporte de
cargador y ligador 10 puntos
NOTA:
 Las prácticas-tareas son para ENTREGARSE personalmente el día marcado
en hojas tamaño carta con los siguientes datos:nombre
de
la
materia,
nombre del alumno, fecha de entrega, numero de tarea y desarrollo de la
misma. No-SE RECIBIRAN PRÁCTICAS ATRASADAS.
 El ensamblador puede ser entregado en equipo (máximo 3 personas) al ser
entregado deberá incluir un reporte de la explicación del mismo (modelo de
programación, ligas de objetos, tabla de símbolos en su caso, uso de
funciones C++, etc) con los datos arriba mencionados.
 Para poder evaluar el proyecto final, deberá contar con el 80% de
asistencia y tener actividades registradas durante el curso .

El ensamblador deberá incluir todos los modos de direccionamiento,
macros y directivas. En caso contrario por cada exclusión será 5puntos
menos de puntaje. (Esto es por modo de direccionamiento: cada tipo de
indexado y relativo cuentan como 1 modo independiente)
COMPETENCIAS QUE SE PUEDEN ADQUIRIR
 Capacidad para diseñar programas de sistemas como el ensamblador y el
cargador.
 CONOCIMIENTO DE LAS DIFERENTES PLATAFORMAS EN LAS QUE SE
PUEDEN PROGRAMAR.
 APLICACIÓN DE UNA PLATAFORMA DIFERENTE CON MISMA FIN
 DESARROLLO DE SOLUCIONES A NIVEL DE SISTEMA PROPIOS DE LA
INDUSTRIA ACTUAL, CON LAS VENTAJAS DE ESTA PLATAFORMA DIFERENTE:
MENOR CODIGO OBJETO.
Descargar