Aracılığıyla paylaş


>> İşleç (Visual Basic)

Bir bit desenine bir aritmetik sağa kaydırma yapar.

result = pattern >> amount

Bölümleri

  • result
    Gerekli.Tam bir sayısal değer.Bit deseni kaydırma sonucu.Aynı veri türü olan pattern.

  • pattern
    Gerekli.İntegral sayısal ifade.Sığdırılması bit deseni.The data type must be an integral type (SByte, Byte, Short, UShort, Integer, UInteger, Long, or ULong).

  • amount
    Gerekli.Sayısal ifade.Bit deseni kaymak için bit sayısı.Veri türü olmalıdır Integer veya genişletmek için Integer.

Notlar

Aritmetik kaymaları yeniden ortaya bir ucunu sonucu kaydırılacağı uzaklık BITS diğer ucunda ise çıkar değil yani döngüsel, değil.Bir aritmetik sağa kaydırma en sağdaki bit konumu kaydırılacağı uzaklık bitler atılır ve en soldaki (işareti) bit bit konumlarını solda vacated içine yayılır.Buna göre ise pattern negatif bir değer olan vacated pozisyonlar; bire ayarlanmış Aksi takdirde sıfır olarak ayarlanır.

Unutmayın veri türleri Byte, UShort, UInteger, ve ULong , dolayısıyla yaymak için hiçbir işaret biti, işaretsizdir.pattern Biri olan herhangi bir tür işaretsiz, vacated pozisyonları her zaman sıfır olarak ayarlayın.

Sonuç tutabileceğinden daha fazla bit kaydırma önlemek için Visual Basic değerinin maskeler amount veri türüne karşılık gelen boyut maskesi ile pattern.İkili ve bu değerlerin shift tutar için kullanılır.Boyutu maskeleri şunlardır:

Veri türüpattern

Boyutu maskesi (ondalık)

Boyutu maskesi (onaltılık)

SByte, Byte

7

& H00000007

Short, UShort

15

& H0000000F

Integer, UInteger

31

& H0000001F

Long, ULong

63

& H0000003F

amount Değeri sıfır olan result değerine aynı pattern.amount İse negatif olduğundan imzalanmamış bir değer olarak dikkate ve uygun boyutta maskeyle maskelenmiş.

Aritmetik kaymaları asla taşma özel durumlar oluşturmak.

Aşırı

>> İşleç olabilir aşırı, o sınıf veya yapı türü bir işlenen sahip olduğunda bir sınıf veya yapı davranışını tanımlayabilirsiniz, anlamına gelir.Bu tür bir sınıf veya yapı kodunuzu bu işleç kullanıyorsa, yeniden tanımlanan davranışı anladığınızdan emin olun.Daha fazla bilgi için bkz. Operatör yordamları (Visual Basic).

Örnek

Aşağıdaki örnek >> operator aritmetik sağa kaydırır tam sayı değerleri üzerinde gerçekleştirmek için.Sonuç her zaman aynı veri türüne, kaydırılacağı uzaklık ifade vardır.

Dim pattern As Short = 2560
' The bit pattern is 0000 1010 0000 0000.
Dim result1, result2, result3, result4, result5 As Short
result1 = pattern >> 0
result2 = pattern >> 4
result3 = pattern >> 10
result4 = pattern >> 18
result5 = pattern >> -1

Yukarıdaki örneğin sonuçlarını aşağıdaki gibidir:

  • result12560 olduğu (0000 1010 0000 0000).

  • result2160 olan (0000 0000 0000 1010).

  • result32 (0000 0000 0000 0010).

  • result4640'dır (0010 0000 0000 1000).

  • result50 (ötelenen 15 basamak sağında)'dır.

Shift tutarını result4 18 hesaplanır ve hangi eşittir 2 15.

Aşağıdaki örnek, aritmetik kaymaları üzerinde negatif bir değer gösterir.

Dim negPattern As Short = -8192
' The bit pattern is 1110 0000 0000 0000.
Dim negResult1, negResult2 As Short
negResult1 = negPattern >> 4
negResult2 = negPattern >> 13

Yukarıdaki örneğin sonuçlarını aşağıdaki gibidir:

  • negresult1-512 ise (1111 1110 0000 0000).

  • negresult2-1 (işaret biti yayılır) arasındadır.

Ayrıca bkz.

Başvuru

Bit kaydırma işleçleri (Visual Basic)

Atama operatörleri (Visual Basic)

>> = işlecini (Visual Basic)

Visual Basic'te işleç önceliği

(Visual Basic) işlevine göre listelenen işleçleri

Kavramlar

Visual Basic'te aritmetik işleçler