O programa determina quantas posições entre 150-152 possuem conteúdo par armazenando o resultado no endereço 128. Ele faz isso analisando o bit menos significativo de cada posição e contando os pares em A. No final, A contém 2, indicando que 2 posições eram pares.
1. Alunos:
Ygor Q. de Aguiar - 48793
Luciane B. Soares - 48821
Braian K. Maciel - 48812
2. 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.
3. Programação
• 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,
4. Programação
LDR X #49 • O registrado X é utilizado para
contagem de posições à serem
LDR A #0
analizadas;
volta: LDR B 150,X
• O registrador A é utilizado para a
AND B #1 contagem de posições com
JZ conta conteúdo par;
JMP próximo • O registrador B é utilizado para
conta: ADD A #1 cada posição e é nele onde será
próximo: SUB X #1 feito a análise.
JN fim
JMP volta
fim: STR A 128 AND B #1
HLT Aplicação da Máscara Binária
5. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 LDR A #0 ---------- ---------- ----------
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128
151 10011000
16 HLT
152 01000010
6. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 LDR A #0
2 ---------- ----------
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
7. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 LDR A #0 2 0 ----------
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
8. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 0 01000010
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
9. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 0 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
10. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 0 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
11. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
2 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
12. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
13. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
14. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
15. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 10011000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
16. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
17. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 1 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
18. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
1 2 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
19. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
20. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
21. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000000
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
22. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 01110001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
23. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
24. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
25. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
0 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
26. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
-1 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
. .
12 SUB X #1
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
27. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
-1 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 ---------------
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
28. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
-1 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 2
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128 151 10011000
16 HLT
152 01000010
29. Análise
End/memória Reg. X Reg. A Reg. B
0 LDR X #2
-1 2 00000001
2 LDR A #0
4 LDR B 150,X
6 AND B #1 Endereço/Memória
8 JZ 11
10 JMP 12 128 2
11 ADD A #1 . .
12 SUB X #1 . .
. .
13 JN 15
14 JMP 4 150 01110001
15 STR A 128
151 10011000
16 HLT
152 01000010