Practica 2 ensamblador
Ensamblador
Indice
1._ Introducción 3
1.1._ Objetivos 3
1.2._ Recursos 3
2._ Desarrollo 5
2.1._ Segmento de datos 6
2.2._ Segmento de código 6
2.2.1._Programa 6
2.2.1.1._ Configura 7
2.2.1.2._ Lazo 7
2.2.1.3._ Video 72.2.2._Inicio 7
2.2.2.1._ Leeraton 9
2.2.2.2._ Aumenta 9
2.2.2.3._ Cursor 10
2.2.2.4._ Pos_Cur 10
2.2.2.5._ Botón 11
3._ Descripción de las resultados 12
4._ Conclusiones 12
5._ Anexo 13
5.1._ Comportamiento ratones series asíncronos 13
5.2._ código 14INTRODUCCIÓN
· Objetivos
Esta práctica tiene por objetivo aprender a usar las facilidades que nos proporciona el sistema para utilizar el hardware disponible. En esta practica el hardware a utilizar es el ratón con conexión serie, por ello configuramos y utilizamos el puerto serie a través de una interrupción proporcionada por la Bios. Esta práctica tambiénpersigue comprender el funcionamiento de un dispositivo de entrada/salida (ratón) a través de la información que nos suministra y además manipular esa información para que se comporte como deseamos.
· Recursos
Los recursos utilizados para el desarrollo de esta practica ha sido el turbodbg que nos lo ha facilitado el profesor. El turbodbg consta del “tasm” que se encarga de generar el fichero.obj,también tiene el “tlink” que es el encargado de linkar el programa y así obtener el programa ejecutable y finalmente tenemos el “td” que es el depurador. Gracias a la ayuda de este depurador he conseguido terminar la práctica, porque en el momento de tratar los movimientos negativos no sabía exactamente como hacerlo.
Se ha utilizado la interrupción de BIOS INT 14h, que proporciona acceso alpuerto de comunicaciones asíncronas RS-232, sin tener que preocuparnos de lo que hay debajo.
Esta interrupción posee varias funciones, pero solo se ha utiliza las siguientes funciones:
* Función 0 (ah = 00h). Esta función se encarga de configurar el puerto serie de comunicaciones. Para ello debemos colocar en DX el puerto que vamos a usar, esta en 00h porque es el que he utilizado y en ALse deben de poner los parámetros de configuración, se ha puesto un 82 (1000 0010) comportándose de la siguiente manera:
Velocidad (Baudios) | Paridad | Stop bits | Long. de carácter |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
velocidad = 1200 Baudios | Sin paridad | 1bit | 7 bits |
* Función 5 (ah = 05h). Esta función se encarga de activarel lazo de
prueba que nos permitirá conectar el ratón al puerto serie sin
necesidad de modificar el cable. Esta función lleva dos parámetros:
AL con el valor 01h y BL, con el bit 4 activado.
* Función 2 (ah = 02h). Esta función nos permite comunicarnos con el puerto serie. Nos devuelve el dato en AL siempre y cuando el bit 7 de AH este a 0, en caso contrario es queno se ha leído aún el dato y se debe insistir.
Además hemos usado otra interrupción de la BIOS en este caso la 10h, usando en este las funciones 00h y 02h, las cuales se comporta como se indica a continuación:
* Función 0 (ah = 00h). Esta función nos define el modo video, se ha usado para hacer un borrado de la pantalla. Para ello ponemos en AL el valor 03h que nos define un modo video de80*25 en modo texto.
* Función 2 (ah = 02h). Esta función es la encargada de posicionar el cursor en la fila y columna que nosotros le indiquemos. Para ello colocamos en DH el valor de la fila (coordenada y) y en el registro DL el valor de la columna (coordenada x).
Y la ultima interrupción de la Bios a la cual hemos tenido que recurrir es la 21h y la función que hemos utilizado es la...
Regístrate para leer el documento completo.