Sie sind auf Seite 1von 4

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.