12.10.2013, 10:56
- Introduзгo
Muita gente se pergunta:
- Como diabos esse resultado foi parar aqui?
- Bitwises sгo operadores ilуgicos?
- Bitwises operam de forma aleatуria?
Calma minha gente, bitwises nгo sгo nada disto. Apenas operam de uma maneira diferente de como podemos perceber. Basicamente, eles operam atravйs dos nъmeros binбrios e seus dнgitos. (os dнgitos dos nъmeros binбrios sгo basicamente chamados de bits acostume-se com isto!)
- Nъmeros binбrios
E por serem tгo bбsicos, todo processamento do computador й baseado nisto. 0 e 1, ou como alguns conhecem melhor. FALSE e TRUE (verdadeiro, falso)
Aqui vou dar um exemplo de nъmero binбrio:
0b111 й o nъmero 7
O que significa 0b? 0b й a conveзгo em algumas linguagens para DEMONSTRAR ao compilador que estamos representando um nъmero binбrio, e nгo um nъmero decimal. Atй porque se nгo tivesse 0b na frente, o programa iria achar que estamos mostrando o nъmero 111 e nгo o nъmero 7.
Estгo compreendendo atй aqui? Se nгo compreenderam, voltam e releiam novamente. Caso vocк nгo souber o que sгo nъmeros binбrios, vai precisar pedir algumas aulinhas para sua professora de matemбtica ou pesquisar na internet, pois neste tutorial eu ensino como funcionam os operadores bit-a-bit e nгo nъmeros binбrios.
- Bit-a-bit
Como assim digito a digito? Simples, meus queridos, quando eu tiver um nъmero decimal com um operador BIT a BIT e outro nъmero decimal, basicamente o operador bit a bit pega cada bit deste nъmero e compara com outro
Nгo entendeu, ainda?? Quer que eu desenhe ?? Veja a imagem abaixo
Basicamente, eles funcionam todos da mesma maneira, operando cada bit do digito binбrio e colocando o novo valor comparado. PORЙM, cada um tem suas regras.
No caso as regras do & (AND) foram estas:
1 & 1 = 1
0 & 1 = 0
1 & 0 = 0
0 & 0 = 0
Mas tambйm hб outras regras dos outros operadores, como | (OR):
1 | 1 = 1
0 | 1 = 1
0 | 0 = 0
1 | 0 = 1
Tambйm temos XOR
1 ^ 1 = 0
1 ^ 0 = 1
0 ^ 1 = 1
0 ^ 0 = 0
Hб outras tabelas, essas tabelas se chamam Tabela Veritativa. O
Espero que gostem, prestem muita atenзгo. Se entendeu o tutorial, aproveita e agradeзa em um comentбrio abaixo, ou enviando reputaзгo para meu perfil. Hб pouquнssimos tutoriais sobre isto na internet
E se nгo entenderam ainda, й porque sгo burros e nгo servem pra programaзгo #true
Autoria
Este tutorial foi redigido por Bruno da Silva, e colaborado por William Luigi.
[iPs]TeaM!
Atй mais