Ybadoo - Soluções em Software Livre
Tutoriais
Compiladores

Desenvolva um programa em Simpletron Machine Language, que apresente a somatória de 2 * k, sendo k = 1, 2, ..., n. O número de termos será fornecido pelo usuário, devendo ser um valor inteiro e positivo. Por exemplo, caso o número de termos fornecido pelo usuário seja 5, o programa deverá apresentar como resposta o valor 30, ou seja, (2 * 1) + (2 * 2) + (2 * 3) + (2 * 4) + (2 * 5). Caso o usuário forneça um valor inválido para o número de termos, o programa deverá apresentar como resposta o valor -1.

 

Programa em Simpletron Machine Language que apresenta a somatória de 2 * k, sendo k = 1, 2, ..., n
PosiçãoPalavraInstrução
00+1018read N
01+2018load N
02+4114branch negative to 14
03+4214branch zero to 14
04+3317multiply 2
05+3019add S
06+2119store S
07+2018load N
08+3016add -1
09+2118store N
10+4212branch zero to 12
11+4004branch to 04
12+1119write S
13+4300halt
14+1116write -1
15+4300halt
16-0001constant -1
17+0002constant 2
18+0000variable N
19+0000variable S
Welcome to Simpletron!