la máquina + (m+) - blog uclmblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 ·...

40
1 La Máquina + (M+) (complemento al tema 3)

Upload: others

Post on 13-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

1

La Máquina + (M+)(complemento al tema 3)

Page 2: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

2

Características

• Memoria de 64Kx8

• Direccionamientos directo, inmediato, por registro y por

pareja de registros

•Repertorio de 25 instrucciones agrupadas en los

siguientes tipos:

• Transferencia

• Aritméticas

• Lógicas

• Salto

• Manejo de flag

Page 3: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

3

Arquitectura

Page 4: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

4

Registros

•Acumulador de 8 bits a la entrada de la

ALU

•Registros B, C, D y E de 8 bits

•Se pueden encadenar los registros D y E

para formar uno de 16 bits

Page 5: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

5

Memoria y direccionamiento

•Bus de direcciones, 16 bits (PC 16 bits)

o registro de direcciones concatenado

(dirH+dirL)

•Bus de datos e instrucciones , 8 bits

•Tipos de Formato de instrucción:• De 1 byte (sólo COP)

• De 2 bytes (COP e inmediato, 1 byte)

• De 3 bytes (COP y dirección, 2 bytes)

Page 6: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

6

Repertorio de instrucciones

•Transferencia (6):• LDA, STA, LDAX, STAX, MOV, MVI

•Aritméticas (7):• ADD, ADI, INC, SUB, SUI, CMP, CPI

•Lógicas (7):• ANA, ANI, ORA, ORI, XRA, XRI, CMA

•Salto (3):• JMP, BEQ, BC

•Manejo de flag (2):• LFA, SFA

Page 7: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

7

Repertorio detallado de instrucciones de TRANSFERENCIA

• Instrucción: LDA dir

• COP (hex): 70

• Número de bytes: 3

• Significado: carga el acumulador (AC) con el

contenido de la dirección de memoria dir

• Ejemplo: LDA 1000H

• Significado del ejemplo: carga el acumulador

con el contenido de la dirección de memoria

1000 H

Page 8: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

8

• Instrucción: STA dir

• COP (hex): 71

• Número de bytes: 3

• Significado: almacena el contenido del AC en

la dirección de memoria dir

• Ejemplo: STA 1001H

• Significado del ejemplo: almacena el

contenido del AC en la dirección de

memoria 1001H

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 9: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

9

• Instrucción: LDAX

• COP (hex): B0

• Número de bytes: 1

• Significado: carga el acumulador con el

contenido de la dirección de 16 bits del

registro contatenado D-E

• Ejemplo: LDAX, suponiendo que D=35H y

E=87H

• Significado del ejemplo: carga el acumulador

con el contenido de la dirección 3587H

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 10: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

10

• Instrucción: STAX

• COP (hex): 90

• Número de bytes: 1

• Significado: almacena el contenido del

acumulador en la dirección de 16 bits del

registro contatenado D-E

• Ejemplo: STAX, suponiendo que D=58H y

E=ABH

• Significado del ejemplo: almacena el

contenido del AC en la dirección 58ABH

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 11: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

11

• Instrucción: MOV r1,r2

• COP (hex): De 00 a 13

• Número de bytes: 1

• Significado: mueve el contenido de un registro

r1(B,C,D,E) a otro registro r2(B,C,D,E)

• Ejemplo: MOV E,C (COP=07)

• Significado del ejemplo: mueve el contenido

del registro E al registro C

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 12: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

12

• Instrucción: MOV AC,r1

• COP (hex): De 40 a 44

• Número de bytes: 1

• Significado: mueve el contenido del AC a un

registro r1(B,C,D,E)

• Ejemplo: MOV AC,D (COP 42)

• Significado del ejemplo: mueve el contenido

del AC al registro D

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 13: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

13

• Instrucción: MVI inm,r1

• COP (hex): De 60 a 64

• Número de bytes: 2

• Significado: mueve la constante inm a un

registro r1(B,C,D,E)

• Si el destino es AC el COP es 64

• Ejemplo: MVI 4EH,D (COP 62)

• Significado del ejemplo: mueve la constante

4EH al registro D

Repertorio detallado de instrucciones de TRANSFERENCIA

Page 14: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

14

• Instrucción: ADD r1

• COP (hex): De 30 a 33

• Número de bytes: 1

