Desvio à esquerda o operador de deslocamento (<<)

Esquerda desloca os bits de uma expressão.

expression1 << expression2

Argumentos

  • Expressão1
    Qualquer expressão numérica.

  • Expressão2
    Qualquer expressão numérica.

Comentários

O << operador desloca os bits de Expressão1 esquerda pelo número de bits especificado em Expressão2. O tipo de dados de Expressão1 determina o tipo de dados retornado por este operador.

O << máscaras do operador Expressão2 para evitar a mudança de Expressão1 por muito. Caso contrário, se a quantidade de shift excedido o número de bits no tipo de dados de Expressão1, todos os bits originais seriam deslocados de fora para dar um resultado trivial. Para garantir que cada turno deixa pelo menos um dos bits originais, os operadores de deslocamento usam o seguinte fórmula para calcular a quantidade real de shift: máscara de Expressão2 (usando o operador bit a bit and) com um número menor que o número de bits em Expressão1.

Exemplo

Por exemplo:

var temp
temp = 14 << 2

A variável temp tem um valor de 56 porque 14 (00001110 em binário) deslocados esquerdo dois bits é igual a 56 (00111000 em binário).

Para ilustrar como o mascaramento funciona, considere o exemplo a seguir.

var x : byte = 15;
// A byte stores 8 bits.
// The bits stored in x are 00001111
var y : byte = x << 10;
// Actual shift is 10 & (8-1) = 2
// The bits stored in y are 00111100
// The value of y is 60
print(y); // Prints 60

Requisitos

Versão 1

Consulte também

Referência

Deixado o operador de atribuição de Shift (<< =)

Operador de turno de desvio à direita (>>)

Não assinado do operador de deslocamento à direita (>>>)

Conceitos

Precedência de operador

Resumo do operador

Coerção de operadores bit a bit