photo
+ Responder ao Tópico
Resultados de 1 a 1 de 1

Thread: Operações Binárias

  1. #1 Fechar a publicação
    Senior Member jssuser's Avatar jssuser's Avatar
    Data de afiliação
    Aug 2018
    Postagens
    1,503
    Obrigado
    209
    Agradecimentos 1,579 Tempos em 856 Postagens
    AssinarAssinar
    subscritar: 0

    Operações Binárias

    Complementar de Um
    Complementar do valor da variável até um. O valor da expressão contém 1 em todos os dígitos onde o valor da variável contem 0, e 0 em todos os demais dígitos onde a variável contem 1.

    b = ~n;

    Exemplo:

    char a='a',b;
    b=~a;
    Print("a = ",a, " b = ",b);
    // O resultado será:
    // a = 97 b = -98

    Deslocamento para Direita
    A representação binária de x é deslocada para direita em y dígitos. Se o valor a ser deslocado é de um tipo sem sinal (unsigned type), o deslocamento lógico para a direita é feito, isto é, os bits do lado esquerdo liberados serão preenchido com zeros.

    Se o valor a ser desloca é de um tipo com sinal (signed type), o deslocamento aritmético para direita é feito, isto é, os dígitos do lado esquerdo liberados serão preenchidos com o valor do bit de sinal (sign bit) (se o número é positivo, o valor do bit de sinal é 0, se o número é negativo, o valor do bit de sinal é 1).

    x = x >> y;

    Exemplo:

    char a='a',b='b';
    Print("Antes: a = ",a, " b = ",b);
    //--- deslocamento para direita
    b=a>>1;
    Print("Após: a = ",a, " b = ",b);
    // O resultado será:
    // Antes: a = 97 b = 98
    // Após: a = 97 b = 48

    Deslocamento para Esquerda
    A representação binária de x é deslocada para esquerda em y dígitos, os dígitos do lado direito liberados são preenchidos com zero.

    x = x << y;

    Exemplo:

    char a='a',b='b';
    Print("Antes: a = ",a, " b = ",b);
    //--- deslocamento para a esquerda
    b=a<<1;
    Print("Após: a = ",a, " b = ",b);
    // O resultado será:
    // Antes: a = 97 b = 98
    // Após: a = 97 b = -62

    Não é recomendável deslocar um número maior ou igual de bits que o comprimento da variável deslocada, porque o resultado de tal operação é indefinido.

    Operação AND bit a bit
    A operação AND bit a bit em representações binárias de x e y. O valor da expressão contem 1 (TRUE) em todos os dígitos onde ambos x e y contém não-zero, e contem 0 (FALSE) em todos os demais dígitos.

    b = ((x & y) != 0);

    Exemplo:

    char a='a',b='b';
    //--- operação AND
    char c=a&b;
    Print("a = ",a," b = ",b);
    Print("a & b = ",c);
    // O resultado será:
    // a = 97 b = 98
    // a & b = 96

    Operação OR bit a bit
    A operação OR bit a bit de representações binárias de x e y. O valor da expressão contem 1 em todos os dígitos onde x ou y não contém 0, e contém 0 em todos os demais dígitos.

    b = x | y;

    Exemplo:

    char a='a',b='b';
    //--- operação OR
    char c=a|b;
    Print("a = ",a," b = ",b);
    Print("a | b = ",c);
    // O resultado será:
    // a = 97 b = 98
    // a | b = 99

    Operação OR Exclusivo bit a bit
    A operação OR exclusivo bit a bit (eXclusive OR) de representações binárias de x e y. O valor da expressão contem 1 em todos os dígitos onde x e y tem valores binários diferentes, e contém 0 em todos os demais dígitos.

    b = x ^ y;

    Exemplo:

    char a='a', b='b';
    //--- operação OR Exclusivo
    char c=a^b;
    Print("a = ",a," b = ",b);
    Print("a ^ b = ",c);
    // O resultado será:
    // a = 97 b = 98
    // a ^ b = 3

    Operações bit a bit são realizadas somente com inteiros.

    Though trading on financial markets involves high risk, it can still generate extra income in case you apply the right approach. By choosing a reliable broker such as InstaForex you get access to the international financial markets and open your way towards financial independence. You can sign up here.


  2. The Following User Says Thank You to jssuser For This Useful Post:

    Não registrado (1 )

+ Responder ao Tópico

Permissões de postagens

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts