Guest MKSoft

[ تمت الإجابة ]ما الدافع لتعلم Assembly ؟

27 ردود في هذا الموضوع

السلام عليكم ...

إخواني اريد منكم استشارة جميلة ....

ماهو الدافع الذي يحفزني لتعلم هذه اللغة الصعبة نوعا ما و هي لغة Assemply , أليس هناك لغات من الجيل الثالث توفر الأدوات الخاصة التي يمكن من خلالها ان نستغني عن Assemply ؟

وان تعلمتها ... فما هي الإنجازات التي يمكن ان احققها من خلال هذه اللغة ؟؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أليس هناك الكثير من المواضيع عن هذا السؤال سلفاً؟

فهم أعمق بالنظام التي تكتب برنامجاً له, فهم أعمق بحيثيات الشئ وكيف تعمل الأشياء, وجع رأس والكثير من المنبهات وبعد الانتهاء سعادة لا توصف :lol:

بعض الامور لا تستطيع الحصول عليها إلا بالأسمبلي فقط لا غير

وانظر في توقيعي تجد البقيّة الباقية (لو تستعمل IE ضع المؤشر على ASSEMBLY و TRUST)

Speed, Space, Capability, Knowledge

Speed, Speed and more Speed

اما فيما يتعلق باطعام الخبز فلك الـدود نت لان الشركات تبحث عن الأمور الأخرى الآن وخصوصاً ما يعمل في قواعد بيانات (في الوطن العربي على الأقل)

تم تعديل بواسطه Xacker
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

تخيل معي

انت مبرمج وتستخدم لغة مثل C/C++

في احد الايام وجده خطأ RunTime Error

بحثت وبحثت ولم تجد اين الخطأ

هنا فائدة لغة Assembly

تقوم بتنقيح Debugging برنامجك بتتبع اوامرة بلغة Assembly الى ان تجد موضع الخطأ

هذا احد اسباب تعلم لغة Assembly وهناك غيره

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
تخيل معي

انت مبرمج وتستخدم لغة مثل C/C++

في احد الايام وجده خطأ RunTime Error

بحثت وبحثت ولم تجد اين الخطأ

هنا فائدة لغة Assembly

تقوم بتنقيح Debugging برنامجك بتتبع اوامرة بلغة Assembly الى ان تجد موضع الخطأ

هذا احد اسباب تعلم لغة Assembly وهناك غيره

على الرغم من اني لم افهم من كلامك الكثير , إلا انني تقريبا مقتنع بكلامك , لأنك تستطيع عمل اي شيء ب الأسمبلي .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ساعطيك كلام يفيد في الهاردوير و السوفتير .. لغة الاسيمبلي هي اللغة المعتمدة التي يُبرمج بها المتحكمات و المعالجات الدقيقة التي تُستخدم في الانظمة المتضمنة embedded system و طبعاً لانك من خلالها تستطيع الوصول لمخابيء المعالج بكل سهولة و كتابة برنامج اصغر في الحجم و هذا شىء مهم جدا لصغر حجم الذاكرة لهذه الانظمة .

نأتي علي الحاسب الشخصي و هنا يأتي دور الكتابة ايضاً لمعالجات ٨٠٨٦ و كتابة انظمة تشغيل عليها و بعض مترجمات اللغات العالية المستوي مثل السي تُتيح لك تضمين الكتابة بالاسيمبلي حين يحتاج الامر الي ذلك ، فمثلاً في برمجة الالعاب قد تجد حساب الجذر التربيعي مهم جدا لكي تأتي بالمسافة بين نقطتين و هذه عملية مرهقة للمعالج ، لذا نكتبها بالاسيمبلي للتسريع و ايضاً هناك تعليمات مخصصة بالاسيمبلي لتسريع العمليات علي الاعداد العشرية و هناك معالجات لها و تعليمات مخصصة لها لن تصل اليها الي عن طريق لغة الاسيمبلي .. و هناك الكثير من الفوائد .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

لابد لك أن تعلم أمر أخر غاية فى الأهمية

أنه لكى تستطيع أن تفهم من أمامك لابد أن تتعلم لغته

و لغة الحاسوب ليست السى أو الفى بى "مع الإعتذار لأصحاب الفى بى " أو الجافا

و لكن لغة الحاسوب صفر و واحد

لو تعلمت الأسمبلى سوف ترى أشياء لم تراها عيناك من قبل قط و سوف تتعلم أشياء لن تتعلمها قط من غير تعلم الأسمبلى و من قبلها الدوائر الرقمية و المنطقية

صحيح لا يلزمك أن تكون على دراية بها و لكن تعلم الدوائر المنطقية سوف يفتح لك أفاق معرفة و نقاط قوة تميزك عن أى شخص أخر يعرف لغة الاسمبلى وحدها دون أن يكون على دراية بعلم الدوائر المنطقية و الرقمية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

انا اراها كاداه مثل غيرها اذا احتجتها استخدمها

