Programação no Computador Hipotético Ramses

29
Alunos: Ygor Q. de Aguiar - 48793 Luciane B. Soares - 48821 Braian K. Maciel -

Transcript of Programação no Computador Hipotético Ramses

Page 1: Programação no Computador Hipotético Ramses

Alunos:

Ygor Q. de Aguiar - 48793

Luciane B. Soares - 48821

Braian K. Maciel - 48812

Page 2: Programação no Computador Hipotético Ramses

Introdução

• Neste trabalho, apresentaremos a evolução do estado da memória e dos registradores conforme a execução de cada instrução de um programa em linguagem simbólica do computador Ramses.

Page 3: Programação no Computador Hipotético Ramses

• O programa que utilizaremos para esta demonstração determina o número de posições que possui contéudo par, na região de memória de 150 à 152, e armazena o resultado na posição 128.

• Para determinar se o conteúdo é par ou ímpar usaremos uma “máscara binária” sendo 00000001, pois entendemos que a determinação se o dado avaliado seja par ou ímpar é dado pela análise do bit menos significativo. Ou seja,

Programação

Page 4: Programação no Computador Hipotético Ramses

LDR X #49

LDR A #0

volta: LDR B 150,X

AND B #1

JZ conta

JMP próximo

conta: ADD A #1

próximo: SUB X #1

JN fim

JMP volta

fim: STR A 128

HLT

Programação

• O registrado X é utilizado para contagem de posições à serem analizadas;

• O registrador A é utilizado para a contagem de posições com conteúdo par;

• O registrador B é utilizado para cada posição e é nele onde será feito a análise.

AND B #1

Aplicação da Máscara Binária

Page 5: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

---------- ---------- ----------

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 6: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 ---------- ----------

End/memória

0 LDR X #22 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 7: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 0 ----------

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

End/memória

0 LDR X #2

2 LDR A #04 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Page 8: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 0 01000010

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 9: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 0 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #18 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 10: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 0 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 1110 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 11: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

2 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #112 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 12: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #113 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 13: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 1514 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 14: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 415 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 15: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 10011000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 16: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #18 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 17: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 1 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 1110 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 18: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

1 2 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #112 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 19: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #113 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 20: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 1514 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 21: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000000

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 415 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 22: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 01110001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 23: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #18 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 24: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 1110 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 25: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

0 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 1211 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 26: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

-1 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #113 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 27: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

-1 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 1514 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 ---------------...

.

.

.

150 01110001151 10011000152 01000010

Page 28: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

-1 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 12816 HLT

Endereço/Memória

128 2...

.

.

.

150 01110001151 10011000152 01000010

Page 29: Programação no Computador Hipotético Ramses

Análise

Reg. X Reg. A Reg. B

-1 2 00000001

End/memória

0 LDR X #2

2 LDR A #0

4 LDR B 150,X

6 AND B #1

8 JZ 11

10 JMP 12

11 ADD A #1

12 SUB X #1

13 JN 15

14 JMP 4

15 STR A 128

16 HLT

Endereço/Memória

128 2...

.

.

.

150 01110001151 10011000152 01000010