Practico 2) - Ejercicio 4)

Practico 2) - Ejercicio 4)

de Rodrigo Alejandro Aguillon Stoletniy -
Número de respuestas: 1

Buenas, realice el ejercicio 4 y me quede con duda de si podria tener alguna inconsistencia, esto estaria bien?

 

int extraerBits(int palabra, int bitAlto, int bitBajo){

 int palAux=palabra>>bitBajo;

 int palAux2=palAux<<32-bitAlto+1;

 int res=palAux2>>32-bitAlto+1;

 return res;

}

En respuesta a Rodrigo Alejandro Aguillon Stoletniy

Re: Practico 2) - Ejercicio 4)

de Federico Rivero -
Hola Rodrigo!

Está cerca. Tiene un errorcito, porque 'palAux' ya está shifteado hacia la derecha, entonces deberías borrar de la izquierda todos menos (bitAlto - bitBajo + 1) bits, en lugar de (bit Alto + 1) bits.

Sugiero que lo corras a mano en papel, poniendo una tira de 32 bits de ejemplo, o que lo trates de compilar y ejecutar en C!

Saludos,
Federico