• 0
The expendable

سلسله دروس "تعلم الاسيمبلى من الصفر"

سؤال

السلام عليكم ورحمه الله وبركاته

دمتم اخوتى رواد الفريق العربى .. سوف اقدم سلسله دروس فى الاسيمبلى للمبتدئين

وسوف نعمل على معالج 8086 بالرغم من قدمه ولكن الى الان يتم تدريسه فى بعض او اغلب الجامعات , واعتقد ان المفاهيم واحده والاختلاف فقط سيكون فى الكود ..

واتطلع لمتابعه محترفى وخبراء ومشرفى القسم للدروس ودعمى وتصحيحى , وتوضيح اية اضافات ...

واتمنى ان تحوذ الدروس على اعجابكم .. وسوف ابدأ بدون مقدمات ان شاء الله

بســـــــــــــم الله الرحـمـــــــن الرحــيـــــــــــــم

الدرس الأول :

نقاط الدرس الأول :

1-Instruction Execution Cycle

Pipline-2

Operation Modes-3

Registers -4

الأوامر فى الأسيمبلى :

ويتكون من كلمه واحده مثل : mov ,sub ,add

وقد يحتوى على Operands

=> ومعاناه اضف محتويات الريجستر الثانى الى محتويات الريجستر الأول وضع الناتج فى الريجستر الأول ...

أى فى هذه الحاله يكون الأول source والثاتى destination

INSTRUCTION EXECUTION CYCLE

وهى مراحل تنفيذ الأوامر فى الأسيمبلى و هى

1- FETCH فى هذه المرحله يتم تحميل الأمر من الرام الى البروسيسور

2- DECODE ومن اسمها يتم فك شفره الأمر حتى يتسنى للبروسيسور تنفيذه

3- FETCH OPERAND واذا وجد الأمر operands يتم تحميلها فى وحده الحساب والمنطق

4- EXECUTE تنفيذ الأمر

5- STORE OPERAND خزن الناتج

2-تقنية Pipeline

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

بدل أن يكون هناك عامل واحد يقوم بتجميع المنتج، يوجد هناك خط سير يقوم عليه العديد من العمال كل عامل منهم يقوم بتجميع جزء من هذا المنتج لكي ننتهي بأخر المطاف بمنتج جاهز وبأسرع وقت ممكن.

المعالج يقوم بأمر مشابه هنا يتم التعامل مع الكثير من العمليات بنفس الوقت.

هذه التقنيه تعمل على انواع معينه من الرام مثل : PBSRAM او Pipeline Burst SRAM وهى تهم كل من يشترى جهاز عليه السؤال عن وجود هذه التقنيه

الشرح فى هذه النقطه مازال مستمرا

pipelining.6.2.png

مثال : Add R1 ,R2

تم تعديل بواسطه The expendable
2

شارك هذا الرد


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

21 إجابة على هذا السؤال .

  • 0

السلام عليكم ورحمه الله وبركاته

Add R1 ,R2

وعليكم السلام ورحمة الله وبركاته

لأي نوع من المعالجات هذه الدروس

0

شارك هذا الرد


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

وعليكم السلام ورحمة الله وبركاته

لأي نوع من المعالجات هذه الدروس

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

0

شارك هذا الرد


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

عندما رأيتك كتبت R1 و R2 حسبتك تتكلم على المعالج ARM المهم تذكر بأنك لن تجد مهتم بهذه اللغة أرجو أن لا يعيقك هذا عن تقديم الدروس سترى عدد القراء لهذا الموضوع كثر ولكن الردود تقريبا منعدمة

المهم هناك الكثيرين سيستفيدون من هذه الدروس جزاك الله عنها خيرا

0

شارك هذا الرد


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

جزاك الله خيرا ولكن لماذا المهتمين بها اقلاء هل لأنها قديمه ؟

اعتقد اننى سأجرى استفتاء اولا

0

شارك هذا الرد


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

لا ليست لأنها قديمة فالكثير يرى بأنه ليست لها فائدة وأن هذه اللغة لا يستطيع بها بناء البرامج أو مرغم على دراستها في الجامعة ولا يعير لها إهتمام فمعظمهم يضعون واجباتهم ليحلها لهم الآخرين

فلا توجد دروس أو برامج تزيد في التشويق لهذه اللغة

أخي The expendable إن كنت ستضع الدروس فلا تنتظر الكثير من الردود وأرجو أن لا يحبط هذا من عملك فسيأتي من سيستفيد منها وأتمنى أن لا أكون قد أنقصت من عزيمتك في تقديم هذه الدروس فتوكل على الله وإبدأ بهذه السلسلة

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

شارك هذا الرد


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

إمضي أخي في دروسك... من يتعلم الاسمبلي سيتمكن من

- فهم وضاءف البرامج ويستطيع اكتشاف كيف قام برنامج معين بوضيفة معينة (دي أسمبلي)

- كسر البرامج والهندسة العكسية

- فهم أعمق للحاسوب والمسجلات والمعالجات والهاردوير بشكل عام وكيفية ربطه بالسوفتوير وبالتالي فهم سلس للغات العالية المستوى

- القدرة على فهم كيفية حماية قرصنة البرامج واكتشاف وسد الثغرات

- كتابة برامج سريعة جدا في التنفيذ

والكثير الكثير...

أمضي وفقك الله ونحن لك متابعون بإذن الله.

0

شارك هذا الرد


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

و علیکم السلام و رحمه الله و برکاته.

شکرا لکم لهذه الدروس و ارجوا بقیه الدروس.

هل یجوز کتابت السوال هنا بین الدرس؟

فلدی سوال یا استاذ:

أى فى هذه الحاله يكون الأول source والثاتى destination

اظن الاول هو destination و الثانی هو source.

شکرا علی جهودکم

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

شارك هذا الرد


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

تمام    The expendable موفق جداُ في هذا الدرس 

وسأكون من متابعي الموضوع 

بالتوفيق وللامام

0

شارك هذا الرد


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

حسنا سأكون من متابعينك بأذن الله

ربما تكون فاتحة للاسيمبلى

0

شارك هذا الرد


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

لك منى نصيحة بسيطة

خذ الدورة التى اقوم بصنعها اقل مثال

لطالما غضبت و سأغضب من عدم الردود

لكن اولا انا اقوم بعملها لوجه الله

اما بالنسبة للاسيمبلى

فمن يفكر فيها هو من يريد ان يكون system programmer و ليس اى شخص

ربما انا سأكون متابعا لك

لكن لا ادرى هل هذا البروسيسور ينفع معى ام لا :S

0

شارك هذا الرد


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

لغة الاسيمبلي مهمة للغاية

و لا توجد مشكلة عن اي معمارية نتحدث

ففي النهاية الفروق بسيطة

انا ادرسها على الـ MIPS

و مع اني لا اعلم شيئا عن :

كسر البرامج والهندسة العكسية

- فهم أعمق للحاسوب والمسجلات والمعالجات والهاردوير بشكل عام وكيفية ربطه بالسوفتوير وبالتالي فهم سلس للغات العالية المستوى

- القدرة على فهم كيفية حماية قرصنة البرامج واكتشاف وسد الثغرات

و لكن يمكننى رؤية فائدتها

كما انها في النهاية برمجة منخفضة المستوى

و بالتالي يجب ان تعلى انت بمستوى تفكيرك حتى تتعامل معها و هذا في حد ذاته مفيد لأي مبرمج

لو سمحت أكمل السلسة و ستعرف في يوم ما ان شخصا دعا لك ....

0

شارك هذا الرد


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

و علیکم السلام و رحمه الله و برکاته.

شکرا لکم لهذه الدروس و ارجوا بقیه الدروس.

هل یجوز کتابت السوال هنا بین الدرس؟

فلدی سوال یا استاذ:

اظن الاول هو destination و الثانی هو source.

بارك الله فيك يا اخى ولكنى لست بدرجه استاذ بعد ..

فى هذه الدروس نحن نعمل على معالج 8086 .. وانا متأكد مما ذكرته بالأعلى .. ومشكووور على المرور والدعم ..

زملاءى AS-HACK و مينا واحمد و theBIgBiss مشكورين على الدعم كانت عزيمتى قد بدأت تخفت ولكنى ان شاء الله متابع لهذه السلسله بارك الله فيكم جميعا ..

واتمنى منكم متابعتها لأنها ستكون سهله وفى مستوى الجميع ان شاء الله .

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

شارك هذا الرد


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

متابعون ... وفقك الله.

0

شارك هذا الرد


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

أخي الكريم

إلـــــــــــــــــــى الأمـــــــــــــــــــــــام

قسم الأسمبلي يحتاج إلى أعظاء مثلك

أنا هده السنة مشغول لن أنشط كثيرا في هدا القسم, لكن بعد كل فترة سأضع عدة دروس. إهتمامي حاليا هو البرمجة في بيئة Windows - أسمبلي 32بت

A.S Hack نحتاج لنشاطك معنا كدلك المهتمين بلغة الأسمبلي و إن شاء الله نحيي هدا القسم و نرجعه إلى أيامه

تدكر أنني سأعود - دمي من نوع أسمبلي :happy: و هده عائلتي الفريق العربي للبرمجة-

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

شارك هذا الرد


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

أخي الكريم

إلـــــــــــــــــــى الأمـــــــــــــــــــــــام

قسم الأسمبلي يحتاج إلى أعظاء مثلك

أنا هده السنة مشغول لن أنشط كثيرا في هدا القسم, لكن بعد كل فترة سأضع عدة دروس. إهتمامي حاليا هو البرمجة في بيئة Windows - أسمبلي 32بت

A.S Hack نحتاج لنشاطك معنا كدلك المهتمين بلغة الأسمبلي و إن شاء الله نحيي هدا القسم و نرجعه إلى أيامه

تدكر أنني سأعود - دمي من نوع أسمبلي :happy: و هده عائلتي الفريق العربي للبرمجة-

أهلا بعودتك Z3r0n3 أرجو أن تواصل أيضا في دروس الأسمبلي 16BIT

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
أهلا بعودتك Z3r0n3 أرجو أن تواصل أيضا في دروس الأسمبلي 16BIT

إن شاء الله

0

شارك هذا الرد


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

إن شاء الله

يوجد فصل في المنهج الي بدرسه عن هذه الغة هل بإمكاني طلب شرح لجزئية ليست مفهومةلدي أنا في بداية مرحلة الجامعية لكن الدراسة ذاتية فأواجه صعوبه في الفهم.وإذا لايمكنني ذلك تابع انا ايضا من المتابعين لعلي اجد معلومة تفيدني

أرجو عدم حذف مشاركتي وتوجيهي إذا أخطأت في وضع السؤال لأاعلم هل يوجد برنامج يحذف المشاركات الخاطئة أو مشرفين إذا كان مشرفين ارجو اعلامي باخطائي بصراحة المنتدى رائع ومفيد

جزاء الله خيرا القائمين عليه.

0

شارك هذا الرد


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

اظن الاول هو destination و الثاني هو source.

وانا متأكد مما ذكرته بالأعلى ..

في الواقع ملاحظة الأخ C77431 في مكانها، الصيغة كالتالي:

mnemonic dst, src

في النهاية الأمر يتبع للأسمبلر كيف يقوم بتحليل الكود، هل يعتبر الجزء الأول src والثاني dst أم يعتبر الأول dst والثاني src

بشكل عام، معظم المجمعات المشهورة اليوم تأخذ الحالة الثانية: الأول dst والثاني src

حتى أن الصيغة النظامية لتعليمات المعالج 8086 هي: mnemonic dst, src

تابع،

بالتوفيق

0

شارك هذا الرد


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

تمام اخى انا ذكرت ذلك

=> ومعاناه اضف محتويات الريجستر الثانى الى محتويات الريجستر الأول وضع الناتج فى الريجستر الأول ...

ولكن ترجمته بشكل خاطىء .. مشكور الاخ c77431

مثال التصحيح: Add R1 ,R2

=> ومعاناه اضف محتويات الريجستر الثانى الى محتويات الريجستر الأول وضع الناتج فى الريجستر الثانى ...

أى فى هذه الحاله يكون الأول Dest والثاتى Source

تم تعديل بواسطه The expendable
1

شارك هذا الرد


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

بدأت الدروس من الصفر و أرجو أن لا تنتهي عنده

0

شارك هذا الرد


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

السلام عليكم

مثال : Add R1 ,R2

=> ومعاناه اضف محتويات الريجستر الثانى الى محتويات الريجستر الأول وضع الناتج فى الريجستر الأول ...

أى فى هذه الحاله يكون الأول source والثاتى destination

في معالجات Intel، يكون المعامل الأول (الذي يكون بعد إسم التعليمة مباشرة) هو المستهدف (Destination) و المعامل الثاني هو المصدر (Source). أي في المثال فوق، يكون المسجل الأول (R1) هو المستهدف و المسجل الثاني (R2) هو المصدر. يعني كلام الأخ u77431 صحيح

0

شارك هذا الرد


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

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

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