Você está na página 1de 1

Lista de exerccios 1 AOC Instrues lgicas

Prof. Gustavo Sanchez


Importante:

Em todos os exerccios, use apenas instrues vistas em aula at agora (slides).


No MARS, use a seguinte configurao:
o
o

Menu 'Settings', a opo 'Permit extended (pseudo) instructions and


formats' deve estar desabilitada.
Menu 'Settings', a opo 'Delayed Branching' deve estar habilitada.

1. Escreva 0x55555555 em $t0. Faa um shift de um bit para a esquerda desse valor e
coloque o resultado em $t1, deixando $t0 inalterado. Em $t2, $t3 e $t4 coloque os
resultados das operaes or, and e xor entre $t0 e $t1, respectivamente. Em
comentrios ao final do cdigo, explique os resultados obtidos (e.g. mostrando os
valores binrios).
2. Comece um programa pela instruo: ori $t0,$0,0x08. Usando apenas as instrues
lgicas do tipo R (dois registradores como operandos) or, and e xor e instrues de
shift (e.g. sem usar outras instrues ori alm da inicial nem a instruo nor),
escreva 0xFFFFFFFF em $1. Procure usar o menor nmero de instrues possvel.
3. Escreva a sequncia 0x12345678 em $t0. A seguir, escreva um cdigo que inverta
a sequncia, escrevendo, por exemplo 0x87654321 em $t1. Obviamente o cdigo
deve inverter os caracteres de $t0, e no simplesmente escrever 0x87654321
diretamente em $t1.