Lenguaje enamblador

Solo disponible en BuenasTareas
  • Páginas : 9 (2189 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de septiembre de 2010
Leer documento completo
Vista previa del texto
El uso del lenguaje ensamblador no es para la gente común y corriente, sino para profesionistas en el área de computación que están obligados a conocer este lenguaje, ya que proporciona una serie de características que no se pueden encontrar en los lenguajes de alto nivel. Algunas de estas características son: Se puede acceder a cualquier localidad de la memoria ram sin ninguna restricción. Sepueden programar virus, debido a que se tiene un acceso


total a casi todo el hardware de la computadora via interrupciones de software. Se pueden programar drivers de cualquier dispositivo. Se puede acceder directamente a los registros internos del cpu. Se puede acceder directamente a los dispositivos de entrada y/o salida. Los programas objeto generados a traves del ensamblador son masveloces que los generados en cualquier otro lenguaje, debido a que una instrucción en ensamblador corresponde a una instrucción en lenguaje máquina.

2.2 Funciones De Un Ensamblador

La tarea fundamental de un ensamblador es traducir un programa en lenguaje de ensamblador al código correspondiente en lenguaje de máquina. En esencia, el ensamblador debe realizar las siguientes tareas:

1.Convertir los códigos ("opcode" o mnemónicos: ej. LDA, STX) a su código equivalente en lenguaje de máquina

2. Convertir los operandos simbólicos (las etiquetas o variables) en las direcciones correspondientes de los operandos

3. Construir las instrucciones en lenguaje de máquina en el formato apropiado

4. Convertir las constantes definidas en el programa en su verdadera representación

5.Escribir el "listing" en lenguaje de ensamblador con el código en lenguaje de máquina correspondiente

6. Procesar las directrices al ensamblador (las directrices son instrucciones o comandos dirigidos al ensamblador, que éste procesa y ejecuta al hallarlos en el programa en lenguaje de ensamblador; estas directrices no se traducen a lenguaje de máquina, si no que el ensamblador ejecuta algunaacción, como reservar memoria para variables, entre otras)

(Org. De Computadoras Un Enfoque Estructurado, Tanenbaum, P.445)

En general, la mayoría de las tareas se puede realizar si se recorre el programa línea por línea. Pero surge una dificultad si se trata de traducir una instrucción cuyo operando está definido más abajo en el programa. Si esto ocurre, el ensamblador desconoce la direccióndel operando y la instrucción no se podría ensamblar

Funciones /procedimientos:

Ini_VI:

Salva las direcciones del VI que se van a modificar e inicializa las posiciones correspondientes del VI con las direcciones de las rutinas de servicio programadas.

Res_VI:

Restaura las direcciones de las rutinas de servicio originales en el VI.

Presenta:

Presentar una cadena ascii enpantalla en la posición que se le indica , además se le pasa un parámetro adicional para indicar el color en que se debe visualizar la cadena.

Los parámetros color,fila,columna se pasan a través de la pila , mientras que la dirección de la cadena de pasa mediante registro: es:di.

La llamada a la función se realiza mediante la macro ini_pres.

Wtoa:

Convierte un número entero positivo en C2 de16 bits a sus dígitos en código ascii , escribiéndolo además en pantalla en la posición que se le indica .

La llamada (long,color,numero,fila,columna ) se realiza a través de la macro ini_wtoa.

En long se indica el número de dígitos que se quieren utilizar para visualizar el número , si el número de dígitos deseados es superior al del número convertido , entonces se completa con ceros a laizquierda.

Redidisp:

Recorre las posiciones de memoria del buffer de video(recorrido creciente) , reconociendo los caracteres de disparo y tratándolos con el procedimiento correspondiente según el sentido de cada disparo.

Los disparos de bajada primero son situados en una fila más abajo en un color distinto (col_bajar) para ser posteriormente redibujados, ya que sino serían bajados hasta...
tracking img