<< Operátor (Visual Basic)
Provádí aritmetickou levý shift bitový vzorec.
result = pattern << amount
Části
result
Povinné.Nedílnou číselná hodnota.V důsledku posunu bitový vzorec.Typ dat je stejná jako u pattern.pattern
Povinné.Nedílnou číselný výraz.Bitový vzorec posunutí.The data type must be an integral type (SByte, Byte, Short, UShort, Integer, UInteger, Long, or ULong).amount
Povinné.Číselný výraz.Počet bitů bitový vzorec posun.Datový typ musí být Integer nebo rozšířit na Integer.
Poznámky
Aritmetické směny nejsou cyklický, což znamená, že bitů posunuly jeden konec výsledek není přivedena na druhém konci.V aritmetické levý shift bitů posunuty mimo rozsah datového typu výsledek se vypustí a bit pozice vacated na pravé straně se nastaví na nulu.
Aby shift službou bits více než výsledek může pojmout, Visual Basic masky hodnotu amount s maskou velikost, která odpovídá typu dat pattern.Binární a tyto hodnoty se používá pro částku shift.Velikost masky jsou následující:
Typ datpattern |
Velikost masky (desítkově) |
Velikost masky (šestnáctkově) |
---|---|---|
SByte, Byte |
7 |
& H00000007 |
Short, UShort |
15 |
& H0000000F |
Integer, UInteger |
31 |
& H0000001F |
Long, ULong |
63 |
& H0000003F |
Pokud amount je nulové hodnoty result je totožná s hodnotou pattern.Pokud amount je záporné, je jako nepodepsané hodnoty a maskou s maskou odpovídající velikosti.
Aritmetické směny nikdy generovat výjimky přetečení.
[!POZNÁMKA]
<< Operátor může být přetížení, což znamená, že třídy nebo struktury předefinovat své chování při operand je typu třídy nebo struktury.Pokud váš kód používá tento operátor na tyto třídy nebo struktury, být pochopit jeho předefinovaná chování.Další informace naleznete v tématu Operátor postupy (Visual Basic).
Příklad
V následujícím příkladu << vlevo směn na integrální hodnoty aritmetický operátor.Výsledek má vždy stejný datový typ. jako výraz jsou posunuty.
Dim pattern As Short = 192
' The bit pattern is 0000 0000 1100 0000.
Dim result1, result2, result3, result4, result5 As Short
result1 = pattern << 0
result2 = pattern << 4
result3 = pattern << 9
result4 = pattern << 17
result5 = pattern << -1
Výsledky předchozího příkladu jsou následující:
result1je 192 (0000 0000 1100 0000).
result2je 3072 (0000 1100 0000 0000).
result3je -32768 (1 000 0000 0000 0000).
result4je 384 (0000 0001 1000 0000).
result5je 0 (posunuté 15 míst nalevo).
Částka shift pro result4 se vypočítá jako 17 A 15, což se rovná 1.
Viz také
Referenční dokumentace
Bitové operátory Shift (Visual Basic)
Operátory přiřazení (Visual Basic)
Priority operátorů v jazyce Visual Basic
Operátory uvedené podle funkcí (Visual Basic)