Facultad de Ingeniería Escuela de Ingeniería Electrónica Examen Parcial - Semestre 2012-I Curso : Microprocessadores Codigo : CE0606 Grupo Profesor Día Hora Duración de la prueba : 01 : Jacob Astocondor villar : 11-05-2012 : 10.30 a 12.30 horas : 110 minutos Nota: El examen es sin copias ni apuntes. Está prohibido el préstamo de calculadoras y correctores,. uso de celulares, consumo de bebidas, comidas y cigarrillos P1.- ( 5 puntos) a) Con un registro de 16 bits ¿cuántas posiciones de memoria se pueden direccionar? b) El manual del 8088 dice que este es capaz de direccionar 1 Mbyte. ¿Cuántos bits se necesitan para direccionar 1 Mbyte?. Explique cómo logra el microprocesador direccionar 1 Mbyte si los registros que se emplean son de 16 bits.. ¿Cómo se denominan los 20 bits generados?. c) Esquematice todos los registros principales del 8088, indicando su longitud y su uso dedicado (si lo tienen), especificando las partes constituyentes de aquellos que pueden ser divididos. d) ¿Cómo se llaman los registros de segmento y que longitud en bits tienen? ¿Cómo se genera una dirección física? P2.- ( 5 puntos) a) Indique que realizan las siguientes instrucciones, aclarando en cada caso los modos de direccionamiento utilizados: MOV AX,10;……………………………………………………………………………….. MOV BX,[100……………………………………………………………………………….. ADD CX,[AX];…………………………………………………… ………………………. ADD BX,2;……………………………… ………………………………………………… DEC CX;…………………………………………………………………………………… a) Escriba una macro denominado @pcursor para ubicar el curso en la posición x=6 y la posición y=12 de la pantalla P3.- ( 5 puntos) a) ¿Qué entiende por modo de direccionamiento directo?. De un ejemplo. b) ¿Qué entiende por modo de direccionamiento inmediato? De un ejemplo. c) ¿Qué entiende por modo de direccionamiento indirecto? De un ejemplo. d) ¿Qué entiende por modo de direccionamiento registro? De un ejemplo. e) ¿Qué entiende por modo de direccionamiento basado y con desplazamiento?. De un ejemplo. f) ¿Cuántos bits tiene el registro de flags?. ¿Qué flags conoce?. ¿Para qué se los usa?. g) ¿Cuál es la diferencia entre un llamado a subrutina NEAR y FAR?. 4.- ( 5 puntos) Realizar el control de un motor paso a paso con una computadora personal utilice el lenguaje asambler. Utilice el puerto paralelo ubicado en la posición de memoria 0378h. se indica la interfase del puerto paralelo J1 1 14 2 15 3 16 4 17 5 18 6 19 7 20 8 21 9 22 10 23 11 24 12 25 13 U2 2 3 4 5 6 7 8 9 19 1 A0 A1 A2 A3 A4 A5 A6 A7 motor paso a paso U1 B0 B1 B2 B3 B4 B5 B6 B7 18 17 16 15 14 13 12 11 1 2 3 4 5 6 7 1B 2B 3B 4B 5B 6B 7B COM 1C 2C 3C 4C 5C 6C 7C 9 16 15 14 13 12 11 10 L1 33nH L233nH ULN2003A CE AB/BA 74LS245 CONN-D25M Se pide a) Realizar un diagrama de flujo para realizar un programa para manipular un motor paso a paso , el giro será en sentido horario constantemente b) Explicar la secuencia de códigos a sacar por el puerto paralelo de la PC c) Realizar la rutina de retardo para controlar la velocidad del motor d) Escribir el programa para hacer girar el moro paso a paso en sentido horario constantemente, el puerto paralelo de la PC está ubicado en la Posición 0378h -------------------------------------------------------------------------------------------------------