سلسلة الراغبين في ملخص لغة اسمبلي للمبتدئين (الدرس الرابع)

 السلام عليكم

بسم الله الرحمن الرحيم
في البداية سوف نتعلم عن التصميم الاساسي للحاسوب (انظر للصورة بالاسفل
👇
)
يتكون من المعالج cpu ويتكون من الذاكرة memory ومن I/O DEVICES (INPUT/OUTPUT DEVICES)
اي الأجهزة الداخلة والخارجة من الحاسوب
ما يهمنا الان هو المعالج cpu :
يتكون ببساطة من ثلاث اجزاء
clock :
تقوم بمزامنة العمليات في المعالج
CU (Control Unit) :
ينسق تسلسل خطوات التنفيذ
ALU (Arthematic Logic Unit ) :
المسؤولة عن تنفيذ العمليات الحسابية والمنطقية كنا في بوابات and,or,xor.......
registers : هي ذاكرة مؤقتة سريعة جدا توجد بداخل المعالج (سنتعرف عليها بشكل أوسع لاحقا)
##########
كما تعلمنا سابقا clock تزامن العمليات في المعالج يتم حساب مذة استغراق العملية ب clock cycle حيث أن اقل عملية تستغرق 1 clock cycle ويعبر عن سرعة clock ب MHz أو GHz .(انظر للصورة بالاسفل
👇
)
ولكن ما هذه العمليات ؟
ملفات exe التي تقوم بفنها في الويندوز هي عبارة عن برامج تحتوي على لغة الآلة binary وهذه exe تأتي بعد عمل compile للبرنامج
اذا هذا البرنامج يحتوي على مجموعة العمليات سواء عددها كثير أو قليل وهذه العمليات تكون مكتوبة ب binary وهي نفسها الاوامر قبل عمل compile
(احيانا يكون مع ملف exe ملفات بصيغة dll ولا يعمل بدونها وهذه dll تشبه exe ولكنها تحتوي على functions متشاركة باماكن متعددة في الكود وربما مع أكثر من برنامج )
حسنا، هذه العمليات تمر بأربع مراحل حتى يشتغل معك ملف exe :
انت الان قمت بتشغيل ملف exe سيمر بالمرحلة الأولى و هي تحميل هذه العمليات في الذاكرة memory ،
بعدها سيقوم بجلب هذه العمليات لل CU لتنظيمها بعملية تسمى fetch ,,,,
الان هذه العمليات المكتوبة ب binary نحتاج لتحويلها الى كود (عمليات حسابية) حتى يفهمها ALU ويميز أن كانت جمع أو طرح أو إحدى البوابات المنطقية و يتم ذلك بعملية اسمها decode ،،،
ولأن بعد أن قام بفهم العمليات ما هي سوف ينفذها وسيشتغل معك البرنامج بعملية اسمها execute
(انظر للصورة بالاسفل 👇)
--------------------------------
في الخطوة الأولى عندما تعلمنا أنه عند تشغيل البرنامج يتم تحميله في memory ولكن وما هذه و ما هي قصتها ؟
في البداية يتم تحميل العمليات في ram وعندما يقوم البرنامج بقراءة اول جزء من المعلومات الموجودة في العمليات يتم نسخها ووضعها بذاكرة مؤقتة تسمى cache (وهي ذاكرة سريعة يقوم بحفظ نسخة من المعلومات احتياطا و بشكل مؤقت) وبعد أخذ نسخة يحمل هذه المعلومات في registers وهكذا ....
عندما يقوم البرنامج بقراءة معلومات لينسخها ويجد أن هذه المعلومات موجود فعلا في cache يسمى ما يحدث ب cache hit
وعندما يقوم بقراءة المعلومات لينسخها ويجد انها #ليست موجودة من cache يسمى ما يحدث ب cache miss
######################
انتهى #الدرس_الرابع لليوم لكم حرية مشاركة المنشور للجميع لكن لا تنسوا ذكر المصدر
وان كان هناك أي أخطاء في المعلومات أو أخطاء في الاملاء (فرحوا جماعة الاملاء ) فانا ساتقبل النقد البناء
اتمنى مشاركة المنشور حتى يستفيد الجميع فزكاة العلم نشره

Comments