-->
تصميمي

آخر الأخبار

تصميمي
Technique
جاري التحميل ...
Technique

الاسمبلي:مقدمة,علاقة الاسمبلي بلغات الاخرى,تطبيقات الاسمبلي


ﻣﺎھﻲ اﻷﺳﻤﺒﻠﻲ:
ﻓﻲ ﻗﺪﻳﻢ اﻟﺰﻣﺎن  عند بداية إستخدام اﻟﻜﻤﺒﯿﻮﺗﺮ ﻛﺎﻧﺖ ﺑﺮﻣﺠﺔ اﻟﻜﻤﺒﯿﻮﺗﺮ ﺗﺘﻢ ﺑﻮاﺳﻄﺔ ﻟﻐﺔ  (Machin language)  و كان إختصاراها ML (ولغة الألة هي اللغة التي تفهمها الألة مباشرة دون الحاجة إلى تفسير و تخزن بصورة ثنائية [تركب من الاصفار و الواحدات] في الذاكرة على شكل تعليمات ووسائط تأخد كل واحد منها عادة مقدار 1بايت=8بت)
و ﻛﺎن ھﺬا اﻟﻨﻮع ﻣﻦ اﻟﺒﺮﻣﺠﺔ ﺻﻌﺐ ﺟﺪا ﻋﻨﺪھﺎ ﻃﻮر اﻟﻤﺒﺮﻣﺠﻮن حينها أول لغة برمجة و كانت فكرتها بسيطة جداً حيث أنه بدل أن تكتب رموز الألة الصفريه والاحادية يتم كتابة كلمات مختصره تدل على نوع العملية مثال(MOV,ADD,CMP) ثم ببرنامج بسيط يتم تحويل هذه الشفرة إلى لغة الاله بإستخدام تخطيط واحد إلى واحد لكل سطر أو عبارة في الاسمبلي تحول إلى تعليمة واحدة مقابلة في لغة الألة مثال (011000000000101 يتم كتابة بدلاً عنها mov) حيث يعرف البرنامج الذي يقوم بعملية التحويل بالاسمبلر Assembler ,حيث هناك عدة انواع من الاسمبلر وكل نوع يختص بتقنية معينة وبعائلة معينة من المجالات او نوع المعالجات.
لذا نحن هنا بصدد تعلم البرمجة بالاسمبلي للمعالجات المبنية بتقنية IBM-PC التي تنتجها شركة إنتل و هي العائلة 80x86 ويرمز لها بالاختصار 86x وهي تضم (8086/8088/80186/80286) لمعالجات 16 بت و(8086/8088/80186/80286)
تعريف لغة الأسمبلي :
اﻷﺳﻤﺒﻠﻲ ھﻲ ﻟﻐﺔ ﺑﺮﻣﺠﺔ ﺗﺘﻜﻮن ﻣﻦ ﺳﻠﺴﻠﺔ ﻣﻦ اﻟﺘﻌﻠﯿﻤﺎت اﻟﻤﺘﺘﺎﺑﻌﺔ ﻛﻞ ﺗﻌﻠﯿﻤﺔ فيها ﺗﺤﻮل اﻟﻰ ﺗﻌﻠﯿﻤﺔ مقابلة ﺑﻠﻐﺔ اﻵﻟﻪ.

تعريف الاسمبل:
اﻷﺳﻤﺒﻠﺮ ھﻮ ﺑﺮﻧﺎﻣﺞ ﻳﻘﻮم ﺑﺘﺤﻮﻳﻞ اﻟﺘﻌﻠﯿﻤﺎت اﻟﻤﻜﺘﻮﺑﺔ ﺑﻸﺳﻤﺒﻠﻲ اﻟﻰ ﻟﻐﺔ اﻵﻟﻪ.

لماذا تتعلم الاسمبلي:
تتعلم الاسمبلي للاسباب الاتية:
1-تكتشف الاسرار المخبفية وراء الكمبيوتر و تصبح قادراً  على فهم المعالج وكيف يعمل البرنامج.

