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


السلام عليكم
بسم الله الرحمن الرحيم


االأسمبلي - الأسمبلي هي اللغة الأقرب الى لغة الآله وهي لغة قوية جداً تؤمن لك أتصالاً قوياً بالعتاد(الهاردوير) وقدرة على الوصول الى أجزاء من النظام والذاكره لاتستطيع الوصول اليها بواسطة اللغات العليا كذلك فأن الأسمبلي توفر برامج صغيرة وسريعة جداً وتستطيع الأسمبلي القيام بغير المألوف من البرامج ، واذا كنت مبرمجاً فأن خبرتك ستزيد كثيراً وسيصبح تعاملك مع اللغات العليا أكثر فهماً وسهولة ، أما اذا كنت مجرد هاوي فأن لغة الأسمبلي ستوفر لك فهماً عميقاً للحاسوب وسوف تستمع وأن تكتب برامجك بهذه اللغه الرائعه وأنت (وعلى عكس اللغات الأخرى ) تعرف كل سطر وتعليمة تكتبها فهماً عميقاً.
"رايي الخاص ": يفضل أن تكون قد درست لغة c أو c++ حتى يسهل عليك الفهم للاسمبلي في النهاية ستترجم c/c++ الى اسمبلي وهذا سيساعدك بالتدرب على فهما عندما تقوم مثلا ببرمجة برنامج بسيط ب c مثلا وتقوم بعمل بعدها بالاطلاع على لغة للاسمبلي وهناك موقع رائع سيساعدك كثيرا :-
الان سوف تسال ما الفائدة من تعلم لغة اسمبلي ؟؟
١- تساعد في الاتصال مع مكونات الجهاز والأجهزة الخارجية التي تريد ايصالها مع الحاسوب مثلا تريد تعريف كرت شاشة معين على الحاسوب ولم تجد التعريف الخاص به ، بامكانك صنع تعريف له (driver) باستخدام لغة اسمبلي (هذا ليس بسيطا ولكن وصلت الفكرة) .
٢- اذا كنت تقوم ببرمجة لعبة بلغة c++ مثلا وفي لحظة معينة تتباطئ اللعبة في مكان معين (lag) تستطيع حل المشكلة ببرمجة هذه اللحظة من اللعبة بالاسمبلي (أن لغة c/c++ عندما تقوم بعمل compile البرنامج ترجم لغة c/c++ للاسمبلي و سنعرف على ذلك بشكل أفضل لاحقا) وستعمل معك اللعبة بسلاسة والسبب أن لغة اسمبلي اسرع في العمل من c++ .
٣- الهندسة العكسية للبرامج (الهندسة العكسية باختصار تشبه مثلا الولد الصغير الذي يقوم بتفكيك لعبته ليعرف كيف تعمل ) : الهندسة العكسية للبرامج تشبه ما قام به هذا الولد ولكن يتم عمل ذلك بالبرامج و بما أن أغلب لغات البرمجة يتم ترجمتها للاسمبلي عند عمل compile تستطيع معرفة مبدا عمل البرنامج من لغة الاسمبلي !
-------------------------------
∆ لغات البرمجة تقسم الى low level language اللغات الدنيا(السفلى)
مثل :- لغة اسمبلي
hight level language
وهي اللغات العليا مثل لغة : C أو C++
---------------------------------
لقد قرأنا كلمة compiler ولكن ما معناه وما وظيفته ؟؟
هو برنامج حاسوبي يقوم على تحويل الملفات (compile) المصدرية(الاكواد) إلى أوامر مباشرة يفهمها الحاسوب وينفذها مباشرة بما يناسب بنية الحاسوب الذي يستهدفه البرنامج(ويكيبيديا)
و هناك compiler من شركة مايكروسوفت الاسمبلي يسمى MASM
وعند عمل compile للاسمبلي لا تقوم بعمل برنامج تستطيع تشغيله وانما تمر بأربع مراحل وهي :-
يقوم بتحويل الكود الى لغة الآلة (binary)
يقوم بضم جميع اجزاء الكود ويعالج الاسماء
يقوم بتحميل البرنامج في الذاكرة
يقوم بتشغيل البرنامج
######################
انتهى #الدرس_الاول لليوم لكم حرية مشاركة المنشور للجميع لكن لا تنسوا ذكر المصدر
وان كان هناك أي أخطاء في المعلومات أو أخطاء في الاملاء (فرحوا جماعة الاملاء فانا ساتقبل النقد البناء).






Comments

Post a Comment

Popular Posts