عملية C++ XOR

Mlyt C Xor



توفر برمجة C++ العديد من عوامل تشغيل البت مثل AND وOR وNOT وXOR وما إلى ذلك. وللعمل على البيانات المحددة على مستوى البت، نستخدم عوامل تشغيل البت في لغة برمجة C++. ينفذ عامل التشغيل 'XOR' (^) في لغة C++ عملية XOR على كل جزء من المعاملين. إذا كان البتان مختلفين، فإن نتيجة XOR هي 1؛ إذا كان كلاهما هو نفسه، فإن النتيجة هي 0. هنا، سوف ندرس عامل التشغيل 'XOR' في برمجة C++.

مثال 1:

يبدأ الكود هنا بتضمين ملف الرأس 'iostream'. كما يوحي الاسم، فإن ملف الرأس هذا مخصص لوظائف الإدخال والإخراج حيث يتم الإعلان عن هذه الوظائف فيه. بعد ذلك، لدينا 'مساحة الاسم القياسية' التي يتم فيها تعريف هذه الوظائف.

أدناه، نسمي الطريقة 'main()'. نقوم بتهيئة المتغير 'x' من النوع 'int' ونخصص '10' لهذا 'x'. ثم لدينا متغير آخر، 'y'، من نوع البيانات 'int' وقم بتعيين '6'. بعد ذلك، نقوم بتهيئة 'r' من نوع البيانات 'int'. هنا، نطبق العملية 'XOR' على قيم المتغيرات 'x' و'y' عن طريق وضع العامل '^' بين هذه المتغيرات. يقوم عامل التشغيل 'XOR' هذا بتحويل القيم الصحيحة إلى القيمة الثنائية، وتطبيق عملية 'XOR' على القيم الثنائية، وحفظ النتيجة كقيمة عددية. يتم الآن حفظ نتيجة عامل التشغيل 'XOR' هذا في 'r'.







بعد ذلك نقوم بعرض قيم هذه المتغيرات بشكل منفصل ثم نعرض النتيجة التي نحصل عليها بعد تطبيق المعامل “XOR” بمساعدة “cout”.



الكود 1:

#تشمل

استخدام اسم للمحطة ;

كثافة العمليات رئيسي ( ) {

كثافة العمليات س = 10 ;

كثافة العمليات و = 6 ;

كثافة العمليات ص = س ^ و ;

cout << 'قيمة x :' << س << endl ;

cout << 'قيمة ذ :' << و << endl ;

cout << 'XOR x ^ y =' << ص << endl ;

يعود 0 ;

}

انتاج:



نظرًا لأن القيمة الثنائية لـ '10' هي '1010' والقيمة الثنائية لـ '6' هي '0110'، فإنها تُرجع '12' بعد تطبيق عامل التشغيل 'XOR' و'1100' هي القيمة الثنائية لـ '12'. يوضح هذا أنه يُرجع '1' حيث يكون كلا المدخلين مختلفين ويعيد '0' عندما يكون كلا المدخلين متماثلين.





مثال 2:

بعد إضافة ملف الرأس 'iostream' ومساحة الاسم 'std'، نقوم باستدعاء الطريقة 'main()'. بعد ذلك، نقوم بتهيئة متغيرين، 'X1' و'X2'، ونخصص القيم الصحيحة '21' و'35' لهذين المتغيرين، على التوالي. ثم نطبع قيم كلا المتغيرين. بعد ذلك، نطبق عامل التشغيل 'XOR' على قيم الأعداد الصحيحة هذه. نحن نطبق عملية 'XOR' هذه على المتغيرات 'X1' و'X2' داخل 'cout'. لذلك، يتم عرض نتيجة 'XOR' أيضًا كنتيجة.



الكود 2:

#تشمل

استخدام اسم للمحطة ;

كثافة العمليات رئيسي ( ) {

كثافة العمليات X1 = واحد وعشرين , X2 = 35 ;

cout << 'قيمة X1 =' << X1 << endl ;

cout << 'قيمة X2 =' << X2 << endl ;

cout << 'نتيجة XOR هي:' << endl ;

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

يعود 0 ;

}

انتاج:

القيمة الصحيحة الأولى هي '21' والثانية هي '35'. بعد تطبيق عملية 'XOR' نحصل على النتيجة '54' التي تظهر هنا.

مثال 3:

نطلق على الطريقة 'main()' بعد إضافة ملف الرأس 'iostream' ومساحة الاسم 'std'. تتم تهيئة المتغير 'n1' من النوع 'int' وتخصيص '29' له. بعد ذلك، نقوم بتعيين '75' لمتغير آخر، 'n2'، وهو من نوع البيانات 'int'. بعد ذلك، نقوم بتهيئة قيمة 'r1' بالإضافة إلى قيمة نوع البيانات 'int'.

بعد ذلك، نطبق العملية 'XOR' على قيم المتغيرين 'n1' و'n2' عن طريق وضع العامل '^' بينهما. يتم تحويل القيم الصحيحة إلى ثنائية باستخدام عامل التشغيل 'XOR' الذي يقوم بعد ذلك بتطبيق عملية 'XOR' على البيانات الثنائية وحفظ النتيجة كقيمة عددية. يحتوي المتغير 'r1' الآن على نتيجة عملية 'XOR' هذه. ثم يتم عرض قيم كل من هذه المتغيرات بشكل منفصل. ونعرض أيضًا نتيجة استخدام عامل التشغيل 'XOR' بمساعدة عامل التشغيل 'cout'.

