Práctica #5

Anuncio
Universidad Central de Venezuela
Facultad de Ciencias
Escuela de Computación
Organización y Estructura del Computador II
Semestre I-2014
Práctica #5
1) Realice un programa en ensamblador MIPS 32 que calcule la suma de los números del uno al
cien, y el resultado almacénelo en el registro $v0. Luego modifique el código de manera que el
resultado se imprima.
2) Escriba un programa en ensamblador MIPS 32 con dos parámetros de entrada A y B, enteros
que indique si uno de los números es múltiplo del otro.
3) Escriba un programa en ensamblador MIPS 32 que dado un número N imprima lo siguiente:
1
12
123
1234
....
1 2 3 4 5… N
4) ¿Qué secuencia de instrucciones en MIPS permiten la ejecución de la siguiente sentencia? a y b
son enteros.
a = b + c + 100;
5) Escriba un programa en ensamblador MIPS 32 que dados dos números imprima el mayor.
6) Escriba un programa en ensamblador MIPS 32 que dado un número indique si es par o impar.
7) Considere el siguiente código y escriba su equivalente en ensamblador MIPS 32.
int array[1024];
global
// variable
int sum(int n){
int function1(){
int z;
int i;
for(i = 0; i < 1024; i++)
array[i] = i;
z = sum(1024);
print_int(z);
}
int s = 0;
int i;
for (i = 0; i < n; i++)
s = s + vector[i];
return s;
}
8) Dado el siguiente programa
.text
.globl main
main:
li
$a0, 5
jal function
move $a0, $v0
li
$v0, 1
syscall
li
$v0, 10
syscall
function:
loop:
end:
move $t0,
li
$t1,
beq $t0,
add $t1,
sub, $t0,
b
loop
move $v0,
jr $ra
$a0
0
0, end
$t1, $t0
$t0, 1
$t1
¿Qué imprime la primera llamada al sistema?
9) Dado el siguiente programa
.text
.globl main
main:
li
$a0, 5
jal function
move $a0, $v0
li
$v0, 1
syscall
li
$v0, 10
syscall
function:
et1:
et2:
li
$t0, 10
bgt $a0, $t0, et1
li
$t0, 10
add $v0, $t0, $a0
b et2
li $t0, 8
add $v0, $t0, $a0
jr $ra
GDOECII
Descargar