e b significam decimal e binario respectivamente). Lembrando que pode ser utilizada uma calculadora que opere em binario (como a do windows) ou uma alternativa de conversao de bases on-line como esta: "Conversao de numero binario".Entao vamos deslocar, escorregar, escovar alguns bits para entender melhor.Operador >>Deslocamento de bits para a direita (bitwise right shift)trace(8 >> 1); // 4trace(8 >> 2); // 2trace(8 >> 3); // 1trace(8 >> 4); // 0Olhando os numeros na base decimal faz pouco sentido, ou talvez nenhum sentido, entao passamos os numeros corretos para a base binaria e tudo fica mais claro:8d = 1000b (8 decimal e igual a 1000 em binario), entao:1000b >> 1 (deslocando uma casa para direita) temos o numero:100b que em decimal e 4(de uma olhada na tabela).Agora ficou facil nao? Vamos deslocar o numero 13:trace(13 >> 1); // 613 em binario e 1101, deslocando uma casa para a direita (ou removendo 1 bit), fica 110, e 110 e igual a 6 em decimal.Operador <> 16) & 0xFF;var g:uint = (color >> 8) & 0xFF;var b:uint = color & 0xFF;trace("Red:", r, "Green:", g, "Blue:", b);// Red: 52 Green: 123 Blue: 183Linha 5) Deslocando 16 bits para a direita temos: 1101000111101110110111 >> 16= 110100 (DEC: 52)Para o caso do vermelho nao precisamos continuar a expressao (& 0xFF),pois deslocando 16 bits para a direita ja temos o resultado do vermelho,mas se a cor estivesse no formato ARGB (Alpha Red Green Blue), seria necessario.Linha 6) Deslocando 8 bits para conseguir o verde: 1101000111101110110111 >> 8= 11010001111011 (DEC: 13435)So com o valor do deslocamentos nao vamos conseguir a cor verde, entao utilizamos ooperador & (AND) com o valor 255 (0xFF) para extrair a parte binaria que nos interessa: 11010001111011 (DEC: 13435)& 11111111 (DEC: 255, HEX: 0xFF) -------------- 01111011 (DEC: 123)Linha 7) Para extrair o azul nao precisamos deslocar bits e sim pegar os ultimos 8 bits: 1101000111101110110111& 11111111 (DEC: 255, HEX: 0xFF) ---------------------- 10110111 (DEC: 183)Agora voltando para o hexadecimal:var r:uint = 52;var g:uint = 123;var b:uint = 183;var color:uint = (r << 16) | (g << 8) | b;trace(color.toString(16));// 347bb7Linha 4) Deslocando 16 bits para a esquerda do numero 52 (Vermelho): 110100 << 16= 1101000000000000000000Deslocando 8 bits para a esquerda do numero 123 (Verde): 1111011 << 8= 111101100000000Efetuando o OR (|) com o resultado das duas operacoes ((r << 16) | (g << 8)): 1101000000000000000000| 111101100000000 ---------------------- 1101000111101100000000Efetuando a ultima operacao, o OR com o Azul (183) 1101000111101100000000| 0000000000000010110111 ---------------------- 1101000111101110110111O resultado agora ficou claro. O numero 1101000111101110110111 (binario) e igual a 3439543 (decimal) e 347BB7 (hexadecimal). Chaveando multiplexador 4051A tarefa de chavear um Multiplexador / Demultiplexador (MUX / DEMUX) 4051 e muito parecida com a extracao dos canais RGB de uma cor. Voce so precisa Ligar ou Desligar tres pinos de selecao (select pins) para que o circuito interprete o valor gerado e transmita a voltagem da entrada desejada.Existe um gif animado do RogerCom muito didatico que demonstra o funcionamento do CI 4051, gif animado CI 4051 aqui.Por exemplo, para ler a entrada 3, precisamos desligar o pino de selecao 0, ligar o 1 e o