Ir ao conteúdo
  • Cadastre-se
Cambalinho

sobre o operador binarios (bitwise operators)

Recommended Posts

decimal = binario

10 = 1010

20 = 10100

1010

10100 | (or binario)

________

10100

este resultado esta correcto?

(alguem me pode fornecer a formula para converter binario para decimal?)

Compartilhar este post


Link para o post
Compartilhar em outros sites
Cambalinho,

 1010
10100 (OR)
-----
11110

[]'s

LNW

muito obrigado, mas ainda nao entendi como se converte de decimal para binario... podes me explicar?

(sei que é a dividir por 2(penso por ser da base 2), mas ainda nao entendi bem)

Compartilhar este post


Link para o post
Compartilhar em outros sites
muito obrigado, mas ainda nao entendi como se converte de decimal para binario... podes me explicar?

(sei que é a dividir por 2(penso por ser da base 2), mas ainda nao entendi bem)

Sim, divida sucessivamente e depois tome o resto de todas as divisões. Dê uma olhada:

1cYYI1c.jpg

http://www.wikihow.com/Convert-from-Decimal-to-Binary

[]'s

LNW

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Sim, divida sucessivamente e depois tome o resto de todas as divisões. Dê uma olhada:

1cYYI1c.jpg

http://www.wikihow.com/Convert-from-Decimal-to-Binary

[]'s

LNW

(ja vi que em todos com parte decimal, a parte decimal é perdida e assim é '1')

2/2=1... então porque é '1' e nao '0'?

Compartilhar este post


Link para o post
Compartilhar em outros sites
(ja vi que em todos com parte decimal, a parte decimal é perdida e assim é '1')

2/2=1... então porque é '1' e nao '0'?

Não entendi bem, Cambalinho.. o que quer dizer exatamente?

[]'s

LNW

Compartilhar este post


Link para o post
Compartilhar em outros sites
Não entendi bem, Cambalinho.. o que quer dizer exatamente?

[]'s

LNW

exemplo: 19/9 =2,1111111....

então ficamos com '2' e o algarismo binario vai ser '1'... entendi.

mas 2/2 = 1 e 1 numero inteiro. então porque recebe o algarismo binario '1'?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cambalinho,

exemplo: 19/9 =2,1111111....

então ficamos com '2' e o algarismo binario vai ser '1'... entendi.

mas 2/2 = 1 e 1 numero inteiro. então porque recebe o algarismo binario '1'?

2 / 2 = 1, resto 0;

1 / 2 = 0, resto 1;

OK? É importante lembrar que estamos considerando o módulo entre dois números, que é o resto de uma divisão Euclidiana.

[]'s

LNW

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Cambalinho,

2 / 2 = 1, resto 0;

1 / 2 = 0, resto 1;

OK? É importante lembrar que estamos considerando o módulo entre dois números, que é o resto de uma divisão Euclidiana.

[]'s

LNW

ja entendi... nao tinha reparado nessa ultima divisao :(

explica-me mais 1 coisa sobre usar '<<' e '>>'. imagina este valor:

1010101010

imagina que te pedem 4 bits á direita ou á esquerda(acho que percebetes do que falo) e ás vezes usam, tambem, valores hexadecimais... podes me explicar estas situaçoes?

Compartilhar este post


Link para o post
Compartilhar em outros sites
ja entendi... nao tinha reparado nessa ultima divisao :(

explica-me mais 1 coisa sobre usar '<<' e '>>'. imagina este valor:

1010101010

imagina que te pedem 4 bits á direita ou á esquerda(acho que percebetes do que falo) e ás vezes usam, tambem, valores hexadecimais... podes me explicar estas situaçoes?

Dê uma olhada aqui: http://en.wikipedia.org/wiki/Bitwise_operation

No Windows, você pode usar a Calculadora no modo programador para ir testando e vendo os bits resultantes dessas operações.

[]'s

LNW

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Dê uma olhada aqui: http://en.wikipedia.org/wiki/Bitwise_operation

No Windows, você pode usar a Calculadora no modo programador para ir testando e vendo os bits resultantes dessas operações.

[]'s

LNW

muito obrigado pelo link... adorei o link(meti para portugues;)).

desculpa continuar mas ainda preciso de mais umas explicaçoes:

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), ForgC | BackC );

esta funçao serve para alterar a cor de fundo e de texto.. ou seja usa flags.

a combinaçao das flags com '|' fornece 1 valor.

DWORD textcolor = csbi.wAttributes & 0xff0f;

a variavel csbi.wAttributes estruturada tem esse valor.

esse calculo serve para calcularmos a cor de texto.

nao sei o que quer dizer 0xff0f, mas entendo que é 1 valor hexadecimal.

e

DWORD backcolor = (csbi.wAttributes & 0xfff0) >> 4

da-me a cor de fundo. aquele link me destes ajudou muito, mas podes me explicar estes 2 calculos(eu nao sei se estes calculos sao especificos da funçao, por favor me corrige)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×