الكود 3:

#تشمل

استخدام اسم للمحطة ;

كثافة العمليات رئيسي ( )

{

كثافة العمليات ن1 = 29 ;

كثافة العمليات n2 = 75 ;

كثافة العمليات ص1 = ن1 ^ n2 ;

cout << 'القيمة الأولى :' << ن1 << endl ;

cout << 'القيمة الثانية :' << n2 << endl ;

cout << 'نتيجة مشغل XOR هي:' << ص1 << endl ;

يعود 0 ;

}

انتاج:

الأعداد الصحيحة المدخلة هي '29' و'75' والتي يتم تحويلها إلى ثنائي. ثم يتم تطبيق عملية 'XOR' عليهم. بعد تطبيق 'XOR' تكون النتيجة '86'.

مثال 4:

في هذا الكود، نحصل على المدخلات من المستخدم ثم نطبق عملية 'XOR' على قيم الإدخال الخاصة بالمستخدم. تم الإعلان عن المتغيرات الثلاثة هنا بالأسماء 'Xvalue1' و'Xvalue2' و'Xvalue3'. ثم نضع 'cout' ونعرض رسالة 'أدخل قيمتين هنا'.

بعد عرض هذه الرسالة، يقوم المستخدم بإدخال القيم التي حصلنا عليها بمساعدة السين. لذا، نضع 'سين' أسفل هذا. يتم الآن تخزين كلا القيمتين في هذه المتغيرات ويتم عرضهما هنا أيضًا. الآن، علينا تطبيق العملية 'XOR'، لذلك نقوم بإدخال عامل التشغيل '^' بين متغيرات 'Xvalue1' و'Xvalue2'.

الآن، يتم تطبيق عملية 'XOR' هذه على قيم هذه المتغيرات. يتم بعد ذلك حفظ نتيجة عامل التشغيل 'XOR' في المتغير 'Xvalue3'. ونعرضها أيضًا باستخدام طريقة 'cout'.

الكود 4:

#تشمل

استخدام اسم للمحطة ;

كثافة العمليات رئيسي ( )

{

كثافة العمليات Xvalue1 , Xvalue2 , Xvalue3 ;

cout << 'أدخل قيمتين هنا:' << endl ;

cout << 'Xvalue1:' ;

يتناول الطعام >> Xvalue1 ;

cout << 'القيمة X2:' ;

يتناول الطعام >> Xvalue2 ;

Xvalue3 = Xvalue1 ^ Xvalue2 ;

cout << ' الآن، بعد تطبيق XOR على كلتا القيمتين: ' << endl ;

cout << 'Xvalue1 ^ Xvalue2 =' << Xvalue3 << endl ;

}

انتاج:

عندما نقوم بتنفيذ هذا الكود، فإنه يطبع رسالة لإدخال قيمتين. لذلك، نقوم بإدخال '14' كقيمة للمتغير 'Xvalue1' و'45' كقيمة للمتغير 'Xvalue2'. ثم نضغط على 'أدخل'. يتم بعد ذلك تطبيق عملية 'XOR' على هذه القيم والتي تحول كلا القيمتين إلى ثنائي ثم تعرض النتيجة هنا.

مثال 5:

نحن نطبق عملية 'XOR' هذه على بيانات الشخصية. نقوم بتهيئة متغيرين 'char' بالاسمين 'ch_a' و'ch_b'. نخصص 'أ' و'8' لهذه المتغيرات، على التوالي. بعد ذلك، نضع عامل التشغيل '^' بين 'ch_a' و'ch_b' ونخصصه للمتغير 'ch_result' وهو أيضًا نوع البيانات 'char'. يتم تحويل هذه الأحرف إلى ثنائي، ويتم حفظ النتيجة في المتغير 'ch_result'. نقوم بعد ذلك بطباعة كلا المتغيرين ونتيجة عملية 'XOR'.

الكود 5:

#تشمل

استخدام اسم للمحطة ;

كثافة العمليات رئيسي ( ) {

شار تشا = 'أ' ;

شار ch_b = '8' ;

شار ch_result = تشا ^ ch_b ;

cout << 'الحرف الأول هو :' << تشا << endl ;

cout << 'الشخصية الثانية هي :' << ch_b << endl ;

cout << 'النتيجه هي : ' << ch_result << endl ;

}

انتاج:

حرفا الإدخال هما 'a' و'8' وتظهر نتيجة 'XOR' على شكل 'Y' والتي نحصل عليها بعد تطبيق عملية 'XOR' التي تحول 'a' و'8' إلى ثنائي ومن ثم إجراء ' عملية 'XOR'.

خاتمة

تم استكشاف عملية 'XOR' بشكل شامل هنا وأوضحنا أنها عملية 'bitwise' لأنها تستخدم القيم الثنائية. ناقشنا أن جميع القيم التي أدخلناها لتطبيق عملية “XOR” يتم تحويلها إلى قيم ثنائية، ومن ثم يتم تنفيذ عملية “XOR”. لقد عرضنا عدة أمثلة وأظهرنا كيفية عمل عملية 'XOR' في برمجة C++.