Página 1 de 1

dos problemillas en ensamblador.Gracias

Publicado: Mar Abr 04, 2006 7:11 pm
por pelusalusa
Hola, a ver si me podeis echar una mano con estos 2 problemas. Gracias

Traducís a lenguaje assemblador de l’arquitectura CISCA-1 el siguiente código que expresamos en un lenguaje d’alto nivel. V y IND son variables enteres que al programa assemblador se encuentran en las direcciones simbólicas V y IND respectivamente (el primer elemento, V%[0], a l’dirige simbólica V, el siguiente, V%[1], a l’dirige V+4, etc). La variable entera y se implementa en assemblador usando lo registro R0. En esta pregunta se valorará l’eficiencia del código, considerándolo más eficiente cuántas menos instrucciones s’ejecuten.

i = 0;
while (i < 100)
{
V[IND]=0
i = i + 1;
}

el siguiente problema es este:

Tenemos definido un vector de datos con 8 elementos, cada uno un entero codificado en complemento a 2 con 32 bits:
Vector: 3, -7, 125, 421, -9, 1000, 7, 8.
Escribís un código en assemblador que cambie l’orden en que se encuentran los elementos del vector, dejando el primer elemento en la última posición, el segundo en la adelante penúltima etc. Tras l’ejecución del código, el vector debe quedar así:
Vector: 8, 7, 1000, -9, 421, 125, -7, 3