Utilizando los bits – III

Siguiendo con esta sucesión de artículos, podemos agregar que los bits son extensamente empleados con el fin de poder codificar cada dato, comprimir toda la información, entre otras cosas. Por ejemplo, cada formato para las imágenes creada por Microsoft (.BMP) consigue calcular la zona de cada imagen o sea, se basa en la altura o lo que es lo mismo a ancho por alto donde ésta debe asumir como la cantidad de cada punto asequible, esos puntos al mismo tiempo logran guardar un tono hexadecimal que consta de 3 partes popularmente conocido como RGB el cual logra guardar las tonalidades del color rojo, verde y azul, por ello en el almacenamiento del color utiliza 3 bytes (255,255,255) y se redacta en ASCII, por cada uno de los puntos.

Esto logra señalar conjuntamente que la imagen es de 10 px x 10 px y utilizará 300 bytes con el fin de guardar cada punto y otros anexos que archivan los datos de las propiedades y peculiaridades de una fundamental relevancia. Manejando bytes que trabajan como un delimitador o separador en el sentido de no poder saber en qué momento culmina el formato (que posea información) no se sabe que puede ir variando, esto depende de puntos que se hacen indispensable en el manejo de cada delimitador (ASCII definidos siendo delimitadores), si por otro lado cuando se lee algún archivo (teniendo un programa creado por nosotros) se debe concretar la cantidad de bytes que se leerán por cada secuencia, en el sentido de que cada color en el formato (BMP) bastase para la lectura de 3 en 3, se debe señalar que todo archivo lograría leerse hasta 1024 o sea, 1 KB para la secuencia lo que equivaldría a la línea de información, partiendo de allí se han creado fórmulas para poder comprender la agrupación de todos los bits repetidos en las matrices o arrays.

Con el fin de hacer factible ese trabajo, hay diversas operadoras parecidas a los de lógica (OR, NOT, XOR, AND, ETC) popularmente conocidos como los operadores de bit a bit.

Desplazando bits:

Se puede definir como esa tarea de poder transportar bytes de un lado a otro teniendo en cuenta la expresión de cada uno,  como también la expresión por la cual está creada para los 2 que solo lograrían hacerse en el sentido de izquierda y derecha.

Desplazando bits a la izquierda (<<)

Esto consiste en poder mover una cuantía de bit señalado en la expresión, de izquierda a derecha, esa tarea equivaldría a poder multiplicarla por 2.

Por ejemplo:

16 <<2 se desplazan 2 bits de izquierda a la derecha

16 en binario equivaldría a 00010000 por el que se moverán los 2 primeros bits a la parte final del número (derecha) consiguiendo de esa forma que quede 01000000 el cual equivale a 64.

Por ello se debe multiplicar:

 

(16*2)=32 (32*2)=64
1 bit 2 bits

Desplazando los bits a la derecha (>>)

Esto se enfoca en poder mover en toda la posibilidad el bit que es señalada en la expresión, de derecha a izquierda, esa labor equivaldría a dividirse por 2.

  1. Por ejemplo:

    128>>4 se desplazan 4 bits de derecha a izquierda.

    128 en binario es lo mismo que: 10000000, se moverá entonces los últimos 4 bits al comienzo (derecha a izquierda), dando como resultado: 00001000 donde el valor es igual a 8.

    Es por eso que se divide:

  2. (128 / 2)=64 (64/2)=32 (32/2)=16 (16/2)=8
    1 bit 2 bits 3 bits 4 bits

    Se utiliza 2 debido a que es la base del sistema en numeración binario.