PBN - 04 - 1 © Jaime Alberto Parra Plaza CLASE 4 EL ENSAMBLADOR.

Post on 19-Feb-2015

9 views 0 download

Transcript of PBN - 04 - 1 © Jaime Alberto Parra Plaza CLASE 4 EL ENSAMBLADOR.

PBN - 04 - 1© Jaime Alberto Parra Plaza

CLASE 4

ELENSAMBLADOR

PBN - 04 - 2© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

PBN - 04 - 3© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente

• Código objeto

• Código ejecutable

• Ejecución del programa

• Solución del problema

PBN - 04 - 4© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente

• Código objeto

• Código ejecutable

• Ejecución del programa

• Solución del problema

PBN - 04 - 5© Jaime Alberto Parra Plaza

DESCRIPCIÓN DEL PROBLEMA:

Obtener una descripción verbal o gráfica del problema a solucionar.

A partir de ella deducir las entradas, las salidas y las relaciones entre ellas, las cuales deben expresarse en forma de ecuación o de tabla.

PBN - 04 - 6© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema • Algoritmo• Código fuente

• Código objeto

• Código ejecutable

• Ejecución del programa

• Solución del problema

PBN - 04 - 7© Jaime Alberto Parra Plaza

ALGORITMO:

Escribir un algoritmo solución utilizando pseudocódigo o diagramas de flujo.

En éste deben fijarse los nombres y tipos de las variables que representan las entradas, las salidas y las variables auxiliares requeridas para llevar a cabo las relaciones entrada-salida.

PBN - 04 - 8© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo• Código fuente• Código objeto

• Código ejecutable

• Ejecución del programa

• Solución del problema

PBN - 04 - 9© Jaime Alberto Parra Plaza

CÓDIGO FUENTE:

Escribir el Algoritmo en un Lenguaje de Programación.

Las instrucciones escritas en un lenguaje de programación se denominan código fuente y para escribirlo se utiliza una herramienta llamada editor.

PBN - 04 - 10© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente• Código objeto• Código ejecutable

• Ejecución del programa

• Solución del problema

PBN - 04 - 11© Jaime Alberto Parra Plaza

CÓDIGO OBJETO:

Traducir el código fuente a lenguaje binario (llamado código objeto.)

Para ello se usa una herramienta llamada ensamblador si el código fuente es de bajo nivel (instrucciones de microprocesador) o un compilador si el código fuente es de alto nivel (instrucciones algorítmicas.)

PBN - 04 - 12© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente

• Código objeto• Código ejecutable• Ejecución del programa

• Solución del problema

PBN - 04 - 13© Jaime Alberto Parra Plaza

CÓDIGO EJECUTABLE:

Ligar el código objeto con otros códigos objeto (módulos) o con funciones precompiladas (bibliotecas de funciones.)

Usar una herramienta llamada enlazador. El archivo producido se denomina código ejecutable.

PBN - 04 - 14© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente

• Código objeto

• Código ejecutable• Ejecución del programa• Solución del problema

PBN - 04 - 15© Jaime Alberto Parra Plaza

EJECUCIÓN DEL PROGRAMA:

Ubicar el programa en memoria y ejecutarlo. Aquí se requiere el uso de una herramienta llamada cargador de

programas. Ésta usualmente hace parte del sistema operativo.

PBN - 04 - 16© Jaime Alberto Parra Plaza

PASOS PARA CREAR UN PROGRAMA:

• Descripción del problema

• Algoritmo

• Código fuente

• Código objeto

• Código ejecutable

• Ejecución del programa• Solución del problema

PBN - 04 - 17© Jaime Alberto Parra Plaza

SOLUCIÓN DEL PROBLEMA:

Se observa la salida que genera el programa y se determina si corresponde con la solución esperada.

Debe quedar claro que el computador es una ayuda para solucionar problemas, no es el solucionador mismo. ¡Para que el computador solucione un problema, el programador debe haberlo solucionado antes!

PBN - 04 - 18© Jaime Alberto Parra Plaza

ERRORES:

Es común que durante el proceso mencionado aparezcan errores en diferentes partes del mismo. Los errores suelen clasificarse en:

• Errores de sintaxis

• Errores de semántica

PBN - 04 - 19© Jaime Alberto Parra Plaza

ERRORES DE SINTAXIS:

Son aquellos que se producen cuando no se escribe el código fuente siguiendo las reglas que exige el ensamblador o el compilador utilizado.

Estos errores se corrigen volviendo a editar el código fuente y haciendo los cambios que el propio ensamblador sugiere.

PBN - 04 - 20© Jaime Alberto Parra Plaza

ERRORES DE SEMÁNTICA:

Son los que se producen cuando la salida del programa no corresponde con la esperada (por ejemplo, ¡que se le diga al computador que sume 3 + 5 y responda con 6!)

PBN - 04 - 21© Jaime Alberto Parra Plaza

La causa de un error semántico puede ser muy difícil de descubrir.

La solución puede requerir regresar el proceso a reescribir el código fuente, a reescribir el algoritmo o, en caso extremo, ¡a reescribir la descripción del problema!.

Para ayudar en esta tarea existe la herramienta llamada depurador, con la cual puede verse el interior de un programa mientras se ejecuta.

PBN - 04 - 22© Jaime Alberto Parra Plaza

El ensamblador es un programa que traduce un archivo que contiene instrucciones de bajo nivel en otro archivo donde esas instrucciones aparecen en código binario:

EL ENSAMBLADOR:

PBN - 04 - 23© Jaime Alberto Parra Plaza

MOV AX, 1

ADD AX, BX

INC CX

ENSAMBLADOR

B8 01

03 C3

41

Entendible por

el ser humano

Entendible por

el computador

PBN - 04 - 24© Jaime Alberto Parra Plaza

El lenguaje ensamblador (assembly) representa mediante mnemónicos (palabras fáciles de recordar) cada una de las instrucciones ejecutables por el uP.

El programa ensamblador (assembler) es una herramienta que traduce los mnemónicos al código binario equivalente.

PBN - 04 - 25© Jaime Alberto Parra Plaza

• ¿Cuáles son las opciones que pueden especificarse en la línea de comandos para el Ensamblador, el Enlazador y el Depurador? ¿Cuáles son las más útiles?

PREGUNTA 4:

PBN - 04 - 26© Jaime Alberto Parra Plaza

< FIN DE LA CLASE 4 >