>> İşleci (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. İşleç 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 İşleçleri (Visual Basic)
Atama İşleçleri (Visual Basic)
Visual Basic'de İşleç Önceliği
İşlevselliğe Göre Listelenmiş İşleçler (Visual Basic)