Professional Documents
Culture Documents
المعالج-: 80486
في عام 1989ظهر المعالج 80486وهو عبارة عن نسخة سريعة من المعالج 80386حيث يحتوى على
كل مزايا المعالج 80386بالضافة للسرعة الكبيرة وتنفيذ الكثير من الوامر المستخدمة بكثرة في نبضة
واحدة فقط كذلك احتوائه على المعالج المساعد 80387والمختص بالعمليات الحسابية التي تحتوى على أعداد
ل من المعالج 80386مما تطلب وجود المعالج 80387 حقيقية حيث كانت هذه العمليات تستغرق وقتًا طوي ً
والذي يسمي بالمعالج المساعد الرياضي Math. Co_Processorوقد تم دمج هذا المعالج مع المعالج
80386بالضافة إلي ذاكرة صغيرة تسمي بالـ ) Cache Memoryوهي ذاكرة ذات زمن وصول صغير
جدًا ويتم استخدامها كوسيلة لتبادل البيانات بين الذاكرة العادية والمعالج الدقيق(وحجمها .Kbytes 8
يعتبر المعالج 80486أسرع من المعالج 80386والذي يعمل على نفس التردد بحوالي ثلث مرات .هذا
بالضافة إلي أن المعالج 80486يعمل على ترددات )سرعات( عالية جدًا تصل إلي .M Hz 100
أما المعالج 80486SXفهو كالمعالج 80486تمامًا من حيث العمل الداخلي فيما عدا أنه ل يحتوي على معالج
رياضي داخله .وقد ظهرت عدة إصدارات من المعالج 80486ولكن ل توجد اختلفات جوهرية كبيرة بينها
والمجال هنا ل يتسع لذكرها.
المعالج Pentium
المعالج Pentiumهو آخر إصدارات شركة Intelوهو أول معالج يتعامل مع كلمة بطول Bits 64بالضافة
إلي السرعة العالية جدًا التي يعمل بها مقارنة بالمعالج 80486هذا بالضافة إلي زيادة حجم الذاكرة الداخلية
.Cache Memory
وقد ظهرت إصدارات مختلفة للمعالج Pentiumازدادت فيها سرعة المعالج وتمت إضافة إمكانات إضافية إليه
فيها مثل MMXوالذي يمتاز بأن به أوامر للتعامل مع الوسائط المتعددة.
مقاطع الذاكرة
مقطع الذاكرة هو جزء متصل بطول Kbytes 64 = 216وكل مقطع في الذاكرة يتم تحديده برقم محدد يسمي رقم المقطع
Segment Numberوهو رقم يبدأ بالرقم 0000hوينتهي بالرقم .FFFFh
بداخل المقطع يتم تحديد العنوان بواسطة إزاحة محددة Offsetوهذه الزاحة عبارة عن ُبعد الموقع المحدد من بداية المقطع
وهو رقم بطول Bytes 16أي تتراوح قيمته بين الرقمين 0000hو .FFFFh
وبالتالي لتحديد عنوان محدد في الذاكرة يجب توضيح قيمة كل من المقطع والزاحة وبالتالي تتم كتابة العنوان على الصورة:
Segment : Offset
ل العنوان AABB:5566يعني الزاحة 5566داخل المقطع وهو ما يسمي بالعنوان المنطقي Logical Addressفمث ً
.AABB
للحصول على العنوان الفيزيائي يتم ضرب قيمة المقطع في الرقم ) 16إزاحته لليسار بمقدار أربعة خانات ثنائية أو خانة
واحدة سداسية عشر( ويتم بعد ذلك إضافة قيمة الزاحة إليه وبالتالي فإن العنوان الفيزيائي المناظر للعنوان AABB:5566
هو:
مثال -:قم بتحديد قيمة الزاحة المطلوبة لتحديد العنوان 1256Aوذلك في :
ب -القطاع 1240 أ -القطاع 1256
الحل :
يتم استعمال المعادلة :العنوان = المقطع * + 16الزاحة
أ -افترض أن قيمة الزاحة المطلوبة Xبالتعويض في المعادلة نجد أن
1256A = X +10h*1256
1256A = X +12560
000A = X
1256:000A وبالتالي فان العنوان هو
بعد توضيح عملية تقسيم الذاكرة لمقاطع مختلفة يمكننا الن شرح عمل مسجلت المقاطع المختلفة ،حيث يتكون البرنامج من
مجموعة من الوامر بالضافة إلي مجموعه من المتغيرات هذا بالضافة إلي الحاجة لستخدام مكدس البيانات Stack
والذي سنوضح طريقة استخدامه وعمله لحقًا.
يتم وضع البرنامج في مقطع البرنامج Code Segmentووضع البيانات في مقطع البيانات Data
Segmentوكذلك المكدس حيث له مقطع المكدس Stack Segmentولدينا مقطع إضافي يسمي بالـ Extra
.Segment
مسجل مقطع البرنامج (Code Segment Register (CS
يحتوي هذا المسجل على عنوان مقطع البرنامج Code Segment Addressحيث يتم تحديد مقطع
محدد في الذاكرة يتم وضع البرنامج فيه ،بعد ذلك يلزم تعريف ذلك العنوان للمعالج حيث سيتم تنفيذ البرنامج؛ لذلك
يجب تحديد عنوان هذا المقطع ووضعه في مسجل خاص يسمي بمسجل مقطع البيانات Code Segment
(Register (CSويتم تحديد قيمة الزاحة باستخدام مسجل مؤشر التعليمات Instruction
Pointerوالذي سيتم التحدث عنه لحقًا.
مسجلت المؤشرات والفهرسة (Index and Pointer Registers (SP, BP, SI, DI
يتم استخدام هذه المسجلت مع مسجلت المقاطع التي تحدثنا عنها في الجزء السابق للتخاطب مع عناوين محددة في الذاكرة،
وعكس مسجلت المقاطع يمكن إجراء عمليات الحساب والمنطق على هذه المسجلت.
مؤشر المكدس (Stack Pointer (SP
يتم استخدام هذا المسجل مع مقطع المكدس وسيتم التحدث بالتفصيل عن المكدس في الفصول القادمة.
مؤشر القاعدة (Base Pointer (BP
يتم استخدام هذا المسجل أساسًا للتخاطب مع البيانات الموجودة في المكدس ولكنه عكس مؤشر المكدس حيث يمكن استخدامه
لمخاطبة الذاكرة في مقاطع أخري غير مقطع المكدس.
مسجل فهرسة المصدر (Source Index (SI
يستخدم هذا المسجل في مخاطبة الذاكرة في مقطع البيانات حيث يقوم بالشارة إلي بداية ) أو نهاية( منطقة محددة من الذاكرة
مطلوب التعامل معها؛ وبتغيير قيمة هذا المسجل في كل مرة يتم التعامل مع كل هذه المنطقة من الذاكرة.
مسجل فهرسة المستودع (Destination Index (DI
هذا المسجل يستخدم مثل مسجل فهرسة المصدر SIحيث يشير هذا المسجل إلي عنوان الذاكرة الذي سيتم تخزين البيانات فيه
ويتم ذلك عادة باستخدام المقطع الضافي ESوهناك مجموعة من الوامر التي تتعامل مع النصوص والتي تفترض أن عنوان
المصدر وعنوان المستودع يتم تحديدهما في هذين المسجلين.
مؤشر التعليمات أو الوامر (Instruction Pointer (IP
كل المسجلت التي تحدثنا عنها حتى الن يتم استخدامها في مخاطبة البيانات المخزنة في الذاكرة .لمخاطبة البرنامج يلزم
المعالج معرفة عنوان أول أمر في البرنامج المطلوب تنفيذه ،بعد ذلك يقوم المعالج بتحديد عنوان المر التالي ويستمر في تنفيذ
البرنامج.
يتم تخزين الزاحة للمر المطلوب تنفيذه في مؤشر التعليمات أو الوامر (Instruction Pointer (IPحيث يتم
ذلك في مقطع البرنامج Code Segmentوبالتالي فإن عنوان المر المطلوب تنفيذه هو .CS:IPول يمكن
مخاطبة مؤشر التعليمات مباشرة من داخل البرنامج وإنما يتم تغيير قيمته بطريقة غير مباشرة مثل حالت التفرع
إلي عنوان محدد حيث يتم وضع قيمة ذلك العنوان في مؤشر التعليمات وذلك في حالة حدوث عملية التفرع.
تمارين
-1ما هو الفرق بين المعالج 80286والمعالج 8088؟
-2ما هو الفرق بين المسجل والموقع المحدد في الذاكرة ؟
-3اذكر وظائف مسجلت البيانات .DX,CX,BX,AX
-4ما هو العنوان الفيزيائي للموقع المحدد بالعنوان 0A51:CD90؟
-5موقع في الذاكرة عنوانه 4A37Bاحسب:
أ -الزاحة إذا كان عنوان القطاع هو .40FF
ب -عنوان القطاع إذا كانت قيمة الزاحة .123B
- 6ما هي حدود الفقرات في الذاكرة ؟