estoy tratando de hacer lo siguiente:Bits de configuración en C
Escribe un func
setbits(x,p.n,y)
que devuelvex
conn
bits que comienzan en la posiciónp
conjunto de los bits de la derecha den
y
, dejando el otro los bits sin cambios?
Lo intenté así pero no recibí las respuestas correctas. ¿Alguien puede decir dónde estoy equivocado?
unsigned setbits(unsigned x,int p,int n,unsigned y)
{
return (x>>p & (y|(~0<<n)));
}
En primer lugar, cuando escribe C bit a bit, es una gran idea usar variables temporales con nombres útiles para ayudarlo a ver lo que está haciendo. El compilador probablemente los optimizará de todos modos, pero la legibilidad del código fuente permanecerá. – Misha
he editado la función para tomar x un parámetro s. – user1413523
x es actualmente una variable de 1 bit de ancho, y al cambiarlo por cualquier p, se pondrá a cero. – Misha