كتابة برنامج كامل بالاسمبلى كما ذكر ال xacker مرهقة جدا وستحتاج كما قال الى منبهات كثيرة واحتمال افيون وينتهى بك الحال الى مستشفى لمعالجة الادمان :lol:

لكنى استخدما داخل برنامج مثلا مكتوب بالسى وهى كدالة فرعية لحساب شئ بسرعة جدا بحيث لا نضيع قوة المعالج فى حساب خطوات ليس لها قيمة تنتج عند استخدام لغات عالية المستوى

وذلك مثلا فى التطبيقات العسكرية وعلوم الفضاء

اما الشئ الاخر كما ذكر الاخ احمد صالح

اذا اردت ان تبرمج متحكم دقيق او اردت ان تصنع اله تتحكم بها من خلال الكمبيوتر او روبوت , تلك التطبيقات تكون محدودة الذاكرة فالمعالج 8086 اكبر ذاكرة له 1 ميجا

وبتاكيد لن تضع بتلج الاجهزة البسيطة معالج ذا سرعة عالية وذاكرة كبيرة يعنى ( pc كامل ) بعيدا عن صعوبتها من ناحية ال hard ware هى ايضا مكلفة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

بما انك لم تفهم جيدا ردي الاخير اعطيك مثال اخر

في مستقبلات القنوات الفضاية DEMO يتم فك تشفير القنوات المشفرة باستخدام Module صغير مبني على PIC 16F84

prog_ser.jpg

باي لغة تتم برمجته في نظرك ؟ ولماذا ! :lol:

الاجابة هي احد فوائد لغة Assembly

تم تعديل بواسطه dj-siba
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
باي لغة تتم برمجته في نظرك ؟ ولماذا ! laugh.gif

الاجابة هي احد فوائد لغة Assembly

ممكن بالسى والبيسيك كمان لو حبيت :lol:

تم تعديل بواسطه حريف برمجة
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الأسمبلى هى لغة برمجة العتاد فى أى زمان و مكان و مهما تم تطويع أى لغة برمجة أخرى

فلن تكون مثل الأسمبلى أبدا فى القدرة على الوصول الى خفايا أى معالج صممت من اجله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

و الله يا إخوان انو مناقشة رائعة من محترفي الأسمبلي ...

طيب انا الان اعرف بعض اساسياتها , فكيف استطيع ان اصل لدرجة الإحتراف فيها ؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
فلن تكون مثل الأسمبلى أبدا فى القدرة على الوصول الى خفايا أى معالج صممت من اجله

ولن تستطيع لغة تصدير كميات كبيرة لمستشفى الامراض العقلية مثل التجميع :lol:

و الله يا إخوان انو مناقشة رائعة من محترفي الأسمبلي ...

فعلا :D

طيب انا الان اعرف بعض اساسياتها , فكيف استطيع ان اصل لدرجة الإحتراف فيها ؟؟؟

:blush: :P

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شوف اخي ، اذكر لك شىء مقنع من واقع التجربة ضروري لاستخدام لغة الاسيمبلي فيه .. وهو استخدام الفيديو و الرسم علي شاشات التليفزيون او الكومبيوتر او اجهزة الالعاب مثل الاتاري و الكونصول مثل البلاي ستيشن (نفذت جهاز بسيط من قبل ) كاي نوع من الاشارات إ ن كانت اشارات فيجا او بال ..إلخ فانت تحتاج تحكم دقيق جدا في الزمن يصل إلي الميكروثانية و للوصول لهذه الدقة تحتاج إلي حساب عدد الدورات التي تحتاجها التعليمة الواحده للوصول لزمن دقيق مثل هذا و اللغات العالية المستوي مثل السي لن تعطي لك هذه الخاصية و لن تعرف زمن التعليمة الواحده و كم دورة تاخدها لتنفيذه .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
شوف اخي ، اذكر لك شىء مقنع من واقع التجربة ضروري لاستخدام لغة الاسيمبلي فيه .. وهو استخدام الفيديو و الرسم علي شاشات التليفزيون او الكومبيوتر او اجهزة الالعاب مثل الاتاري و الكونصول مثل البلاي ستيشن (نفذت جهاز بسيط من قبل ) كاي نوع من الاشارات إ ن كانت اشارات فيجا او بال ..إلخ فانت تحتاج تحكم دقيق جدا في الزمن يصل إلي الميكروثانية و للوصول لهذه الدقة تحتاج إلي حساب عدد الدورات التي تحتاجها التعليمة الواحده للوصول لزمن دقيق مثل هذا و اللغات العالية المستوي مثل السي لن تعطي لك هذه الخاصية و لن تعرف زمن التعليمة الواحده و كم دورة تاخدها لتنفيذه .

اخ احمد صالح عاوز اسالك على حاجة

فى انواع من الميكرو تاخذ ال clock من oscillator خارجى لو انا زودت التردد عن المسموح به من الميكرو هاخد سرعة اعلى للميكرو

يعنى زمن اقل لل cycle ده ممكن عمليا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