• Significado: suma el contenido del AC y el

contenido de un registro r1(B,C,D,E), dejando

el resultado en el AC

• Ejemplo: ADD C (COP 31)

• Significado del ejemplo: suma el contenido del

AC y el contenido de un registro C dejando el

resultado en el AC

Repertorio detallado de instrucciones ARITMÉTICAS

Page 15: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

15

• Instrucción: ADI inm

• COP (hex): 65

• Número de bytes: 2

• Significado: suma el contenido del AC y la

constante inm, dejando el resultado en el AC

• Ejemplo: ADI 37H

• Significado del ejemplo: suma el contenido del

AC y la constante 37H, dejando el resultado

en el AC

Repertorio detallado de instrucciones ARITMÉTICAS

Page 16: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

16

• Instrucción: INC r1

• COP (hex): De 2C a 2F

• Número de bytes: 1

• Significado: incrementa en una unidad el

registro r1(B,C,D,E)

• Ejemplo: INC D

• Significado del ejemplo: incrementa en una

unidad el registro D

Repertorio detallado de instrucciones ARITMÉTICAS

Page 17: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

17

• Instrucción: INC AC

• COP (hex): 4B

• Número de bytes: 1

• Significado: incrementa en una unidad el AC

• Ejemplo: INC AC

• Significado del ejemplo: si el AC tenía

almacenado el valor 49H, pasa a valer 4AH

Repertorio detallado de instrucciones ARITMÉTICAS

Page 18: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

18

• Instrucción: SUB r1

• COP (hex): De 18 a 1B

• Número de bytes: 1

• Significado: resta al AC el contenido del

registro r1 (B,C,D,E) dejando el resultado en

el AC

• Ejemplo: SUB B

• Significado del ejemplo: (AC)-(B) se

almacena en el AC

Repertorio detallado de instrucciones ARITMÉTICAS

Page 19: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

19

• Instrucción: SUB AC

• COP (hex): 46

• Número de bytes: 1

• Significado: resta al AC el contenido del AC,

dejando el resultado, que es 0, en el AC

• Ejemplo: SUB AC

• Significado del ejemplo: (AC)-(AC)=0 se

almacena en el AC, poniendo FZ=1

Repertorio detallado de instrucciones ARITMÉTICAS

Page 20: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

20

• Instrucción: SUI inm

• COP (hex): 66

• Número de bytes: 2

• Significado: resta al AC la constante inm,

dejando el resultado en el AC

• Ejemplo: SUI 43H

• Significado del ejemplo: (AC) - 43 se

almacena en el AC

Repertorio detallado de instrucciones ARITMÉTICAS

Page 21: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

21

• Instrucción: CMP r1

• COP (hex): De 1C a 1F

• Número de bytes: 1

• Significado: compara el AC con el contenido

del registro r1 (B,C,D,E), actuando sobre FZ

• Ejemplo: CMP E

• Significado del ejemplo: si el AC y el registro

E almacenaban el mismo contenido, FZ=1. En

caso contrario FZ=0

Repertorio detallado de instrucciones ARITMÉTICAS

Page 22: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

22

• Instrucción: CMP AC

• COP (hex): 47

• Número de bytes: 1

• Significado: compara el AC consigo mismo,

poniendo FZ=1

• Ejemplo: CMP AC

• Significado del ejemplo: obviamente fuerza

FZ=1

Repertorio detallado de instrucciones ARITMÉTICAS

Page 23: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

23

• Instrucción: CPI inm

• COP (hex): 67

• Número de bytes: 2

• Significado: compara el AC con la constante

inm, poniendo FZ=1 si son iguales

• Ejemplo: CPI 2DH

• Significado del ejemplo: si el AC tenía

almacenado el valor 2DH, FZ=1. En caso

contrario FZ=0

Repertorio detallado de instrucciones ARITMÉTICAS

Page 24: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

24

• Instrucción: ANA r1

• COP (hex): De 20 a 23

• Número de bytes: 1

• Significado: realiza la AND lógica, bit a bit,

entre el AC y el registro r1(B,C,D,E), dejando

el resultado en el AC

• Ejemplo: ANA B

• Significado del ejemplo: si AC=3AH y

B=24H, tras ejecutar la instrucción, AC=20H

Repertorio detallado de instrucciones LÓGICAS

Page 25: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

25

