• ¡Bienvenid@! Recuerda que para comentar en el foro de El Chapuzas Informático necesitas registrar tu cuenta, tardarás menos de 2 minutos y te dará valiosa información además de ayudarte en lo que necesites o pasar un rato agradable con nosotros.

Código máquina y ciclos

Álvaro11

Nuevo
Registrado
28 Mar 2021
Mensajes
13
Puntos
1
Edad
22
¡Hola! No sé si en este foro resolveréis problemas de este tipo, pero os dejo la pregunta por si es el caso. Querría saber si podéis echarme un cable con estos problemas.
Cualquier indicación me es de mucha ayuda :)

Escribe el código máquina a que daría lugar:
bucle: beq $8, $9, fin
lw $13, 0($10)
add $13, $13, $14
j bucle
 
Yo esto hace años lo sabia hacer ahora tendria que repasar mtodo, no estoy muy seguro pero igual Saito_25 lo tiene mas reciente que yo.

De todas maneras te doy un consejo para codigo maquina y para programacion muy util. En algun caso que te den la solucion puede ayudar si estas bloqueado o no lo ves, pero normalmente significa que no sabes las cosas simples y tienes que ponerte a practicar y repasar las cosas simples para por ver lo que hace el bucle por si solo.
Asi que yo empezaria comprendiendo y practicando las operaciones basicas y luego daria el salto.
 
¡Hola! No sé si en este foro resolveréis problemas de este tipo, pero os dejo la pregunta por si es el caso. Querría saber si podéis echarme un cable con estos problemas.
Cualquier indicación me es de mucha ayuda :)

Escribe el código máquina a que daría lugar:
bucle: beq $8, $9, fin
lw $13, 0($10)
add $13, $13, $14
j bucle
Hola, entiendo que eso es ensamblador del mips r2000, en ese caso lo que tienes que hacer es coger un documento como este: https://www.math.unipd.it/~sperduti/ARCHITETTURE-1/mips32.pdf y ver que formato tienen las instrucciones, por ejemplo la instrucción beq tiene 6 bits que su valor es siempre 4, a continuacion el valor del primer registro, en tu caso el 8, a continuación el valor del segundo registro, 9, estos dos campos son de 5 bits cada último, y por último, el offset donde se encuentra la etiqueta fin, que en este caso no lo sabemos, quedaría algo tal que asi: 000100(4)01000(8)01001(9)1111111111111111(offset fin). Nota que entre paréntesis te pongo los valores en decimal. Los últimos 16 unos, los he puesto a boleo porque no sabemos el offset de fin. Para las siguientes instrucciones buscas en el pdf su codificación y aplicas lo mismo. En principio esa codificación entiendo que es algo académico y que no te hace falta nada más que para aprovar (yo he pasado por ahí), por que motivo estas haciendo eso?
Un saludo
 
Muchas gracias a los dos, ya pude resolverlo. Al final no era tan complicado como pensaba 😅
Lo estoy haciendo para practicar una asignatura en la que me examino este junio, efectivamente.
 
En ese caso que te vaya bien!!
 
Arriba