منتديات إبداع للأبد

أعزائي زائري موقع ومنتدى إبداع للأبد بادر بالتسجيل الآن وشارك معنا ...
إنضم لأسرتنا الآن ...
مع تحيات إدارة موقع ومنتدى إبداع للأبد

أشرقت شمس الإبداع بعودتك يــــــــــا زائر إلى موقع ومنتدى إبــــــداع للأبــــــــد

 
 
 
    رسالتنا : التغلب على ملهيات الحياة وجعل بيئة الإبداع أساس لكل أعمالنا وبذلك نيل الثواب من الله عز وجل ,  رؤيتنا : تقديم بيئة إبداعية على الشبكة العنكبوتية متمثلتاً بموقع ومنتدى إبداع للأبد وجعله أساس رسالتنا

    نبذة عن الاسيمبلي

    شاطر
    avatar
    sa3do

    مبدع\ـة جديد


    مبدع\ـة جديد

    ( تاريخ التسجيل ) : 08/02/2008
    ( مجال ابداعي ) : الحاسب الآلي
    ( مشاركاتي ) : 42
    ( سمعتـي ) : 0
    ( نقاطـــي ) : 0
    ( العمــــر ) : 24
    ( المــزاج ) : مروووق
    ( الهوايـة ) : غير معروف
    ( العمـل ) : طالب
    ( البـــلد ) : المملكة الأردنية الهاشمية
    ذكر
    100% احترام القوانين ممتاز
    رسالة موقع ومنتدى إبداع للأبد

    نبذة عن الاسيمبلي

    مُساهمة من طرف sa3do في السبت 9 فبراير 2008 - 20:54

    لغة التجميع
    إذا اقتربنا من لغة الآلة واستخدمنا لغة التجميع ، فنجد أننا نخسر المرونة والعمومية . فلغة التجميع تفتقر إلى التجريد ومن الصعوبة بمكان تعديل جزء من برنامج مكتوب بها دون إعادة النظر في باقي أجزائه . كما أنها تحاكي ، بطبيعتها ، نوع الجهاز الذي تعمل عليه لدرجة أن أي تغيير في الأجهزة الملحقة بالحاسب ( مثل نوع الشاشة ) غالباً ما يستوجب إعادة صياغة بعض تعليمات البرنامج . أما من الناحية الإيجابية ، فإن لغة التجميع تكسبنا سرعة ( Speed ) وسلطة ( Power ) لا مثيل لهما في اللغات عالية المستوى . أما السرعة ، فتنتج من أن برامج لغة التجميع تخاطب المعالج المركزي ( CPU ) مباشرة ودون وسيط ( مترجم ) .
    فإذا كنت على دراية تامة بمزايا هذا المعالج ( نقاط ضعفه ونقاط قوته ) أمكنك صياغة برنامجك بحيث تستفيد من نقاط قوته وتتجنب نقاط ضعفه . أما المترجم ، فلقد صمم لترجمة أي برنامج كيفما تمت صياغته وبالتالي لن يستطيع ، في كل الحالات ، أن يجاري برامج لغة التجميع سرعة وكفاءة .
    إن انعدام الوسيط بين البرنامج المجمع والحاسب يؤدي أيضاً إلى زيادة سلطة هذا البرنامج على الجهاز . إذ إن المترجم ، كأي برنامج آخر ، يفرض على المبرمج شروطاً وقواعد خاصة به وباللغة التي يترجمها . هذه الشروط تؤدي بشكل مباشر إلى الحد من مجال العمليات التي يمكن للمبرمج أن يطلبها . فمترجم لغة باسيك مثلاً ، يمنع المبرمج من " تدوير " البتات التي يتكون منها عدد ما ( لأن مثل هذه العملية ليست من مفردات لغة باسيك ) رغم أن المعالج المركزي في الجهاز يستطيع أن يقوم بهذه العملية . وكذلك نجد أن مترجم برامج باسكال لا يسمح بوضع قفل ( Lock ) على أحد الملفات المخزنة على قرص مركزي يشترك في استعماله عدة مستخدمين ، رغم أن المعالج المركزي ونظام التشغيل يسمحان بهذه العملية . ولكن ، لنتذكر أن القدر الكبير من السلطة والتحكم الذي توفره لنا لغة التجميع لا يأتي مجاناً ، بل تصاحبه مسؤولية كبيرة . فمع زيادة السلطة يزداد العبء ويجدر الحذر .
    فالسلطة التي تمكنك من قراءة أي قطاع من القرص بسهولة ، مثلاً ، تتيح لك تخريب سائق الاسطوانات تخريباً تاماً ، وبنفس السهولة !

    لماذا نستعملها ؟
    لقد رأينا أن لغة التجميع تفتقر إلى المرونة ( مما يجعل كتابة وصيانة برامجها صعبة نسبياً ) وإلى العمومية ( التي تجبرنا على إعادة كتابة نفس البرنامج كلما تغير الجهاز ) وأنها تتطلب توخي الحذر وتحمل قدر كبير من المسؤولية ( إذ بدونها يمكن للبرنامج أن يعطب الجهاز ) . فإذا ابتلت لغة بهذا الوابل من المساويء ، جاز لنا أن نطرح السؤال : لماذا نستعملها أصلاً ؟
    هذا حقاً سؤال وجيه . ونحن في الواقع نسعى دائماً إلى تجنب لغة التجميع إلا عند الضرورة القصوى ، حين تكون ميزاتها ( السرعة والسلطة ) أساسية لعمل النظام . ففي نظم الزمن الحقيقي ( Real time systems ) مثلاً ( كنظام الطيار الآلي ونظم الدفاع الجوي ونظم التحكم الصناعي ) تكون سرعة النظام هي معيار نجاحه أو فشله ، ولذا لابد من الاستعانة بلغة التجميع للوصول إلى السرعة المنشودة . وحتى عندما لا تكون السرعة أساسية بكل معنى الكلمة لعمل النظام ، قد نضطر إلى استخدام لغة التجميع ، جزئياً ، في برامجنا لتحقيق المواصفات المطلوبة من المستعمل أو محلل النظم ( كما يحدث في التطبيقات التجارية عندما نفرز Sort عدداً كبيراً من البيانات ) .
    أما الموجب الثاني لاستخدام هذه اللغة فهو السلطة التامة على الجهاز أو أحد ملحقاته . فعند كتابة برنامج متعدد المستعملين ( multi - user ) ، كثيراً ما نضطر إلى وضع قفل على أحد سجلات ملف ، لكي لا نسمح لمستخدم آخر أن يكتب عليه أثناء عملنا . وكما نوهنا سابقاً فإن لغة باسكال القياسية لا تؤمن هذه الخدمة / مما يضطرنا إلى تنفيذها بلغة التجميع .
    وبشكل عام ، فإن أي تحوير في عمليات الإدخال أو الإخراج القياسية سيضطرنا إلى استخدام لغة التجميع ، ولو جزئياً في برامجنا .
    ولقد ظهر مؤخراً موجب ثالث لاستخدام هذه اللغة ، لا ينبثق من ميزاتها الأساسية ( سرعة + سلطة ) ، بل من السرعة المذهلة التي تتطور بها تقنية الحاسبات في الآونة الأخيرة . إذ لم تستطع الشركات المصنعة لبرامج النظم ( وعلى رأسها المؤلفات ) مواكبة سرعة تطور الأجهزة (Hardware) بل تختلف عنها بفارق يصل في بعض الأحيان إلى خمس سنوات! فنجد مثلاً ، أن مؤلفات اللغات الشهيرة لم تستطع التعامل مع المعالج الحاسبي المساعد ( arithmetic co-processor ) من النوع 8087 أو 80287 إلا عام 1986م ، رغم أن هذا المعالج ظهر إلى الأسواق في أوائل الثمانينات . وها قد مضى الآن أكثر من عامين على ظهور أجهزة PS/2 ، دون أن يظهر أي مؤلف يستفيد من مزاياها الكبيرة . أما على مستوى لغة التجميع ، فالصورة مختلفة : إذ إن هذه اللغة لا تحتاج إلى مترجم بكل معنى الكلمة ، بل كل ما تحتاج إليه هو قاموس صغير لمرادفات جملها بلغة الآلة . ومن السهولة بمكان توفير هذا القاموس ( أي المجمع ) مع كل جهاز أو نظام تشغيل جديد . لهذا تمكن مستعملوا هذه اللغة من تقديم برامج متطورة تواكب كل جديد في تقنية الحاسب ، سابقين بذلك من أصر على استخدام لغات المستوى الأعلى .
    نلخص إذن بأن علينا تجنب استخدام لغة التجميع إلا في الحالات الثلاث الآنفة الذكر . ونضيف هنا أنه حتى في تلك الحالات ، علينا أن نعمد لاستخدامها جزئياً ، أي كبرنامج فرعي ، يتم طلبه من البرنامج الرئيسي الذي يكتب بلغة عالية أو حديثة .

    مبدع المستقبل

    مبدع\ـة نشيط


    مبدع\ـة نشيط

    ( تاريخ التسجيل ) : 09/02/2008
    ( مجال ابداعي ) : كل شئ
    ( مشاركاتي ) : 144
    ( سمعتـي ) : 9
    ( نقاطـــي ) : 96
    ( العمــــر ) : 26
    ( المــزاج ) : تمام
    ( الهوايـة ) : الرياضة
    ( العمـل ) : طالب
    ( البـــلد ) : المملكة العربية السعودية
    ذكر
    100% احترام القوانين ممتاز
    رسالة موقع ومنتدى إبداع للأبد

    رد: نبذة عن الاسيمبلي

    مُساهمة من طرف مبدع المستقبل في الأربعاء 20 فبراير 2008 - 16:28

    شكرا على الموضوع
    avatar
    عبدالله أبونجم

    المالك والمؤسس
     المالك والمؤسس

    ( تاريخ التسجيل ) : 14/01/2008
    ( مجال ابداعي ) : الكمبيوتر
    ( مشاركاتي ) : 976
    ( سمعتـي ) : 111
    ( نقاطـــي ) : 1966
    ( العمــــر ) : 25
    ( المــزاج ) : ممتاز
    ( الهوايـة ) : الرياضة
    ( الطبقة ) : عضو ركن
    ( العمـل ) : طالب
    ( البـــلد ) : المملكة الأردنية الهاشمية
    ذكر
    100% احترام القوانين ممتاز
    رسالة موقع ومنتدى إبداع للأبد 2

    رد: نبذة عن الاسيمبلي

    مُساهمة من طرف عبدالله أبونجم في الأربعاء 27 فبراير 2008 - 13:53

    يطيك العافية موضوع ممتاز


    Razz

    santa
    avatar
    abadee2008

    مشرف منتدى الحاسب الآلي
    مشرف منتدى الحاسب الآلي

    ( تاريخ التسجيل ) : 07/02/2008
    ( مجال ابداعي ) : الحاسب الآلي
    ( مشاركاتي ) : 53
    ( سمعتـي ) : 6
    ( نقاطـــي ) : 108
    ( العمــــر ) : 25
    ( المــزاج ) : طيب
    ( الهوايـة ) : السباحة
    ( العمـل ) : طالب
    ( البـــلد ) : المملكة العربية السعودية
    ذكر
    100% احترام القوانين ممتاز
    رسالة موقع ومنتدى إبداع للأبد

    رد: نبذة عن الاسيمبلي

    مُساهمة من طرف abadee2008 في الأربعاء 5 مارس 2008 - 21:09

    تسلم يا سعدو يعطيك العافية

      الوقت/التاريخ الآن هو الأربعاء 18 أكتوبر 2017 - 11:19