hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
إنتل MCS-51
وهي عبارة عن طرف موجودة ضمن المتحكم خاصة بمعالجة العمليات الاتصال مع العالم الخارجي (مثلاً حاسب ,أو متحكم ,آخر....)
وظيفتها الرئيسية هي تحسس حدوث تغير للحالة المنطقية عليها لاستدعاء روتين خدمة مقاطعة خاص بها ومن الممكن أن تمكن هذه المقاطعة أو تلغي تمكنها برمجياً.
وهو عبارة عن مؤقت خاص بالمتحكم يقوم بمراقبة زمن تنفيذ التعليمات فإن تجاوزت الزمن المسموح به يقوم بتصغير المتحكم ويجبره على العودة لبداية البرنامج (يعطى إشارة تصغير لمتحكم)
ملاحظة: هناك العديد من الشركات المصنعة للمتحكمات المصغرة نذكر منها على سبيل المثال: Atmel، Microchip، Mitsubishi، Siemens، Motorola، Intel.
ونحن الآن سوف نقوم بدراسة المتحكم Atmel 8051.
إنتل MCS-51 النواة The Core
سوف نقوم باستعراض محتويات قلب المعالج وهي النواة وما تحتويه من أقسام هامة في عملية معالجة المعطيات نذكر منها وحدة المعالجة المركزية ووحدة الحساب والمنطق –الذاكرة
تعتبر وحدة المعالجة المركزية مسؤولة عن وضع التعليمات المخزنة في ذاكرة البرنامج قيد التنفيذ وذلك للتحكم بعمل مجمل الشريحة بما يتوافق والعملية التقنية. وإن العديد من هذه التعليمات تنفذ على محتويات ذاكرة المعطيات ونحتاج غالباً لتنفيذ هذه التعليمات إلى وحدة الحساب والمنطق ALU والتي تقوم بالإضافة إلى إنجاز العمليات الحسابية والمقارنة المنطقية بتحديث خانات الحالة الموجودة في مسجل الحالة PSW حيث أن تنفيذ العمليات الحسابية والمنطقية سيغير خانات الحالة تبعاً لنتيجة هذه التعليمات.
إنتل MCS-51 النواة The Core
تعتبر وحدة المعالجة المركزية بمثابة الدماغ البشري في شريحة المتحكم وهي مسؤولة عن:
1-جلب التعليمة المراد تنفيذها fetching
2-فك تشفير هذه التعليمة Decoding
3-تنفيذ هذه التعليمة Executing
و تستعين وحدة المعالجة المركزية CPU بوحدة الحساب والمنطق ALU من أجل إتمام تنفيذ التعليمة – تنفيذ العمليات الحسابية والمنطقية – وتتحكم وحدة المعالجة المركزية بما يلي: 1 -ممر عنونة ذاكرة البرنامج 2- ممر عنونة ذاكرة المعطيات
يمتلك المتحكم 8051 وحدة حساب ومنطق ثمانية بت بالإضافة إلى المراكم A
المراكم: هو مسجل ثماني الخانة يستخدم في العمليات التي تنفذها وحدة الحساب والمنطق.
وظائف وحدة الحساب والمنطقALU والأعلام:
تتمكن الوحدة ALU من تنفيذ عمليات الجمع والطرح وعمليات الإزاحة والمقارنة المنطقية XOR,AND,OR.
غالباً ما تكون العمليات الرياضية والمنطقية ذات طرفين وفي بعض الأحيان ذات طرف وحيد.
تقوم الوحدة ALU بالتأثير على الأعلام OV,AC,C الموجودة في مسجل الحالة. (Program Status Word) PSW
إنتل MCS-51 النواة The Core
لدا المتحكم قسمان أساسيان في الذاكرة هما ذاكرة البرنامج (Program memory) وذاكرة المعطيات (data memory) ولكل قسم ممر (bus) خاص به لذلك من الممكن الوصول إليها خلال نفس دورة التعليمة وهذا ما تعرفنا عليه في بنية هارفارد (Harvard architecture).
إنتل MCS-51 النواة The Core
تنظيم ذاكرة البرنامج:
تتألف ذاكرة البرنامج في هذا المتحكم من 4 كيلوبايت (Kbyte) داخل المتحكم ومن الممكن توسعتها حتى 64 كيلوبايت Kbyte بإضافة ذاكرة خارج المتحكم والواقع هناك أنواع لذاكرة البرنامج فقد تكون نوع ذاكرة القراءة فقط (ROM) وفي هذه الحالة لا نستطيع أن ندخل البرنامج إلى الشريحة بأنفسنا وإنما علينا أن نعطي برنامجنا للمصنع ليصنعوا لنا المتحكم وفي داخله البرنامج الذي قمنا بكتابته موجود على الذاكرة الداخلية ROM فهي كما نعلم تبرمج لمرة واحدة فقط لأنها قابلة للقراءة فقط.
وعملياً من الممكن الحصول على متحكم ذو ذاكرة برنامج من النوع EPROM أي قابلة للقراءة فقط وقابلة للبرمجة كهربائياً Electrical Programmable ROM ولمرة واحدة.
ومن الممكن الحصول على متحكم ذو ذاكرة برنامج من النوع EEPROM وهي ذاكرة القراءة فقط ROM قابل للبرمجة والمحي كهربائياً Programmable ROM Electrical Erasable
إنتل MCS-51 النواة The Core
وهي مفيدة جداً في عمليات اختبار عمل البرنامج فنحن عملياً نقوم بالعمل على متحكمات ذات ذاكرة EEPROM كي نتمكن من اختبار برنامجنا إن كان يحقق الغرض المطلوب منه أم لا، فهنا من الممكن أن نغير البرنامج ونعيد إرساله إلى المتحكم عبر المبرمجة المخصصة له وهكذا حتى يحقق الهدف المرجو من استخدام المتحكم.
هي عبارة عن دارة إلكترونية تُمَرِّر البرنامج الذي قمنا بكتابته لها بعد تحويله إلى الصيغة الست عشرية وعادةً يدعى ملف الهكسا Hexa File.
هو عبارة عن مسجل خاص مستقل عن ذاكرة المعطيات الخاصة بالمتحكم وهو ذو عرض 16bit ويعنون حجرات ذاكرة البرنامج وبما أن عرضه 16bit فهو قادر على عنونة 64 Kbyte من ذاكرة البرنامج.
وعند استخدام تعليمتي push & pop فأن هذا المسجل يخزن في المكدس...................
ما هي مراحل تخزين المكدس؟................
و كذلك لا بد من تخزين قيمة عداد البرنامج PC عند حدوث مقاطعة كي يعرف المعالج العنوان الذي عليه العودة إليه عند انتهاء تنفيذ روتين خدمة المقاطعة.
وهو عبارة عن منطقة من ذاكرة المعطيات الداخلية في المتحكم وبالتالي فهو بعرض 8bit ويعمل حسب الآلية التي تدعى (Last In Fist out : LIFO) حيث أنه من الممكن مسك قيمة عداد البرنامج PC عند حدوث لعملية استدعاء لروتين فرعي أو روتين خدمة مقاطعة كما يمكن تخزين واستعادة المعطيات خاصةً مسجل الحالة PSW بواسطة تعليمات POP، PUSH.
وعند الحديث عن المكدس لا بد من التذكير بمؤشر المكدس Stack Pointer وهو عبارة عن مؤشر يشير إلى قمة المكدس والقيمة الافتراضية له هي 7 بعد حدوث عملية تصفير للشريحة power on reset، أي إجراء عملية push الأولى فإن القيمة تخزن بدءاً من العنوان 8 ويزداد مؤشر المكدس بمقدار1.
وكذلك أعظم قيمة يستطيع الوصول إليها هي 127 لأنه من المعلوم أن ذاكرة المعطيات بطول 128 بايت طبعاً منطقة الذاكرة التي تدعى SFR لا يمكنه الوصول إليها أبداً فهي مخصصة لوظائف خاصة ومعرفة مسبقاً من الشركة المصنعة للشريحة.
وكذلك يجب الانتباه عند التعامل مع حيز ذاكرة المعطيات GPRs والمكدس معاً كي لا نضيع المعطيات الموجودة في تلك الحجرات الذاكرية وذلك باختيار البنك المناسب (أي يجب علينا الانتباه لاختيار بنوك الذاكرة عند استخدام تعليمة push في هذه المنطقة من الذاكرة).
هو عبارة عن مسجل ممكن الوصول إليه كبايتين معاً (16 bit) وهو مؤلف من قسمين DPH &DPL
ويستخدم كي يشير إلى المعطيات مع بعض التعليمات الخاصة من أجل الوصول الذاكرة الخارجية التي يمكن ربطها مع المتحكم حيث يحمل عنوان الحجرة المراد الوصول إليها في المسجل DPTR
كما يمكن أن يخزن قيمة بطول Word........ في برنامجنا إذا لم يكن نستخدم ذاكرة خارجية مربوطة مع المتحكم.
وهو عبارة عن مسجل وظائف خاصة يستخدم كطرف ثاني في عمليات الضرب والقسمة حيث يكون الطرف الأول هو المراكم.
إنتل MCS-51 المؤقتات Timers
لدينا مؤقتين في المتحكم وهما Timer0 وTimer1 :
1.المؤقتات تعد بشكل تصاعدي.
2.لكل مؤقت مسجلين طول كل منها بايت واحد.
إنتل MCS-51 شرح أقطاب المتحكم (PIN Description)
1.Vcc : جهد التغذية.
2.GND : الأرضي.
3.النافذة P0 :
تمتلك النافذة P0 ثمانية أقطاب ثنائية الاتجاه تستخدم كأقطاب دخل \ خرج ذات مصرف مفتوح عند استخدامها كنافذة خرج فإن كل قطب من أقطاب هذه النافذة يستطيع قيادة ثمانية مداخل TTL. يُكْتَب على أقطاب النافذة P0 خلال الدورة الأولى، حيث تستطيع استخدام أقطاب هذه النافذة كمداخل ذات ممانعة عالية.
و يمكن ترتيب عمل هذه النافذة P0 كي تقوم بوظيفة مضاعفة كخطوط عنوان \ معطيات سفلية خلال الولوج لذاكرة البرنامج الخارجية وذاكرة المعطيات الخارجية، تمتلك أقطاب النافذة P0 مقاومة رفع داخلية (PULL-UP) فقط في هذا النمط.
الشكل التالي يوضح البنية الإلكترونية الداخلية لأقطاب النافذة P0.
إنتل MCS-51 شرح أقطاب المتحكم (PIN Description)
4.النافذة P1 :
تمتلك النافذة P1 ثمانية أقطاب ثنائية الاتجاه تستخدم كأقطاب دخل \ خرج مزودة بـ (Pull-ups)
داخلي. وعند استخدام هذه النافذة كنافذة خرج فإنها تستطيع قيادة أربعة مداخل TTL.
تتم الكتابة على أقطاب النافذة P1 خلال الدورة الأولى، حيث تسحب أقطابها إلى المنطق العالي بسبب وجود مقاومة الرفع الداخلية (PULL-UP). ويمكن استخدامها كنافذة دخل وعند استخدام النافذة P1 كنافذة دخل فإن أقطاب النافذة P1 المسحوبة خارجيا«إلى المنطق المنخفض سوف تولد تيارا» (IIL) بسبب وجود مقاومة الرفع الداخلية (PULL-UP).
الشكل التالي يوضح البنية الإلكترونية الداخلية لأقطاب النافذة P1.
إنتل MCS-51 شرح أقطاب المتحكم (PIN Description)
5.النافذة P2 :
تمتلك النافذة P2 ثمانية أقطاب ثنائية الاتجاه تستخدم كأقطاب دخل \ خرج مزودة بـ (Pull-ups)
داخلي. وعند استخدام هذه النافذة كنافذة خرج فإنها تستطيع قيادة أربعة مداخل TTL.
تتم الكتابة على أقطاب النافذة P2 خلال الدورة الأولى، حيث تسحب أقطابها إلى المنطق العالي بسبب وجود مقاومة الرفع الداخلية (PULL-UP).
و يمكن استخدامها كنافذة دخل وعند استخدام النافذة P2 كنافذة دخل فإن أقطابها التي تكون في البداية مسحوبة إلى المنطق المنخفض خارجيا«سوف تولد تيارا» (IIL) بسبب وجود مقاومة الرفع الداخلية (PULL-UP).
ترسل النافذة P2 بايت العنوان العالي خلال الإحضار من ذاكرة البرنامج الخارجية وخلال الولوج إلى ذاكرة المعطيات الخارجية التي تستخدم عنوان بطول 16 bit من البرنامج.
الشكل التالي يوضح البنية الإلكترونية الداخلية لأقطاب النافذة P2.
إنتل MCS-51 شرح أقطاب المتحكم (PIN Description)
6.النافذة P3 :
تمتلك النافذة P3 ثمانية أقطاب ثنائية الاتجاه تستخدم كأقطاب دخل \ خرج مزودة بـ (Pull-ups)
داخلي. وعند استخدام أقطاب هذه النافذة كأقطاب خرج فإنها تستطيع قيادة أربعة مداخل TTL
تتم عملية الكتابة على النافذة P3 خلال الدورة الأولى، حيث تسحب أقطاب هذه النافذة إلى المنطق العالي بسبب وجود الـ (PULL-UP) الداخلي.
و يمكن استخدامها كنافذة دخل وعند استخدام النافذة P3 كنافذة دخل فإن أقطاب النافذة P1 المسحوبة خارجيا«إلى المنطق المنخفض سوف تولد تيارا» (IIL) بسبب وجود
الـ (PULL-UP) الداخلي.
الشكل التالي يوضح البنية الإلكترونية الداخلية لأقطاب النافذة P3.
إنتل MCS-51 شرح أقطاب المتحكم (PIN Description)
في هذا المتحكم لا داعي لتعريف وظيفة كل قطب من أقطاب النافذة قيد الاستخدام هل هي كدخل أم كخرج وإنما تتم عملية الكتابة مباشرةً إلى القطب من هذه النافذة وكذلك من الممكن أن تتم عملية القراءة من هذا القطب بعد تنفيذ تعليمة الكتابة إليه ولكن يجب الانتباه إلى أن زمن مسح البرنامج سريع جدا«(أقل بكثير من 1ms لبرنامج مؤلف من ألف تعليمة) ولا بد من إعطاء القطب زمن كي تستقر حالة الخرج عليه قبل استخدامه كدخل مرة أخرى (هذا في حال استخدامه كدخل وخرج معا»)، وإلا فإننا نحصل على خطأ في قراءة القطب لأننا عندها سوف نقرأ القيمة التي قمنا بكتابتها إليه.
7.قطب التصفير RST :
يؤدي المنطق العالي على هذا القطب لمدة دورتي آلة مع استمرار عمل الهزاز إلى تصفير (RESET) المتحكم أي العودة إلى بداية البرنامج وبدء التنفيذ من أول تعليمة فيه.
8.ALE / PROG :
يستخدم هذا القطب كنبضة خرج لتمكين ماسك العنوان من أجل مسك بايت العنوان المنخفض خلال الولوج لذاكرة البرنامج الخارجية، كما يستخدم هذا القطب أيضاً دخل لنبضة البرنامج (PROG) خلال برمجة ذاكرة البرنامج الوميضية.
إن العمل الطبيعي للقطب ALE هو إرسال معدل ثابت من النبضات مقداره 1/6 من تردد الهزاز المستخدم، ويمكن استخدامه من أجل عمليات التزامن الخارجية لأهداف التواقت.
و ما يجب ذكره أننا نحصل على نبضة على نبضة ALE واحدة خلال كل ولوج لذاكرة المعطيات الخارجية.
أما إذا أردنا إيقاف عمل القطب ALE فإننا نقوم بتفعيل الخانة bit0 من حيز مسجلات الوظائف الخاصة عند الموقع 8Eh، فعند تفعيل هذه الخانة فإن القطب ALE يمكّن (يفعّل) فقط خلال تنفيذ التعليمة MOVX أو التعليمة MOVC.
وفي كل الحالات الأخرى يسحب القطب ALE إلى المنطق العالي، ولا تؤثر الخانة bit0 على عمل المتحكم إذا كان في نمط التنفيذ الخارجي.
9.PSEN :
و هو عبارة عن قطب تمكين تخزين البرنامج يعطي نبضة قراءة لذاكرة البرنامج الخارجية.
عندما ينفذ المتحكم AT80C51 من ذاكرة البرنامج الخارجية، فإن القطب PSEN يفعّل مرتين لكل دورة آلة.
10.EA / VPP :
هو قطب تمكين الولوج الخارجي، ويجب ربط القطب EA إلى الأرضي GND لتمكين المتحكم من إحضار شيفرات التعليمات من ذاكرة البرنامج الخارجية التي تبدأ من العنوان
0000h إلى العنوان FFFFh.
و ما يجب ملاحظته أنه يوجد خانة قفل مبرمجة سوف تمسك القطب EA داخليا" إلى الصفر.
و عندما نربط القطب EA إلى جهد التغذية VCC فإن المتحكم ينفذ البرنامج من الذاكرة الداخلية الوميضية.
كما يستقبل هذا القطب أيضا" جهد تمكين البرمجة 12V (VPP) خلال عملية برمجة ذاكرة المتحكم الوميضية.
11.XLAT1 :
مدخل لاستقبال نبضات الساعة من الهزاز الخارجي، وهو مدخل دارة نبضات الساعة الداخلية.
في حال استخدام هزازة لتوليد نبضات الساعة للمتحكم فإننا نضعها بين القطبين ((XLAT1 & XLAT2.
إنتل MCS-51 وحدات الإدخال
أشهر وحدات الإدخال:
1.لوحة المفاتيح Keypad.
2.الحساسات الحرارية.
إنتل MCS-51 وحدات الخرج
أشهر وحدات الخرج:
1.ديودات ضوئية.
2.المظهرات ذات السبع قطع (7seg).
3.LCD.
منطق ترانزستور ترانزستور
منطق ترانزستور ترانزستور (بالإنجليزية: TTL- Transistor Transistor Logic)‏
هو أحد عوائل الدارات الرقمية المبنية من ترانزستورات ثنائية القطبية (BJT)، ومقاومات. تعرف باسم منطق ترانزستور-ترانزستور لأن وظيفتي البوابة المنطقية (AND، على سبيل المثال) والتضخيم تتم بواسطة ترانزستور (مقارنة بـ RTL وDTL).
استخدمت الدارات المتكاملة TTL على نطاق واسع في التطبيقات التقنية مثل (أجهزة الكمبيوتر وأجهزة التحكم الصناعية ومعدات الاختبار والقياس)
يتم استخدام TTL أحيانا للأشارة إلى
TTL-compatible logic levels [الإنجليزية]، فعلى سبيل المثال تستخدم كتسمية لمدخلات ومخرجات الأدوات الإلكترونية.
منطق ترانزستور ترانزستور العائلات الفرعية
يتضمن منطق ترانزستور ترانزستور عدة عائلات فرعية هي:
تتميز عن العائلة القياسية بأن التيار المار فيها أقل وضياع القدرة فيها أقل.
وتتميز بسرعة الانتقال بين الحالات المنطقية بسبب استخدام زوج دارلينغتون فيها.
وهي آخر العائلات الفرعية ظهورا وتعتبر أسرع من أي عائلة TTL أخرى وتختلف هذه العائلة الفرعية عن أي عائلة أخرى في الTTL في أنها تستخدم ترانزستور معدل حيث توصل قاعدة الترانزستور بمجمعه عن طريق موحد شوتكي ويعمل الدايود على تحويل تيار القاعدة عندما يكون الترانزستور في حالة غلق الدائرة ON، وذلك حتى يمنعه من تخزين الشحنات التي تبطئ من سرعته عندما يتحول من الحالة ON إلى حالة فتح الدائرة OFF. وهذا يسرع الأداء العام للدارة.
منطق ترانزستور ترانزستور عمود «توتيم»
«توتيم بول» أو «عمود توتيم» يعني إضافة ترانزستورين ثنائيا القطبية، مقاومة وصمام ثنائي عند مخرج الدائرة.
ان إضافة دائرة توتيم بول عند المخرج تساعد على تخطي بعض المشاكل المتعلقة بالسرعة، والتي تواجهها دائرة منطق ترانزستور ترانزستور العادية.
الجدول ادناه يوضح أهمية كل عنصر في دائرة منطق ترانزستور ترانزستور.
منطق ترانزستور ترانزستور خصائص دالة تحويل الجهد
يلاحظ وجود 3 حالات للمخرج (مرتفع، ج، ومنخفض)، والذي يختلف باختلاف الجهد المدخل للدارة، حيث أنه من الممكن تقسيم الجهد المدخل لثلاث فئات أيضا (مرتفع، منخفض، وج).
الجدول ادناه يوضح حالة كل عنصر في حالات المخرجات الثلاث.
كردونوس (بابا الإسكندرية)
قداسة البابا  كردونوس الأول بابا الإسكندرية وبطريرك الكنيسة القبطية الرابع (96 - 106). يُنطق اسمه بالعربية بعدة طرق هي: كروذونوس، وكرودونوس، وكرتيانو، وكرديانو.
كان ممن عمدهم مرقس الرسول. ولما رقد سلفه الأنبا ميليوس الأول، اختير هذا الأب بطريركًا وتمت السيامة في 7 توت - 5 سبتمبر 95 للميلاد.
عاصر دومتيان ونيرفا وتراجان من أباطرة الروم. وفي عهد تراجان ازداد عدد المسيحيين بالإسكندرية.
كان استشهاده في 21 بؤونه - 15 يونيو 106 م في عهد تراجان، وقد خلا الكرسي المرقسي من بعده ثلاث سنوات نظراً لشدة الضيق والاضطهاد وعدم تمكن المسيحيين من اختيار بطريركٍ لهم.
ميليوس (بابا الإسكندرية)
قداسة البابا  ميليوس الأول بابا الإسكندرية وبطريرك الكنيسة القبطية الثالث (84-96).
يُنطق اسم هذا البطريرك بالعربية بعدة طرق هي: ميليوس، وأفيليوس، ومليانوس. وكان اسمه قبل أن يسام بطريرك مليانوس وأبيليوس.
لما رقد سلفه البابا الأنبا إنيانوس اختير هذا الأب بطريركًا وتمت السيامة في 4 كيهك - أول ديسمبر، سنة 83 للميلاد وأصبح ميليوس ثالث بطاركة الإسكندرية وذلك بعد استشهاد مرقس الرسول ووفاة إنيانوس في شهر كيهك بعد سنة 84م، وذلك في السنة الخامسة عشر من ملك دوميتيان بن فسبازيان إمبراطور الروم بإجماع آراء الشعب.
رقد هذا البابا في أول توت سنة 96م.
معالجة تفرعية
المعالجة المتوازية أو المعالجة التفرعيّة (بالإنجليزية: Parallel Processing)‏ هي تقنية حاسوبية تُنفذ بها عدة عمليات في وقت واحد، مما يؤدي إلى إنقاص زمن المعالجة. لذلك السبب تُستخدم في معالجة التطبيقات الكثيفة مثل التنبؤ بالمستقبل الاقتصادي، إنتاج المؤثرات المرئية للأفلام المستقبلية.
هناك طريقتان شائعتان تُنفذ بها العمليات المتوازية:
يحتاج تنفيذ عدة برامج في وقت واحد إلى ربط عدة معالجات أو عدة حواسيب مع بعضها بعضا لحل مشكلة معينة. بينما عملية توزيع التعليمات إلى مراحل وتنفيذ كل مرحلة في وقت واحد تتم باستخدام معالج وحيد.
إن الزمن اللازم لإيجاد حل مشكلة ما في حال تقسيمها إلى عشرة أجزاء ومعالجتها على عشرة حواسيب في نفس الوقت، يساوي إلى عشر الوقت الذي يحتاجه حاسوب غير موازي لحل كل جزء من أجزاء المشكلة العشرة بشكل تسلسلي.
معالجة تفرعية
صحيح أنه هناك العديد من التطبيقات القابلة للتجزيء إلى عمليات متوازية، ولكن هناك بعض العمليات من الصعب أن تُجزئ، لأن أجزاءها مرتبطة مع بعضها البعض، أي أن هناك أجزاء عليها أن تنتظر حل أجزاء أخرى حتى تستطيع حل الجزء الخاص بها.
أجزاء العملية التي لا يمكن أن تحل بطريقة متوازية تدعى أجزاء تسلسلية. في الحقيقة تحدد هذه الأجزاء التسلسلية الوقت الكلي اللازم من أجل حل مشكلة ما. على سبيل المثال: افرض أنه لدينا مشكلة ما نريد حلها، تتضمن هذه المشكلة 9 ملايين عملية يمكن أن تنجز بشكل متوازي وواحد مليون يجب أن تُنجز بشكل تسلسلي. بشكل نظري يمكننا القول: أن تسع ملايين حاسب تُنجز تسع أعشار المشكلة في وقت واحد، وتترك عشرًا لحله بشكل تسلسلي، وبذلك يكون زمن التنفيذ الكلي هو عشر الزمن في حال لم تكن المعالجة تفرعية.
معالجة تفرعية المقدمة
لتوضيح فكرة المعالجة التفرعية، لنتخيل أنه يوجد عدد كبير من المتقدمين نُحاول جمع المعلومات عنهم، فسيكون ذلك العمل صعبا وطويلا على شخص واحد، أما عندما يتواجد مجموعة من الناس يمكنهم المساعدة فإنه يُمكن تقسيم العمل على عدة أناس بحيث أن كل شخص يسأل سؤال معينا ويتخصص بالبحث عن معلومة معينة. إن هذه العملية في تقسيم العمل تُدعى: «المعالجة التفرعية».
بالنسبة لمفهوم الحاسوب فان المعالجة التفرعية تعني تقسيم معالجة تعليمات البرنامج الواحد على عدة معالجات، وأفضل مثال يتمثل في مخدمات شبكات الانترنيت والتي تستخدم رقائق Intel Xeon.
معالجة تفرعية العملية الأساسية
للاطلاع على عنوان موقع URL والحصول على المزيد من المعلومات، نقوم بالاتصال بشبكة الإنترنت وإدخال عنوان الموقع في الحقل المخصص ضمن المتصفح، فتظهر صفحة هذا الموقع. تتم هذه العملية بالتفصيل الآتي:
نبذة عن العناوين IP address، البوابات (Ports)، البروتوكولات (Protocols):
لضمان استمرار الاتصال مع جميع الأجهزة فإنه يخصص لكل جهاز ضمن شبكة الإنترنت عنوان وحيد فريد يدعى عنوان IP. مصطلح IP هو اختصار لمصطلح بروتوكول الإنترنت Internet Protocol. يخصص لهذا العنوان كلمة بطول 32 خانة ثنائية، يعبر عنها عادة بأربعة أعداد (مجموعات ثمانية) تفصل فيما بينها فواصل عشرية. يأخذ عنوان الـ IP الشكل التالي: 216.27.61.137.
أطلق على الأعداد الأربعة ضمن العنوان IP بالمجموعات الثمانية لأن قيمها تتراوح بين 0 و 255 لها 28 قيمة ضمن كل مجموعة.
معالجة تفرعية العملية الأساسية
كل جهاز ضمن شبكة الإنترنت له عنوان IP وحيد. للمخدم عنوان IP مستقر لا يتغير غالباً، أما الأجهزة المنزلية التي تتصل بالشبكة عبر المودم فإنه يسند لها غالباً عنوان IP من قبل مزود خدمة الإنترنت ISP عند دخولها الشبكة. هذا العنوان وحيد عند كل دخول ويمكن أن يتغير عند الدخول التالي، ومنه نرى أن مزود خدمة الإنترنت ISP يحتاج فقط إلى عنوان IP واحد لكل مودم (أكثر منه لكل مستثمر) يعمل معه.
يمكن معرفة معلومات كثيرة عن جهازك ضمن شبكة الإنترنت باستخدام البرنامج WINIPCFG.EXE ضمن بيئة Windows. IPCONFIG>EXE ضمن بيئة / Windows XP 2000
معالجة تفرعية العملية الأساسية
إن أي جهاز من أجهزة المخدمات يقدم خدماته لشبكة الإنترنت عبر العديد من البوابات، بوابة واحدة لكل خدمة من خدماته، فمثلاً إذا كان المخدم يقدم خدمة الويب وخدمة FTP فإن خدمة الويب تكون على البوابة 80 وخدمة FTP على البوابة 21. وبالتالي يتم الاتصال مع المخدم باستخدام عنوان IP محدد وبوابة محددة. البوابات المعروفة والشائعة لها بوابات محددة ومعروفة، سنورد هنا بعضاً منها: - echo 7 - daytime 13 - qotd 17 (Quote of the day) - ftp21 - telnet 23 - time 37 - nameserver 42 - nickname 43 (Who is) - gopher 70 - finger 79 - www 80
في حال اتصال الزبون مع المخدم عبر بوابة محددة فإنه يلج هذا المخدم مستخدماً بروتوكولاً خاصاً، ويعرف البروتكول بأنه طريقة محددة مسبقاً يتم وفقها اتصال الزبون مع المخدم بشكل سهل وفعال وبأقل قدر من الأخطاء أبسط أنواع البروتوكولات هو daytime protocol. إن استخدمت البوابة 13 للاتصال مع مخدم يدعم هذا البروتوكول فسوف يرسل لك المخدم التاريخ والوقت الجاري وينهي بعدها الاتصال. البروتوكول هو «إن اتصلت معي، سأرسل لك التاريخ والوقت وأقطع الاتصال بعدها».
معالجة تفرعية العملية الأساسية
في بروتوكول HTTP الأصلي، كل ما عليك إرساله هو اسم الملف الفعلي، مثل "/" أو "/web-" server.htm. عدِل هذا البروتوكول لاحقاً لمعالجة إرسال كامل عنوان URL. سمح هذا للشركات التي تستضيف نطاقات وهمية حيث يعيش العديد من النطاقات على جهاز واحد من استخدم عنوان IP واحد لجميع النطاقات التي تستضيفها.
المخدم عبارة عن برنامج بسيط جداً، وهو يتلقى اسم الملف المرسل مع الأمر GET، ثم يبحث عن الملف، يجده ويرسله إلى المتصفح.
إذا جمعت كل الأوامر والتعليمات التي تتعامل مع البوابة وتحقق الاتصال معها، فبإمكانك كتابة برنامج بلغة C يزودك بمخدم ويب بسيط بأقل من 500 سطر أوامر.
تضيف أغلب المخدمات مستويات مختلفة من الأمن والحماية لعملية التخديم التي تقوم بها. مثلاً هناك بعض الصفحات التي يتطلب الدخول إليها وتصفحها امتلاك اسم وكلمة مرور خاصين.فعند طلب هذه الصفحة تظهر أمامك مباشرة صفحة أولى تضم قائمة لطلب الاسم وكلمة المرور. والمخدم هنا يسمح فقط للأشخاص الأعضاء الذين يملكون كلمات مرور صحيحة برؤية هذه الصفحة.
معالجة تفرعية العملية الأساسية
بعض المخدمات الأخرى تقدم مستويات حماية أعلى مثل التشفير والتعمية مما يسمح بإرسال المعلومات الحساسة السرية عبر الإنترنت، مثل رقم بطاقة الائتمان.
ما سبق ينطبق على مخدمات الويب التي تنقل صفحات ثابتة وبسيطة، لا يتغير محتواها إلا بتعديلها من قبل المالك والمصمم.
بسبب صعوبة تذكر سلسلة الأرقام الطويلة التي تعرَف العنوان IP وعدم تآلف الكثير من الناس معها، وبما أن العنوان IP عرضة للتغيير في بعض الأحيان، تمتلك جميع مخدمات الإنترنت أسماء محددة مقروءة تدعى أسماء النطاق domain names مثلاً: www.yahoo.com http:// هو اسم دائم، محدد ومقروء. ومن الواضح أنه مقروء أكثر من سلسلة الأرقام السابقة. يتألف الاسم www.yahoo.com http:// من ثلاثة أجزاء:
مخدمات اسم النطاق DNS (domain name servers) هي المسؤولة عن إسناد الأسماء المقروءة للعناوين IP، وهي عبارة عن قاعدة بيانات بسيطة تعمل على إسناد الاسم المناسب للعنوان IP المطلوب، وتنشره على كامل شبكة الإنترنت.
في جميع هذه الحالات نجد أن عمل المخدم ليس بسيطاً ولا يقتصر على عرض الصفحة المطلوبة فقط. وإنما يقوم فعلياً بإجراء العديد من العمليات التي تبدأ بتنفيذ طلبات المستثمرين إلى توليد صفحات جديدة تبعاً لهذه الطلبات.
معالجة تفرعية البنية التفرعية
في عام 1966 م قام مهندس الإلكترون الأمريكي مايكل ج. فلين بالتمييز بين أربع أشكال للمعالِجات (طريقة تصميم المعالجات لمعالجة المعلومات والتعليمات البرمجية). فالمعلومات يُمكن أن تُرسل لمعالج دفعة واحدة، أو على عدة دفعات. وبشكل مشابه فإن التعليمات يُمكن أن تنجز تعليمة تعليمة، أو عدة تعليمات في المرة الواحدة.
(بالإنجليزية: SISD serial instructionstream stream,single data stream)‏ في هذه الحالة جزء واحد من أجزاء المعلومة يُرسل إلى معالج وحيد. فإذا كان لدينا 100 عدد يجب أن تُضربها بالعدد 3، فإن كل عدد من الأعداد المائة يُرسل إلى المعالج ويُضرب بالعدد 3 وثم يُخزن الناتج، وهكذا بالنسبة للعدد التالي في المجموعة، يُرسل ويُحسب حتى نحصل على المائة نتيجة مخزنة.
من التطبيقات المناسبة للشكل SISD، القرارات ذات النتائج المترابطة بشكل معقد. مثل: المعالجات الكلمية (بالإنجليزية: word processing)‏.
معالجة تفرعية البنية التفرعية
(بالإنجليزية: A Multiple Instruction stream, Single Data stream MISD)‏ في هذ الحالة يقوم معالج بنسخ دفعة معلومات ويرسلها معلومة معلومة إلى معالجات أخرى، وكل معالج بدوره ينفذ على المعلومة نفسها برنامج تختلف عن المعالج الآخر. على سبيل المثال قد نرسل محتويات بنية معطيات في وقت واحد إلى عدة معالجات، كل معالج سوف يُوجد قيمة في بنية المعطيات، تختلف عن القيمة التي سيوجدها معالج آخر. من المشاكل التي يلائمها الحل بالمعالجة التفرعية MISD أنظمة المعالجة المرئية (وهو أن يأخذ البرنامج الحاسوبي معطياته من صورة رقمية كما في الرجل الآلي).
(بالإنجليزية:  Single Instruction stream, Multiple Data stream SIMD)‏ بمعنى آخر إجراء نفس التعليمة على معطيات مختلفة (ضرب مائة عدد بالرقم 3 في وقت واحد). وبذلك فإن معالجات SMID تُبرمج بشكل يشابه كثيرًا برمجة معالجات SISD، ولكن العمليات هنا تحدث على مصفوفة من القيم بدلًاُ من قيمة واحدة. ولذلك SIMD تُعرف بما يسمى مصفوفة المعالجات.
هناك العديد من التطبيقات التي تستخدم المعالِجات SIMD، كعمليات تحسين الصور، ومعالجات الرادار لضبط الملاحة الجوية.
معالجة تفرعية البنية التفرعية
(بالإنجليزية: A Multiple Instruction stream, Multiple Data stream MIMD)‏ هذا الشكل أكثر مرونة، ولكنه في نفس الوقت صعب التحقيق برمجيًا، لأنه يحتاج إلى تعليمات إضافية لتنسيق عمل المعالِجات. ومن الممكن أن يستخدم كبديل عن كل الأنظمة السابقة ولكن بشكل أقل كفاءة.
يستخدم هذا الشكل في بعض برامج الذكاء الصناعي، ودراسة ازدحام المدن.
معالجة تفرعية الربط التفرعي
من العوامل المحددة لبنية الربط التفرعي كيفية ربط المعالجات مع بعضها البعض. فمن طرق الربط التفرعي جعل المعالجات تتشارك على ذاكرة واحدة، وبذلك ستتصل المعالجات مع بعضها عن طريق قراءة معطيات بعضها البعض. يدعى هذا النوع من الربط التفرعي الذاكرة المشتركة. في هذا النمط من الربط التفرعي، يمكن لأي معالج الولوج إلى معطيات الذاكرة، لذا يجب منع المعالجات المترابطة من أن تكتب سهوًا نتائجها فوق بعضها.
الطريقة الثانية في ربط المعالجات، السماح لها بالتواصل عن طريق رسائل، ترسلها المعالجات إلى بعضها. تُعرف هذه التقنية بتقنية تمرير الرسائل أو تقنية الذاكرة المقسمة، حيث أن المعطيات تُقسم وتُخزن في ذواكر المعالجات المنفصلة. هذه الطريقة في الربط تجعل من الصعب على المعالجات التشارك على المعلومات لأن المعالجات غير موصولة إلى ذاكرة واحدة، ولكنها تعتبر في نفس الوقت طريقة ربط آمنة لأنها تمنع المعالجات من كتابة نتائجها فوق بعضها.
معالجة تفرعية الربط التفرعي
في نظام الذاكرة المشتركة، عندما عدد المعالجات يزداد، يصبح من الصعب الولوج إلى الذاكرة، مما يؤدي إلى حدوث حالة اختناق.
لحل المحدودية في الذاكرة التشاركية، وحل مشكلة فردية الذواكر في نظام الذواكر المنفصلة، تُبنى الذواكر المنفصلة مع دارات تسمح للمعالِجات بدخول ذواكر بعضها البعض. هذه الطريقة المبتكرة تسمى بالذواكر المنفصلة المشتركة، بهذه الطريقة نستطيع التخلص من مشاكل التي واجهتنا في الطريقتين السابقتين.
معالجة تفرعية حاسب الديب بلو
حاسب ديب بلو (بالإنجليزية: DEEP BLUE)‏: هو حاسوب فائق من إنتاج شركة (بالإنجليزية: IBM)‏ يستخدم تقنية المعالجة التفرعية الشاملة لحل المشاكل.
تقنية المعالجة المتوازية الشاملة (بالإنجليزية: massively parallel processing technology)‏ (تقنية قادرة على إنجاز 100 عملية في المرة تكفي لحل جميع المشاكل التي نواجهها في الوقت الحاضر).
يستخدم هذا الحاسوب 256 معالاجا لحساب 50 إلى 100 مليار حركة شطرنج خلال ثلاث دقائق.
هناك حواسب تشبه ديب بلو تستخدم لحل التطبيقات الحقيقية في عالمنا مثل: التنبؤ الجوي، أبحاث العقارات والجينات، تحسين مخدمات الشابكة (الإنترنت).