2-تزيد خبرتك كمبرمج,لان السمبلي من أقوى اللغات العالي مستواها في التعامل مع العتاد حيث تعطيك المرونة وقدرة الوصول إلى الاشياء التي لم تكن قادراً بالوصول إليها.
3-هناك برامج لايمكن برمجتها الا بالاسمبلي مثل (السواقات) الاجهزة الالكترونية.
4-يعطيك الاسمبلي برامج سريعة جداً.
عند انشائك لبرنامج  متطور بالاسمبلي فذلك يشبه حفرك حفرة بملعقة نظراً لطول الشفرات التي تستخدمها لذا ينصح إستخدام الاسمبلي في بعض الاجراءات او الدوال التي تحتاجها لجعل برنامج مميز وفريد من نوعه وبقية البرنامج تكملة بسي ++ أو إحدى اللغات عاليات المستوى.
العلاقة بين الاسمبلي واللغات الاخرى:
تعتبر كلاً من لغة الاسمبلي و لغة الالة
منخفضتي المستوى LOW-LEVEL-language و تختصر LLL لانها تكتب تعليمة (بعض الناس تعتقد لغة السي لغه منخفظة المستوى وهذا الكلام كله خاطئ) بينما تعتبر باقي اللغات High-LEVEL-language  وتخصتر HLL وفي هذه اللغات تختفي تقنية تخطيط واحد إلى واحد وتفسر التعليمة إلى عدد كبير من تعليمات لغات الالة.


تطبیقات لغة الأسمبلي :
تتطلب كتابة البرامج بلغة الأسمبلي معرفة بالعتاد وعناية خاصة مع الأھتمام بأدق وأقل التفاصیل ، في أيام البرمجة القديمة كان المبرمجون يكتبون برامجھم بلغة الأسمبلي لأن ذاكرة الرام وقتھا كانت صغیرة )أقل من ٦٤كیلوبايت( وھم بحاجة الى برامج أصغر وأسرع خصوصاً أ ن معالجتھم أيضاً كانت بطیئة ، مع تطور الحاسوب وتوسع سعة ذاكرة الرام وزيادة سرعته أصبحت البرامج أكثر طو لاً وتعقیداً ، ھذا التعقید أدى الى أستخدام اللغات البرمجیة عالیة المستوى  HLLمثل السي والكوبول والبیسك والباسكال والفورترن ، مرة أخرى تطور الحاسوب فأدى الى أستخدام اللغات العلیا الموجھة الھدف  OOPمثل السي++ والجافا والتي مكنت من كتابة برامج قوامھا آلاف الأسطر والتعلیمات المعقده والمتداخله . 
من الصعب أن تلاقي برامج كبیرة مكتوبة كاملة بلغة الأسمبلي لأن كتابتھا صعب والأھم من ذلك تطويرھا وصیانتھا أصعب بكثیر ، بدل ذلك يقوم المبرمجین ببرمجة مقاطع مبرمجة برمجة مثلى بلغة الأسمبلي لأستخدمھا في تنفیذ أسرع أو الوصول الى العتاد عن طريقھا وباقي البرنامج بواسطة لغة عالیة المستوى .
يفضل المبرمجین لغة السي++ كلغة قیاسیة للبرمجة بلغة علیا لأن لھا قدرة عالیة وقوية جدً ا وموجھة الھدف مع القدرة على كتابة مقاطع السي فیھا وھي لغة أقل أنخفاضاً وأكثر مرونة مع أستخدام الأسمبلي كعنصر مھم في الوصول الى العتاد وبرمجة الجزئیات المحتاجة للسرعة .
لا يستخدم المبرمجون شفرة الأسمبلي وسط شفرة لغة عالیة المستوى عادة وأنما يستخدمونھا عن طريق واجه على شكل دالة أو كائن وتحتوي ھذه الدالة أو ھذا الكائن على شفرة الأسمبلي المطلوبة ، وقد تستخدم روتینً ا فرعیًا أو دالة في لغة عالیة المستوى وأنت لاتعلم بأنك باستدعاء ھذه الدالة أو الروتین الفرعي قد أستدعیت شفرة مكتوبة بلغة الأسمبلي .

التعليقات



جميع الحقوق محفوظة

اتقن

2016