البوابات المنطقية - الجبر البوليني
مقدمة: يعتبر الجبر البوولي أحد المرتكزات الأساسية المستخدمة في تصميم وتركيب الحاسوب.
ويعود الفضل في وضع الأسس النظرية للجبر البوولي، والذي يسمى أيضًا بالجبر المنطقي، إلى العالم الرياضي الإنجليزي المشهور جورج بوول. وقد نشر هذا العالم نظرياته في منتصف القرن التاسع عشر لتصبح فيما بعد الأساس في تصميم الدوائر المنطقية التي يتكون منها الحاسوب.
يسمى المتغير بوولياً (أو منطقياً) إذا اتخذ دائماً إحدى الحالتين التاليتين:
1.الحالة الصحيحة (True)
2.الحالة الخاطئة(False)
ويمكن الرمز للمتغير البوولي بأحد الأحرفZ... ،B،A . عند دراستنا لأنظمة العد، لاحظنا أن الرقم الثنائي هو إما0 أو 1. بهذا فإنه يمكن استخدام أرقام نظام العد الثنائي لتمثيل حالات المتغير البوولي، حيث يمثل الرقم 1الحالة الصحيحة والرقم 0الحالة الخاطئة.
4-2 العمليات البوولية (المنطقية) Logic Operations :
تقسم العمليات البوولية إلى:
• العمليات البوولية الأساسية.
• العمليات البوولية المشتقة.
4-2-1 العمليات البوولية الأساسية:
1. عملية "و" (AND Operation).
2. عملية "أو" (OR Operation).
3. عملية "لا" (NOT Operation).
وجدول الحقيقة العلمية "و" ذات المتغيرين مبين في الجدول 4-1
أي أن عملية "و" AND تكون في الحالة الصحيحة فقط إذا كانت جميع المتغيرات في الحالة الصحيحة.
أما جدول الحقيقة لعملية "أو" ذات المتغيرين فإنه مبين في الجدول 4-2
أي أن عملية "أو" OR تكون في الحالة الصحيحة إذا كان أي من متغيراتها في الحالة الصحيحة وتكون في الحالة الخاطئة إذا كانت كل متغيراتها في الحالة الخاطئة.
وجدول الحقيقة لعملية "لا" NOT مبين في الجدول 4-3
1. عملية (NAND Operation ) وقد أخذت التسمية من ( NOT AND).
2. عملية (NOR Operation) وقد أخذت التسمية من (NOT OR).
3. عملية (XOR Operation) وقد أخذت التسمية من (Exclusive OR)
4. عملية (EQV Operation) وقد أخذت التسمية من (Exclusive NOR or Equivalence).
جدول الحقيقة 4-4 يوضح هذه العمليات.
•قانون رقم (1):
•قانون رقم (2):
ويسمى هذا بقانون عمليات "الصفر".
وفيما يلي إثبات لهذا القانون بشقيه :
بما أن X متغير ثنائي فإن له حالتين إما الصفر أو الواحد
ففي حالة كون X= 0 فأن:
ويبين الجدول 4-5 أثبات قانون (2):
•قانون رقم (3):
•
•قانون رقم (4):
• • ويسمى هذا بقانون عمليات التكملة (Complementation )
جدول الحقيقة 4-6 يوضح إثبات هذا القانون.
•قانون رقم (5):
ويسمى هذا بقانون النفي المزدوج(Double Negation)
•قانون رقم (6): •
ويسمى هذا بقانون التماثل(Idempotent law).
•قانون رقم (7):
ويسمى هذا بقانون الاختزال (Absorption law).
جدول الحقيقة 4-7 يوضح إثبات هذا القانون بشقيه.
•قانون رقم (8):
ويسمى هذا بقانون التبديل (Commutative law).
•قانون رقم (9): •
ويسمى هذا بقانون الاقتران (Associative law).
•قانون الرقم (10):
•
•قانون رقم (11):
• • •قانون رقم (12): • •
جدول الحقيقة 4-8 يوضح إثبات هذا القانون.
•قانونا دي مورجان(13)(De Morgan Laws)
أما دي مورجان فهو عالم رياضيات ومنطق ساهم بالإضافة إلى بوول في وضع القوانين المنطقية وخاصة القانونين المذكورين.
جدول الحقيقة 4-9 يثبت قانون دي مورجان الأول لثلاث متغيرات
أما جدول الحقيقة 4-10 فيثبت قانون دي مورجان الثاني لثلاث متغيرات
هذه القوانين تستخدم لتبسيط التعابير البوولية للحصول على أبسط صيغة ممكنة حتى يتم بناؤها كدوائر الكترونية بأقل تكلفة.
مثال بسط الدالة البوولية التالية:
الحل:
مثال اختصر الدالة البولية التالية لأبسط صيغة ممكنة:
الحل:
4-4 البوابات المنطقية Logic Gates:
استخدمت القوانين المنطقية السابقة لبناء الدوائر الإلكترونية الرقمية، والتي تتكون أساسًا من مجموعة من البوابات المنطقية، هذه البوابات هي التطبيق الهندسي للعمليات المنطقية الآنفة الذكر. وهناك ثلاث بوابات رئيسية مبينة على العمليات الثلاث الأساسية ونسميها بنفس الاسم:بوابة "و"، بوابة "أو", بوابة"لا"، وهناك عدة أنظمة لتمثيل هذه البوابات، ومن أشهرها النظام الأمريكي ANSI واسع الانتشار عالميًا وكذلك النظام الأوروبي(IEC) ويبين الشكل 4-1 رموز البوابات المنطقية الأساسية المستعملة في النظامين المذكورين.
4-5 البوابات المنطقية المشتقة :
وقد اشتقت هذه البوابات من البوابات المنطقية الرئيسية وهي:
• بوابة NAND Gate : هي بوابة AND "و" وتليها بوابة NOT "لا" كما هي موضحة في الشكل 4-2:
ومن الواضح أن بوابة NAND تعمل عكس عمل بوابة AND.
• بوابة NOR:وهي عبارة عن بوابة OR "أو" تليها بوابة NOT "لا" كما هي موضحة في الشكل 4-3 :
ويعود الفضل في وضع الأسس النظرية للجبر البوولي، والذي يسمى أيضًا بالجبر المنطقي، إلى العالم الرياضي الإنجليزي المشهور جورج بوول. وقد نشر هذا العالم نظرياته في منتصف القرن التاسع عشر لتصبح فيما بعد الأساس في تصميم الدوائر المنطقية التي يتكون منها الحاسوب.
يسمى المتغير بوولياً (أو منطقياً) إذا اتخذ دائماً إحدى الحالتين التاليتين:
1.الحالة الصحيحة (True)
2.الحالة الخاطئة(False)
ويمكن الرمز للمتغير البوولي بأحد الأحرفZ... ،B،A . عند دراستنا لأنظمة العد، لاحظنا أن الرقم الثنائي هو إما0 أو 1. بهذا فإنه يمكن استخدام أرقام نظام العد الثنائي لتمثيل حالات المتغير البوولي، حيث يمثل الرقم 1الحالة الصحيحة والرقم 0الحالة الخاطئة.
4-2 العمليات البوولية (المنطقية) Logic Operations :
تقسم العمليات البوولية إلى:
• العمليات البوولية الأساسية.
• العمليات البوولية المشتقة.
4-2-1 العمليات البوولية الأساسية:
1. عملية "و" (AND Operation).
2. عملية "أو" (OR Operation).
3. عملية "لا" (NOT Operation).
تسمى العمليتان الأولى والثانية عمليتان ثنائيتان (Binary Operations)لأن كلاً منها تحتاج إلى متغيرين على الأقل، بينما تسمى عملية NOT "لا" عملية أحادية (Unary) لأن لها متغيرًا واحداً أو مدخلاً واحداً فقط، ويمكن استخدام الإشارات الجبرية التالية لتمثيل العمليات الأساسية. مع الافتراض أن المتغيرات هي Y،X.
هذا ويمكن وصف العمليتين "و"، "أو" بأكثر من متغيرين ولكننا في معظم الحالات سنتكلم عنهما مستخدمين فقط متغيرين للتسهيل ليس إلا. وبالتعبير عن هذه العمليات بالنظام الثنائي "باعتبار أن الرقم "1" يمثل الحالة الصحيحة والرقم "0" يمثل الحالة الخاطئة فيمكن تعريف هذه العمليات كما يلي:
كما هو واضح من التعريف فإن :
لوصف العمليات المنطقية تستخدم عادة جداول تسمى جداول الحقيقة Truth tables حيث تحتوي على كل الحالات التي تقع فيها المتغيرات وعلى ناتج العملية لكل حالة. من السهل ملاحظة أنه إذا كان عدد المتغيرات يساويn فإن عدد الحالات الممكنة هي .هذا ويمكن وصف العمليتين "و"، "أو" بأكثر من متغيرين ولكننا في معظم الحالات سنتكلم عنهما مستخدمين فقط متغيرين للتسهيل ليس إلا. وبالتعبير عن هذه العمليات بالنظام الثنائي "باعتبار أن الرقم "1" يمثل الحالة الصحيحة والرقم "0" يمثل الحالة الخاطئة فيمكن تعريف هذه العمليات كما يلي:
كما هو واضح من التعريف فإن :
وجدول الحقيقة العلمية "و" ذات المتغيرين مبين في الجدول 4-1
أي أن عملية "و" AND تكون في الحالة الصحيحة فقط إذا كانت جميع المتغيرات في الحالة الصحيحة.
أما جدول الحقيقة لعملية "أو" ذات المتغيرين فإنه مبين في الجدول 4-2
أي أن عملية "أو" OR تكون في الحالة الصحيحة إذا كان أي من متغيراتها في الحالة الصحيحة وتكون في الحالة الخاطئة إذا كانت كل متغيراتها في الحالة الخاطئة.
وجدول الحقيقة لعملية "لا" NOT مبين في الجدول 4-3
4-2-2 العمليات البوولية المشتقة:
وقد سميت هكذا لأنها اشتقت من العمليات البوولية الأساسية، والعمليات المشتقة هي:1. عملية (NAND Operation ) وقد أخذت التسمية من ( NOT AND).
2. عملية (NOR Operation) وقد أخذت التسمية من (NOT OR).
3. عملية (XOR Operation) وقد أخذت التسمية من (Exclusive OR)
4. عملية (EQV Operation) وقد أخذت التسمية من (Exclusive NOR or Equivalence).
جدول الحقيقة 4-4 يوضح هذه العمليات.
4-3 قوانين الجبر البوولي:
اشتقت من العمليات الأساسية الثلاث مجموعة قوانين هامة جدًا في عمل الدوائر المنطقية،وفيما يلي ملخص لهذه القوانين:•قانون رقم (1):
•
إذا كانت فإن X= 1 •
إذا كانت X 1 فإن X= 0 ويسمى هذا بقانون الانفراد(Uniqueness) للمتغير البوولي.•قانون رقم (2):
•
X+0 =X•
X.0 =0ويسمى هذا بقانون عمليات "الصفر".
وفيما يلي إثبات لهذا القانون بشقيه :
بما أن X متغير ثنائي فإن له حالتين إما الصفر أو الواحد
ففي حالة كون X= 0 فأن:
0 = 0 OR 0
0 = 0 AND 0
وفي حالة X=1 فأن:0 = 0 AND 0
1= 0 OR 1
1 = 1 AND 1 ويبين الجدول 4-5 أثبات قانون (2):
•قانون رقم (3):
•
X + 1 = 1
• X . 1 = X
ويسمى هذا بقانون عمليات "الواحد". •قانون رقم (4):
• • ويسمى هذا بقانون عمليات التكملة (Complementation )
جدول الحقيقة 4-6 يوضح إثبات هذا القانون.
•قانون رقم (5):
ويسمى هذا بقانون النفي المزدوج(Double Negation)
•قانون رقم (6): •
X + X = X
• X . X = X
ويسمى هذا بقانون التماثل(Idempotent law).
•قانون رقم (7):
•
X + XY = X
•
X (X + Y) = X ويسمى هذا بقانون الاختزال (Absorption law).
جدول الحقيقة 4-7 يوضح إثبات هذا القانون بشقيه.
•قانون رقم (8):
•
X + Y = Y + X •
X . Y = Y . X ويسمى هذا بقانون التبديل (Commutative law).
•قانون رقم (9): •
X + Y + Z = X + (Y + Z) = (X +Y) + Z
• X . Y . Z = X . (Y . Z) = (X . Y) .Z
ويسمى هذا بقانون الاقتران (Associative law).
•قانون الرقم (10):
•
X (Y + Z) = XY + XZ
• (X + Y) (X + Z) = X + YZ
ويسمى هذا بقانون التوزيع (Distributive law).•قانون رقم (11):
• • •قانون رقم (12): • •
جدول الحقيقة 4-8 يوضح إثبات هذا القانون.
•قانونا دي مورجان(13)(De Morgan Laws)
•
أي أن مكمل المجموع (لمتغيرات منطقية ) يساوي حاصل ضرب مكملات المتغيرات.•
أي أن مكمل حاصل الضرب يساوي مجموع مكملات المتغيرات. (المقصود المجموع المنطقي وحاصل الضرب المنطقي).أما دي مورجان فهو عالم رياضيات ومنطق ساهم بالإضافة إلى بوول في وضع القوانين المنطقية وخاصة القانونين المذكورين.
جدول الحقيقة 4-9 يثبت قانون دي مورجان الأول لثلاث متغيرات
أما جدول الحقيقة 4-10 فيثبت قانون دي مورجان الثاني لثلاث متغيرات
هذه القوانين تستخدم لتبسيط التعابير البوولية للحصول على أبسط صيغة ممكنة حتى يتم بناؤها كدوائر الكترونية بأقل تكلفة.
مثال بسط الدالة البوولية التالية:
الحل:
مثال اختصر الدالة البولية التالية لأبسط صيغة ممكنة:
الحل:
4-4 البوابات المنطقية Logic Gates:
استخدمت القوانين المنطقية السابقة لبناء الدوائر الإلكترونية الرقمية، والتي تتكون أساسًا من مجموعة من البوابات المنطقية، هذه البوابات هي التطبيق الهندسي للعمليات المنطقية الآنفة الذكر. وهناك ثلاث بوابات رئيسية مبينة على العمليات الثلاث الأساسية ونسميها بنفس الاسم:بوابة "و"، بوابة "أو", بوابة"لا"، وهناك عدة أنظمة لتمثيل هذه البوابات، ومن أشهرها النظام الأمريكي ANSI واسع الانتشار عالميًا وكذلك النظام الأوروبي(IEC) ويبين الشكل 4-1 رموز البوابات المنطقية الأساسية المستعملة في النظامين المذكورين.
4-5 البوابات المنطقية المشتقة :
وقد اشتقت هذه البوابات من البوابات المنطقية الرئيسية وهي:
• بوابة NAND Gate : هي بوابة AND "و" وتليها بوابة NOT "لا" كما هي موضحة في الشكل 4-2:
ومن الواضح أن بوابة NAND تعمل عكس عمل بوابة AND.
• بوابة NOR:وهي عبارة عن بوابة OR "أو" تليها بوابة NOT "لا" كما هي موضحة في الشكل 4-3 :
وعملها عكس عمل البوابة OR .
•بوابة XOR:وهي بوابة تعطي ناتجاً في الحالة الصحيحة إذا كان مدخلاها مختلفين، وتعطي ناتجا في الحالة الخاطئة إذا كان المدخلان متشابهين، والرمز الرياضي لها هو دائرة صغيرة بداخلها علامة الزائد، وفي ما يلي الرمز المنطقي لها.
•بوابة XOR:وهي بوابة تعطي ناتجاً في الحالة الصحيحة إذا كان مدخلاها مختلفين، وتعطي ناتجا في الحالة الخاطئة إذا كان المدخلان متشابهين، والرمز الرياضي لها هو دائرة صغيرة بداخلها علامة الزائد، وفي ما يلي الرمز المنطقي لها.
• بوابة Exclusive-NOR or Equivalence : وهي تعمل عكس عمل بوابة XOR، وهي عبارة عن بوابة XOR تليها بوابة NOT كما هي موضحة في الشكل 4-5 :
لاحظ أن هذه البوابة تعطي الجواب (1) إذا كان مدخلاها متشابهين وتعطي الجواب (0) إذا كان المدخلان مختلفين.
تعليق