Durante esta actividad, los alumnos serán capaces de:
Esta actividad promueve las siguientes habilidades, valores y actitudes: análisis y síntesis, capacidad de resolver problemas, creatividad, y uso eficiente de la informática y las telecomunicaciones.
Esta actividad puede ser elaborada de manera individual.
Escribe la función mul
con el siguient prototipo de función:
unsigned mul(unsigned a, unsigned b);
Dicha función debe implementar la operación de multiplicación utilizando los operadores para manejo de bits y el operador de suma.
Coloca tu código en un archivo llamado mul.c
y pruébalo con la siguiente función main
:
int main(void) { printf("%u\n", mul(0, 0)); printf("%u\n", mul(1, 42)); printf("%u\n", mul(0, 42)); printf("%u\n", mul(255, 255)); printf("%u\n", mul(12345, 54321)); printf("%u\n", mul(65535, 65535)); printf("%u\n", mul(65536, 65536)); return 0; }
La salida esperada es:
0 42 0 65025 670592745 4294836225 0
Escribe la función rol
con el siguient prototipo de función:
unsigned rol(unsigned x, unsigned n)
Dicha función debe implementar la operación de rotación izquierda de x un total de n bits. Solo se deben considerar los 5 bits menos significativos de n.
Coloca tu código en un archivo llamado rol.c
y pruébalo con la siguiente función main
:
int main(void) { printf("0x%08X\n", rol(0x80000002, 2)); printf("0x%08X\n", rol(0xECAFEBAB, 36)); printf("0x%08X\n", rol(-5, 29)); printf("0x%08X\n", rol(0xDEADBEAF, -48)); printf("0x%08X\n", rol(0x587D6758, 25)); return 0; }
La salida esperada es:
0x0000000A 0xCAFEBABE 0x7FFFFFFF 0xBEAFDEAD 0xB0B0FACE
Sigue las siguientes indicaciones para entregar tu actividad:
parte2.tgz
con los dos archivos fuente. Esto lo puedes hacer con el siguiente comando desde la terminal:
tar czf parte2.tgz mul.c rol.c
Fecha límite: Jueves, Septiembre 1.
Esta actividad será evaluada usando los siguientes criterios:
100 | La actividad cumple con todos los requerimientos. |
---|---|
-10 | No se incluyó en comentario los datos del autor. |
10 | Los programas fuentes producen errores al momento de compilarlos. |
50-90 | Los programas tiene algunos errores a tiempo de ejecución. |
DA | La solución es un plagio. |