• Instrucción: ANA AC

• COP (hex): 48

• Número de bytes: 1

• Significado: realiza la AND lógica, bit a bit,

entre el AC y el propio AC, dejando el

resultado en el AC. El AC no varía

• Ejemplo: ANA AC

• Significado del ejemplo: si AC=3AH, tras

ejecutar la instrucción, AC=3AH

Repertorio detallado de instrucciones LÓGICAS

Page 26: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

26

• Instrucción: ANI inm

• COP (hex): 68

• Número de bytes: 2

• Significado: realiza la AND lógica, bit a bit,

entre el AC y la constante inm, dejando el

resultado en el AC.

• Ejemplo: ANI 3FH

• Significado del ejemplo: si AC=6AH, tras

ejecutar la instrucción, AC=2AH

Repertorio detallado de instrucciones LÓGICAS

Page 27: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

27

• Instrucción: ORA r1

• COP (hex): De 24 a 27

• Número de bytes: 1

• Significado: realiza la OR lógica, bit a bit,

entre el AC y el registro r1(B,C,D,E), dejando

el resultado en el AC

• Ejemplo: ORA D

• Significado del ejemplo: si AC=38H y

D=24H, tras ejecutar la instrucción, AC=3CH

Repertorio detallado de instrucciones LÓGICAS

Page 28: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

28

• Instrucción: ORA AC

• COP (hex): 49

• Número de bytes: 1

• Significado: realiza la OR lógica, bit a bit,

entre el AC y el propio AC, dejando el

resultado en el AC. El AC no varía

• Ejemplo: ORA AC

• Significado del ejemplo: si AC=F0H, tras

ejecutar la instrucción, AC=F0H

Repertorio detallado de instrucciones LÓGICAS

Page 29: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

29

• Instrucción: ORI inm

• COP (hex): 69

• Número de bytes: 2

• Significado: realiza la OR lógica, bit a bit,

entre el AC y la constante inm, dejando el

resultado en el AC.

• Ejemplo: ORI 48H

• Significado del ejemplo: si AC=20H, tras

ejecutar la instrucción, AC=68H

Repertorio detallado de instrucciones LÓGICAS

Page 30: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

30

• Instrucción: XRA r1

• COP (hex): De 28 a 2B

• Número de bytes: 1

• Significado: realiza la OR exclusiva, bit a bit,

entre el AC y el registro r1(B,C,D,E), dejando

el resultado en el AC

• Ejemplo: XRA E

• Significado del ejemplo: si AC=56H y E=48H,

tras ejecutar la instrucción, AC=1EH

Repertorio detallado de instrucciones LÓGICAS

Page 31: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

31

• Instrucción: XRA AC

• COP (hex): 4A

• Número de bytes: 1

• Significado: realiza la OR exclusiva, bit a bit,

entre el AC y el propio AC, dejando el

resultado en el AC. El AC se pone a 0 y FZ=1

• Ejemplo: XRA AC

• Significado del ejemplo: sea cual sea el AC,

tras ejecutar la instrucción, AC=00H y FZ=1

Repertorio detallado de instrucciones LÓGICAS

Page 32: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

32

• Instrucción: XRI inm

• COP (hex): 6A

• Número de bytes: 2

• Significado: realiza la OR exclusiva, bit a bit,

entre el AC y la constante inm, dejando el

resultado en el AC.

• Ejemplo: XRI 29H

• Significado del ejemplo: si AC=F3H, tras

ejecutar la instrucción, AC=DAH

Repertorio detallado de instrucciones LÓGICAS

Page 33: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

33

• Instrucción: JMP dir

• COP (hex): 74

• Número de bytes: 3

• Significado: realiza el salto incondicional a la

dirección dir, poniendo dicho valor en el PC.

• Ejemplo: JMP 73A8H

• Significado del ejemplo: tras ejecutar la

instrucción, PC=73A8H, independientemente

del valor que tuviera antes

Repertorio detallado de instrucciones de SALTO

Page 34: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

34

• Instrucción: BEQ dir

• COP (hex): 72

• Número de bytes: 3

• Significado: realiza el salto a la dirección dir,

poniendo dicho valor en el PC, sólo si FZ=1. Se

ignora en caso de que FZ=0

• Ejemplo: BEQ 31F9H

• Significado del ejemplo: si FZ=1, tras ejecutar

