Xor İşleci (Visual Basic)

İki ifadede mantıksal Boolean dışlama veya iki sayısal ifadede bitsel dışlama gerçekleştirir.

Syntax

result = expression1 Xor expression2  

Bölümler

result
Gereklidir. Herhangi Boolean bir veya sayısal değişken. Boole karşılaştırması result için, iki değerin mantıksal dışlama (özel mantıksal ayrım) Boolean değeridir. Bitwise işlemler için, result iki sayısal bit deseninin bitwise dışlama (özel bitwise disjoction) temsil eden sayısal bir değerdir.

expression1
Gereklidir. Herhangi Boolean bir veya sayısal ifade.

expression2
Gereklidir. Herhangi Boolean bir veya sayısal ifade.

Açıklamalar

Boole karşılaştırması için ise ve yalnızca ve değerlerinden result True biri olarak expression1 expression2 True değerlendirilir. Başka bir ifadeyle, eğer ve yalnızca ise expression1 expression2 ve karşıt değerler olarak Boolean değerlendirilir. Aşağıdaki tabloda, nasıl belirlen result olduğu göstermektedir.

Şu expression1 ise: Ve expression2 şu şekildedir: değeri result şu şekildedir:
True True False
True False True
False True True
False False False

Not

Boole karşılaştırması için işleç her zaman her iki ifadeyi de değerlendirir ve bu da Xor yordam çağrıları yapma gibi olabilir. sonucu her zaman her iki işlenene de bağlı olduğundan, için Xor kısa devrenin karşılığı yoktur. Kısa devre mantıksal işleçleri için bkz. AndAlso İşleci ve OrElse İşleci.

Bitsel işlemler için işleç, iki sayısal ifadede aynı konumlara sahip bitlerin bitwise karşılaştırması yapar ve karşılık gelen biti aşağıdaki tabloya Xor result göre ayarlar.

bit expression1 in ise ve içinde bit expression2 içinde bit result
1 1 0
1 0 1
0 1 1
0 0 0

Not

Mantıksal ve bitwise işleçler diğer aritmetik ve ilişkisel işleçlere göre daha düşük önceliğe sahip olduğundan, doğru yürütmeyi sağlamak için bitwise işlemler parantez içine alınır.

Örneğin, 5 Xor 3 6'dır. Bunun neden bu kadar olduğunu görmek için, 5 ve 3'ü ikili gösterimlerine ( 101 ve 011) dönüştür. Ardından, 101 Xor 011'in 110 olduğunu belirlemek için önceki tabloyu kullanın. Bu, 6 ondalık sayısının ikili gösterimidir.

Veri Türleri

İşleciler bir ifadeden ve bir sayısal ifadeden oluşursa, Visual Basic ifadeyi sayısal bir değere Boolean Boolean dönüştürür (için True –1 ve için False 0) ve bitwise bir işlem gerçekleştirir.

Karşılaştırma Boolean için sonucun veri türü Boolean olur. Bitsel bir karşılaştırma için sonuç veri türü ve veri türlerine uygun sayısal bir tür expression1 expression2 olur. İşleç Sonuçlarının Veri Türleri'nin "İlişkisel ve BitWise Karşılaştırmalar" tablosuna bakın.

Aşırı Yükleme

işleci aşırı yüklenmiş olabilir, yani bir işlenen o sınıf veya yapı türüne sahip olduğunda sınıf veya yapı davranışını Xor yeniden tanımldırabilirsiniz. Kodunuz böyle bir sınıf veya yapıda bu işleci kullanıyorsa, bu işlecin yeniden tanımlanmamış davranışını ansanız emin olun. Daha fazla bilgi için bkz. İşleç Yordamları.

Örnek 1

Aşağıdaki örnek, iki Xor ifadede mantıksal dışlama (özel mantıksal ayrım) gerçekleştirmek için işleci kullanır. Sonuç, Boolean ifadelerden tam olarak birinin olup olmadığını temsil eden bir True değerdir.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck, thirdCheck As Boolean
firstCheck = a > b Xor b > c
secondCheck = b > a Xor b > c
thirdCheck = b > a Xor c > b

Önceki örnek sırasıyla False , ve sonuçlarını True False üretir.

Örnek 2

Aşağıdaki örnek, iki sayısal ifadenin tek tek bitlerinde mantıksal dışlama (dışlama mantıksal Xor ayrım) gerçekleştirmek için işleci kullanır. sonuç düzeninde bit, işlenenlerde karşılık gelen bitlerden tam olarak biri 1 olarak ayarlanırsa ayarlanır.

Dim a As Integer = 10 ' 1010 in binary
Dim b As Integer = 8  ' 1000 in binary
Dim c As Integer = 6  ' 0110 in binary
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a Xor b)  '  2, 0010 in binary
secondPattern = (a Xor c) ' 12, 1100 in binary
thirdPattern = (b Xor c)  ' 14, 1110 in binary

Önceki örnek sırasıyla 2, 12 ve 14 sonuçlarını üretir.

Ayrıca bkz.