06 elaboración de programas

Post on 01-Jul-2015

2.324 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ejecución del programa en un microprocesador de 8 bits

TRANSCRIPT

jaime.velarde@epn.edu.ec

1

PROGRAMAS EN LOS PROGRAMAS EN LOS MICROPROCESADORESMICROPROCESADORES

Y SU ELABORACIÓNY SU ELABORACIÓN

Elaborado por: Ing. Jaime E. Velarde

jaime.velarde@epn.edu.ec

2

EL CONTENIDO DE LA MEMORIA ES EL PROGRAMA QUE EJECUTA EL MICROPROCESADOR

jaime.velarde@epn.edu.ec

3

CÓDIGO DE OPERACIÓN DE LA PRIMERA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

4

INSTRUCCIÓN DE UN SOLO BYTE

jaime.velarde@epn.edu.ec

5

CÓDIGO DE OPERACIÓN DE LA SEGUNDA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

6

INSTRUCCIÓN DE DOS BYTES

jaime.velarde@epn.edu.ec

7

INSTRUCCIÓN COMPLETA, CÓDIGO DE OPERACIÓN MÁS EL OPERANDO

jaime.velarde@epn.edu.ec

8

CÓDIGO DE OPERACIÓN DE LA TERCERA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

9

INSTRUCCIÓN DE DOS BYTES

jaime.velarde@epn.edu.ec

10

INSTRUCCIÓN COMPLETA, CÓDIGO DE OPERACIÓN MÁS EL OPERANDO

jaime.velarde@epn.edu.ec

11

CÓDIGO DE OPERACIÓN DE LA CUARTA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

12

INSTRUCCIÓN DE TRES BYTES

jaime.velarde@epn.edu.ec

13

INSTRUCCIÓN COMPLETA, CÓDIGO DE OPERACIÓN MÁS EL OPERANDO

jaime.velarde@epn.edu.ec

14

CÓDIGO DE OPERACIÓN DE LA QUINTA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

15

INSTRUCCIÓN DE DOS BYTES

jaime.velarde@epn.edu.ec

16

INSTRUCCIÓN COMPLETA, CÓDIGO DE OPERACIÓN MÁS EL OPERANDO

jaime.velarde@epn.edu.ec

17

CÓDIGO DE OPERACIÓN DE LA SEXTA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

18

INSTRUCCIÓN DE UN SOLO BYTE

jaime.velarde@epn.edu.ec

19

CÓDIGO DE OPERACIÓN DE LA SÉPTIMA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

20

INSTRUCCIÓN DE TRES BYTES

jaime.velarde@epn.edu.ec

21

INSTRUCCIÓN COMPLETA, CÓDIGO DE OPERACIÓN MÁS EL OPERANDO

jaime.velarde@epn.edu.ec

22

CÓDIGO DE OPERACIÓN DE LA OCTAVA INSTRUCCIÓN

jaime.velarde@epn.edu.ec

23

EL RESULTADO OCUPA DOS LOCALIDADES DE MEMORIA

jaime.velarde@epn.edu.ec

24

SUMA DE 93H CON 72H IGUAL A 105H

jaime.velarde@epn.edu.ec

25

ELABORACIÓN DE PROGRAMAS

• DEFINICIÓN DEL PROBLEMA

• ELABORACIÓN DEL ALGORITMO

• ESCRITURA DEL PROGRAMA EN MNEMÓNICOS

• ESCRITURA DEL PROGRAMA EN LENGUAJE DE MÁQUINA

• GRABACIÓN DEL PROGRAMA EN UNA MEMORIA TIPO ROM

jaime.velarde@epn.edu.ec

26

DEFINICIÓN DEL PROBLEMA

DESARROLLAR UN PROGRAMA PARA UN MICROPROCESADOR HIPOTÉTICO, QUE PERMITA OBTENER EL VALOR CORRESPONDIENTE A LA SUMA DE LOS NÚMEROS 147 Y 114, PARA LUEGO ALMACENAR EL RESULTADO EN MEMORIA

jaime.velarde@epn.edu.ec

27

ANALISIS DEL PROBLEMA

EN DECIMAL

147

+114

261

EN BINARIO

10010011

+ 1110010

100000101

EN HEXADECIMAL

93H

+72H

105H

EL RESULTADO OCUPA 9 BITS (dos localidades en

la memoria)

LA REPRESENTACIÓN EN HEXADECIMAL ES LA

MÁS UTILIZADA

jaime.velarde@epn.edu.ec

28

PASOS DEL ALGORITMO

Localidad “Y” de memoria ← Acumulador7

Acumulador ← Carry6

