Skip to content

Instantly share code, notes, and snippets.

@fititnt
Created September 10, 2014 00:02
Show Gist options
  • Save fititnt/dda657e4aa3b047b4f24 to your computer and use it in GitHub Desktop.
Save fititnt/dda657e4aa3b047b4f24 to your computer and use it in GitHub Desktop.
Ramses-TMP
Correcao do trabalho pratico Ramses - 2014/02
Calculo do lucro total
Teste numero 1
Caso de teste 1 visitas=[4,2,4,0,4] lucro=[5,7,9,-1,-2,-3]
End.224 recebe 4
End.225 recebe 2
End.226 recebe 4
End.227 recebe 0
End.228 recebe 4
End.229 recebe 15
End.208 recebe 5
End.209 recebe 7
End.210 recebe 9
End.211 recebe 255
End.212 recebe 254
End.213 recebe 253
End.255 recebe 15
End.255 deve receber 10
Valor inicial do PC e' 0
Numero maximo de instrucoes e' 640000
Teste numero 2
Caso de teste 2 visitas=[30,0,2,4,6,8,10,12,14,1,3,5,7,9,11,13,15,15,13,12,11,10,1,2,3,4,5,6,7,8,9]
lucro=[1,-1,2,3,5,7,-11,13,17,19,-23,29,31,-3,-1,-2]
End.224 recebe 30
End.225 recebe 0
End.226 recebe 2
End.227 recebe 4
End.228 recebe 6
End.229 recebe 8
End.230 recebe 10
End.231 recebe 12
End.232 recebe 14
End.233 recebe 1
End.234 recebe 3
End.235 recebe 5
End.236 recebe 7
End.237 recebe 9
End.238 recebe 11
End.239 recebe 13
End.240 recebe 15
End.241 recebe 15
End.242 recebe 13
End.243 recebe 12
End.244 recebe 11
End.245 recebe 10
End.246 recebe 1
End.247 recebe 2
End.248 recebe 3
End.249 recebe 4
End.250 recebe 5
End.251 recebe 6
End.252 recebe 7
End.253 recebe 8
End.254 recebe 9
End.255 recebe 15
End.208 recebe 1
End.209 recebe 255
End.210 recebe 2
End.211 recebe 3
End.212 recebe 5
End.213 recebe 7
End.214 recebe 245
End.215 recebe 13
End.216 recebe 17
End.217 recebe 19
End.218 recebe 233
End.219 recebe 29
End.220 recebe 31
End.221 recebe 253
End.222 recebe 255
End.223 recebe 254
End.255 deve receber 172
Valor inicial do PC e' 0
Numero maximo de instrucoes e' 640000
Teste numero 3
Caso de teste 3 visitas=[0,1,1,1]
lucro=[1,1,2,2,3,3]
End.224 recebe 0
End.225 recebe 1
End.226 recebe 1
End.227 recebe 1
End.255 recebe 15
End.208 recebe 1
End.209 recebe 1
End.210 recebe 2
End.211 recebe 2
End.212 recebe 3
End.213 recebe 3
End.255 deve receber 0
Valor inicial do PC e' 0
Numero maximo de instrucoes e' 640000
Teste numero 4
Caso de teste 4 visitas=[13,0,1,2,3,4,8,9,10,11,15,1,7,9,5]
lucro=[1,2,3,4,5,6,7,-1,-2,-3,-4,-5,-6,-7,11,53]
End.224 recebe 13
End.225 recebe 0
End.226 recebe 1
End.227 recebe 2
End.228 recebe 3
End.229 recebe 4
End.230 recebe 8
End.231 recebe 9
End.232 recebe 10
End.233 recebe 11
End.234 recebe 15
End.235 recebe 1
End.236 recebe 7
End.237 recebe 9
End.238 recebe 5
End.255 recebe 15
End.208 recebe 1
End.209 recebe 2
End.210 recebe 3
End.211 recebe 4
End.212 recebe 5
End.213 recebe 6
End.214 recebe 7
End.215 recebe 255
End.216 recebe 254
End.217 recebe 253
End.218 recebe 252
End.219 recebe 251
End.220 recebe 250
End.221 recebe 249
End.222 recebe 11
End.223 recebe 53
End.255 deve receber 52
Valor inicial do PC e' 0
Numero maximo de instrucoes e' 640000
Arquivo ramses.mem:
Teste 1: HLT -- Resultado correto
Executadas 32 instrucoes, com 60 leituras e 1 escritas (61 acessos)
Teste 2: HLT -- Resultado incorreto
End.255 contem 226; deveria ser 172
1 erro em 1 endereco
Executadas 188 instrucoes, com 346 leituras e 1 escritas (347 acessos)
Teste 3: HLT -- Resultado correto
Executadas 8 instrucoes, com 16 leituras e 1 escritas (17 acessos)
Teste 4: HLT -- Resultado incorreto
End.255 contem 80; deveria ser 52
1 erro em 1 endereco
Executadas 86 instrucoes, com 159 leituras e 1 escritas (160 acessos)
2 erros em 4 testes
2 erros em 4 testes
;;;;;;;;;;;;;;;;;;; DADOS
ORG 208
;LUCRO: DAB [16]
LUCRO: DAB 5,7,9,-1,-2,-3
ORG 224
;VISITAS: DAB [31]
VISITAS: DAB 4,2,4,0,4
ORG 255
TOTAL: DB 0
; Registrador A: Total parcial
; Registrador X: Quantidade itens restantes
;;;;;;;;;;;;;;;;;;; PROGRAMA
ORG 0
LDR A #0 ; Remover
LDR B #0 ; Remover
LDR X #0 ; Remover
LDR A #0 ; lucro = 0
LDR X 224 ; qtd_itens = VISITAS[0]
LOOPWHILE:
JZ FIM ; while (itens != 0) {
ADD A 224,X ; lucro += LUCRO[VISITAS[itens]];
JC SOMAVAIUM
JMP SOMANVAIUM
SOMAVAIUM:
ADD A #1
SOMANVAIUM:
SUB X #1 ; --itens;
JMP LOOPWHILE ; }
FIM:
STR A TOTAL
HLT
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment