C++ XOR İşlemi

C Xor Islemi



C++ programlama, AND, OR, NOT, XOR vb. gibi çeşitli bitsel operatörler sağlar. Verilen veriler üzerinde bit düzeyinde işlem yapmak için, C++ programlama dilindeki bitsel operatörleri kullanırız. C++'daki “XOR” operatörü (^), iki işlenenin her biti üzerinde bir XOR işlemi yürütür. İki bit farklıysa XOR'un sonucu 1'dir; her ikisi de aynı ise sonuç 0 olur. Burada C++ programlamada “XOR” operatörünü inceleyeceğiz.

Örnek 1:

Kod burada “iostream” başlık dosyasını ekleyerek başlar. Adından da anlaşılacağı gibi, bu başlık dosyası, bu işlevler içinde bildirildiği için giriş ve çıkış işlevleri içindir. Daha sonra bu fonksiyonların tanımlandığı “namespace std”ye sahibiz.

Bunun altında “main()” metodunu çağırıyoruz. “int” tipindeki “x” değişkenini başlatıyoruz ve bu “x”e “10” atadık. Daha sonra “int” veri türünden “y” adlı başka bir değişkenimiz var ve “6”yı atadık. Bundan sonra “int” veri tipinin “r”sini başlatıyoruz. Burada “x” ve “y” değişkenlerinin değerlerine “^” operatörünü bu değişkenlerin arasına yerleştirerek “XOR” işlemini uyguluyoruz. Bu “XOR” operatörü, tamsayı değerlerini ikiliye dönüştürür, ikili değerlere “XOR” işlemini uygular ve sonucu tamsayı değeri olarak kaydeder. Bu “XOR” operatörünün sonucu artık “r”ye kaydediliyor.







Daha sonra bu değişkenlerin değerlerini ayrı ayrı görüntüleyip ardından “cout” yardımıyla “XOR” operatörünü uyguladıktan sonra elde ettiğimiz sonucu gösteriyoruz.



Kod 1:

#include

ad alanı std'sini kullanma ;

int ana ( ) {

int X = 10 ;

int Ve = 6 ;

int R = X ^ Ve ;

cout << 'x'in değeri : ' << X << sonunda ;

cout << 'y'nin değeri : ' << Ve << sonunda ;

cout << 'XOR x ^ y = ' << R << sonunda ;

geri dönmek 0 ;

}

Çıktı:



“10”un ikili değeri “1010” ve “6”nın ikili değeri “0110” olduğundan “XOR” operatörünü uyguladıktan sonra “12” değerini döndürür ve “1100” ise “12”nin ikili değeridir. Bu, her iki girişin farklı olduğu durumlarda “1” değerini, her iki girişin aynı olduğu durumlarda ise “0” değerini döndürdüğünü gösterir.





Örnek 2:

“iostream” başlık dosyasını ve “std” isim alanını ekledikten sonra “main()” metodunu çağırıyoruz. Daha sonra “X1” ve “X2” adlı iki değişkeni başlatıyoruz ve bu değişkenlere sırasıyla “21” ve “35” tamsayı değerlerini atayıyoruz. Daha sonra her iki değişkenin değerini yazdırıyoruz. Daha sonra bu tamsayı değerlerine “XOR” operatörünü uyguluyoruz. Bu “XOR” işlemini “cout” içindeki bu “X1” ve “X2” değişkenlerine uyguluyoruz. Yani bu “XOR”un sonucu da sonuç olarak görüntüleniyor.



Kod 2:

#include

ad alanı std'sini kullanma ;

int ana ( ) {

int X1 = yirmi bir , X2 = 35 ;

cout << 'X1 değeri =' << X1 << sonunda ;

cout << 'X2 değeri = ' << X2 << sonunda ;

cout << 'XOR sonucu: ' << sonunda ;

cout << 'X1^X2 =' << ( X1 ^ X2 ) << sonunda ;

geri dönmek 0 ;

}

Çıktı:

İlk tamsayı değeri “21”, ikincisi ise “35”tir. “XOR” işlemini uyguladıktan sonra burada görüntülenen “54” sonucunu elde ediyoruz.

Örnek 3:

“iostream” başlık dosyasını ve “std” isim alanını ekledikten sonra “main()” metodunu çağırıyoruz. “int” tipinin “n1” değişkeni başlatılır ve ona “29” atanır. Daha sonra “int” veri tipindeki “n2” değişkenine “75” değerini atadık. Daha sonra “int” veri türünün yanı sıra “r1” değerini de başlatıyoruz.

Daha sonra “n1” ve “n2” değişkenlerinin değerlerine “^” operatörünü aralarına yerleştirerek “XOR” işlemini uyguluyoruz. Tamsayı değerleri bu 'XOR' operatörü kullanılarak ikiliye dönüştürülür ve bu operatör daha sonra 'XOR' işlemini ikili verilere uygular ve sonucu bir tamsayı değeri olarak kaydeder. “r1” değişkeni artık bu “XOR” işleminin sonucunu içermektedir. Bu değişkenlerin her birinin değerleri daha sonra ayrı ayrı gösterilir. Ayrıca “cout” operatörünün yardımıyla “XOR” operatörünün kullanımının sonucunu da gösteriyoruz.

Kod 3:

#include

ad alanı std'sini kullanma ;

int ana ( )

{

int n1 = 29 ;

int n2 = 75 ;

int r1 = n1 ^ n2 ;

cout << 'İlk değer: ' << n1 << sonunda ;

cout << 'İkinci değer : ' << n2 << sonunda ;

cout << 'XOR operatörünün sonucu: ' << r1 << sonunda ;

geri dönmek 0 ;

}

Çıktı:

Giriş tamsayıları ikiliye dönüştürülen “29” ve “75”tir. Daha sonra bunlara “XOR” işlemi uygulanır. “XOR” uygulandıktan sonra sonuç “86” olur.

Örnek 4:

Bu kodda kullanıcıdan girdi alıyoruz ve ardından kullanıcının girdi değerlerine “XOR” işlemini uyguluyoruz. Üç değişken burada “Xdeğeri1”, “Xdeğeri2” ve “Xdeğeri3” adlarıyla bildirilir. Daha sonra “cout”u yerleştirip “Buraya iki değer giriniz” mesajını ekrana getiriyoruz.

Bu mesajı görüntüledikten sonra kullanıcı cin yardımıyla elde ettiğimiz değerleri giriyor. Yani bunun altına “cin” koyuyoruz. Artık her iki değer de bu değişkenlerde saklanıyor ve burada da gösteriliyor. Şimdi “XOR” işlemini uygulamamız gerekiyor, bu yüzden “Xvalue1” ve “Xvalue2” değişkenleri arasına “^” operatörünü ekliyoruz.

Şimdi bu “XOR” işlemi bu değişkenlerin değerlerine uygulanıyor. Bu “XOR” operatörünün sonucu daha sonra “Xvalue3” değişkenine kaydedilir. Ayrıca “cout” yöntemini kullanarak da görüntülüyoruz.

Kod 4:

#include

ad alanı std'sini kullanma ;

int ana ( )

{

int Xdeğeri1 , Xdeğeri2 , Xdeğeri3 ;

cout << 'Buraya iki değer girin: ' << sonunda ;

cout << 'Xdeğeri1: ' ;

yemek yiyor >> Xdeğeri1 ;

cout << 'Xdeğeri2: ' ;

yemek yiyor >> Xdeğeri2 ;

Xdeğeri3 = Xdeğeri1 ^ Xdeğeri2 ;

cout << ' \N Şimdi her iki değere de XOR uyguladıktan sonra: ' << sonunda ;

cout << 'Xdeğeri1 ^ Xdeğeri2 = ' << Xdeğeri3 << sonunda ;

}

Çıktı:

Bu kodu çalıştırdığımızda iki değerin girilmesi için bir mesaj yazdırır. Yani “Xvalue1” değişkeninin değeri olarak “14”, “Xvalue2” değişkeninin değeri olarak ise “45” giriyoruz. Daha sonra “Enter” tuşuna basıyoruz. Daha sonra bu değerlere 'XOR' işlemi uygulanarak her iki değer de ikiliye dönüştürülür ve sonuç burada görüntülenir.

Örnek 5:

Bu “XOR” işlemini karakter verilerine uyguluyoruz. İki “char” değişkenini “ch_a” ve “ch_b” isimleriyle başlatıyoruz. Bu değişkenlere sırasıyla “a” ve “8” atadık. Daha sonra “^” operatörünü “ch_a” ve “ch_b” arasına yerleştirip aynı zamanda “char” veri tipi olan “ch_result” değişkenine atadık. Bu karakterler ikiliye dönüştürülür ve sonuç “ch_result” değişkenine kaydedilir. Daha sonra her iki değişkeni ve bu “XOR” işleminin sonucunu yazdırıyoruz.

Kod 5:

#include

ad alanı std'sini kullanma ;

int ana ( ) {

karakter ch_a = 'A' ;

karakter ch_b = '8' ;

karakter ch_result = ch_a ^ ch_b ;

cout << 'İlk karakter: ' << ch_a << sonunda ;

cout << 'İkinci karakter: ' << ch_b << sonunda ;

cout << 'Sonuç: ' << ch_result << sonunda ;

}

Çıktı:

Giriş karakterleri “a” ve “8” olup, “a” ve “8”i ikiliye dönüştüren ve ardından “” işlemini gerçekleştiren “XOR” işlemini uyguladıktan sonra elde ettiğimiz “XOR” sonucu “Y” olarak görüntülenmektedir. XOR” işlemi.

Çözüm

Burada “XOR” işlemi detaylı bir şekilde incelendi ve ikili değerleri kullandığı için bunun “bitsel” bir işlem olduğunu açıkladık. “XOR” işlemini uygulamak için girdiğimiz tüm değerlerin ikili değerlere dönüştürüldüğünü ve ardından “XOR” işleminin gerçekleştirildiğini anlatmıştık. Birkaç örnek gösterdik ve C++ programlamada “XOR” işleminin nasıl çalıştığını gösterdik.