Se lo que viene a ser cargar datos en resitros y tal, esoty en primero de telecomunicaciones y java si sé pero ensamblador en mips solo cargar en direcciones.
Si supiera como hacerlo creedme que lo haría.
Tengo esto de momento (lo que se, cargar numeros. )
.data
dat_pi: .float 3.1415926
str_res: .asciiz “El Volumen de la esfera es: “
radio: .float 1.0 #Esto es un valor temporal
.text
.globl __start
__start:
l.s $t0,radio
li $t1,4
Lo que no se es cuales son las subrutinas para leer un float. gracias
he avanzado con ayuda de otro foro y tengo ésto:
.data
dat_pi: .float 3.1415926
string_result: .asciiz “El Volumen de la esfera es: ”
str_pide_radio .asciiz “Introduzca el radio de la esfera”
radio: .float 1.0 #Esto es un valor temporal
.text
.globl __start
__start:
l.s $t0,dat_pi #Cargamos PI
li $t1,4 #Cargamos 4
la $a0,str_pide_radio #Pide radio
jal put_str
la $4,radio #Lee el numero introducido
jal get_sfloat
#----------------------------------SUBRUTINAS-----------------------------------------------#
get_sfloat: #Lee un flotante simple de la consola.
li $v0,6
syscall
jr $31
put_str:
li $v0,4 #Escribe una cadena de texto en la consola.
syscall
jr $31
fin:
li $v0,10 #Cierra consola y finaliza programa.
syscall
Creo que tengo todo y solo queda multiplicar y dividir, ge buscado como hacerlo en google y me sale ésto:
mult rs, rt
Multiplicación R
Multiplica el contenido de los registros rs y rt. Los 32 MSB
del resultado se
almacenan en el registro HI y los 32 LSB
en el registro LO
Mi duda es:¿Como uso el resultado de la multiplicacion? gracias
Com me dijisteis he aportado mi código.