الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]ممكن حد يساعدني

بدأه Prelware D في 1 أغسطس 2009 · 5 رد · 1,054 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

لقد قمت بتقسيم البرنامج في الصورة إلى لثلاثة أقسام:

post-209213-1249125607_thumb.jpg

- أعتقد أنه تم وضع قيمة لـ"Pkey"وهي"Press and key" واحد بايت

لكن هل قام بوضع هذه القيمة في مقطع من الذاكرة وإن كان قد فعل بأي مقطع؟

-عندما كتب Data Segment هل يعني أنه قام بأعطاء المقطع المستخدم اسم Data؟

2- في القسم التالي نرى أنه قام بأستخدام المكدس "Stack"

هي يمكن أن تشرح لي مافائدة أستخدام المكس في هذا البرنامج أو بأي برنامج آخر بشكل عام

3-أما في القسم الثالث قام بكتابة الأكواد وأعتقد أنه ليسهناك أي مشكلة في فهمها

شكراً

Danial Tarraf

Prelware D&D Association

Lattakia/Syria

#2

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

اي برنامج في الذاكرة يتكون من عده مقاطع ،، كما يوضح ذلك الشكل التالي :

post-51148-1249126596_thumb.png

سيتم وضع الCode في منطقة الكود ، والData في منطقة الData ، والStack في منطقه الStack .

الأن في برنامجك قمت بحجز مساحة 128*2 للمكدس ، وستتوسع هذه المنقطة حسب الحاجة . تستخدم هذه المنطقة عند استدعاء الدوال حيث يتم رفع push عنوان التعليمة التالية في المكدس ويتنقل التنفيذ للدالة وحين العوده يتم استرجاع Pop تلك القيمه من المكدس ليكمل العمل .

بالنسبة لData Segment في برنامجك فهو يحتوي على 17 بايت (بايت لكل حرف) حيث pKey يعتبر مؤشر لمصفوفه ..

بالتوفيق :) .

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#3

شكراً..أخي الكريم على مساعتدك

أرجو أن تقوم بنقض كلامي إن كان فيه أي أخظاء

1-يقوم القطاع "Code Segment CS" بحفظ شيفرت البرنامج في الذاكرة

حيث يتم تخصيص حجم من الذاكرة ويوضع فيه

2-يقوم القطاع "Data Segment DS" بحفظ البيانات كالمتغيرات..مثال"pkey"تم حفظة في قطاع

البيانات

--------------

هي يمكنك شرح مفهوم First in last out في قطاع المكدس stack segmet

وما الفائدة من هذا الشيئ

---------

ما هو القطاع Extra Segment وكيف يتم التعامل معه وما الفائدة منه

----------

ما الفرق بين القطاع ومسجل القطاع

شكراً..

Danial Tarraf

Prelware D&D Association

Lattakia/Syria

#4

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

اقتباس
1-يقوم القطاع "Code Segment CS" بحفظ شيفرت البرنامج في الذاكرة

حيث يتم تخصيص حجم من الذاكرة ويوضع فيه

2-يقوم القطاع "Data Segment DS" بحفظ البيانات كالمتغيرات..مثال"pkey"تم حفظة في قطاع

البيانات

نعم صحيح ،،

اقتباس
هي يمكنك شرح مفهوم First in last out في قطاع المكدس stack segmet

وما الفائدة من هذا الشيئ

المفهوم بسيط ،، تخيل كومه من الأطباق ، عندما تضع طبق جديد ستضع من أعلى ، وعندما تريد أن تأخذ طبق ستأخذ من أعلى أيضا ، لذلك الذي يدخل أولا هو الذي سوف يخرج أخيرا First in Last Out ، وبنفس المفهوم الذي يدخل أخيرا هو الذي يخرج أولا Last in First Out .. و فيلو FILO أو ليفو LIFO هي اختصارات لهذه العملية :) ..

برمجيا يمكن أن تستفيد من المكدس في أمور كثيره ، مثلا يمكنك كتابة برنامج للتحقق من فتح واغلاق الأقواس بصوره صحيحه [ () ] ، وهناك أمثله أخرى للإستفاده من ذلك ،، أفضل أن تراجع الفصل السابع من هذا الكتاب :

/index.ph...=128842&hl=

بعدها يمكن طرح أمثله عملية على المفهوم ،، لكن خذ الأساسيات أولا من الكتاب ..

اقتباس
ما هو القطاع Extra Segment وكيف يتم التعامل معه وما الفائدة منه

المسجل ES أيضا يؤشر للData Segment ويستخدم عاده عند التعامل مع عمليات النصوص على ما أذكر ، يمكنك مراجعه الكتاب السابق الفصل الثامن أو التاسع للمزيد عن عمليات النصوص .

اقتباس
ما الفرق بين القطاع ومسجل القطاع

القطاع Segment هو منطقه في الذاكرة ، وكما بينت لك هناك منطقة للStack و Data و Code .

مسجل القطاع Segment Register هو مسجل يحتوي على عنوان القطاع في الذاكرة ، مثلا Stack Segment Register يحتوي على عنوان Stack Segment ، و Data Segment Register يحتوي على عنوان Data Segment وهكذا.

الصوره التاليه توضح أكثر :

mlyou.PNG

أي سؤال يرحب به ،،

بالتوفيق :) .

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#5

شكراً أخي الكريم على ردك وشكراً على الكتاب أيضاً

سوف أتابع... وإن صادفت أية مشاكل سوف أطرح سؤالي :)

شكراً مرة أخرى

Danial Tarraf

Prelware D&D Association

Lattakia/Syria

#6

معلومات جيدة بارك الله فيكم

تم تعديل هذه المشاركة بواسطة hatem في 2 أغسطس 2009 في 10:57

مواضيع مشابهة