أهم أقسام المدونة

الصفحات

السبت، 5 نوفمبر 2016

ذاكرة الوصول العشوائي RAM


تخزين البيانات في ذاكرة الكمبيوتر الداخلية:

يحتوي كل حاسوب على ذاكرة مؤقتة RAM.. معنى أنها مؤقتة أنها تفقد المعلومات الموجودة بها عند إغلاق الجهاز.. هذا هو السبب في احتياج كل حاسوب إلى أنواع أخرى من الذاكرة تستطيع أن تحفظ البيانات لفترات أطول، مثل القرص الصلب Hard Disk والقرص الضوئي (CD أو DVD).

ومن المهم أن تعرف أن هناك فوارق كبيرة في سرعة كل نوع من أنواع هذه الوسائط.. ولو أردنا ترتيبها من الأسرع إلى الأبطأ فستكون كالتالي:
1- الذاكرة المؤقتة RAM.
2- القرص الصلب Hard Disk.
3- القرص الضوئي CD.
هذا الفارق في السرعات يفرض نفسه على طريقة عمل الحاسب، وكيفية كتابة المبرمج للبرامج.. فلكي يكون الحاسب بالسرعة الهائلة التي نعرفها، فعليه أن يجري كل عملياته الحسابية باستخدام الذاكرة RAM لما تمتاز به من سرعة كبيرة.. ونظرا لأن هذه الذاكرة صغيرة المساحة ولا تستطيع حفظ البيانات بعد إغلاق الجهاز، فإن تنفيذ العمليات في الحاسب يتبع الخطوات التالية:
-  تتم قراءة البيانات المراد معالجتها من وسيط التخزين (القرص الصلب، أو القرص المرن، أو القرص الضوئي) ونقلها إلى جزء من الذاكرة.
-  يقوم الحاسب بالتعامل مع هذه البيانات في الذاكرة.. وقد يستخدم أجزاء أخرى من الذاكرة لوضع النتائج فيها إذا تطلب الأمر ذلك.
-  بعد انتهاء العملية تماما، يتم نقل النتائج إلى الجهة النهائية.. قد يتم عرض هذه النتائج مباشرة على الشاشة أو طباعتها عبر الطابعة أو نقلها عبر الإنترنت، أو قد يتم إعادة حفظها على وسيط تخزين مرة أخرى (كالقرص الصلب، أو القرص المرن)، وذلك تبعا لكيفية عمل البرنامج الذي ينفذه الحاسب.

بهذا التنظيم، يضمن المبرمجون الحصول على أفضل كفاءة وأعلى سرعة من الحاسب.

لكن: كيف يتعامل المبرمج مع الذاكرة لحفظ وقراءة البيانات؟
تتكون الذاكرة من مجموعة من المخازن، يستطيع كل منها حفظ رقم محصور بين الصفر و 255.. هذا المخزن يسمى بوحدة الذاكرة (البايت) Byte.
ولكل مخزن في الذاكرة عنوان.. هذا العنوان هو رقم.. مثلا: الذاكرة التي سعتها 256 بايت، تحتوي على مخازن تبدأ من العنوان رقم صفر إلى العنوان رقم 255.
وقديما كان المبرمج يستخدم لغات برمجة منخفضة المستوى Low Level Languages، وكان مضطرا إلى التعامل مع كل مخزن في الذاكرة من خلال عنوانه الرقمي.. بطبيعة الحال كان هذا الأمر يشكل صداعا للمبرمجين، خاصة مع التطور السريع في أحجام الذاكرة، والتي تجاوزت الشريحة الواحدة منها اليوم في الحاسب الشخصي 8 جيجيا بايت (8 مليار بايت)!.. حاول أن تتخيل حجم المعاناة لو كنت مضطرا إلى التعامل مع مليارات من عناوين الذاكرة!!
لمثل هذا جاءت لغات البرمجة عالية المستوى High Level Language، فعزلت المبرمج عن تركيب الذاكرة وباقي مكونات الجهاز المادية، ومنحته العديد من الأوامر السهلة التي تمكّنه من تنفيذ ما يريده بسرعةٍ وكفاءة.
والآن صار المبرمج يستطيع تسمية المخزن الذي سيستخدمه في الذاكرة باسم خاص به، بدلا من استخدام العناوين الرقمية.. هذا الاسم يسمى بالمتغيّر Variable، وهو يعتبر ساعي البريد بين المبرمج والذاكرة، حيث يمكن أن يكتب فيه المبرمج البيانات ويقرأها منه، دون أن يحتاج إلى معرفة عنوان الذاكرة الأصلي.

وبهذا صار كل المطلوب من المبرمج، أن يعطي المتغير اسما يدل على وظيفته في البرنامج ليسهل عليه فهمه وتذكره.. على سبيل المثال، يمكن تسمية متغير بالاسم Student_Name إذا كان سيستخدم ليحفظ في الذاكرة اسم الطالب، كما يمكن تسمية متغير آخر بالاسم Grade إذا كان سيستخدم ليحفظ في الذاكرة، الدرجة التي حصل عليها الطالب في الامتحان.
ويستطيع المبرمج قراءة القيمة من المتغير، كما يمكنه تغييرها في أي وقت، ولأي عدد من المرات خلال البرنامج.. هذا هو السبب في تسمية المتغير بهذا الاسم، فالمبرمج يستطيع تغيير قيمته في أية لحظة كما يشاء.. يمكنك مثلا أن تضع في المتغير Student_Name الاسم "مجدي عادل"، ثم بعد ذلك تغيره إلى الاسم "أشرف محمود"، ثم إلى "محمد سعيد".. يحدث هذا في فيجوال بيزيك كالتالي: 

' حجز متغير في الذاكرة
Dim Student_Name As String
' وضع قيمة في المتغير
Student_Name = "مجدي عادل"
' تغيير قيمة المتغير
Student_Name = "أشرف محمود"
' تغيير قيمته مرة أخرى
Student_Name = "محمد سعيد"
 
وسنتعرف على كيفية تعريف المتغيرات في فيجيوال بيزيك بالتفصيل لاحقا. 

ذاكرة الوصول العشوائي Random Access Memory (RAM):
هي جزء أساسي من مكونات الحاسب، تسمح لك بحفظ البيانات أثناء تشغيل الجهاز، وتفقد هذه البيانات عند إغلاقه.. وهي تتكون من وحدات تخزين تسمى كل منها بايت Byte.. وسبب تسمية ذاكرة الوصول العشوائي بهذا الاسم، هو أنك تستطيع الوصول إلى أي بايت في الذاكرة لحفظ البيانات فيه أو قراءتها منه، بمجرد معرفة عنوانه البايت في الذاكرة، دون أن تحتاج إلى المرور عبر كل وحدات البايت من البداية إلى النهاية بالترتيب.. ربما كان الأدق أن تسميها ذاكرة الوصول الاختياري!

من كتاب المبرمج الصغير، للصف الثالث الإعدادي، للتنزيل مجانا:

ليست هناك تعليقات:

إرسال تعليق

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.