mye - sem 13 - clase 26

7
HERRAMIENTAS DE LENGUAJE ENSAMBLADOR MICROPROCESADORES Y ENSAMBLADORES Ma. Henry Magari Vanegas Rodríguez

Upload: miguel-navarro

Post on 19-Dec-2015

215 views

Category:

Documents


2 download

DESCRIPTION

clas 26 de micro procesadores

TRANSCRIPT

Page 1: MYE - Sem 13 - Clase 26

HERRAMIENTAS DELENGUAJE ENSAMBLADOR

MICROPROCESADORES Y ENSAMBLADORES

Ma. Henry Magari Vanegas Rodríguez

Page 2: MYE - Sem 13 - Clase 26

Herramientas mas usadas en EnsambladorPara poder crear un programa se requieren varias herramientas:• Un editor para crear el programa fuente.

– El editor puede ser cualquier editor de textos que se tenga a lamano(Ej. Notepad++). Aquí el archivo se guarda como .asm

• Un compilador que no es más que un programa que "traduce" elprograma fuente a un programa objeto.– Como compilador se puede utilizar el MASM (macro ensamblador

de Microsoft) ya que es el más común o el TASM (Turbo Assamblerde Borland). Aquí el archivo se genera como .obj

• Un enlazador o linker, que genere el programa ejecutable a partir delprograma objeto.– Link para Microsoft y Tlink para Borland. Aquí el archivo se genera

como .exe o como .com (según como se ensamblo).

Page 3: MYE - Sem 13 - Clase 26

Estructura de un Programa en Ensamblador.MODEL <tiny, small, medium>

.DATA<Tu data (información) inicializada>…….

.DATA?<Tu data NO inicializada>…….

.CONST<Tus comentarios> …….

.CODE<Etiqueta>

<Tu código>……

End <Etiqueta>end

Modelo o tipo de Memoria que va a depender del compilador

Área de variables.La directiva .DATA le indica al ensamblador que lo que está escrito acontinuación debe almacenarlo en el segmento de memoriadestinado a los datos. La directiva DB es utilizada para Definir Bytes,ésto es, asignar a cierto identificador (en este caso "Texto" un valor,ya sea una constante o una cadena de caracteres, en este últimocaso deberá estar entre comillas sencillas ' y terminar con elsímbolo "$".

Área del código del programaEtiquetas y

Final de la etiquetaFinal del programa

Page 4: MYE - Sem 13 - Clase 26

Instrucciones mas usadas en Ensamblador

mov• mueve el valor de un registro o un numero hacia otro

registro.add• Sumar el valor de un registro a otro registro.sub• Resta el valor de un registro o valor especifico a un registro.inc• incrementa en 1 el valor del registrodec• Decrementa en 1 el valor del registro

Page 5: MYE - Sem 13 - Clase 26

Tipos de Salto CondicionalesEstos se deben usar después de CMPAritmética signada (con números positivos, negativos y cero)• JG Saltar si es mayor• JL Saltar si es menor• JE Saltar si es igual• JGE Saltar si es mayor o igual• JLE Saltar si es menor o igualAritmética sin signo (con números positivos y cero)• JA Saltar si es mayor• JB Saltar si es menorSaltos condicionales según el valor de los indicadores• JZ Saltar si el resultado es cero.• JNZ Saltar si el resultado no es cero.

Page 6: MYE - Sem 13 - Clase 26

Ciclos en Lenguaje Ensamblador

Saltos condicionales que usan el registro CX como contador:• LOOP label

Operación: CX <- CX-1. Saltar a label si CX<>0.Cada vez que encuentra el loop decrementa el cx hasta que cx=0• INC dest

Operación: dest <- dest + 1• DEC dest

Operación: dest <- dest – 1Inc y Dec funcionan de manera similar a Loop solo que en estosdos casos se tiene que definir el contador.

Page 7: MYE - Sem 13 - Clase 26

Ejemplos

• Explicación de programas en ensamblador:– Determinar si un numero es mayor que otro.– Sumar dos números y mostrar un mensaje de éxito– Restar dos números y mostrar un mensaje de éxito– Multiplicar dos números y mostrar un mensaje de

éxito.– Dividir dos números y mostrar un mensaje de

éxito.– Realizar ciclos con Loop, con Inc y con Dec