Tecnología

Inicio

Cómo utilizar operaciones bit a bit en la programación de bajo nivel

Además de las operaciones aritméticas familiares +, -, * y /, lenguajes de programación también apoyan operaciones bit a bit. A través de estas operaciones de bajo nivel, un programador puede acceder a los bits individuales en un patrón binario, independientemente del tipo de datos. operaciones bit a bit implementan aritméticas y lógicas de bits turnos y pueden proporcionar mucho mejor eficiencia de las operaciones de alto nivel.

Instrucciones

1 Coloque el operador NOT delante de un valor binario para realizar un bit a bit NO. Esta operación de complemento denominado de uno invierte cada valor de bit. En el lenguaje de programación C, utilice el ~ símbolo para indicar una operación NOT. Por ejemplo, si X es 0101, entonces ~ X es 1,010.

2 Realizar operaciones aritméticas lógicas en valores binarios de igual longitud. Computadoras realizan operaciones lógicas en cada par de bits que van de derecha a izquierda. En C, los símbolos y, | y ^ indican AND bit a bit, y las operaciones o XOR, respectivamente.

3 Cambiar un patrón de bits, bits de los descartes de izquierda o derecha que deslizarse fuera de cada extremo, para poner en práctica la multiplicación optimizada (desplazamiento a la izquierda) o división (desplazamiento a la derecha) por potencias de dos. El lenguaje C utiliza los operadores << y >> para desplazamiento de bits izquierda y derecha.

4 Determinar el valor de un bit particular en un número binario (una operación de lectura-flag) mediante la realización de una operación AND. Crear un nuevo número binario (T, por ejemplo) de la misma longitud que el número que desea examinar (K, por ejemplo). Ajuste todos los bits en T a cero, con la excepción de bits N, donde N bits en K es el bit que se está probando. Después de realizar T y K, el resultado será cero si el bit N en K es cero, o será distinto de cero si el bit N en K es uno.

5 Establecer un bit determinado en un valor binario a uno (una operación de escritura de bandera). Puede realizar esta operación de una manera similar a la del Paso 4. Si desea establecer el bit N de K a uno, a continuación, establecer el bit N en T para uno y todos los demás bits en T a cero. Realice la operación de la T O K. El número resultante es idéntico a T, con la excepción de que el bit n de T es uno (independientemente de si era previamente uno o cero).

Consejos y advertencias

  • No hay que confundir las operaciones bit a bit AND, OR y XOR con sus homólogos de Boole. Por ejemplo, C y utiliza para una operación AND y && para un Y lógico.