Bitwise Operadores
La tabla siguiente demuestra los operadores del
estándar bitwise en Java y una descripción de ellos.
| Operador |
Descripción |
| y |
Bitwise Y |
| | |
Bitwise inclusivo-O (conocido generalmente como O) |
| ^ |
Bitwise exclusivo-O (conocido generalmente como XOR) |
| ~ |
Bitwise NO |
Para ilustrar la función de estos bitwise
operadores, podemos utilizar dos valores del octeto, A y B, que en
Java se podrían representar por una variable del tipo octeto.
La tabla siguiente demuestra la notación binaria de A y B (pues
hay 8 pedacitos en un octeto).
| Octeto |
Valor Binario |
| A |
01101010 |
| B |
11110000 |
Y (y) operador prueba dos pedacitos y vuelve el
pedacito que resulta verdad si ambos pedacitos de la prueba son
verdades; si no, el pedacito de vuelta es falso. La tabla
siguiente demuestra el resultado de A Y de B.
| Octeto |
Pedacitos |
| A |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
| B |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
| A Y B |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
O (|) el operador prueba dos pedacitos y vuelve el pedacito
que resulta verdad si cualesquiera o ambos pedacitos de la prueba son
verdades; si son ambo falsos, el pedacito de vuelta es también
falso. La tabla siguiente demuestra el resultado de A O de B.
| Octeto |
Pedacitos |
| A |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
| B |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
| A Y B |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
El operador de XOR (^) prueba dos pedacitos y
vuelve el pedacito que resulta verdad si uno, y solamente uno, de los
pedacitos es verdades; si no, si los dos valores son iguales, el
pedacito de vuelta es falso. La tabla siguiente demuestra el
resultado de A XOR B.
| Octeto |
Pedacitos |
| A |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
| B |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
| A Y B |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
NO el operador (del ~) invertirá todos los
pedacitos, donde unos se convierten en ceros y los ceros se convierten
en unos, y es por lo tanto operador unario usado con solamente un
operando, mientras que probaron a los otros bitwise operadores que
acabamos de ver contra dos operandos (operadores binarios), A y B.
La tabla siguiente demuestra el resultado NO de una operación
en el octeto A.
| Octeto |
Pedacitos |
| A |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
| NO A |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
Bitwise Y, los operadores O, y de XOR pueden
también ser utilizados con expresiones boleanas, pues los valores
boleanos contienen con eficacia solamente un pedacito que sea verdad o
falso. Esto se puede poner en ejecucio'n en Java como sigue:
el musicOn boleano = verdad; el televisionOn boleano
= verdad; areBothOn = musicOn y televisionOn boleanos;
//areAnyOn = musicOn boleanos verdaderos | televisionOn; //verdad el televisionOn boleano
del isOnlyOneOn = del musicOn ^; //falso
Hay también operadores de asignación para estos
tres bitwise operadores, según lo demostrado en la tabla siguiente.
| Operador |
Descripción |
| y = |
Bitwise Y asignación |
| |= |
Bitwise inclusivo-O asignación |
| ^ = |
Asignación bitwise exclusiva-XOR |
esto es un artículo agregado por Gabriela C.
Perez