هل تريد أن تقول ان الحد الاقصى للمايكرو مثلا 30ميجا و أنت رفعت التردد الى أعلى من هذا ؟؟

أنا لا أظن أنه سوف يعمل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
هل تريد أن تقول ان الحد الاقصى للمايكرو مثلا 30ميجا و أنت رفعت التردد الى أعلى من هذا ؟؟

أنا لا أظن أنه سوف يعمل

نعم هذا هو

لكن اريد ان اعرف رد من جرب

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
بما انك لم تفهم جيدا ردي الاخير اعطيك مثال اخر

في مستقبلات القنوات الفضاية DEMO يتم فك تشفير القنوات المشفرة باستخدام Module صغير مبني على PIC 16F84

prog_ser.jpg

باي لغة تتم برمجته في نظرك ؟ ولماذا ! :lol:

الاجابة هي احد فوائد لغة Assembly

لأن تنفيذ الأوامر بلغة "الأسمبلي" أسرع من غيرها كونها أقرب للغة الآلة ؟

أفيدونا أفادكم الله :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
لأن تنفيذ الأوامر بلغة "الأسمبلي" أسرع من غيرها كونها أقرب للغة الآلة ؟

أفيدونا أفادكم الله regular_smile.gif

لا اخ علاء ربما يكون احد الاسباب

لكن ذاكؤة البيك صغيرة جدا 64 كيلو لا اتذكر فاذا كان التطبيق يجحتاج لذاكرة فلا مفر من استخدام التجميع

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

حريف برمجة : يمكن زيادة التردد و لكن بنسبة و هذا ما تدعمه المعالجات في الحواسب الشخصية مثل amd و لكن هناك اقصي تردد يمكن ان يعمل عليه المتحكم و يتحدد علي اقصي تردد يعمل عليه الترانزيستورات ( و الدوائر الرقمية ) و كما تعلم انه يُستخدم الترانزستور كمفتاح و له اقصي تردد يمكن ان يعمل عليه سويتش بين ٠ و ١ .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
يمكن ان يعمل عليه سويتش بين ٠ و ١ .

الف شكر على التفسير فلعا نسيت ال limitation التى تعمل عليها الوحدة البنائية للمعالج شكرا مرة اخرى بشمهنس احمد صالح

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

لكن سؤال تانى

السؤال بيقول علل

لما اجى ازود التردد مع مثلا ترانزستور من نوع bjt الخرج يكون مشوة لكن الترانزستور بيكون سليم بعد اجراء التجرب

هل لو انا زودت التردد الميكرو يتحرق ولا العمليات الى بينفزها بتكون غير صحيحة فقط

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

زيادة التردد --- زيادة فقدان الطاقة --- زيادة درجة الحرارة -- و احتمال احتراق المعالج و لذلك يُضع مبردات في معالجات amd ان كنت تريد زيادة التردد

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

معلومات مفيدة بصدق

وكم اتمنى ان تستمر مثل هذه النقاشات لانها تعطينا شيء جديد نتعلمه

واتمنى ان اتعلم هذه اللغة ولكن ... لا اعلم كيف تكون الخطوة الاولى

هل من مرشد ...يحدد لنا الخطوات الاساسية الاولى للتعلم الصحيح والسريع

بارك الله بالجميع

اختكم محبي الله :mellow:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

لدي سآل بخصوص تعلم الاسمبلي

الجميع يقول ان الاسمبلي يحول الكودلى لغة الآلة

و الجميع يقول ان لغات البرمجة عالية المستوى تحول الكود الى لغة الآلة

ادا اذا ما الفرق بارك الله

ففيكم و اين تكمن سرعة الاسمبلي ان كانو الاثنين يحولان الى لغة الآلة

سلامي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

لدي سآل بخصوص تعلم الاسمبلي

الجميع يقول ان الاسمبلي يحول الكودلى لغة الآلة

و الجميع يقول ان لغات البرمجة عالية المستوى تحول الكود الى لغة الآلة

ادا اذا ما الفرق بارك الله

ففيكم و اين تكمن سرعة الاسمبلي ان كانو الاثنين يحولان الى لغة الآلة

سلامي

HLL تحول التعليمات إلى Assembly وليس إلى machine code.

لكن الكومبايلر مهما قام بعمل optimization فإنه لن يستطيع تحسين الكود لدرجة تماثل كتابته مباشرة بالأسمبلي باليد وبشكل مباشر.

جرب كتابة برنامج بالسي++ يظهر رسالة على الشاشة

قم بتحميل البرنامج في منقح مثل olly debugger

انظر إلى كم التعليمات الهائل هنا وهناك

أعد كتابته بالأسمبلي وانظر الفرق.

كل تعليمة تملك زمن تنفيذ، عندما تزيد عدد التعليمات فإنك تزيد زمن التنفيذ بكل تأكيد.

لذلك شعار الأسمبلي، Speed, Speed and more Speed (معالجك سيشعر بها ونادراً ما ستشعر بها أنت)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .