Resultados da pesquisa a pedido "bit-shift"

2 a resposta

Por que combinar dois turnos de um uint8_t produz um resultado diferente?

Alguém poderia me explicar o porquê: x = x << 1; x = x >> 1;e: x = (x << 1) >> 1;produzir respostas diferentes em C?x é um tipo * uint8_t * (número inteiro longo sem assinatura de 1 byte). Por exemplo, quando passo128 (10000000) no primeiro ...

5 a resposta

turno esquerdo do c / c ++ não assinado versus assinado

Eu tenho esse código. #include <iostream> int main() { unsigned long int i = 1U << 31; std::cout << i << std::endl; unsigned long int uwantsum = 1 << 31; std::cout << uwantsum << std::endl; return 0; }Imprime. 2147483648 18446744071562067968na ...

3 a resposta

Por que linguagens de alto nível, como C # / Java, mascaram o operando de contagem de deslocamento de bits?

Isso é mais um design de linguagem do que uma questão de programação. A seguir, um trecho deOperadores de turno JLS 15.19 [http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.19]: Se o tipo promovido do operando esquerdo ...

3 a resposta

Bitshift em javascript

Eu tenho um número muito grande: 5799218898. E quero alterá-lo para 13 bits. Então, windows-calculator ou python me dá: 5799218898 >> 13 | 100010100100001110011111100001 >> 13 70791 | 10001010010000111Como esperado. Mas Javascript: 5799218898 ...

14 a resposta

O que dois colchetes de ângulo esquerdo “<<” significam em C #?

Basicamente as perguntas no título. Eu estou olhando para o código-fonte MVC 2: [Flags] public enum HttpVerbs { Get = 1 << 0, Post = 1 << 1, Put = 1 << 2, Delete = 1 << 3, Head = 1 << 4 }e eu só estou curioso para saber o que os parênteses ...

6 a resposta

Operadores de turno em C ++

Se o valor após o operador shift for maior que o número de bits no operando esquerdo, o resultado será indefinido. Se o operando do lado esquerdo não estiver assinado, o deslocamento da direita será um deslocamento lógico, de modo que os bits ...

8 a resposta

Javascript equivalente ao PHP >>> deslocar para a direita com operadores de preenchimento zero em bits?

Posso saber como posso fazer o PHP >>>? Esses operadores não estão disponíveis em PHP, mas estão disponíveis em Javascript. Eu apenas consegui descobrir uma função da seguinte maneira: function zeroFill($a, $b) { $z = hexdec(80000000); if ($z & ...

1 a resposta

Por que 1 << 31 foi alterado para ser definido na implementação em C ++ 14?

Em todas as versões do C e C ++ anteriores a 2014, escrever 1 << (CHAR_BIT * sizeof(int) - 1)causou um comportamento indefinido, porque o deslocamento para a esquerda é definido como equivalente à multiplicação sucessiva por2, e essa mudança ...

2 a resposta

Mudança lógica negativa

Em Java, por que -32 >>> -1 = 1? Não é específico para apenas -32. Funciona para todos os números negativos, desde que não sejam muito grandes. Eu descobri isso x >>> -1 = 1 x >>> -2 = 3 x >>> -3 = 7 x >>> -4 = 15 dado 0> x> algum número negativo ...

3 a resposta

Mudança rápida de bits de uma matriz de bytes - subchaves CMAC

Eu preciso implementar o mais rápido possível o deslocamento de bit esquerdo de uma matriz de 16 bytes emJavaCard. Eu tentei este código: private static final void rotateLeft(final byte[] output, final byte[] input) { short carry = 0; short i = ...