Solo una nota al margen. Desde una perspectiva ascendente, el desplazamiento en bits (y el enmascaramiento) se basa en la longitud de palabra de una arquitectura (expresada en bits). La longitud de una palabra varía de una arquitectura a otra.
See this Wiki page for word lengths by architecture
Si se conoce la longitud de palabra de la arquitectura objetivo, se puede utilizar de desplazamiento de bits a multiplicar y dividir (en algunos casos), más rápido que el uso de operandos.
See this Wiki page for interesting diagrams of bit-shifting
Desde código poco desplazada es dependiente de la arquitectura, no se puede asumir una parte específica de código poco desplazada funcionará de la misma manera desde la arquitectura a la arquitectura. Sin embargo, una vez que uno está familiarizado con la idea de diferentes longitudes de palabra para diferentes arquitecturas, el cambio de bit se vuelve menos misterioso y más predecible.
Afortunadamente, hoy tenemos longitudes de palabra de 8, 16, 32 y 64 bits, y exclusivamente longitudes de caracteres de 8 bits. En los días de la informática antigua, una arquitectura podía tener una longitud de palabra de 12, 15 o 23 bits (etc., hasta el cansancio).
Ver http://c-faq.com/ansi/maindecl.html –
thnx fr corregir. –