Introducción a Python Bitwise Operator

Hay varias cosas relacionadas antes de que podamos avanzar en este artículo considerando los 'Operadores Bitwise de Python'. Este también será un mejor enfoque, de lo contrario las cosas se volverán más escépticas.

Bitwise : la programación informática que todos conocemos como 'Programas' recibe asistencia para realizar algunas operaciones aritméticas y lógicas. Entonces, estos programas funcionan en el nivel de uno o más patrones de bits. La necesidad de esto se utiliza para manipular valores para comparaciones y cálculos.

Operadores : se refiere a cualquier tipo de símbolo que indique las operaciones que se realizarán.

Explicación (diferente operador bit a bit de Python)

Como hemos trabajado en la parte fundamental, pasemos al enfoque de Python e intentemos encontrar el verdadero significado de los Operadores Bitwise de Python. Los operadores bit a bit son un grupo de operadores que se utilizan para manipular o realizar operaciones en operandos bit a bit, más bien todos a la vez.

Estos se realizan en los enteros, que luego se convierten al formato binario donde las operaciones se realizan poco a poco.

Nota: una cosa crucial a tener en cuenta con respecto a estos operadores es que funcionan solo en enteros y devuelven la salida en formato decimal.

Comprendamos qué son los números decimales o base 10 y los números binarios o base 2 y luego continuaremos con las explicaciones del operador.

  • Decimal o Base 10 : los decimales son los números que le damos al programa como entrada para realizar una operación. Estos son entendibles por un humano. También puede pensar en decimales como los números que usamos en la vida diaria (es decir, de 0 a 9). También se conoce como base 10 porque hay 10 números entre 0 y 9.
  • Binario o Base 2 - 0 y 1 hacen los números binarios, estos son entendibles por las computadoras. Por lo tanto, todos los números binarios están hechos solo de estos, es decir, 0 y 1 y, por lo tanto, se denominan números de base 2.

Tomemos X = 9 e Y = 65 y realicemos los cálculos. Entonces los valores binarios serán X = 0110 e Y = 1000.

Veamos la tabla de verdad:

Xyx & yX | yx y
0 00 00 00 00 0
0 010 011
10 00 011
11110 0

Así que aquí hemos proporcionado los comandos en consideración a todos los operadores bit a bit.

>>> a = 9
>>> b = 65
>>> print("Bitwise AND Operator On 9 and 65 is = ", a & b)
>>> print("Bitwise OR Operator On 9 and 65 is = ", a | b)
>>> print("Bitwise EXCLUSIVE OR Operator On 9 and 65 is = ", a b)
>>> print("Bitwise NOT Operator On 9 is = ", ~a)
>>> print("Bitwise LEFT SHIFT Operator On 9 is = ", a << 1)
>>> print("Bitwise RIGHT SHIFT Operator On 65 is = ", b >> 1)

La salida será algo como esto:

>>> a = 9
>>> b = 65
>>>print(“Bitwise AND operator on 9 and 65 is = “, a & b)
Bitwise AND operator on 9 and 65 = 1
>>>print(“Bitwise OR operator on 9 and 65 is = “, a | b)
Bitwise OR operator on 9 and 65 = 73
>>>print(“Bitwise EXCLUSIVE OR operator on 9 and 65 is = “, a b)
Bitwise EXCLUSIVE OR operator on 9 and 65 = 72
>>>print(“Bitwise NOT operator on 9 is = “, ~a)
Bitwise NOT operator on 9 is = -10
>>>print(“Bitwise LEFT SIFT operator on 9 is =”, a<<1)
Bitwise LEFT SHIFT operator on 9 is = 18
>>>print(“Bitwise RIGHT SHIFT operator on 65 is =”, b>>1)
Bitwise RIGHT SHIFT operator on 65 is = 32

Sintaxis

A partir de ahora, tenemos una breve idea sobre los operadores de Bitwise en Python. Para ver cuál es la sintaxis aplicada a estos operadores, destaquemos primero sus tipos seguidos de su sintaxis.

Tipos de operadores bit a bit:

  1. Complementos - Consulte los ejemplos
  2. Y - 4 y 8 (4 = 0100 y 8 = 1000; entonces, el valor AND será 0000, que es 0). De ahí la salida.
  3. O - (0l0 = 0; 0I1 = 1; 1I0 = 1; 1I1 = 1)
  4. XOR - (0 0 = 0; 0 1 = 1; 1 0 = 1; 1 1 = 0)
  5. Desplazamiento a la izquierda: consulte los ejemplos
  6. Desplazamiento a la derecha: consulte los ejemplos

Ejemplos

Veamos algunos ejemplos que impulsarán nuestra comprensión:

  1. Operadores AND a nivel de bit : si ambos bits de comparación son 1, entonces el AND a nivel de bit devolverá 1, de lo contrario 0.
  2. Operadores OR a nivel de bit : si los dos bits de comparación son 1, devolverá 1 o si ambos bits son 0, devolverá 0 como valor.
  3. Operadores XOR a nivel de bit : el operador XOR devolverá 1 como valor si alguno de los bits es 0 o 1. Pero si ambos bots son 0 o 1, devolverá 0.
  4. Operadores de cumplidos de Bitwise One: el operador de Bitwise One para A será - (A + 1).
  5. Operadores de desplazamiento a la izquierda a nivel de bit: en el operador de desplazamiento a la izquierda a nivel de bit, el número binario se agrega con el cumplimiento de 0 al final.
  6. Operadores de desplazamiento a la derecha bit a bit: en los operadores de desplazamiento a la derecha bit a bit, se eliminan los bits presentes en el lado derecho.
  • Y
    A = 10 =>1010(Binary)
    B = 7 => 111(Binary)
    A&B = 1010 & 0111
    = 0010
    = 2 (Decimal)
  • O
    A = 10 =>1010(Binary)
    B = 7 => 111(Binary)
    AIB = 1010 I 0111
    = 1111
    = 15 (Decimal)
  • XOR
    A = 10 =>1010(Binary)
    B = 7 => 111(Binary)
    A B = 1010 0111
    = 1101
    = 13 (Decimal)
  • Bitwise ONE'S Complement
    A = 10 =>1010(Binary)
    ~A = ~1010
    = -(1010+1)
    = -(1011)
    = -11(Decimal)
  • Desplazamiento a la izquierda bit a bit
    A = 10 =>1010(Binary)
    A<<2 = 1010<<2
    = 101000
    = 40(Decimal)
  • Desplazamiento a la derecha bit a bit
    A = 10 =>1010(Binary)
    A>>2 = 1010>>2
    =10
    = 2(Decimal)

Conclusión

Los operadores bit a bit son solo una pequeña parte de la vasta curva de aprendizaje que Python ofrece a sus usuarios. Una cosa más con respecto a los operadores bit a bit es que no se usan con frecuencia en la programación del mundo real. Solo se encontrará con los conceptos de estos operadores cuando se encuentre en trabajos relacionados con el cifrado, la compresión y la manipulación de bytes.

Artículos recomendados

Esta es una guía para el ejemplo de Python Bitwise Operator. Aquí discutimos la explicación de diferentes Python Bitwise Operator con ejemplos y sintaxis. También puede consultar el siguiente artículo para obtener más información:

  1. Funciones de cadena de Python
  2. Alternativas a Python
  3. Prueba de marcos para Java
  4. Declaración de cambio en JavaScript
  5. Operadores bit a bit en JavaScript