la instrucción, PC=31F9H, independientemente

del valor que tuviera antes

Repertorio detallado de instrucciones de SALTO

Page 35: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

35

• Instrucción: BC dir

• COP (hex): 73

• Número de bytes: 3

• Significado: realiza el salto a la dirección dir,

poniendo dicho valor en el PC, sólo si FC=1. Se

ignora en caso de que FC=0

• Ejemplo: BC 9251H

• Significado del ejemplo: si FC=1, tras ejecutar

la instrucción, PC=9251H, independientemente

del valor que tuviera antes

Repertorio detallado de instrucciones de SALTO

Page 36: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

36

• Instrucción: LFA

• COP (hex): 81

• Número de bytes: 1

• Significado: carga el flag FZ en la posición

más significativa del AC y el flag FC en la

posición menos significativa del AC. Los 6

bits intermedios quedan sin significado

• Ejemplo: LFA , siendo FZ=1 y FC=0

• Significado del ejemplo: el AC queda con el

contenido 1XXXXXX0 (ESCRIBE EN AC)

Repertorio detallado de instrucciones de MANEJO DE FLAGS

Page 37: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

37

• Instrucción: SFA

• COP (hex): 82

• Número de bytes: 1

• Significado: carga el bit más significativo del

AC en el flag FZ y el bit menos significativo

del AC en el flag FC.

• Ejemplo: SFA , siendo AC=01101111

• Significado del ejemplo: se fuerza FZ=0 y

FC=1 (LEE DEL ACUMULADOR)

Repertorio detallado de instrucciones de MANEJO DE FLAGS

Page 38: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

38

• Realizar un programa en ensamblador de la M+ que

sume el contenido de los registros D y E.

• En caso de que se produzca acarreo en dicha suma, se

debe escribir el valor hexadecimal AA en la posición

de memoria 2500 H. Después se debe poner a 0 el

flag de acarreo y volver a iniciar el programa.

• En caso de no haber acarreo, se almacena el valor

hexadecimal EE en la dirección de memoria 3500 H,

y, posteriormente, se inicia el programa.

• Se supone que los registros D y E están cargados con

el valor correspondiente

EJEMPLO

Page 39: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

39

Etiq. Direc Bytes Ensamb. Comentarios

INICIO 1000 H 1 MOV .D,AC ; ACD

1001 H 1 ADD .E ; ACAC+E

1002 H 3 BC 'ACARREO' ; salto condicional si FC=1

1005 H 2 MVI #EE,AC ; AC EEH

1007 H 3 STA /3500 ; M(3500)AC

100A H 3 JMP 'INICIO' ; vuelta a empezar

ACARREO 100D H 2 MVI #AA,AC ; ACAAH

100F H 3 STA /2500 ; M(2500)AC

1012 H 2 MVI #00,AC ; AC0XXXXXX0 B

1014 H 1 SFA ; FC=0

1015 H 3 JMP 'INICIO' ; vuelta a empezar

1018 H …………………………………….

SOLUCIÓN: ensamblador

Page 40: La Máquina + (M+) - Blog UCLMblog.uclm.es/inocentesanchez/files/2018/07/m.pdf · 2019-03-14 · • Salto • Manejo de flag. 3 Arquitectura. 4 Registros •Acumulador de 8 bits

40

SOLUCIÓN: contenido memoria

Dirección mem (hex.) Cód. Ensam. Contenido mem (hex.) Contenido men (bin.)1000 MOV .D,AC 42 0100 0010

1001 ADD .E 33 0011 0011

1002 BC /100D 73 0111 0011

1003 10 0001 0000

1004 0D 0000 1101

1005 MVI #EE,AC 64 0110 0100

1006 EE 1110 1110

1007 STA /3500 71 0111 0001

1008 35 0011 0101

1009 00 0000 0000

100A JMP /1000 74 0111 0100

100B 10 0001 0000

100C 00 0000 0000

100D MVI #AA,AC 64 0110 0100

100E AA 1010 1010

100F STA /2500 71 0111 0001

1010 25 0010 0101

1011 00 0000 0000

1012 MVI #00,AC 64 0110 0100

1013 00 0000 0000

1014 SFA 82 1000 0010

1015 JMP /1000 74 0111 0100

1016 10 0001 0000

1017 00 0000 0000

1018 --------------------------------------------------------