الأسبوع 14 · الوحدة ٢ الموضوع العاشر: توظيف البوابات المنطقية في اتخاذ القرارات الحياتية، خاتمة الكتاب، وبوابات NAND وNOR وXOR المذكورة في مقدمة الوحدة · 3 دروس
3
ما بعد الأساسيات: NAND وNOR وXOR
ICT Secondary 3 Term 1, Unit 2, Topic 10: pp. 82–86
الهدفعرّف NAND وNOR وXOR انطلاقًا من AND وOR وNOT، واقرأ جداول حقيقتها.
كلمات جديدة
NAND · NOT AND: المخرج 0 فقط حين تكون كل المداخل 1NOR · NOT OR: المخرج 1 فقط حين تكون كل المداخل 0XOR · OR الحصري: المخرج 1 حين يختلف المدخلانXNOR · NOT XOR: ذكرها الكتاب ولا ندرسها هنا
الشرح
يذكر الكتاب ثلاث بوابات أخرى ويرسم رموزها دون جدول. ونستطيع أن نبنيها من البوابات الثلاث التي نعرفها. NAND هي AND يتبعها NOT: خذ عمود AND واعكسه. وللصفوف 00 و01 و10 و11 تعطي 1 و1 و1 و0، فهي 0 فقط للصف 11. وNOR هي OR يتبعها NOT: تعطي 1 و0 و0 و0، فهي 1 فقط للصف 00. وXOR هي «OR الحصري». تشبه OR إلا أنها 0 حين يكون المدخلان 1 معًا: فهي 1 تمامًا حين يختلف المدخلان، وتعطي 0 و1 و1 و0. وتذكّر «شاي أو قهوة» في الأسبوع الحادي عشر: هذه «أو» اليومية هي XOR. أما في رموزها فNAND وNOR شكلا AND وOR مع الدائرة الصغيرة العاكسة التي في بوابة NOT، وXOR شكل OR مع خط منحنٍ إضافي. وXNOR هي NOT XOR، مخرجها 1 حين يتساوى المدخلان؛ ونكتفي هنا بذكرها. وفي PHP الأعمدة الثلاثة هي (int)!($a && $b) و(int)!($a || $b) و$a ^ $b. وفي VB.NET هي Not (a And b) وNot (a Or b) وa Xor b.
الأعمدة الثلاثة مطبوعة بـ PHP. وأسطر الناتج من تشغيله فعلًا.
Vb
1For Each a As Boolean In {False, True}
2 For Each b As Boolean In {False, True}
3 Console.WriteLine(a & " " & b & " " & (Not (a And b)) & " " & (Not (a Or b)) & " " & (a Xor b))
4 Next
5Next