Ensamblador - pagamos por practica

   
Vista:

pagamos por practica

Publicado por Agustin (1 intervención) el 17/01/2011 14:10:58
Hola, alguien podria ayudarme con esta practica? tengo que entregarla el viernes, y estoy desesperado, estamos dispuestos a pagar por ella, desesperacion desde la universidad de salamanca

Práctica 1: Manejo de los Sistemas de Representación y Programas Residentes.
Esta práctica tiene dos objetivos diferenciados. Por un lado, se pretende que el alumno se familiarice
con los sistemas de representación que se estudian en el Tema 1 como pueden ser el binario natural sin
signo, el binario en signo-magnitud, el complemento a 1, el complemento a 2, o el hexadecimal. El
segundo objetivo consiste en entender el concepto de interrupción, los tipos y la forma en que la CPU
reacciona cuando se provoca una interrupción. Para ello, se proponen los siguientes ejercicios.
1.1 Manejo de los Sistemas de Representación.
Desarrollar un programa en ensamblador del 8086 en entorno MS-DOS que muestre en pantalla un
mensaje en el que se solicite una cadena binaria de 8 dígitos. A continuación, el programa se encargará
de calcular el valor equivalente de dicha representación binaria según los siguientes sistemas de
representación:
- Binario natural sin signo.
- Binario natural con signo.
- Complemento a 1.
- Complemento a 2.
- Decimal Codificado en Binario BCD.
- Hexadecimal.
Para mostrar los distintos mensajes en la pantalla se escribirá directamente sobre la memoria de video
en modo texto.
1.2 Programas Residentes.
1.2.1 Fundamento teórico.
A lo largo de las prácticas de Arquitectura de Computadores I vimos cómo la tarea del
microprocesador consiste en leer instrucciones, decodificarlas y ejecutarlas continuamente según la
secuencia marcada por un programa. Pero en algunas ocasiones, esta secuencia se ve interrumpida
debido a un suceso externo o a un error en la ejecución de alguna instrucción. En esta práctica
veremos cómo reacciona la CPU rompiendo la secuencia de programa cuando se provoca una
interrupción.
Los tipos de interrupciones para la familia 8086 son:
- Interrupciones internas, cepos o traps: desbordamiento, división por cero, instrucción ilegal.
- Interrupciones software: ejecución de una instrucción de tipo INT i.
- Interrupciones externas (interrupciones propiamente dichas). Las interrupciones externas a su
vez pueden ser enmascarables (línea INTR) y no enmascarables (línea NMI). Mientras que las
interrupciones enmascarables las atiende el microprocesador en función de la inhibición o no
de las mismas, las interrupciones no enmascarables siempre son atendidas por el
microprocesador. Por ejemplo, se conectan a la línea INTR, el temporizador para provocar
interrupciones de forma periódica o un controlador de E/S para indicar que una operación ha
sido finalizada; y se conecta a la línea NMI por ejemplo, la salida del circuito detector de
paridad, para indicar un posible error de paridad del dato leído desde memoria.
En cualquiera de estos casos, la CPU procede de la siguiente forma:
1. La CPU finaliza la ejecución de la instrucción en curso (Figura 1).
2. La CPU almacena el contenido del registro de estado SR y del contador de programa (CS e IP)
en la pila (Figura 2). Para el caso del microprocesador 8086, el funcionamiento de la pila es el
Arquitectura de Computadores II Departamento de Ingeniería Electrónica, de Sistemas Informáticos y Automática
Universidad de Huelva
2/11
siguiente: la pila crece hacia direcciones decrecientes, el registro puntero de pila (SS:SP)
contiene la dirección de memoria del último elemento almacenado en la pila, y para cuando
hay que guardar el registro de estado y contador de programa, se almacenará primero el
registro de estado.
3. El código de la interrupción que se haya provocado, determina la posición de la tabla de
vectores de interrupción a partir de la cual, la CPU tiene definida la dirección de comienzo de
la rutina asociada a dicha interrupción (Figura 3). En este caso, si la interrupción es interna a
la CPU, el vector de interrupción lo suministra la propia CPU. Si la interrupción tiene un
origen externo, es el propio dispositivo que interrumpe el que suministra a través de las ocho
líneas de menos peso del bus de datos, el vector de interrupción.
4. La CPU bifurca a la dirección de comienzo de la rutina asociada a dicha interrupción (Figura
4). Para esto, es necesario que la rutina haya sido previamente diseñada, definida y
almacenada en memoria. Para que la rutina asociada a la interrupción (rutina de servicio de
interrupción) pueda ejecutarse cada vez que se produzca la interrupción, es necesario que esté
siempre definida en memoria; es decir, debe ser lo que se conoce como Programa Residente.
5. Para que al finalizar la ejecución de la rutina asociada a una interrupción, se pueda continuar
con el programa que se encontraba ejecutando la CPU cuando se produjo la interrupción, se
tiene que producir una nueva bifurcación a la dirección de memoria a partir de la cual se
encuentra la instrucción siguiente a la última que se ejecutó. La forma de indicar esta
bifurcación a la CPU es mediante la colocación de la instrucción IRET (retorno de
interrupción) al final de las rutinas de servicio de las interrupciones (Figura 5). Cuando la
CPU ejecuta la instrucción IRET, recupera de la pila el valor del contador de programa y del
registro de estado, en orden inverso a como fueron almacenados.
6. La CPU continúa ejecutando el programa principal (Figura 6).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:pagamos por practica

Publicado por Pepe el de la huerta (1 intervención) el 19/01/2011 18:43:40
¿¿Pero es de la Universidad de Salamanca?? ¿¿O de Huelva??

Esta difícil la cosa ¡eh!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pagamos por practica

Publicado por 123 vuelve otra vez... (1 intervención) el 19/01/2011 20:05:07
Dame tu correo-e y veremos lo que podemos hacer...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:pagamos por practica

Publicado por Cuadrado (1 intervención) el 02/02/2011 17:08:29
Yo la vendo cuando Paqui la de por buena jajajaja.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar