Docstoc

INTRODUCCIóN AL LENGUAJE ENSAMBLADOR

Document Sample
INTRODUCCIóN AL LENGUAJE ENSAMBLADOR Powered By Docstoc
					                          Estructura y Tecnología de Computadores I
                             Introducción al lenguaje ensamblador                     -1-

INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
1.   Concepto de lenguaje de programación
2.   Lenguajes de alto nivel
3.   Lenguajes de bajo nivel
4.   Desarrollo de programas


1. CONCEPTO DE LENGUAJE DE PROGRAMACIÓN

- Lenguaje de programación: notación formal para describir algoritmos o funciones que
serán ejecutadas por un computador.

- Tipos de lenguajes
       • Lenguaje máquina
       • Lenguajes simbólicos
               ∗ Lenguajes ensambladores
               ∗ Lenguajes macroensambladores
               ∗ Lenguajes orientados a problemas
               ∗ Lenguajes de diseño de sistemas de información
               ∗ Lenguajes de 5ª generación

- Lenguajes de bajo nivel: orientados al computador.
       • Lenguaje máquina
       • Lenguaje ensamblador
       • Lenguaje macroensamblador

- Lenguajes de alto nivel: orientados al problema.


2. LENGUAJES DE ALTO NIVEL

- Son métodos convenientes y sencillos de describir las estructuras de información y las
secuencias de acciones necesarias para ejecutar tareas concretas.

- Características:
       • Posibilidad de traducción automática a lenguaje máquina.
       • Independencia de la arquitectura del computador.
       • Transportabilidad.

- Clasificación:
        • Lenguajes de propósito general.
        • Lenguajes de propósito específico (comerciales, científicos, educativos).

- Clasificación:
        • Lenguajes procedimentales
        • Lenguajes declarativos
                          Estructura y Tecnología de Computadores I
                             Introducción al lenguaje ensamblador                 -2-

3. LENGUAJES DE BAJO NIVEL

- Totalmente vinculados a la estructura del computador.

- Diseñados para sacar partido de la máquina.

Lenguaje máquina

- Único lenguaje comprendido y ejecutado por un computador.

- Instrucciones: cadenas de unos y ceros.

- Características:
       • Dependencia absoluta de la arquitectura del computador.
       • Imposibilidad de transportar programas entre distintas máquinas, salvo que
           sean compatibles.
       • Instrucciones poco potentes.
       • Programas muy largos.
       • Códigos de operación, datos y referencias en binario.


Lenguaje ensamblador

- Equivalente al lenguaje máquina, pero con códigos de operación, datos y referencias
simbólicos.
       • Operaciones: códigos nemotécnicos.
       • Datos y referencias: nombres simbólicos.

- Cada instrucción ensamblador se corresponde con una instrucción de máquina.


4. DESARROLLO DE PROGRAMAS

- Pasos en el desarrollo, traducción y ejecución de programas:
       • Edición
               ∗ Editor de textos
       • Traducción a código máquina
               ∗ Compilador, intérprete, ensamblador
       • Montaje del programa ejecutable
               ∗ Montador
       • Carga y ejecución del programa
               ∗ Cargador
       • Verificación del funcionamiento del programa
               ∗ Depurador
                          Estructura y Tecnología de Computadores I
                             Introducción al lenguaje ensamblador                      -3-

Edición

- Transcripción del programa escrito en lenguaje simbólico a un fichero de texto.

- Programa en lenguaje simbólico: programa fuente.

- Herramienta: editor de textos.


Traducción

- Conversión automática del programa fuente a su equivalente en lenguaje máquina.

- Programa en lenguaje máquina: programa objeto.

- Herramienta: traductor.
       • Ensamblador: traductor de lenguaje ensamblador a lenguaje máquina.
              ∗ Genera un fichero con el programa objeto.
       • Compilador: traductor de lenguaje de alto nivel a lenguaje máquina.
              ∗ Genera un fichero con el programa objeto.
       • Intérprete: traductor de lenguaje de alto nivel a lenguaje máquina.
              ∗ Ejecuta las sentencias del programa fuente a medida que las traduce.
              ∗ No genera fichero con el programa objeto.


Montaje

- Generación de un programa ejecutable a partir de uno o varios módulos de código
objeto.

- Herramienta: montador de enlaces.
       • Se encarga de resolver las referencias entre elementos de varios módulos
          (referencias cruzadas).
       • Genera un fichero ejecutable.


Carga

- Transferencia del programa ejecutable a la memoria del computador desde el fichero
en disco, y lanzamiento de la ejecución.

- Herramienta: cargador.
       • Cargador binario absoluto: toma el programa ejecutable y lo carga en las
          direcciones de memoria especificadas en el mismo.
       • Cargador reubicador: redefine las direcciones relativas presentes en el
          programa ejecutable.
                         Estructura y Tecnología de Computadores I
                            Introducción al lenguaje ensamblador                -4-

Verificación de la ejecución

- Comprobación de los efectos causados por la ejecución de las instrucciones en las
variables y el estado de la máquina.

- Herramienta: depurador.
       • Visualización de los registros del computador.
       • Visualización de los contenidos de la memoria del computador.
       • Ejecución del programa paso a paso o por conjuntos de instrucciones.
       • Establecimiento de puntos de ruptura.

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:110
posted:8/4/2011
language:Spanish
pages:4