Acumulador ← 000000005

Localidad “X” de memoria ← Acumulador4

Acumulador ← 10010011 + 01110010 = 00000101 y Carry ← 13

Acumulador ← 00000000 + 10010011 = 10010011 y Carry ← 02

Acumulador ← 000000001

DESCRIPCIÓNPASO

jaime.velarde@epn.edu.ec

29

TRANSFORMACIÓN A INSTRUCCIONES

ALMACENAR EN LA LOCALIDAD CUYA DIRECCIÓN ES 1AAEH EL ACUMULADOR7

DESPLAZAR A LA IZQUIERDA LA BANDERA DEL CARRY JUNTO AL CONTENIDO DEL ACUMULADOR6

ALMACENAR EN EL ACUMULADOR EL VALOR 00H5

ALMACENAR EN LA LOCALIDAD CUYA DIRECCIÓN ES 1AAFH EL ACUMULADOR4

SUMAR AL ACUMULADOR EL VALOR 1143

SUMAR AL ACUMULADOR EL VALOR 1472

BORRAR EL ACUMULADOR1

INSTRUCCIÓNPASO

jaime.velarde@epn.edu.ec

30

COMPONENTES DE LAS INSTRUCCIONES

INSTRUCCIÓN = OPERACIÓN + OPERANDOS

Acción que realiza la instrucción (Verbo en

infinitivo)

Datos que intervienen en la instrucción (Modos

de direccionemiento)

jaime.velarde@epn.edu.ec

31

ESCRITURA EN MNEMÓNICOS

STR (1AAEH),A

SLC A

STR A,00H

STR (1AAFH),A

ADD A,72H

ADD A,93H

CLR A

MNEMÓNICO

STORE IN ADDRESS 1AAFH THE ACCUMULATOR7

SHIFT LEFT WITH CARRY THE ACCUMULATOR6

STORE IN ACCUMULATOR 00H5

STORE IN ADDRESS 1AAFH THE ACCUMULATOR4

ADD TO ACCUMULATOR 1143

ADD TO ACCUMULATOR 1472

CLEAR ACCUMULATOR1

INSTRUCCIÓNPASO

jaime.velarde@epn.edu.ec

32

TRANSFORMACIÓN EN LENGUAJE DE MÁQUINA

32 1A AE

17

3E 00

32 1A AF

C6 72

C6 93

AF

EN

HEXADECIMAL

STR (1AAEH),A00110010 00011010 10101110

SLC A00010111

STR A,00H00111110 00000000

STR (1AAFH),A00110010 00011010 10101111

ADD A,72H11000110 01110010

ADD A,93H11000110 10010011

CLR A10101111

MNEMÓNICOCÓDIGO DE MÁQUINA

EN BINARIO

jaime.velarde@epn.edu.ec

33

DIRECCIONES DE LOS CÓDIGO DE MÁQUINA

32 1A AE000B

17000A

3E 000008

32 1A AF0005

C6 720003

C6 930001

AF0000

CÓD. DE MÁQ. EN HEX.

DIRECCIÓN EN HEX.

jaime.velarde@epn.edu.ec

34

ENSAMBLADO PARA OBTENER EL ARCHIVO .HEX

FILE1.ASM FILE1.HEX

PROGRAMA ENSAMBLADOR

Ejemplo: ASM51.EXE

MÓDULO FUENTE Programa en mnemónicos

MÓDULO OBJETO Programa en

códigos de máquina

CLR AADD A,93HADD A,72HSTR (1AAFH),ASTR A,00HSLC ASTR (1AAEH),A

:0E000000AFC693C672321AAF3E0017321AAE76:00000001FF

jaime.velarde@epn.edu.ec

35

ENSAMBLADO Y ENLAZADO

FILE1.ASM

PROGRAMA ENSAMBLADOR

Ejemplo: AVMAC51.EXE

FILE1.OBJ

PROGRAMA ENLAZADOR

Ejemplo: AVLINK.EXE

FILE1.HEX

FILE2.ASMENSAMBLADO

previamente FILE2.OBJ

FILE3.ASMENSAMBLADO

previamente FILE3.OBJ

MÓDULOS FUENTES

MÓDULOS OBJETOS “RELOCALIZABLES”

MÓDULO OBJETO CON DIRECCIONES ABSOLUTAS

jaime.velarde@epn.edu.ec

36

FILE1.HEX

MEMORIA O MICROCONTROLADOR

CONTENIENDO LOS CÓDIGOS DE MÁQUINA

GRABACIÓN DEL PROGRAMA EN UNA MEMORIA TIPO ROM

top related